OpenAFS
OpenAFS distributed network file system
/cygdrive/c/src/openafs/openafs.git/repo/src/WINNT/afsd/afsd.h
00001 /*
00002  * Copyright 2000, International Business Machines Corporation and others.
00003  * All Rights Reserved.
00004  *
00005  * This software has been released under the terms of the IBM Public
00006  * License.  For details, see the LICENSE file in the top-level source
00007  * directory or online at http://www.openafs.org/dl/license10.html
00008  */
00009 
00010 #ifndef OPENAFS_WINNT_AFSD_AFSD_H
00011 #define OPENAFS_WINNT_AFSD_AFSD_H 1
00012 
00013 #define USE_BPLUS 1
00014 
00015 #include <afsconfig.h>
00016 #include <afs/param.h>
00017 
00018 BOOL InitClass(HANDLE);
00019 BOOL InitInstance(HANDLE, int);
00020 
00021 LONG APIENTRY MainWndProc(HWND, unsigned int, unsigned int, long);
00022 BOOL APIENTRY About(HWND, unsigned int, unsigned int, long);
00023 
00024 #include <nb30.h>
00025 
00026 #include "cm.h"
00027 #include "cm_nls.h"
00028 
00029 #include <osi.h>
00030 #include <afs/vldbint.h>
00031 #include <afs/afsint.h>
00032 #define FSINT_COMMON_XG
00033 
00034 #include <afs/prs_fs.h>
00035 
00036 #include "cm_config.h"
00037 #include "cm_user.h"
00038 #include "cm_scache.h"
00039 #include "cm_callback.h"
00040 #ifdef DISKCACHE95
00041 #include "cm_diskcache95.h"
00042 #endif /* DISKCACHE95 */
00043 #include "cm_conn.h"
00044 #include "cm_cell.h"
00045 #include "cm_aclent.h"
00046 #include "cm_server.h"
00047 #include "cm_volstat.h"
00048 #include "cm_volume.h"
00049 #include "cm_dcache.h"
00050 #include "cm_access.h"
00051 #include "cm_eacces.h"
00052 #include "cm_dir.h"
00053 #include "cm_utils.h"
00054 #include "cm_vnodeops.h"
00055 #include "cm_btree.h"
00056 #include "cm_daemon.h"
00057 #include "cm_ioctl.h"
00058 #include "smb_iocons.h"
00059 #include "cm_dnlc.h"
00060 #include "cm_buf.h"
00061 #include "cm_memmap.h"
00062 #include "cm_freelance.h"
00063 #include "cm_performance.h"
00064 #include "cm_rdr.h"
00065 #include "afsd_init.h"
00066 #include "afsd_eventlog.h"
00067 
00068 
00069 #define AFS_DAEMON_SERVICE_NAME AFSREG_CLT_SVC_NAME
00070 #define AFS_DAEMON_EVENT_NAME   AFSREG_CLT_SW_NAME
00071 
00072 void afs_exit();
00073 
00074 extern void afsi_log(char *pattern, ...);
00075 
00076 /* globals from the base afsd */
00077 
00078 extern int cm_logChunkSize;
00079 extern int cm_chunkSize;
00080 
00081 extern cm_volume_t *cm_rootVolumep;
00082 
00083 extern cm_cell_t *cm_rootCellp;
00084 
00085 extern cm_fid_t cm_rootFid;
00086 
00087 extern cm_scache_t *cm_rootSCachep;
00088 
00089 extern osi_log_t *afsd_logp;
00090 
00091 extern fschar_t cm_mountRoot[];
00092 extern DWORD cm_mountRootLen;
00093 
00094 extern clientchar_t cm_mountRootC[];
00095 extern DWORD cm_mountRootCLen;
00096 
00097 extern char cm_CachePath[];
00098 
00099 extern BOOL isGateway;
00100 
00101 extern BOOL reportSessionStartups;
00102 
00103 #ifdef AFS_FREELANCE_CLIENT
00104 extern char *cm_FakeRootDir;                            // the fake root.afs directory
00105 
00106 extern int cm_fakeDirSize;                              // size (in bytes) of fake root.afs directory
00107 
00108 extern int cm_fakeDirCallback;                          // state of the fake root.afs directory. indicates
00109                                                         // if it needs to be refreshed
00110 
00111 extern int cm_fakeGettingCallback;                      // 1 if currently updating the fake root.afs directory,
00112                                                         // 0 otherwise
00113 #endif /* AFS_FREELANCE_CLIENT */
00114 
00115 extern int cm_dnsEnabled;
00116 extern int cm_readonlyVolumeVersioning;
00117 extern int cm_shortNames;
00118 
00119 extern long rx_mtu;
00120 
00121 extern HANDLE WaitToTerminate;
00122 
00123 extern int RDR_Initialized;
00124 
00125 extern afs_uint32 smb_Enabled;
00126 
00127 extern int cm_virtualCache;
00128 
00129 extern afs_int32 cm_verifyData;
00130 
00131 #define DFS_SUPPORT 1
00132 #define LOG_PACKET 1
00133 #undef  NOTSERVICE
00134 #define LOCK_TESTING 1
00135 
00136 #define WORKER_THREADS 10
00137 
00138 #define AFSD_HOOK_DLL  "afsdhook.dll"
00139 #define AFSD_INIT_HOOK "AfsdInitHook"
00140 typedef BOOL ( APIENTRY * AfsdInitHook )(void);
00141 #define AFSD_RX_STARTED_HOOK "AfsdRxStartedHook"
00142 typedef BOOL ( APIENTRY * AfsdRxStartedHook )(void);
00143 #define AFSD_SMB_STARTED_HOOK "AfsdSmbStartedHook"
00144 typedef BOOL ( APIENTRY * AfsdSmbStartedHook )(void);
00145 #define AFSD_STARTED_HOOK "AfsdStartedHook"
00146 typedef BOOL ( APIENTRY * AfsdStartedHook )(void);
00147 #define AFSD_DAEMON_HOOK "AfsdDaemonHook"
00148 typedef BOOL ( APIENTRY * AfsdDaemonHook )(void);
00149 #define AFSD_STOPPING_HOOK "AfsdStoppingHook"
00150 typedef BOOL ( APIENTRY * AfsdStoppingHook )(void);
00151 #define AFSD_STOPPED_HOOK "AfsdStoppedHook"
00152 typedef BOOL ( APIENTRY * AfsdStoppedHook )(void);
00153 
00154 #define SERVICE_CONTROL_CUSTOM_DUMP 128
00155 #endif /* OPENAFS_WINNT_AFSD_AFSD_H */
 All Data Structures Files Functions Variables