Import Upstream version 1.8.5
[hcoop/debian/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, char *out_buffer,
33 int out_size, int opcode, char *path,
34 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_ */