afsconfig-and-rcsid-all-around-20010705
[openafs.git] / src / afsweb / apache_afs_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 _APACHE_AFS_UTILS_H_INCLUDED_
11 #define _APACHE_AFS_UTILS_H_INCLUDED_ 
12
13 #include <limits.h>
14 #include <stdio.h>
15
16 #include <afs/vice.h>
17 #include <afs/kautils.h>
18
19 #include <netinet/in.h>    /* had to put this for in_addr used in venus.h */
20 #include <afs/venus.h>     /* for pioctl opcode defines */
21
22 #include "assert.h"
23
24 #ifndef MAX
25 #define MAX(A,B)                ((A)>(B)?(A):(B))
26 #endif /* !MAX */
27 #ifndef MIN
28 #define MIN(A,B)                ((A)<(B)?(A):(B))
29 #endif /* !MAX */
30
31
32 extern int do_pioctl(char *in_buffer, int in_size, 
33                      char *out_buffer, int out_size, 
34                      int opcode, char *path, int followSymLinks);
35
36 extern int flipPrimary(char *tokenBuf);
37 extern afs_int32 getPAG();
38 extern int haveToken();
39
40 extern u_long afsDebugLevel;
41 #define afslog(level,str) if (level <= afsDebugLevel) (afsLogError str)
42
43 /* these are routines used solely for debugging purposes */
44 extern void hexDump(char *tbuffer, int len);
45 extern void parseToken(char *buf);
46 extern int printGroups();
47
48
49 #endif /*_APACHE_AFS_UTILS_H_INCLUDED_ */