Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12-SP2:Update
openldap2-client.24063
0021-ITS-8435-Fix-uninited-slap_callback.sc_wri...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0021-ITS-8435-Fix-uninited-slap_callback.sc_writewait.patch of Package openldap2-client.24063
From 4de3e7f3b6453487bb63247258805679e48dac03 Mon Sep 17 00:00:00 2001 From: Hallvard Furuseth <hallvard@openldap.org> Date: Sun, 12 Jun 2016 08:30:58 +0200 Subject: [PATCH] ITS#8435 Fix uninited slap_callback.sc_writewait diff --git a/servers/slapd/backover.c b/servers/slapd/backover.c index 9355ba4..2e3280a 100644 --- a/servers/slapd/backover.c +++ b/servers/slapd/backover.c @@ -1219,6 +1219,7 @@ overlay_remove( BackendDB *be, slap_overinst *on, Operation *op ) rm_cb->sc_cleanup = overlay_remove_cb; rm_cb->sc_response = NULL; rm_cb->sc_private = (void*) rm_ctx; + rm_cb->sc_writewait = NULL; /* Append callback to the end of the list */ if ( !op->o_callback ) { diff --git a/servers/slapd/overlays/constraint.c b/servers/slapd/overlays/constraint.c index 33323e3..5c65b42 100644 --- a/servers/slapd/overlays/constraint.c +++ b/servers/slapd/overlays/constraint.c @@ -601,7 +601,7 @@ constraint_violation( constraint *c, struct berval *bv, Operation *op ) case CONSTRAINT_URI: { Operation nop = *op; slap_overinst *on = (slap_overinst *) op->o_bd->bd_info; - slap_callback cb; + slap_callback cb = { 0 }; int i; int found = 0; int rc; @@ -609,9 +609,7 @@ constraint_violation( constraint *c, struct berval *bv, Operation *op ) struct berval filterstr; char *ptr; - cb.sc_next = NULL; cb.sc_response = constraint_uri_cb; - cb.sc_cleanup = NULL; cb.sc_private = &found; nop.o_protocol = LDAP_VERSION3; diff --git a/servers/slapd/overlays/dds.c b/servers/slapd/overlays/dds.c index 5625331..ab0a40e 100644 --- a/servers/slapd/overlays/dds.c +++ b/servers/slapd/overlays/dds.c @@ -442,6 +442,7 @@ dds_op_add( Operation *op, SlapReply *rs ) sc->sc_response = dds_counter_cb; sc->sc_private = di; sc->sc_next = op->o_callback; + sc->sc_writewait = 0; op->o_callback = sc; } @@ -476,6 +477,7 @@ dds_op_delete( Operation *op, SlapReply *rs ) sc->sc_cleanup = dds_freeit_cb; sc->sc_response = dds_counter_cb; sc->sc_private = di; + sc->sc_writewait = 0; sc->sc_next = op->o_callback; op->o_callback = sc; diff --git a/servers/slapd/overlays/dynlist.c b/servers/slapd/overlays/dynlist.c index 968fbb0..f6cd6bc 100644 --- a/servers/slapd/overlays/dynlist.c +++ b/servers/slapd/overlays/dynlist.c @@ -346,7 +346,7 @@ static int dynlist_prepare_entry( Operation *op, SlapReply *rs, dynlist_info_t *dli ) { Attribute *a, *id = NULL; - slap_callback cb; + slap_callback cb = { 0 }; Operation o = *op; struct berval *url; Entry *e; @@ -404,8 +404,6 @@ dynlist_prepare_entry( Operation *op, SlapReply *rs, dynlist_info_t *dli ) dlc.dlc_dli = dli; cb.sc_private = &dlc; cb.sc_response = dynlist_sc_update; - cb.sc_cleanup = NULL; - cb.sc_next = NULL; o.o_callback = &cb; o.ors_deref = LDAP_DEREF_NEVER; diff --git a/servers/slapd/overlays/memberof.c b/servers/slapd/overlays/memberof.c index f0f366c..40ad6e2 100644 --- a/servers/slapd/overlays/memberof.c +++ b/servers/slapd/overlays/memberof.c @@ -737,6 +737,7 @@ memberof_op_add( Operation *op, SlapReply *rs ) sc->sc_private = sc+1; sc->sc_response = memberof_res_add; sc->sc_cleanup = memberof_cleanup; + sc->sc_writewait = 0; mci = sc->sc_private; mci->on = on; mci->member = NULL; @@ -771,6 +772,7 @@ memberof_op_delete( Operation *op, SlapReply *rs ) sc->sc_private = sc+1; sc->sc_response = memberof_res_delete; sc->sc_cleanup = memberof_cleanup; + sc->sc_writewait = 0; mci = sc->sc_private; mci->on = on; mci->member = NULL; @@ -1189,6 +1191,7 @@ done2:; sc->sc_private = sc+1; sc->sc_response = memberof_res_modify; sc->sc_cleanup = memberof_cleanup; + sc->sc_writewait = 0; mci = sc->sc_private; mci->on = on; mci->member = NULL; @@ -1234,6 +1237,7 @@ memberof_op_modrdn( Operation *op, SlapReply *rs ) sc->sc_private = sc+1; sc->sc_response = memberof_res_modrdn; sc->sc_cleanup = memberof_cleanup; + sc->sc_writewait = 0; mci = sc->sc_private; mci->on = on; mci->member = NULL; diff --git a/servers/slapd/overlays/pcache.c b/servers/slapd/overlays/pcache.c index 6032662..de8c2b4 100644 --- a/servers/slapd/overlays/pcache.c +++ b/servers/slapd/overlays/pcache.c @@ -2841,7 +2841,7 @@ pcache_op_bind( QueryTemplate *temp; Entry *e; slap_callback cb = { 0 }, *sc; - bindinfo bi; + bindinfo bi = { 0 }; bindcacheinfo *bci; Operation op2; int rc; @@ -2871,7 +2871,6 @@ pcache_op_bind( op2 = *op; op2.o_dn = op->o_bd->be_rootdn; op2.o_ndn = op->o_bd->be_rootndn; - bi.bi_flags = 0; op2.o_bd = &cm->db; e = NULL; @@ -2900,11 +2899,8 @@ pcache_op_bind( */ bi.bi_cm = cm; bi.bi_templ = temp; - bi.bi_cq = NULL; - bi.bi_si = NULL; bi.bi_cb.sc_response = pc_bind_search; - bi.bi_cb.sc_cleanup = NULL; bi.bi_cb.sc_private = &bi; cb.sc_private = &bi; cb.sc_response = pc_bind_resp; @@ -2940,6 +2936,7 @@ pcache_op_bind( sc->sc_response = pc_bind_save; sc->sc_cleanup = NULL; sc->sc_private = sc+1; + sc->sc_writewait = NULL; bci = sc->sc_private; sc->sc_next = op->o_callback; op->o_callback = sc; @@ -3132,6 +3129,7 @@ pcache_op_search( cb->sc_response = pcache_response; cb->sc_cleanup = pcache_op_cleanup; cb->sc_private = (cb+1); + cb->sc_writewait = 0; si = cb->sc_private; si->on = on; si->query = query; diff --git a/servers/slapd/overlays/sssvlv.c b/servers/slapd/overlays/sssvlv.c index 2f9638c..88c18ca 100644 --- a/servers/slapd/overlays/sssvlv.c +++ b/servers/slapd/overlays/sssvlv.c @@ -923,6 +923,7 @@ static int sssvlv_op_search( cb->sc_response = sssvlv_op_response; cb->sc_next = op->o_callback; cb->sc_private = so; + cb->sc_writewait = NULL; so->so_tree = NULL; so->so_ctrl = sc; diff --git a/servers/slapd/overlays/syncprov.c b/servers/slapd/overlays/syncprov.c index 5fc6f84..35377bf 100644 --- a/servers/slapd/overlays/syncprov.c +++ b/servers/slapd/overlays/syncprov.c @@ -2498,7 +2498,7 @@ syncprov_op_search( Operation *op, SlapReply *rs ) syncops so = {0}; fbase_cookie fc; opcookie opc; - slap_callback sc; + slap_callback sc = {0}; fc.fss = &so; fc.fbase = 0; diff --git a/servers/slapd/slapi/slapi_overlay.c b/servers/slapd/slapi/slapi_overlay.c index 0efcd92..b971b68 100644 --- a/servers/slapd/slapi/slapi_overlay.c +++ b/servers/slapd/slapi/slapi_overlay.c @@ -82,6 +82,7 @@ slapi_op_internal_p( Operation *op, SlapReply *rs, slap_callback *cb ) cb->sc_response = slapi_over_response; cb->sc_cleanup = slapi_over_cleanup; cb->sc_private = pb; + cb->sc_writewait = 0; cb->sc_next = op->o_callback; op->o_callback = cb; } @@ -734,6 +735,7 @@ slapi_over_access_allowed( cb.sc_response = NULL; cb.sc_cleanup = NULL; + cb.sc_writewait = NULL; pb = SLAPI_OPERATION_PBLOCK( op ); @@ -798,6 +800,7 @@ slapi_over_acl_group( cb.sc_response = NULL; cb.sc_cleanup = NULL; + cb.sc_writewait = NULL; pb = SLAPI_OPERATION_PBLOCK( op ); diff --git a/servers/slapd/syncrepl.c b/servers/slapd/syncrepl.c index 2a48325..c8ed0d7 100644 --- a/servers/slapd/syncrepl.c +++ b/servers/slapd/syncrepl.c @@ -2170,6 +2170,7 @@ syncrepl_op_modify( Operation *op, SlapReply *rs ) sc->sc_private = mx; sc->sc_next = op->o_callback; sc->sc_cleanup = NULL; + sc->sc_writewait = NULL; op->o_callback = sc; op->orm_no_opattrs = 1; mx->mx_orig = op->orm_modlist; -- 2.15.0
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor