1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-19 10:03:58 +03:00
Tim Potter 6c33130c0f Cleanup of winbind client side code.
Mostly this consists of untangling the existing code and moving it in
to operating system specific files.  The winbind client code for all
supported operating systems is now in nsswitch/winbind_nss_OSNAME.[ch]
to make things a bit clearer.
(This used to be commit 93ea047a16a292b23a1d8736ce9bc4098ba142ba)
2003-03-31 04:36:01 +00:00

105 lines
2.4 KiB
C

#ifndef _NSSWITCH_NSS_H
#define _NSSWITCH_NSS_H
/*
Unix SMB/CIFS implementation.
a common place to work out how to define NSS_STATUS on various
platforms
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.
*/
#ifdef HAVE_NSS_COMMON_H
/* Sun Solaris */
#include <nss_common.h>
#include <nss_dbdefs.h>
#include <nsswitch.h>
typedef nss_status_t NSS_STATUS;
#define NSS_STATUS_SUCCESS NSS_SUCCESS
#define NSS_STATUS_NOTFOUND NSS_NOTFOUND
#define NSS_STATUS_UNAVAIL NSS_UNAVAIL
#define NSS_STATUS_TRYAGAIN NSS_TRYAGAIN
#elif HAVE_NSS_H
/* GNU */
#include <nss.h>
typedef enum nss_status NSS_STATUS;
#elif HAVE_NS_API_H
/* SGI IRIX */
/* following required to prevent warnings of double definition
* of datum from ns_api.h
*/
#ifdef DATUM
#define _DATUM_DEFINED
#endif
#include <ns_api.h>
typedef enum
{
NSS_STATUS_SUCCESS=NS_SUCCESS,
NSS_STATUS_NOTFOUND=NS_NOTFOUND,
NSS_STATUS_UNAVAIL=NS_UNAVAIL,
NSS_STATUS_TRYAGAIN=NS_TRYAGAIN
} NSS_STATUS;
#define NSD_MEM_STATIC 0
#define NSD_MEM_VOLATILE 1
#define NSD_MEM_DYNAMIC 2
#elif defined(HPUX) && defined(HAVE_NSSWITCH_H)
/* HP-UX 11 */
#include "nsswitch/hp_nss_common.h"
#include "nsswitch/hp_nss_dbdefs.h"
#include <nsswitch.h>
#ifndef _HAVE_TYPEDEF_NSS_STATUS
#define _HAVE_TYPEDEF_NSS_STATUS
typedef nss_status_t NSS_STATUS;
#define NSS_STATUS_SUCCESS NSS_SUCCESS
#define NSS_STATUS_NOTFOUND NSS_NOTFOUND
#define NSS_STATUS_UNAVAIL NSS_UNAVAIL
#define NSS_STATUS_TRYAGAIN NSS_TRYAGAIN
#endif /* HPUX */
#else /* Nothing's defined. Neither gnu nor sun nor hp */
typedef enum
{
NSS_STATUS_SUCCESS=0,
NSS_STATUS_NOTFOUND=1,
NSS_STATUS_UNAVAIL=2,
NSS_STATUS_TRYAGAIN=3
} NSS_STATUS;
#endif
#endif /* _NSSWITCH_NSS_H */