1 /*
2  * socks5p.h -- Compatability shim for <socks.h>, public domain
3  *
4  * If you #define INCLUDE_PROTOTYPES, then socks5 will try to
5  * #include "socks5p.h" which isn't installed normally.  But on amd64,
6  * we *must* have prototypes to get functions ilke localtime() correct.
7  * So this file provides the limited set of things necessary to make
8  * #define INCLUDE_PROTOTYPES work with <socks.h>
9  */
10 #ifndef __socks5p_h__
11 #define __socks5p_h__
12 
13 #include <setjmp.h>
14 
15 #ifndef P
16 #define P(x) x
17 #endif
18 
19 #ifndef LIBPREFIX
20 #ifdef USE_SOCKS4_PREFIX
21 #define LIBPREFIX(x)  R ## x
22 #else
23 #define LIBPREFIX(x)  SOCKS ## x
24 #endif
25 #endif
26 
27 #ifndef IORETTYPE
28 #define IORETTYPE int
29 #endif
30 
31 #ifndef IOPTRTYPE
32 #define IOPTRTYPE void *
33 #endif
34 
35 #ifndef IOLENTYPE
36 #define IOLENTYPE size_t
37 #endif
38 
39 #endif /* __socks5p_h__ */
40