handler_tbl.c

来自「网络数据管理协议的开发」· C语言 代码 · 共 406 行

C
406
字号
/*                               -*- Mode: C -*-  * handler_tbl.c *  * Description     : NDMP message handler table. *  * Copyright (c) 1996,1997 PDC, Network Appliance. All Rights Reserved. * * $Id: handler_tbl.c,v 1.9 1998/05/26 03:52:17 tim Exp $ */#if !defined(lint) && !defined(SABER)static char rcsId[] __attribute__ ((unused)) = "@(#) $Id: handler_tbl.c,v 1.9 1998/05/26 03:52:17 tim Exp $";#endif#include "ndmpd.h"NdmpMsgHandler ndmpdMsgHandlerTable[] ={	{		NDMP_CONNECT_OPEN, 3,		ndmpdConnectOpen,		AUTH_NOT_REQUIRED,		XDR_AND_SIZE(ndmp_connect_open_request),		XDR_AND_SIZE(ndmp_connect_open_reply)	},	{		NDMP_CONNECT_CLIENT_AUTH, 3,		ndmpdConnectClientAuth,		AUTH_NOT_REQUIRED,		XDR_AND_SIZE(ndmp_connect_client_auth_request),		XDR_AND_SIZE(ndmp_connect_client_auth_reply)	},	{		NDMP_CONNECT_CLOSE, 3,		ndmpdConnectClose,		AUTH_NOT_REQUIRED,		0, 0,		0, 0	},	{		NDMP_CONNECT_SERVER_AUTH, 3,		ndmpdConnectServerAuth,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_connect_server_auth_request),		XDR_AND_SIZE(ndmp_connect_server_auth_reply)	},	{		NDMP_CONFIG_GET_HOST_INFO, 3,		ndmpdConfigGetHostInfo,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_config_get_host_info_reply)	},	{		NDMP_CONFIG_GET_CONNECTION_TYPE, 3,		ndmpdConfigGetConnectionType,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_config_get_connection_type_reply)	},	{		NDMP_CONFIG_GET_AUTH_ATTR, 3,		ndmpdConfigGetAuthAttr,		AUTH_NOT_REQUIRED,		XDR_AND_SIZE(ndmp_config_get_auth_attr_request),		XDR_AND_SIZE(ndmp_config_get_auth_attr_reply)	},	{		NDMP_CONFIG_GET_BUTYPE_INFO, 3,		ndmpdConfigGetButypeInfo,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_config_get_butype_info_reply)	},	{		NDMP_CONFIG_GET_FS_INFO, 3,		ndmpdConfigGetFsInfo,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_config_get_fs_info_reply)	},	{		NDMP_CONFIG_GET_TAPE_INFO, 3,		ndmpdConfigGetTapeInfo,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_config_get_tape_info_reply)	},	{		NDMP_CONFIG_GET_SCSI_INFO, 3,		ndmpdConfigGetScsiInfo,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_config_get_scsi_info_reply)	},	{		NDMP_CONFIG_GET_SERVER_INFO, 3,		ndmpdConfigGetServerInfo,		AUTH_NOT_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_config_get_server_info_reply)	},	{		NDMP_SCSI_OPEN, 3,		ndmpdScsiOpen,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_scsi_open_request),		XDR_AND_SIZE(ndmp_scsi_open_reply)	},	{		NDMP_SCSI_CLOSE, 3,		ndmpdScsiClose,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_scsi_close_reply)	},	{		NDMP_SCSI_GET_STATE, 3,		ndmpdScsiGetState,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_scsi_get_state_reply)	},	{		NDMP_SCSI_SET_TARGET, 3,		ndmpdScsiSetTarget,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_scsi_set_target_request),		XDR_AND_SIZE(ndmp_scsi_set_target_reply)	},	{		NDMP_SCSI_RESET_DEVICE, 3,		ndmpdScsiResetDevice,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_scsi_reset_device_reply)	},	{		NDMP_SCSI_RESET_BUS, 3,		ndmpdScsiResetBus,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_scsi_reset_bus_reply)	},	{		NDMP_SCSI_EXECUTE_CDB, 3,		ndmpdScsiExecuteCdb,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_execute_cdb_request),		XDR_AND_SIZE(ndmp_execute_cdb_reply)	},	{		NDMP_TAPE_OPEN, 3,		ndmpdTapeOpen,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_tape_open_request),		XDR_AND_SIZE(ndmp_tape_open_reply)	},	{		NDMP_TAPE_CLOSE, 3,		ndmpdTapeClose,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_tape_close_reply)	},	{		NDMP_TAPE_GET_STATE, 3,		ndmpdTapeGetState,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_tape_get_state_reply)	},	{		NDMP_TAPE_MTIO, 3,		ndmpdTapeMtio,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_tape_mtio_request),		XDR_AND_SIZE(ndmp_tape_mtio_reply)	},	{		NDMP_TAPE_WRITE, 3,		ndmpdTapeWrite,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_tape_write_request),		XDR_AND_SIZE(ndmp_tape_write_reply)	},	{		NDMP_TAPE_READ, 3,		ndmpdTapeRead,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_tape_read_request),		XDR_AND_SIZE(ndmp_tape_read_reply)	},	{		NDMP_TAPE_EXECUTE_CDB, 3,		ndmpdTapeExecuteCdb,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_execute_cdb_request),		XDR_AND_SIZE(ndmp_execute_cdb_reply)	},	{		NDMP_DATA_GET_STATE, 3,		ndmpdDataGetState,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_data_get_state_reply)	},	{		NDMP_DATA_START_BACKUP, 3,		ndmpdDataStartBackup,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_data_start_backup_request),		XDR_AND_SIZE(ndmp_data_start_backup_reply)	},	{		NDMP_DATA_START_RECOVER, 3,		ndmpdDataStartRecover,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_data_start_recover_request),		XDR_AND_SIZE(ndmp_data_start_recover_reply)	},	{		NDMP_DATA_ABORT, 3,		ndmpdDataAbort,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_data_abort_reply)	},	{		NDMP_DATA_GET_ENV, 3,		ndmpdDataGetEnv,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_data_get_env_reply)	},	{		NDMP_DATA_STOP, 3,		ndmpdDataStop,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_data_stop_reply)	},	{		NDMP_DATA_LISTEN, 3,		ndmpdDataListen,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_data_listen_request),		XDR_AND_SIZE(ndmp_data_listen_reply)	},	{		NDMP_DATA_CONNECT, 3,		ndmpdDataConnect,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_data_connect_request),		XDR_AND_SIZE(ndmp_data_connect_reply)	},	{		NDMP_NOTIFY_DATA_HALTED, 3,		0, 		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_notify_data_halted_request),		0, 0	},	{		NDMP_NOTIFY_CONNECTED, 3,		0,		AUTH_NOT_REQUIRED,		XDR_AND_SIZE(ndmp_notify_connected_request),		0, 0	},	{		NDMP_NOTIFY_MOVER_HALTED, 3,		0,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_notify_mover_halted_request),		0, 0	},	{		NDMP_NOTIFY_MOVER_PAUSED, 3,		0,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_notify_mover_paused_request),		0, 0	},	{		NDMP_NOTIFY_DATA_READ, 3,		0,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_notify_data_read_request),		0, 0	},	{		NDMP_LOG_FILE, 3,		0,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_log_file_request),		0, 0	},	{		NDMP_LOG_MESSAGE, 3,		0,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_log_message_request),		0, 0	},	{		NDMP_FH_ADD_FILE, 3,		0,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_fh_add_file_request),		0, 0	},	{		NDMP_FH_ADD_DIR, 3,		0,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_fh_add_dir_request),		0, 0	},	{		NDMP_FH_ADD_NODE, 3,		0,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_fh_add_node_request),		0, 0	},	{		NDMP_MOVER_GET_STATE, 3,		ndmpdMoverGetState,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_mover_get_state_reply)	},	{		NDMP_MOVER_LISTEN, 3,		ndmpdMoverListen,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_mover_listen_request),		XDR_AND_SIZE(ndmp_mover_listen_reply)	},	{		NDMP_MOVER_CONTINUE, 3,		ndmpdMoverContinue,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_mover_continue_reply)	},	{		NDMP_MOVER_ABORT, 3,		ndmpdMoverAbort,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_mover_abort_reply)	},	{		NDMP_MOVER_STOP, 3,		ndmpdMoverStop,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_mover_stop_reply)	},	{		NDMP_MOVER_SET_WINDOW, 3,		ndmpdMoverSetWindow,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_mover_set_window_request),		XDR_AND_SIZE(ndmp_mover_set_window_reply)	},	{		NDMP_MOVER_READ, 3,		ndmpdMoverRead,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_mover_read_request),		XDR_AND_SIZE(ndmp_mover_read_reply)	},	{		NDMP_MOVER_CLOSE, 3,		ndmpdMoverClose,		AUTH_REQUIRED,		0, 0,		XDR_AND_SIZE(ndmp_mover_close_reply)	},	{		NDMP_MOVER_SET_RECORD_SIZE, 3,		ndmpdMoverSetRecordSize,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_mover_set_record_size_request),		XDR_AND_SIZE(ndmp_mover_set_record_size_reply)	},	{		NDMP_MOVER_CONNECT, 3,		ndmpdMoverConnect,		AUTH_REQUIRED,		XDR_AND_SIZE(ndmp_mover_connect_request),		XDR_AND_SIZE(ndmp_mover_connect_reply)	},	{		0,		0,		0,		0, 0,		0, 0	}};

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?