summaryrefslogtreecommitdiff
path: root/source3/winbindd/winbindd_pam_auth_crap.c
diff options
context:
space:
mode:
authorRalph Boehme <slow@samba.org>2017-12-02 10:27:12 +0100
committerRalph Boehme <slow@samba.org>2018-01-13 08:24:09 +0100
commit194a9e4907ade9558e3bf8ebc29d147b5385a3ed (patch)
tree9553c4f2ee1c07fcee7badfb2eba3fd3c75228c8 /source3/winbindd/winbindd_pam_auth_crap.c
parent7b30f698334e2fc7bc237a45057246c122ede826 (diff)
downloadsamba-194a9e4907ade9558e3bf8ebc29d147b5385a3ed.tar.gz
winbindd: pass down validation to append_auth_data()
Signed-off-by: Ralph Boehme <slow@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org>
Diffstat (limited to 'source3/winbindd/winbindd_pam_auth_crap.c')
-rw-r--r--source3/winbindd/winbindd_pam_auth_crap.c23
1 files changed, 21 insertions, 2 deletions
diff --git a/source3/winbindd/winbindd_pam_auth_crap.c b/source3/winbindd/winbindd_pam_auth_crap.c
index cfeafbcfda8..695ee1d0864 100644
--- a/source3/winbindd/winbindd_pam_auth_crap.c
+++ b/source3/winbindd/winbindd_pam_auth_crap.c
@@ -19,6 +19,7 @@
#include "includes.h"
#include "winbindd.h"
+#include "rpc_client/util_netlogon.h"
struct winbindd_pam_auth_crap_state {
struct winbindd_response *response;
@@ -132,8 +133,26 @@ NTSTATUS winbindd_pam_auth_crap_recv(struct tevent_req *req,
}
if (state->flags & WBFLAG_PAM_AUTH_PAC) {
- return append_auth_data(response, response, state->flags,
- state->info3, NULL, NULL);
+ uint16_t validation_level;
+ union netr_Validation *validation = NULL;
+
+ status = map_info3_to_validation(talloc_tos(),
+ state->info3,
+ &validation_level,
+ &validation);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ status = append_auth_data(response,
+ response,
+ state->flags,
+ validation_level,
+ validation,
+ NULL, NULL);
+ TALLOC_FREE(validation);
+ return status;
+
}
*response = *state->response;