00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033 #ifndef _LOGGING_H
00034 #define _LOGGING_H
00035
00036 #include "nfsd.H"
00037 #include "VRErrorCode.H"
00038
00039
00040 #define DBG_ALWAYS 0x0000
00041 #define DBG_SRPC 0x0001
00042 #define DBG_NFS 0x0002
00043 #define DBG_FDCACHE 0x0004
00044 #define DBG_SIDDISP 0x0008
00045 #define DBG_SIDDEL 0x0010
00046 #define DBG_SIDNODEL 0x0020
00047 #define DBG_VDIREVAL 0x0040
00048 #define DBG_NOWEEDREC 0x0080
00049 #define DBG_VMEMPOOL 0x0100
00050 #define DBG_SAVECORE 0x0200
00051
00052
00053
00054 #define DBG_STALENFS 0x0400
00055 #define DBG_MASTERSHIP 0x0800
00056
00057 #define DBG_COW 0x1000
00058 #define DBG_ACCESS 0x2000
00059 #define DBG_REPLICATION 0x4000
00060
00061
00062
00063 namespace Repos
00064 {
00065
00066
00067
00068
00069 extern void setDebugLevel(int level);
00070
00071
00072 extern int isDebugLevel(int level);
00073
00074 extern "C"
00075 {
00076
00077 extern void dprintf(int level, const char *fmt, ...);
00078 }
00079
00080 extern void log_call(struct svc_req *rqstp,
00081 struct dispatch_entry* dent,
00082 union argument_types* argument);
00083 extern void log_result(struct svc_req *rqstp,
00084 struct dispatch_entry* dent,
00085 union result_types* result);
00086 extern void pr_void(char* buf);
00087 extern void pr_nfs_fh(char* buf, nfs_fh *argp);
00088 extern void pr_sattrargs(char* buf, sattrargs *argp);
00089 extern void pr_diropargs(char* buf, diropargs *argp);
00090 extern void pr_readargs(char* buf, readargs *argp);
00091 extern void pr_writeargs(char* buf, writeargs *argp);
00092 extern void pr_createargs(char* buf, createargs *argp);
00093 extern void pr_renameargs(char* buf, renameargs *argp);
00094 extern void pr_linkargs(char* buf, linkargs *argp);
00095 extern void pr_symlinkargs(char* buf, symlinkargs *argp);
00096 extern void pr_readdirargs(char* buf, readdirargs *argp);
00097 extern void pr_attrstat(char* buf, attrstat *argp);
00098 extern void pr_diropres(char* buf, diropres *argp);
00099 extern void pr_readlinkres(char* buf, readlinkres *argp);
00100 extern void pr_readres(char* buf, readres *argp);
00101 extern void pr_nfsstat(char* buf, nfsstat *argp);
00102 extern void pr_readdirres(char* buf, readdirres *argp);
00103 extern void pr_statfsres(char* buf, statfsres *argp);
00104
00105 extern VRErrorCode::errorCode errno_to_errorCode(int err);
00106 }
00107
00108 #endif