]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/proto-slap.h
ITS5282 fix for 2.3
[openldap] / servers / slapd / proto-slap.h
index 6727669d9996d57f1d8b6a6fe29ec7b89f7eef61..8784f6c0272eae1dabd24f5dfb1c6907e58ad2fd 100644 (file)
@@ -1,7 +1,7 @@
 /* $OpenLDAP$ */
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *
- * Copyright 1998-2005 The OpenLDAP Foundation.
+ * Copyright 1998-2007 The OpenLDAP Foundation.
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -185,6 +185,7 @@ LDAP_SLAPD_F (AttributeName *) file2anlist LDAP_P((
 LDAP_SLAPD_F (int) an_find LDAP_P(( AttributeName *a, struct berval *s ));
 LDAP_SLAPD_F (int) ad_define_option LDAP_P(( const char *name,
        const char *fname, int lineno ));
+LDAP_SLAPD_F (void) ad_unparse_options LDAP_P(( BerVarray *res ));
 
 LDAP_SLAPD_F (MatchingRule *) ad_mr(
        AttributeDescription *ad,
@@ -425,6 +426,19 @@ LDAP_SLAPD_F (int) overlay_op_walk LDAP_P((
        slap_operation_t which,
        slap_overinfo *oi,
        slap_overinst *on ));
+LDAP_SLAPD_F (int) overlay_entry_get_ov LDAP_P((
+       Operation *op,
+       struct berval *dn,
+       ObjectClass *oc,
+       AttributeDescription *ad,
+       int rw,
+       Entry **e,
+       slap_overinst *ov ));
+LDAP_SLAPD_F (int) overlay_entry_release_ov LDAP_P((
+       Operation *op,
+       Entry *e,
+       int rw,
+       slap_overinst *ov ));
 
 /*
  * bconfig.c
@@ -704,7 +718,7 @@ LDAP_SLAPD_F (ContentRule *) cr_bvfind LDAP_P((
 LDAP_SLAPD_V( const struct berval ) slap_ldapsync_bv;
 LDAP_SLAPD_V( const struct berval ) slap_ldapsync_cn_bv;
 LDAP_SLAPD_F (void) slap_get_commit_csn LDAP_P((
-       Operation *, struct berval *maxcsn, struct berval *curcsn ));
+       Operation *, struct berval *maxcsn ));
 LDAP_SLAPD_F (void) slap_rewind_commit_csn LDAP_P(( Operation * ));
 LDAP_SLAPD_F (void) slap_graduate_commit_csn LDAP_P(( Operation * ));
 LDAP_SLAPD_F (Entry *) slap_create_context_csn_entry LDAP_P(( Backend *, struct berval *));
@@ -719,10 +733,10 @@ LDAP_SLAPD_F (int) slapd_daemon_init( const char *urls );
 LDAP_SLAPD_F (int) slapd_daemon_destroy(void);
 LDAP_SLAPD_F (int) slapd_daemon(void);
 LDAP_SLAPD_F (Listener **)     slapd_get_listeners LDAP_P((void));
-LDAP_SLAPD_F (void) slapd_remove LDAP_P((ber_socket_t s, int wasactive,
-       int wake, int locked ));
-LDAP_SLAPD_F (void) slapd_sd_lock();
-LDAP_SLAPD_F (void) slapd_sd_unlock();
+LDAP_SLAPD_F (void) slapd_remove LDAP_P((ber_socket_t s, Sockbuf *sb,
+       int wasactive, int wake, int locked ));
+LDAP_SLAPD_F (void) slapd_sd_lock LDAP_P((void));
+LDAP_SLAPD_F (void) slapd_sd_unlock LDAP_P((void));
 
 LDAP_SLAPD_F (RETSIGTYPE) slap_sig_shutdown LDAP_P((int sig));
 LDAP_SLAPD_F (RETSIGTYPE) slap_sig_wake LDAP_P((int sig));
@@ -904,6 +918,7 @@ LDAP_SLAPD_F (void) filter_free LDAP_P(( Filter *f ));
 LDAP_SLAPD_F (void) filter_free_x LDAP_P(( Operation *op, Filter *f ));
 LDAP_SLAPD_F (void) filter2bv LDAP_P(( Filter *f, struct berval *bv ));
 LDAP_SLAPD_F (void) filter2bv_x LDAP_P(( Operation *op, Filter *f, struct berval *bv ));
+LDAP_SLAPD_F (Filter *) filter_dup LDAP_P(( Filter *f, void *memctx ));
 
 LDAP_SLAPD_F (int) get_vrFilter LDAP_P(( Operation *op, BerElement *ber,
        ValuesReturnFilter **f,
@@ -1005,6 +1020,14 @@ LDAP_SLAPD_F (FILE *) lock_fopen LDAP_P(( const char *fname,
        const char *type, FILE **lfp ));
 LDAP_SLAPD_F (int) lock_fclose LDAP_P(( FILE *fp, FILE *lfp ));
 
+/*
+ * main.c
+ */
+LDAP_SLAPD_F (int)
+parse_debug_level LDAP_P(( const char *arg, int *levelp, char ***unknowns ));
+LDAP_SLAPD_F (int)
+parse_debug_unknowns LDAP_P(( char **unknowns, int *levelp ));
+
 /*
  * matchedValues.c
  */
@@ -1016,13 +1039,15 @@ LDAP_SLAPD_F (int) filter_matched_values(
 /*
  * modrdn.c
  */
-LDAP_SLAPD_F (int) slap_modrdn2mods(
+LDAP_SLAPD_F (int) slap_modrdn2mods LDAP_P((
        Operation       *op,
        SlapReply       *rs,
        Entry           *e,
        LDAPRDN         oldrdn,
        LDAPRDN         newrdn,
-       Modifications   **pmod );
+       Modifications   **pmod ));
+
+LDAP_SLAPD_F (void) slap_modrdn2mods_free LDAP_P(( Modifications *mod ));
 
 /*
  * modify.c
@@ -1220,6 +1245,7 @@ LDAP_SLAPD_F (int) parse_oidm LDAP_P((
  */
 LDAP_SLAPD_F (void) slap_op_init LDAP_P(( void ));
 LDAP_SLAPD_F (void) slap_op_destroy LDAP_P(( void ));
+LDAP_SLAPD_F (void) slap_op_groups_free LDAP_P(( Operation *op ));
 LDAP_SLAPD_F (void) slap_op_free LDAP_P(( Operation *op ));
 LDAP_SLAPD_F (void) slap_op_time LDAP_P(( time_t *t, int *n ));
 LDAP_SLAPD_F (Operation *) slap_op_alloc LDAP_P((
@@ -1229,6 +1255,7 @@ LDAP_SLAPD_F (Operation *) slap_op_alloc LDAP_P((
 LDAP_SLAPD_F (int) slap_op_add LDAP_P(( Operation **olist, Operation *op ));
 LDAP_SLAPD_F (int) slap_op_remove LDAP_P(( Operation **olist, Operation *op ));
 LDAP_SLAPD_F (Operation *) slap_op_pop LDAP_P(( Operation **olist ));
+LDAP_SLAPD_F (slap_op_t) slap_req2op LDAP_P(( ber_tag_t tag ));
 
 /*
  * operational.c
@@ -1569,7 +1596,7 @@ LDAP_SLAPD_F (Filter *) str2filter_x LDAP_P(( Operation *op, const char *str ));
  * syncrepl.c
  */
 
-LDAP_SLAPD_F (void)  syncrepl_add_glue LDAP_P(( 
+LDAP_SLAPD_F (int)  syncrepl_add_glue LDAP_P(( 
                                        Operation*, Entry* ));
 LDAP_SLAPD_F (void) syncinfo_free LDAP_P(( struct syncinfo_s * ));
 
@@ -1632,7 +1659,8 @@ LDAP_SLAPD_F (int) ordered_value_add LDAP_P((
 
 LDAP_SLAPD_F (int) ordered_value_validate LDAP_P((
        AttributeDescription *ad,
-       struct berval *in ));
+       struct berval *in,
+       int mop ));
 
 LDAP_SLAPD_F (int) ordered_value_pretty LDAP_P((
        AttributeDescription *ad,
@@ -1814,8 +1842,8 @@ LDAP_SLAPD_F (int) fe_access_allowed LDAP_P((
 
 /* NOTE: this macro assumes that bv has been allocated
  * by ber_* malloc functions or is { 0L, NULL } */
-#if defined(HAVE_BIGNUM)
-#define UI2BVX(bv,ui,ctx) \
+#ifdef USE_MP_BIGNUM
+# define UI2BVX(bv,ui,ctx) \
        do { \
                char            *val; \
                ber_len_t       len; \
@@ -1833,12 +1861,13 @@ LDAP_SLAPD_F (int) fe_access_allowed LDAP_P((
                        BER_BVZERO( (bv) ); \
                } \
        } while ( 0 )
-#elif defined(HAVE_GMP)
+
+#elif defined( USE_MP_GMP )
 /* NOTE: according to the documentation, the result 
  * of mpz_sizeinbase() can exceed the length of the
  * string representation of the number by 1
  */
-#define UI2BVX(bv,ui,ctx) \
+# define UI2BVX(bv,ui,ctx) \
        do { \
                ber_len_t       len = mpz_sizeinbase( (ui), 10 ); \
                if ( len > (bv)->bv_len ) { \
@@ -1850,13 +1879,19 @@ LDAP_SLAPD_F (int) fe_access_allowed LDAP_P((
                } \
                (bv)->bv_len = len; \
        } while ( 0 )
-#else /* ! HAVE_BIGNUM && ! HAVE_GMP */
-#ifdef HAVE_LONG_LONG
-#define UI2BV_FORMAT   "%llu"
-#else /* ! HAVE_LONG_LONG */
-#define UI2BV_FORMAT   "%lu"
-#endif /* ! HAVE_LONG_LONG */
-#define UI2BVX(bv,ui,ctx) \
+
+#else
+# if USE_MP_LONG_LONG
+#  define UI2BV_FORMAT "%llu"
+# elif USE_MP_LONG_LONG
+#  define UI2BV_FORMAT "%lu"
+# elif HAVE_LONG_LONG
+#  define UI2BV_FORMAT "%llu"
+# else
+#  define UI2BV_FORMAT "%lu"
+# endif
+
+# define UI2BVX(bv,ui,ctx) \
        do { \
                char            buf[] = "+9223372036854775807L"; \
                ber_len_t       len; \
@@ -1867,7 +1902,7 @@ LDAP_SLAPD_F (int) fe_access_allowed LDAP_P((
                (bv)->bv_len = len; \
                AC_MEMCPY( (bv)->bv_val, buf, len + 1 ); \
        } while ( 0 )
-#endif /* ! HAVE_GMP */
+#endif
 
 #define UI2BV(bv,ui)   UI2BVX(bv,ui,NULL)