On 10/24/19 2:25 PM, Claudio Jeker wrote:
>
> OK claudio@
>
I'll commit this soon-ish based on claudio's OK, but if at all possible
I would like to ask the people affected by this to test this and see if
this solves their problem.
For the people running -current, here's an updated diff based on tb@'s
commit which changes ber_* to ober_* (note that you also need to get
the latest libutil).
martijn@
Index: ldape.c
===================================================================
RCS file: /cvs/src/usr.sbin/ldapd/ldape.c,v
retrieving revision 1.32
diff -u -p -r1.32 ldape.c
--- ldape.c 24 Oct 2019 12:39:26 -0000 1.32
+++ ldape.c 24 Oct 2019 13:22:37 -0000
@@ -298,7 +298,6 @@ ldap_extended(struct request *req)
{
int i, rc = LDAP_PROTOCOL_ERROR;
char *oid = NULL;
- struct ber_element *ext_val = NULL;
struct {
const char *oid;
int (*fn)(struct request *);
@@ -307,11 +306,11 @@ ldap_extended(struct request *req)
{ NULL }
};
- if (ober_scanf_elements(req->op, "{se", &oid, &ext_val) != 0)
+ if (ober_scanf_elements(req->op, "{s", &oid) != 0)
goto done;
log_debug("got extended operation %s", oid);
- req->op = ext_val;
+ req->op = req->op->be_sub->be_next;
for (i = 0; extended_ops[i].oid != NULL; i++) {
if (strcmp(oid, extended_ops[i].oid) == 0) {