Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
orbea -
OpenLDAP
Commits
f7888739
Commit
f7888739
authored
Mar 09, 2021
by
Ondřej Kuzník
Committed by
Quanah Gibson-Mount
Mar 18, 2021
Browse files
ITS#9444 Pass original message when chain-return-error is set
parent
7bc9c290
Changes
1
Hide whitespace changes
Inline
Side-by-side
servers/slapd/back-ldap/chain.c
View file @
f7888739
...
...
@@ -119,6 +119,7 @@ typedef struct ldap_chain_cb_t {
ldap_chain_status_t
lb_status
;
ldap_chain_t
*
lb_lc
;
slap_operation_t
lb_op_type
;
char
*
lb_text
;
int
lb_depth
;
}
ldap_chain_cb_t
;
...
...
@@ -381,6 +382,11 @@ retry:;
break
;
default:
/* remember the text before it's freed in ldap_back_op_result */
if
(
lb
.
lb_text
)
{
ber_memfree_x
(
lb
.
lb_text
,
op
->
o_tmpmemctx
);
}
lb
->
lb_text
=
ber_strdup_x
(
rs
->
sr_text
,
op
->
o_tmpmemctx
);
return
rs
->
sr_err
;
}
...
...
@@ -1153,6 +1159,7 @@ cannot_chain:;
#endif
/* LDAP_CONTROL_X_CHAINING_BEHAVIOR */
if
(
LDAP_CHAIN_RETURN_ERR
(
lc
)
)
{
sr_err
=
rs
->
sr_err
=
rc
;
rs
->
sr_text
=
lb
.
lb_text
;
rs
->
sr_type
=
sr_type
;
}
else
{
...
...
@@ -1186,6 +1193,13 @@ dont_chain:;
op
->
o_callback
=
sc
;
op
->
o_ndn
=
ndn
;
if
(
rs
->
sr_text
==
lb
.
lb_text
)
{
rs
->
sr_text
=
NULL
;
}
if
(
lb
.
lb_text
)
{
ber_memfree_x
(
lb
.
lb_text
,
op
->
o_tmpmemctx
);
}
return
rc
;
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment