+ "Only base, scope and filter are accepted\n",
+ progname );
usage( tool, progname );
}
if ( ludp->lud_exts != NULL ) {
+ fprintf( stderr, "%s URIs cannot carry an extension specification. "
+ "Only base, scope and filter are accepted\n",
+ progname );
usage( tool, progname );
}
@@ -465,6 +480,7 @@
case 'j': /* jump to linenumber */
if ( lutil_atoul( &jumpline, optarg ) ) {
+ fprintf( stderr, "Invalid line number '%s'\n", optarg );
usage( tool, progname );
}
break;
@@ -479,6 +495,7 @@
case 'N':
if ( dn_mode && dn_mode != SLAP_TOOL_LDAPDN_NORMAL ) { + fputs( "Invalid combination of -N/-P provided\n", stderr );
usage( tool, progname );
}
dn_mode = SLAP_TOOL_LDAPDN_NORMAL;
@@ -486,6 +503,7 @@
case 'n': /* which config file db to index */
if ( lutil_atoi( &dbnum, optarg ) || dbnum < 0 ) {
+ fputs( "Invalid database index provided\n", stderr );
usage( tool, progname );
}
break;
@@ -498,6 +516,7 @@
case 'P':
if ( dn_mode && dn_mode != SLAP_TOOL_LDAPDN_PRETTY ) { + fputs( "Invalid combination of -N/-P provided\n", stderr );
usage( tool, progname );
}
dn_mode = SLAP_TOOL_LDAPDN_PRETTY;
@@ -520,6 +539,7 @@
if ( lutil_atou( &csnsid, optarg )
|| csnsid > SLAP_SYNC_SID_MAX )
{
+ fputs( "Invalid serverid provided\n", stderr );
usage( tool, progname );
}
break;
diff -Nru openldap-2.6.9+dfsg/servers/slapd/syncrepl.c openldap-2.6.10+dfsg/servers/slapd/syncrepl.c
--- openldap-2.6.9+dfsg/servers/slapd/syncrepl.c 2024-11-26 09:11:04.000000000 -0800
+++ openldap-2.6.10+dfsg/servers/slapd/syncrepl.c 2025-05-22 10:56:21.000000000 -0700
@@ -2793,7 +2793,6 @@
typedef struct modify_ctxt {
Modifications *mx_orig;
- Modifications *mx_free;
Entry *mx_entry;
} modify_ctxt;
@@ -2805,11 +2804,8 @@
Modifications *ml;
op->orm_no_opattrs = 0;
+ slap_mods_free( op->orm_modlist, 0 );
op->orm_modlist = mx->mx_orig;
- for ( ml = mx->mx_free; ml; ml = mx->mx_free ) {
- mx->mx_free = ml->sml_next;
- op->o_tmpfree( ml, op->o_tmpmemctx );
- }
if ( mx->mx_entry ) {
entry_free( mx->mx_entry );
}
@@ -2997,10 +2993,10 @@
sc->sc_next = op->o_callback;
sc->sc_cleanup = NULL;
sc->sc_writewait = NULL;
- op->o_callback = sc;
+ overlay_callback_after_backover( op, sc, 1 );
+
op->orm_no_opattrs = 1;
mx->mx_orig = op->orm_modlist;
- mx->mx_free = newlist;
mx->mx_entry = e_dup;
for ( ml = newlist; ml; ml=ml->sml_next ) {
if ( ml->sml_flags == SLAP_MOD_INTERNAL ) {
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 493 |
Nodes: | 16 (0 / 16) |
Uptime: | 163:01:48 |
Calls: | 9,700 |
Files: | 13,732 |
Messages: | 6,177,778 |