📄 module.h
字号:
/* -*- Mode: C -*- * module.h * * Description : Backup/recover module API. * * Copyright (c) 1996,1997 PDC, Network Appliance. All Rights Reserved. * * $Id: module.h,v 1.7 1998/05/26 03:52:19 tim Exp $ */#ifndef _module_h#define _module_h#if !defined(lint) && !defined(SABER)static char module_h_rcsId[] __attribute__ ((unused)) = "@(#) $Id: module.h,v 1.7 1998/05/26 03:52:19 tim Exp $";#endif#include <sys/types.h>#include <sys/stat.h>#include <rpc/rpc.h>#include "ndmp.h"/* * NDMP daemon callback functions. * Called by backup/recover modules. */typedef char*NdmpdGetEnvFunc(void* cookie, char* varName);typedef intNdmpdAddEnvFunc(void* cookie, char* name, char* value);typedef ndmp_name*NdmpdGetNameFunc(void* cookie, u_long nameIndex);typedef intNdmpdDispatchFunc(void* cookie, bool_t block);typedef voidNdmpdDoneFunc(void* cookie, int err);typedef intNdmpdLogFunc(void* cookie, ndmp_log_type type, u_long msgId, char* format, ...);#define NDMPD_SELECT_MODE_READ 1#define NDMPD_SELECT_MODE_WRITE 2#define NDMPD_SELECT_MODE_EXCEPTION 4typedef voidNdmpdFileHandlerFunc(void* cookie, int fd, u_long mode);typedef intNdmpdAddFileHandlerFunc(void* daemonCookie, void* cookie, int fd, u_long mode, NdmpdFileHandlerFunc* func);typedef intNdmpdRemoveFileHandlerFunc(void* daemonCookie, int fd);typedef intNdmpdWriteFunc(void* cookie, char* data, u_long length);typedef intNdmpdFileHistoryFileFunc(void* cookie, char* name, struct stat* fileStat, u_longlong_t fh_info);typedef intNdmpdFileHistoryDirFunc(void *cookie, char *name, u_long node, u_long parent);typedef intNdmpdFileHistoryNodeFunc(void *cookie, u_long node, struct stat *fileStat, u_longlong_t fh_info);typedef intNdmpdSeekFunc(void* cookie, u_longlong_t offset, u_longlong_t length);typedef intNdmpdReadFunc(void* cookie, char* data, u_long length);typedef intNdmpdFileRecoveredFunc(void* cookie, char* name, int error);typedef struct NdmpdModuleStats{ u_longlong_t bytesProcessed; u_longlong_t estBytesRemaining; u_long estTimeRemaining;} NdmpdModuleStats;/* * Parameter structure passed to module start function. */typedef struct NdmpdModuleParams{ void* daemonCookie; void** moduleCookie; u_short protocolVersion; ndmp_data_operation operation; NdmpdModuleStats* stats; NdmpdGetEnvFunc* getEnvFunc; NdmpdAddEnvFunc* addEnvFunc; NdmpdGetNameFunc* getNameFunc; NdmpdDispatchFunc* dispatchFunc; NdmpdDoneFunc* doneFunc; NdmpdLogFunc* logFunc; NdmpdAddFileHandlerFunc* addFileHandlerFunc; NdmpdRemoveFileHandlerFunc* removeFileHandlerFunc; NdmpdWriteFunc* writeFunc; NdmpdFileHistoryFileFunc* fileHistoryFileFunc; NdmpdFileHistoryDirFunc* fileHistoryDirFunc; NdmpdFileHistoryNodeFunc* fileHistoryNodeFunc; NdmpdReadFunc* readFunc; NdmpdSeekFunc* seekFunc; NdmpdFileRecoveredFunc* fileRecoveredFunc;} NdmpdModuleParams;/* * Module function prototypes. */typedef int ModuleStartFunc(NdmpdModuleParams* params);typedef int ModuleAbortFunc(void* moduleCookie);typedef int ModuleGetAttrsFunc(u_long* attributes);#endif /* _module_h */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -