summaryrefslogtreecommitdiff
path: root/ldap-nss.h
diff options
context:
space:
mode:
authorArthur de Jong <arthur@arthurdejong.org>2006-10-12 12:32:06 +0000
committerArthur de Jong <arthur@arthurdejong.org>2006-10-12 12:32:06 +0000
commitf1de6decf34b37672e2c4cc3d191b689a95d07d1 (patch)
tree4a20e4a3761d319f2e9d698170c9b7d5f1b80065 /ldap-nss.h
parentfc7cea9f90281ecc8fe97eb3e1767ea814c99a8f (diff)
some more small cleanups of code for non-supported systems and convert tabs to spaces
git-svn-id: http://arthurdejong.org/svn/nss-pam-ldapd/libnss_ldapd@13 ef36b2f9-881f-0410-afb5-c4e39611909c
Diffstat (limited to 'ldap-nss.h')
-rw-r--r--ldap-nss.h240
1 files changed, 112 insertions, 128 deletions
diff --git a/ldap-nss.h b/ldap-nss.h
index 74d1b02..b60fe37 100644
--- a/ldap-nss.h
+++ b/ldap-nss.h
@@ -87,23 +87,23 @@
* unacceptable, in which case you may wish to adjust
* the constants below.
*/
-#define LDAP_NSS_TRIES 5 /* number of sleeping reconnect attempts */
-#define LDAP_NSS_SLEEPTIME 4 /* seconds to sleep; doubled until max */
-#define LDAP_NSS_MAXSLEEPTIME 64 /* maximum seconds to sleep */
-#define LDAP_NSS_MAXCONNTRIES 2 /* reconnect attempts before sleeping */
+#define LDAP_NSS_TRIES 5 /* number of sleeping reconnect attempts */
+#define LDAP_NSS_SLEEPTIME 4 /* seconds to sleep; doubled until max */
+#define LDAP_NSS_MAXSLEEPTIME 64 /* maximum seconds to sleep */
+#define LDAP_NSS_MAXCONNTRIES 2 /* reconnect attempts before sleeping */
#define LDAP_NSS_MAXGR_DEPTH 16 /* maximum depth of group nesting for getgrent()/initgroups() */
#if LDAP_NSS_NGROUPS > 64
-#define LDAP_NSS_BUFLEN_GROUP (NSS_BUFSIZ + (LDAP_NSS_NGROUPS * (sizeof (char *) + LOGNAME_MAX)))
+#define LDAP_NSS_BUFLEN_GROUP (NSS_BUFSIZ + (LDAP_NSS_NGROUPS * (sizeof (char *) + LOGNAME_MAX)))
#else
-#define LDAP_NSS_BUFLEN_GROUP NSS_BUFSIZ
+#define LDAP_NSS_BUFLEN_GROUP NSS_BUFSIZ
#endif /* LDAP_NSS_NGROUPS > 64 */
-#define LDAP_NSS_BUFLEN_DEFAULT 0
+#define LDAP_NSS_BUFLEN_DEFAULT 0
#ifdef HAVE_USERSEC_H
-#define LDAP_NSS_MAXUESS_ATTRS 8 /* maximum number of attributes in a getentry call */
+#define LDAP_NSS_MAXUESS_ATTRS 8 /* maximum number of attributes in a getentry call */
#endif /* HAVE_USERSEC_H */
#define LDAP_PAGESIZE 1000
@@ -169,11 +169,11 @@ debug (char *fmt, ...)
#endif /* __GNUC__ */
#define align(ptr, blen, TYPE) do { \
- char *qtr = ptr; \
- ptr += alignof(TYPE) - 1; \
- ptr -= ((ptr - (char *)NULL) % alignof(TYPE)); \
- blen -= (ptr - qtr); \
- } while (0)
+ char *qtr = ptr; \
+ ptr += alignof(TYPE) - 1; \
+ ptr -= ((ptr - (char *)NULL) % alignof(TYPE)); \
+ blen -= (ptr - qtr); \
+ } while (0)
/* worst case */
#define bytesleft(ptr, blen, TYPE) ( (blen < alignof(TYPE)) ? \
@@ -261,7 +261,7 @@ typedef struct ldap_service_search_descriptor
ldap_service_search_descriptor_t;
/* maximum number of URIs */
-#define NSS_LDAP_CONFIG_URI_MAX 31
+#define NSS_LDAP_CONFIG_URI_MAX 31
/*
* linked list of configurations pointing to LDAP servers. The first
@@ -483,19 +483,19 @@ struct ldap_args
typedef struct ldap_args ldap_args_t;
-#define LA_INIT(q) do { \
- (q).la_type = LA_TYPE_STRING; \
- (q).la_arg1.la_string = NULL; \
- (q).la_arg2.la_string = NULL; \
- (q).la_base = NULL; \
- } while (0)
-#define LA_TYPE(q) ((q).la_type)
-#define LA_STRING(q) ((q).la_arg1.la_string)
-#define LA_NUMBER(q) ((q).la_arg1.la_number)
-#define LA_TRIPLE(q) ((q).la_arg1.la_triple)
-#define LA_STRING_LIST(q) ((q).la_arg1.la_string_list)
-#define LA_STRING2(q) ((q).la_arg2.la_string)
-#define LA_BASE(q) ((q).la_base)
+#define LA_INIT(q) do { \
+ (q).la_type = LA_TYPE_STRING; \
+ (q).la_arg1.la_string = NULL; \
+ (q).la_arg2.la_string = NULL; \
+ (q).la_base = NULL; \
+ } while (0)
+#define LA_TYPE(q) ((q).la_type)
+#define LA_STRING(q) ((q).la_arg1.la_string)
+#define LA_NUMBER(q) ((q).la_arg1.la_number)
+#define LA_TRIPLE(q) ((q).la_arg1.la_triple)
+#define LA_STRING_LIST(q) ((q).la_arg1.la_string_list)
+#define LA_STRING2(q) ((q).la_arg2.la_string)
+#define LA_BASE(q) ((q).la_base)
#include "ldap-parse.h"
@@ -514,8 +514,8 @@ struct ldap_state
{
int ls_type;
int ls_retry;
-#define LS_TYPE_KEY (0)
-#define LS_TYPE_INDEX (1)
+#define LS_TYPE_KEY (0)
+#define LS_TYPE_INDEX (1)
union
{
/* ls_key is the requested attribute value.
@@ -531,17 +531,17 @@ typedef struct ldap_state ldap_state_t;
/*
* LS_INIT only used for enumeration contexts
*/
-#define LS_INIT(state) do { state.ls_type = LS_TYPE_INDEX; state.ls_retry = 0; state.ls_info.ls_index = -1; } while (0)
+#define LS_INIT(state) do { state.ls_type = LS_TYPE_INDEX; state.ls_retry = 0; state.ls_info.ls_index = -1; } while (0)
/*
* thread specific context: result chain, and state data
*/
struct ent_context
{
- ldap_state_t ec_state; /* eg. for services */
- int ec_msgid; /* message ID */
- LDAPMessage *ec_res; /* result chain */
- ldap_service_search_descriptor_t *ec_sd; /* current sd */
+ ldap_state_t ec_state; /* eg. for services */
+ int ec_msgid; /* message ID */
+ LDAPMessage *ec_res; /* result chain */
+ ldap_service_search_descriptor_t *ec_sd; /* current sd */
struct berval *ec_cookie; /* cookie for paged searches */
};
@@ -553,11 +553,11 @@ struct name_list
struct name_list *next;
};
-#define NSS_SUCCESS NSS_STATUS_SUCCESS
-#define NSS_NOTFOUND NSS_STATUS_NOTFOUND
-#define NSS_UNAVAIL NSS_STATUS_UNAVAIL
-#define NSS_TRYAGAIN NSS_STATUS_TRYAGAIN
-#define NSS_RETURN NSS_STATUS_RETURN
+#define NSS_SUCCESS NSS_STATUS_SUCCESS
+#define NSS_NOTFOUND NSS_STATUS_NOTFOUND
+#define NSS_UNAVAIL NSS_STATUS_UNAVAIL
+#define NSS_TRYAGAIN NSS_STATUS_TRYAGAIN
+#define NSS_RETURN NSS_STATUS_RETURN
/* to let us index a lookup table on enum nss_statuses */
@@ -568,39 +568,23 @@ struct name_list
#endif
typedef enum nss_status (*parser_t) (LDAPMessage *, ldap_state_t *, void *,
- char *, size_t);
+ char *, size_t);
/*
* Portable locking macro.
*/
-#if defined(HAVE_THREAD_H) && !defined(_AIX)
-#define NSS_LDAP_LOCK(m) mutex_lock(&m)
-#define NSS_LDAP_UNLOCK(m) mutex_unlock(&m)
-#define NSS_LDAP_DEFINE_LOCK(m) static mutex_t m = DEFAULTMUTEX
+#if defined(HAVE_THREAD_H)
+#define NSS_LDAP_LOCK(m) mutex_lock(&m)
+#define NSS_LDAP_UNLOCK(m) mutex_unlock(&m)
+#define NSS_LDAP_DEFINE_LOCK(m) static mutex_t m = DEFAULTMUTEX
#elif defined(HAVE_LIBC_LOCK_H) || defined(HAVE_BITS_LIBC_LOCK_H)
-#define NSS_LDAP_LOCK(m) __libc_lock_lock(m)
-#define NSS_LDAP_UNLOCK(m) __libc_lock_unlock(m)
-#define NSS_LDAP_DEFINE_LOCK(m) static pthread_mutex_t m = PTHREAD_MUTEX_INITIALIZER
+#define NSS_LDAP_LOCK(m) __libc_lock_lock(m)
+#define NSS_LDAP_UNLOCK(m) __libc_lock_unlock(m)
+#define NSS_LDAP_DEFINE_LOCK(m) static pthread_mutex_t m = PTHREAD_MUTEX_INITIALIZER
#elif defined(HAVE_PTHREAD_H)
-#ifdef HPUX
-# define NSS_LDAP_LOCK(m) __thread_mutex_lock(&m)
-# define NSS_LDAP_UNLOCK(m) __thread_mutex_unlock(&m)
-# define NSS_LDAP_DEFINE_LOCK(m) static pthread_mutex_t m = PTHREAD_MUTEX_INITIALIZER
-#elif defined(_AIX)
-# define NSS_LDAP_LOCK(m) do { \
- if (__multi_threaded) \
- pthread_mutex_lock(&m); \
- } while (0)
-# define NSS_LDAP_UNLOCK(m) do { \
- if (__multi_threaded) \
- pthread_mutex_unlock(&m); \
- } while (0)
-# define NSS_LDAP_DEFINE_LOCK(m) static pthread_mutex_t m = PTHREAD_MUTEX_INITIALIZER
-#else
-# define NSS_LDAP_LOCK(m) pthread_mutex_lock(&m)
-# define NSS_LDAP_UNLOCK(m) pthread_mutex_unlock(&m)
-# define NSS_LDAP_DEFINE_LOCK(m) static pthread_mutex_t m = PTHREAD_MUTEX_INITIALIZER
-#endif /* HPUX || _AIX */
+# define NSS_LDAP_LOCK(m) pthread_mutex_lock(&m)
+# define NSS_LDAP_UNLOCK(m) pthread_mutex_unlock(&m)
+# define NSS_LDAP_DEFINE_LOCK(m) static pthread_mutex_t m = PTHREAD_MUTEX_INITIALIZER
#else
#define NSS_LDAP_LOCK(m)
#define NSS_LDAP_UNLOCK(m)
@@ -673,94 +657,94 @@ const char **_nss_ldap_get_attributes (ldap_map_selector_t sel);
/*
* Synchronous search cover (caller acquires lock).
*/
-enum nss_status _nss_ldap_search_s (const ldap_args_t * args, /* IN */
- const char *filterprot, /* IN */
- ldap_map_selector_t sel, /* IN */
- const char **user_attrs, /* IN */
- int sizelimit, /* IN */
- LDAPMessage ** pRes /* OUT */ );
+enum nss_status _nss_ldap_search_s (const ldap_args_t * args, /* IN */
+ const char *filterprot, /* IN */
+ ldap_map_selector_t sel, /* IN */
+ const char **user_attrs, /* IN */
+ int sizelimit, /* IN */
+ LDAPMessage ** pRes /* OUT */ );
/*
* Asynchronous search cover (caller acquires lock).
*/
-enum nss_status _nss_ldap_search (const ldap_args_t * args, /* IN */
- const char *filterprot, /* IN */
- ldap_map_selector_t sel, /* IN */
- const char **user_attrs, /* IN */
- int sizelimit, /* IN */
- int *pMsgid, /* OUT */
- ldap_service_search_descriptor_t **s /*IN/OUT*/ );
+enum nss_status _nss_ldap_search (const ldap_args_t * args, /* IN */
+ const char *filterprot, /* IN */
+ ldap_map_selector_t sel, /* IN */
+ const char **user_attrs, /* IN */
+ int sizelimit, /* IN */
+ int *pMsgid, /* OUT */
+ ldap_service_search_descriptor_t **s /*IN/OUT*/ );
/*
* Emulate X.500 read operation.
*/
-enum nss_status _nss_ldap_read (const char *dn, /* IN */
- const char **attributes, /* IN */
- LDAPMessage ** pRes /* OUT */ );
+enum nss_status _nss_ldap_read (const char *dn, /* IN */
+ const char **attributes, /* IN */
+ LDAPMessage ** pRes /* OUT */ );
/*
* extended enumeration routine; uses asynchronous API.
* Caller must have acquired the global mutex
*/
enum nss_status _nss_ldap_getent_ex (ldap_args_t * args, /* IN */
- ent_context_t ** key, /* IN/OUT */
- void *result, /* IN/OUT */
- char *buffer, /* IN */
- size_t buflen, /* IN */
- int *errnop, /* OUT */
- const char *filterprot, /* IN */
- ldap_map_selector_t sel, /* IN */
- const char **user_attrs, /* IN */
- parser_t parser /* IN */ );
+ ent_context_t ** key, /* IN/OUT */
+ void *result, /* IN/OUT */
+ char *buffer, /* IN */
+ size_t buflen, /* IN */
+ int *errnop, /* OUT */
+ const char *filterprot, /* IN */
+ ldap_map_selector_t sel, /* IN */
+ const char **user_attrs, /* IN */
+ parser_t parser /* IN */ );
/*
* common enumeration routine; uses asynchronous API.
* Acquires the global mutex
*/
-enum nss_status _nss_ldap_getent (ent_context_t ** key, /* IN/OUT */
- void *result, /* IN/OUT */
- char *buffer, /* IN */
- size_t buflen, /* IN */
- int *errnop, /* OUT */
- const char *filterprot, /* IN */
- ldap_map_selector_t sel, /* IN */
- parser_t parser /* IN */ );
+enum nss_status _nss_ldap_getent (ent_context_t ** key, /* IN/OUT */
+ void *result, /* IN/OUT */
+ char *buffer, /* IN */
+ size_t buflen, /* IN */
+ int *errnop, /* OUT */
+ const char *filterprot, /* IN */
+ ldap_map_selector_t sel, /* IN */
+ parser_t parser /* IN */ );
/*
* common lookup routine; uses synchronous API.
*/
-enum nss_status _nss_ldap_getbyname (ldap_args_t * args, /* IN/OUT */
- void *result, /* IN/OUT */
- char *buffer, /* IN */
- size_t buflen, /* IN */
- int *errnop, /* OUT */
- const char *filterprot, /* IN */
- ldap_map_selector_t sel, /* IN */
- parser_t parser /* IN */ );
+enum nss_status _nss_ldap_getbyname (ldap_args_t * args, /* IN/OUT */
+ void *result, /* IN/OUT */
+ char *buffer, /* IN */
+ size_t buflen, /* IN */
+ int *errnop, /* OUT */
+ const char *filterprot, /* IN */
+ ldap_map_selector_t sel, /* IN */
+ parser_t parser /* IN */ );
/* parsing utility functions */
-enum nss_status _nss_ldap_assign_attrvals (LDAPMessage * e, /* IN */
- const char *attr, /* IN */
- const char *omitvalue, /* IN */
- char ***valptr, /* OUT */
- char **buffer, /* IN/OUT */
- size_t * buflen, /* IN/OUT */
- size_t * pvalcount /* OUT */ );
+enum nss_status _nss_ldap_assign_attrvals (LDAPMessage * e, /* IN */
+ const char *attr, /* IN */
+ const char *omitvalue, /* IN */
+ char ***valptr, /* OUT */
+ char **buffer, /* IN/OUT */
+ size_t * buflen, /* IN/OUT */
+ size_t * pvalcount /* OUT */ );
-enum nss_status _nss_ldap_assign_attrval (LDAPMessage * e, /* IN */
- const char *attr, /* IN */
- char **valptr, /* OUT */
- char **buffer, /* IN/OUT */
- size_t * buflen /* IN/OUT */ );
+enum nss_status _nss_ldap_assign_attrval (LDAPMessage * e, /* IN */
+ const char *attr, /* IN */
+ char **valptr, /* OUT */
+ char **buffer, /* IN/OUT */
+ size_t * buflen /* IN/OUT */ );
const char *_nss_ldap_locate_userpassword (char **vals);
-enum nss_status _nss_ldap_assign_userpassword (LDAPMessage * e, /* IN */
- const char *attr, /* IN */
- char **valptr, /* OUT */
- char **buffer, /* IN/OUT */
- size_t * buflen); /* IN/OUT */
+enum nss_status _nss_ldap_assign_userpassword (LDAPMessage * e, /* IN */
+ const char *attr, /* IN */
+ char **valptr, /* OUT */
+ char **buffer, /* IN/OUT */
+ size_t * buflen); /* IN/OUT */
enum nss_status _nss_ldap_oc_check (LDAPMessage * e, const char *oc);
@@ -768,19 +752,19 @@ enum nss_status _nss_ldap_oc_check (LDAPMessage * e, const char *oc);
int _nss_ldap_shadow_date(const char *val);
void _nss_ldap_shadow_handle_flag(struct spwd *sp);
#else
-#define _nss_ldap_shadow_date(_v) atol((_v))
-#define _nss_ldap_shadow_handle_flag(_sp) do { /* nothing */ } while (0)
+#define _nss_ldap_shadow_date(_v) atol((_v))
+#define _nss_ldap_shadow_handle_flag(_sp) do { /* nothing */ } while (0)
#endif /* HAVE_SHADOW_H */
enum nss_status _nss_ldap_map_put (ldap_config_t * config,
ldap_map_selector_t sel,
ldap_map_type_t map,
- const char *key, const char *value);
+ const char *key, const char *value);
enum nss_status _nss_ldap_map_get (ldap_config_t * config,
ldap_map_selector_t sel,
ldap_map_type_t map,
- const char *key, const char **value);
+ const char *key, const char **value);
const char *_nss_ldap_map_at (ldap_map_selector_t sel, const char *pChar2);
const char *_nss_ldap_unmap_at (ldap_map_selector_t sel, const char *attribute);