[Fedora-directory-commits] ldapserver/ldap/servers/slapd/back-ldbm init.c, 1.9, 1.10
Noriko Hosoi (nhosoi)
fedora-directory-commits at redhat.com
Wed Jun 4 23:00:53 UTC 2008
Author: nhosoi
Update of /cvs/dirsec/ldapserver/ldap/servers/slapd/back-ldbm
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv2000
Modified Files:
init.c
Log Message:
Resolves: #436837
Summary: Dynamically reload schema via task interface
Description: implemented task based schema file reloading
(see also http://directory.fedoraproject.org/wiki/Dynamically_Reload_Schema)
Index: init.c
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/servers/slapd/back-ldbm/init.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- init.c 7 Sep 2007 19:08:45 -0000 1.9
+++ init.c 4 Jun 2008 23:00:48 -0000 1.10
@@ -64,6 +64,29 @@
}
#endif
+/* pb: not used */
+int
+ldbm_back_add_schema( Slapi_PBlock *pb )
+{
+ int rc = add_ldbm_internal_attr_syntax( "entrydn",
+ LDBM_ENTRYDN_OID, DN_SYNTAX_OID, DNMATCH_NAME,
+ SLAPI_ATTR_FLAG_SINGLE );
+
+ rc |= add_ldbm_internal_attr_syntax( "dncomp",
+ LDBM_DNCOMP_OID, DN_SYNTAX_OID, DNMATCH_NAME,
+ 0 );
+
+ rc |= add_ldbm_internal_attr_syntax( "parentid",
+ LDBM_PARENTID_OID, DIRSTRING_SYNTAX_OID, CASEIGNOREMATCH_NAME,
+ SLAPI_ATTR_FLAG_SINGLE );
+
+ rc |= add_ldbm_internal_attr_syntax( "entryid",
+ LDBM_ENTRYID_OID, DIRSTRING_SYNTAX_OID, CASEIGNOREMATCH_NAME,
+ SLAPI_ATTR_FLAG_SINGLE );
+
+ return rc;
+}
+
int
ldbm_back_init( Slapi_PBlock *pb )
{
@@ -114,21 +137,7 @@
}
/* add some private attributes */
- rc = add_ldbm_internal_attr_syntax( "entrydn",
- LDBM_ENTRYDN_OID, DN_SYNTAX_OID, DNMATCH_NAME,
- SLAPI_ATTR_FLAG_SINGLE );
-
- rc = add_ldbm_internal_attr_syntax( "dncomp",
- LDBM_DNCOMP_OID, DN_SYNTAX_OID, DNMATCH_NAME,
- 0 );
-
- rc = add_ldbm_internal_attr_syntax( "parentid",
- LDBM_PARENTID_OID, DIRSTRING_SYNTAX_OID, CASEIGNOREMATCH_NAME,
- SLAPI_ATTR_FLAG_SINGLE );
-
- rc = add_ldbm_internal_attr_syntax( "entryid",
- LDBM_ENTRYID_OID, DIRSTRING_SYNTAX_OID, CASEIGNOREMATCH_NAME,
- SLAPI_ATTR_FLAG_SINGLE );
+ rc = ldbm_back_add_schema( pb );
/* set plugin private pointer and initialize locks, etc. */
rc = slapi_pblock_set( pb, SLAPI_PLUGIN_PRIVATE, (void *) li );
@@ -222,10 +231,12 @@
rc |= slapi_pblock_set( pb, SLAPI_PLUGIN_DB_TEST_FN,
(void *) ldbm_back_db_test );
rc |= slapi_pblock_set( pb, SLAPI_PLUGIN_DB_INIT_INSTANCE_FN,
- (void *) ldbm_back_init ); /* register itself so that the secon instance
+ (void *) ldbm_back_init ); /* register itself so that the secon instance
can be initialized */
- rc |= slapi_pblock_set( pb, SLAPI_PLUGIN_DB_WIRE_IMPORT_FN,
- (void *) ldbm_back_wire_import);
+ rc |= slapi_pblock_set( pb, SLAPI_PLUGIN_DB_WIRE_IMPORT_FN,
+ (void *) ldbm_back_wire_import );
+ rc |= slapi_pblock_set( pb, SLAPI_PLUGIN_DB_ADD_SCHEMA_FN,
+ (void *) ldbm_back_add_schema );
if ( rc != 0 ) {
LDAPDebug( LDAP_DEBUG_ANY, "ldbm_back_init failed\n", 0, 0, 0 );
More information about the Fedora-directory-commits
mailing list