2000-05-09 15:43:00 +04:00
/*
2002-01-30 09:08:46 +03:00
Unix SMB / CIFS implementation .
2000-05-09 15:43:00 +04:00
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 .
*/
2001-06-07 11:14:17 +04:00
# ifndef _WINBIND_NSS_CONFIG_H
# define _WINBIND_NSS_CONFIG_H
2000-05-09 15:43:00 +04:00
/* Include header files from data in config.h file */
2002-09-25 19:47:01 +04:00
# ifndef NO_CONFIG_H
2000-05-09 15:43:00 +04:00
# include <config.h>
2002-09-25 19:47:01 +04:00
# endif
2000-05-09 15:43:00 +04:00
# include <stdio.h>
# ifdef HAVE_STDLIB_H
# include <stdlib.h>
# endif
# ifdef HAVE_UNISTD_H
# include <unistd.h>
# endif
2002-09-25 19:19:00 +04:00
# ifdef HAVE_SYS_SELECT_H
# include <sys/select.h>
# endif
2000-05-09 15:43:00 +04:00
# ifdef HAVE_SYS_SOCKET_H
# include <sys/socket.h>
# endif
2001-07-25 07:28:45 +04:00
# ifdef HAVE_UNIXSOCKET
2000-05-09 15:43:00 +04:00
# include <sys/un.h>
# endif
# ifdef HAVE_SYS_TIME_H
# include <sys/time.h>
# endif
# ifdef HAVE_GRP_H
# include <grp.h>
# endif
2001-09-05 12:11:17 +04:00
# ifdef HAVE_STRING_H
# include <string.h>
# endif
2002-09-25 19:19:00 +04:00
# ifdef HAVE_FCNTL_H
# include <fcntl.h>
# else
# ifdef HAVE_SYS_FCNTL_H
# include <sys/fcntl.h>
# endif
# endif
2000-05-09 15:43:00 +04:00
# include <sys/types.h>
# include <sys/stat.h>
# include <errno.h>
# include <pwd.h>
2003-04-02 10:16:15 +04:00
# include "nsswitch/winbind_nss.h"
2001-04-25 09:47:50 +04:00
2000-05-09 15:43:00 +04:00
/* 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
2001-04-13 23:12:06 +04:00
# define FSTRING_LEN 256
2000-05-09 15:43:00 +04:00
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 */
2002-07-15 14:35:28 +04:00
# ifndef ZERO_STRUCT
2000-05-09 15:43:00 +04:00
# define ZERO_STRUCT(x) memset((char *)&(x), 0, sizeof(x))
2002-07-15 14:35:28 +04:00
# endif
2000-05-09 15:43:00 +04:00
/* zero a structure given a pointer to the structure */
2002-07-15 14:35:28 +04:00
# ifndef ZERO_STRUCTP
2000-05-09 15:43:00 +04:00
# define ZERO_STRUCTP(x) { if ((x) != NULL) memset((char *)(x), 0, sizeof(*(x))); }
2002-07-15 14:35:28 +04:00
# endif
2001-05-08 09:56:10 +04:00
/* Some systems (SCO) treat UNIX domain sockets as FIFOs */
# ifndef S_IFSOCK
# define S_IFSOCK S_IFIFO
# endif
# ifndef S_ISSOCK
# define S_ISSOCK(mode) ((mode & S_IFSOCK) == S_IFSOCK)
# endif
2000-05-09 15:43:00 +04:00
# endif