a4392b614e2801d9ec5db9334b4a0d6047fa0ae8
[nivanova/samba-autobuild/.git] / source3 / nsswitch / winbind_nss_config.h
1 /* 
2    Unix SMB/CIFS implementation.
3
4    Winbind daemon for ntdom nss module
5
6    Copyright (C) Tim Potter 2000
7    
8    This library is free software; you can redistribute it and/or
9    modify it under the terms of the GNU Library General Public
10    License as published by the Free Software Foundation; either
11    version 3 of the License, or (at your option) any later version.
12    
13    This library is distributed in the hope that it will be useful,
14    but WITHOUT ANY WARRANTY; without even the implied warranty of
15    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16    Library General Public License for more details.
17    
18    You should have received a copy of the GNU Library General Public License
19    along with this program.  If not, see <http://www.gnu.org/licenses/>.
20 */
21
22 #ifndef _WINBIND_NSS_CONFIG_H
23 #define _WINBIND_NSS_CONFIG_H
24
25 /* shutup the compiler warnings due to krb5.h on 64-bit sles9 */
26 #ifdef SIZEOF_LONG
27 #undef SIZEOF_LONG
28 #endif
29
30
31 /* Include header files from data in config.h file */
32
33 #ifndef NO_CONFIG_H
34 #include "lib/replace/replace.h"
35 #endif
36
37 #include "system/passwd.h"
38 #include "system/filesys.h"
39 #include "system/network.h"
40
41 #include "nsswitch/winbind_nss.h"
42
43 /* I'm trying really hard not to include anything from smb.h with the
44    result of some silly looking redeclaration of structures. */
45
46 #ifndef _PSTRING
47 #define _PSTRING
48 #define PSTRING_LEN 1024
49 #define FSTRING_LEN 256
50 typedef char pstring[PSTRING_LEN];
51 typedef char fstring[FSTRING_LEN];
52 #endif
53
54 #ifndef _UPPER_BOOL
55 #define _UPPER_BOOL
56 #define False (0)
57 #define True (1)
58 #define Auto (2)
59 typedef int BOOL;
60 #endif
61
62 #if !defined(uint32)
63 #if (SIZEOF_INT == 4)
64 #define uint32 unsigned int
65 #elif (SIZEOF_LONG == 4)
66 #define uint32 unsigned long
67 #elif (SIZEOF_SHORT == 4)
68 #define uint32 unsigned short
69 #endif
70 #endif
71
72 #if !defined(uint16)
73 #if (SIZEOF_SHORT == 4)
74 #define uint16 __ERROR___CANNOT_DETERMINE_TYPE_FOR_INT16;
75 #else /* SIZEOF_SHORT != 4 */
76 #define uint16 unsigned short
77 #endif /* SIZEOF_SHORT != 4 */
78 #endif
79
80 #ifndef uint8
81 #define uint8 unsigned char
82 #endif
83
84 /*
85  * check for 8 byte long long
86  */
87
88 #if !defined(uint64)
89 #if (SIZEOF_LONG == 8)
90 #define uint64 unsigned long
91 #elif (SIZEOF_LONG_LONG == 8)
92 #define uint64 unsigned long long
93 #endif  /* don't lie.  If we don't have it, then don't use it */
94 #endif
95
96 #if !defined(int64)
97 #if (SIZEOF_LONG == 8)
98 #define int64 long
99 #elif (SIZEOF_LONG_LONG == 8)
100 #define int64 long long
101 #endif  /* don't lie.  If we don't have it, then don't use it */
102 #endif
103
104 /* Some systems (SCO) treat UNIX domain sockets as FIFOs */
105
106 #ifndef S_IFSOCK
107 #define S_IFSOCK S_IFIFO
108 #endif
109
110 #ifndef S_ISSOCK
111 #define S_ISSOCK(mode)  ((mode & S_IFSOCK) == S_IFSOCK)
112 #endif
113
114 #ifndef HAVE_SOCKLEN_T_TYPE
115 #define HAVE_SOCKLEN_T_TYPE
116 typedef int socklen_t;
117 #endif
118
119 #endif