/* $OpenLDAP$ */
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
*
- * Copyright 1998-2004 The OpenLDAP Foundation.
+ * Copyright 1998-2008 The OpenLDAP Foundation.
* Portions Copyright 1998-2003 Kurt D. Zeilenga.
* All rights reserved.
*
ID id;
int rc = EXIT_SUCCESS;
const char *progname = "slapindex";
+ AttributeDescription *ad, **adv = NULL;
slap_tool_init( progname, SLAPINDEX, argc, argv );
exit( EXIT_FAILURE );
}
+ argc -= optind;
+ if ( argc > 0 ) {
+ const char *text;
+ int i;
+
+ argv = &argv[optind];
+ adv = (AttributeDescription **)argv;
+
+ for (i = 0; i < argc; i++ ) {
+ ad = NULL;
+ rc = slap_str2ad( argv[i], &ad, &text );
+ if ( rc != LDAP_SUCCESS ) {
+ fprintf( stderr, "slap_str2ad(%s) failed %d (%s)\n",
+ argv[i], rc, ldap_err2string( rc ));
+ exit( EXIT_FAILURE );
+ }
+ adv[i] = ad;
+ }
+ }
+
if( be->be_entry_open( be, 0 ) != 0 ) {
fprintf( stderr, "%s: could not open database.\n",
progname );
exit( EXIT_FAILURE );
}
-
+
for ( id = be->be_entry_first( be );
id != NOID;
id = be->be_entry_next( be ) )
printf("indexing id=%08lx\n", (long) id );
}
- rtn = be->be_entry_reindex( be, id );
+ rtn = be->be_entry_reindex( be, id, adv );
if( rtn != LDAP_SUCCESS ) {
rc = EXIT_FAILURE;