afsutil-protos-20030407
[openafs.git] / src / util / afsutil_prototypes.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 _AFSUTIL_PROTOTYPES_H
11 #define _AFSUTIL_PROTOTYPES_H
12
13 /* afs_atomlist.c */
14
15
16 /* afs_lhash.c */
17
18
19 /* assert.c */
20 extern void AssertionFailed(char *file, int line);
21
22
23 /* base32.c */
24 extern char *int_to_base32(b32_string_t s, int a);
25 extern int base32_to_int(char *s);
26
27 /* base64.c */
28 extern char *int_to_base64(b64_string_t s, int a);
29 extern int base64_to_int(char *s);
30
31 /* casestrcpy.c */
32 extern char *lcstring (char *d, char *s, int n);
33 extern char *ucstring (char *d, char *s, int n);
34 extern char *strcompose(char *buf, size_t len, ...);
35
36 /* dirpath.c */
37 extern unsigned int initAFSDirPath(void);
38 extern const char *getDirPath(afsdir_id_t string_id);
39 extern int ConstructLocalPath(const char *cpath, const char *relativeTo,
40                               char **fullPathBufp);
41 extern int ConstructLocalBinPath(const char *cpath, char **fullPathBufp);
42 extern int ConstructLocalLogPath(const char *cpath, char **fullPathBufp);
43
44 /* errmap_nt.c */
45 extern int nterr_nt2unix(long ntErr, int defaultErr);
46
47 /* fileutil.c */
48 extern int renamefile(const char *oldname, const char *newname);
49 extern void FilepathNormalizeEx(char *path, int slashType);
50 extern void FilepathNormalize(char *path);
51
52 /* flipbase64.c */
53 extern char *int_to_base32(b32_string_t s, int a);
54 extern int base32_to_int(char *s);
55 #if defined(AFS_NAMEI_ENV) && !defined(AFS_NT40_ENV)
56 /* base 64 converters for namei interface. Flip bits to differences are
57  * early in name.
58  */
59 #ifdef AFS_64BIT_ENV
60 #define int32_to_flipbase64(S, A) int64_to_flipbase64(S, (afs_int64)(A))
61 extern char *int64_to_flipbase64(lb64_string_t s, afs_int64 a);
62 extern afs_int64 flipbase64_to_int64(char *s);
63 #else
64 #define int32_to_flipbase64(S, A) int64_to_flipbase64(S, (u_int64_t)(A))
65 extern char *int64_to_flipbase64(lb64_string_t s, u_int64_t a);
66 extern int64_t flipbase64_to_int64(char *s);
67 #endif
68 #endif
69
70 /* get_krbrlm.c */
71 extern int afs_krb_get_lrealm(char *r, int n);
72
73 /* hostparse.c */
74 extern struct hostent *hostutil_GetHostByName(register char *ahost);
75 extern char *hostutil_GetNameByINet(afs_uint32 addr);
76 extern afs_uint32 extractAddr(char *line, int maxSize);
77 extern char *afs_inet_ntoa(afs_uint32 addr);
78 extern char *afs_inet_ntoa_r(afs_uint32 addr, char *buf);
79 extern char *gettmpdir(void);
80
81 /* hputil.c */
82 #ifdef AFS_HPUX_ENV
83 #ifndef AFS_HPUX102_ENV
84 extern int utimes(char *file, struct timeval tvp[2]);
85 #endif
86 extern int random(void);
87 extern void srandom(int seed);
88 extern int getdtablesize(void);
89 extern void setlinebuf(FILE *file);
90 extern void psignal(unsigned int sig, char *s);
91 #endif
92
93 /* isathing.c */
94 extern int util_isint(char *str);
95
96 /* kreltime.c */
97 extern afs_int32 ktimeRelDate_ToInt32(struct ktime_date *kdptr);
98 extern int Int32To_ktimeRelDate(afs_int32 int32Date, struct ktime_date *kdptr);
99 extern int ktimeDate_FromInt32(afs_int32 timeSecs, struct ktime_date *ktimePtr);
100 extern afs_int32 ParseRelDate(char *dateStr, struct ktime_date *relDatePtr);
101 extern char *RelDatetoString(struct ktime_date *datePtr);
102 extern afs_int32 Add_RelDate_to_Time(struct ktime_date *relDatePtr, afs_int32 atime);
103
104 /* ktime.c */
105 extern char *ktime_DateOf(afs_int32 atime);
106 extern afs_int32 ktime_Str2int32(register char *astr);
107 extern int ktime_ParsePeriodic(char *adate, register struct ktime *ak);
108 extern int ktime_DisplayString(struct ktime *aparm, register char *astring);
109 extern afs_int32 ktime_next(struct ktime *aktime, afs_int32 afrom);
110 extern afs_int32 ktime_DateToInt32(char *adate, afs_int32 *aint32);
111 extern char *ktime_GetDateUsage(void);
112 extern afs_int32 ktime_InterpretDate(struct ktime_date *akdate);
113
114 /* netutils.c */
115 extern afs_uint32 extract_Addr(char *line, int maxSize);
116 extern int parseNetRestrictFile(afs_uint32 outAddrs[], afs_uint32 *mask, afs_uint32 *mtu,   
117         afs_uint32 maxAddrs, afs_uint32 *nAddrs, char reason[], const char *fileName);
118 extern int ParseNetInfoFile(afs_uint32 *final, afs_uint32 *mask, afs_uint32 *mtu, 
119         int max, char reason[], const char *fileName);
120 extern int filterAddrs(afs_uint32 addr1[], afs_uint32 addr2[], 
121         afs_uint32 mask1[], afs_uint32 mask2[], 
122         afs_uint32 mtu1[], afs_uint32 mtu2[], 
123         int n1, int n2);
124 extern int parseNetFiles(afs_uint32 addrbuf[], afs_uint32 maskbuf[], afs_uint32 mtubuf[], 
125         afs_uint32 max, char reason[], const char *niFileName, const char *nrFileName);
126
127
128 /* pthread_glock.c */
129
130
131 /* readdir_nt.c */
132
133
134 /* regex.c */
135
136
137 /* secutil_nt.c */
138
139
140 /* serverLog.c */
141 extern void WriteLogBuffer(char *buf, afs_uint32 len);
142 extern void SetDebug_Signal(int signo);
143 extern void ResetDebug_Signal(int signo);
144 extern void SetupLogSignals(void);
145 extern int OpenLog(const char *fileName);
146 extern int ReOpenLog(const char *fileName);
147
148 /* snprintf.c */
149
150
151 /* sys.c */
152
153
154 /* uuid.c */
155 extern afs_int32 afs_uuid_equal(afsUUID *u1, afsUUID *u2);
156 extern afs_int32 afs_uuid_is_nil(afsUUID *u1);
157 extern void afs_htonuuid(afsUUID *uuidp);
158 extern void afs_ntohuuid(afsUUID *uuidp);
159 extern afs_int32 afs_uuid_create (afsUUID *uuid);
160 extern u_short afs_uuid_hash (afsUUID *uuid);
161
162 /* volparse.c */
163 extern afs_int32 volutil_GetPartitionID(char *aname);
164 extern char *volutil_PartitionName_r(int avalue, char *tbuffer, int buflen);
165 extern char *volutil_PartitionName(int avalue);
166 extern afs_int32 util_GetInt32(register char *as, afs_int32 *aval);
167 extern afs_uint32 util_GetUInt32(register char *as, afs_uint32 *aval);
168
169 /* winsock_nt.c */
170
171
172 #endif /* _AFSUTIL_PROTOTYPES_H */
173