Windows: Direct IO Support for Service
[openafs.git] / src / WINNT / afsd / fs_utils.h
1 /*
2  * Copyright 2000, International Business Machines Corporation and others.
3  * All Rights Reserved.
4  *
5  * This software has been released under the terms of the IBM Public
6  * License.  For details, see the LICENSE file in the top-level source
7  * directory or online at http://www.openafs.org/dl/license10.html
8  */
9
10 #ifndef OPENAFS_WINNT_AFSD_FS_UTILS_H
11 #define OPENAFS_WINNT_AFSD_FS_UTILS_H 1
12
13
14 /* pioctl opcode constants */
15 #include "smb_iocons.h"
16
17 /* PRSFS_ constants */
18 #include <afs/prs_fs.h>
19 #include <afs/pioctl_nt.h>
20
21 #ifndef _MFC_VER
22 #include <winsock2.h>
23 #endif
24
25 /* Fake error code since NT errno.h doesn't define it */
26 #include <afs/errmap_nt.h>
27
28 #ifndef hostutil_GetNameByINet
29 extern char *hostutil_GetNameByINet(afs_uint32 addr);
30 #endif
31
32 #ifndef hostutil_GetHostByName
33 extern struct hostent *hostutil_GetHostByName(char *namep);
34 #endif
35
36 extern afs_int32 util_GetInt32(char *stringp, afs_int32 *valuep);
37
38 extern void fs_utils_InitMountRoot();
39
40 extern long fs_StripDriveLetter(char *inPathp, char *outPathp, size_t outSize);
41
42 extern long fs_ExtractDriveLetter(char *inPathp, char *outPathp);
43
44 extern long fs_GetFullPath(char *pathp, char *outPathp, size_t outSize);
45
46 extern char *fs_GetParent(char *apath);
47
48 extern int fs_InAFS(char *apath);
49
50 extern int fs_IsFreelanceRoot(char *apath);
51
52 #define NETBIOSNAMESZ 1024
53 extern const char * fs_NetbiosName(void);
54
55 extern BOOL fs_IsAdmin (void);
56
57 extern char **fs_MakeUtf8Cmdline(int argc, const wchar_t **wargv);
58
59 extern void fs_FreeUtf8CmdLine(int argc, char ** argv);
60
61 extern void fs_Die(int code, char *filename);
62
63 extern const char * fs_filetypestr(afs_uint32 type);
64
65 extern void fs_SetProcessName(const char *name);
66
67 extern char *cm_mount_root;             /*"afs"*/
68 extern char *cm_slash_mount_root;       /*"/afs"*/
69 extern char *cm_back_slash_mount_root;  /*"\\afs"*/
70 extern void fs_utils_InitMountRoot();
71 #endif /* OPENAFS_WINNT_AFSD_FS_UTILS_H */