goto do_reply;
}
- if (context) {
- context->conn = conn;
- status = gensec_create_tstream(context,
- context->conn->gensec,
- context->conn->sockets.raw,
- &context->sasl);
- if (NT_STATUS_IS_OK(status)) {
- if (!talloc_reference(context->sasl, conn->gensec)) {
- status = NT_STATUS_NO_MEMORY;
- }
- }
- } else {
+ if (context == NULL) {
switch (call->conn->require_strong_auth) {
case LDAP_SERVER_REQUIRE_STRONG_AUTH_NO:
break;
}
}
+ if (context != NULL) {
+ context->conn = conn;
+ status = gensec_create_tstream(context,
+ context->conn->gensec,
+ context->conn->sockets.raw,
+ &context->sasl);
+ if (NT_STATUS_IS_OK(status)) {
+ if (!talloc_reference(context->sasl, conn->gensec)) {
+ status = NT_STATUS_NO_MEMORY;
+ }
+ }
+ }
+
if (result != LDAP_SUCCESS) {
} else if (!NT_STATUS_IS_OK(status)) {
result = LDAP_OPERATIONS_ERROR;