/* Unix SMB/Netbios implementation. Version 2.0 Winbind daemon for ntdom nss module Copyright (C) Tim Potter 2000 This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef _NTDOM_CONFIG_H #define _NTDOM_CONFIG_H /* Include header files from data in config.h file */ #include <config.h> #include <stdio.h> #ifdef HAVE_STDLIB_H #include <stdlib.h> #endif #ifdef HAVE_UNISTD_H #include <unistd.h> #endif #ifdef HAVE_SYS_SOCKET_H #include <sys/socket.h> #endif #ifdef HAVE_SYS_UN_H #include <sys/un.h> #endif #ifdef HAVE_SYS_TIME_H #include <sys/time.h> #endif #ifdef HAVE_GRP_H #include <grp.h> #endif #include <sys/types.h> #include <sys/stat.h> #include <errno.h> #include <pwd.h> #ifdef HAVE_NSS_H #include <nss.h> #else /* Minimal needed to compile.. */ enum nss_status { NSS_STATUS_SUCCESS, NSS_STATUS_NOTFOUND, NSS_STATUS_UNAVAIL }; #endif /* I'm trying really hard not to include anything from smb.h with the result of some silly looking redeclaration of structures. */ #ifndef _PSTRING #define _PSTRING #define PSTRING_LEN 1024 #define FSTRING_LEN 128 typedef char pstring[PSTRING_LEN]; typedef char fstring[FSTRING_LEN]; #endif #ifndef _BOOL #define _BOOL /* So we don't typedef BOOL again in vfs.h */ #define False (0) #define True (1) #define Auto (2) typedef int BOOL; #endif #if !defined(uint32) #if (SIZEOF_INT == 4) #define uint32 unsigned int #elif (SIZEOF_LONG == 4) #define uint32 unsigned long #elif (SIZEOF_SHORT == 4) #define uint32 unsigned short #endif #endif #if !defined(uint16) #if (SIZEOF_SHORT == 4) #define uint16 __ERROR___CANNOT_DETERMINE_TYPE_FOR_INT16; #else /* SIZEOF_SHORT != 4 */ #define uint16 unsigned short #endif /* SIZEOF_SHORT != 4 */ #endif #ifndef uint8 #define uint8 unsigned char #endif /* zero a structure */ #define ZERO_STRUCT(x) memset((char *)&(x), 0, sizeof(x)) /* zero a structure given a pointer to the structure */ #define ZERO_STRUCTP(x) { if ((x) != NULL) memset((char *)(x), 0, sizeof(*(x))); } #endif