2 * Copyright 2000, International Business Machines Corporation and others.
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
10 #ifndef OPENAFS_WINNT_AFSD_FS_UTILS_H
11 #define OPENAFS_WINNT_AFSD_FS_UTILS_H 1
14 /* pioctl opcode constants */
15 #include "smb_iocons.h"
17 /* PRSFS_ constants */
18 #include <afs/prs_fs.h>
19 #include <afs/pioctl_nt.h>
25 /* Fake error code since NT errno.h doesn't define it */
26 #include <afs/errmap_nt.h>
28 #ifndef hostutil_GetNameByINet
29 extern char *hostutil_GetNameByINet(afs_uint32 addr);
32 #ifndef hostutil_GetHostByName
33 extern struct hostent *hostutil_GetHostByName(char *namep);
36 extern afs_int32 util_GetInt32(char *stringp, afs_int32 *valuep);
38 extern void fs_utils_InitMountRoot();
40 extern long fs_StripDriveLetter(char *inPathp, char *outPathp, size_t outSize);
42 extern long fs_ExtractDriveLetter(char *inPathp, char *outPathp);
44 extern long fs_GetFullPath(char *pathp, char *outPathp, size_t outSize);
46 extern char *fs_GetParent(char *apath);
48 extern int fs_InAFS(char *apath);
50 extern int fs_IsFreelanceRoot(char *apath);
52 #define NETBIOSNAMESZ 1024
53 extern const char * fs_NetbiosName(void);
55 extern BOOL fs_IsAdmin (void);
57 extern char **fs_MakeUtf8Cmdline(int argc, const wchar_t **wargv);
59 extern void fs_FreeUtf8CmdLine(int argc, char ** argv);
61 extern void fs_Die(int code, char *filename);
63 extern const char * fs_filetypestr(afs_uint32 type);
65 extern void fs_SetProcessName(const char *name);
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 */