s4:libnet: avoid usage of dcerpc_schannel_creds()
authorStefan Metzmacher <metze@samba.org>
Fri, 2 Aug 2013 08:08:54 +0000 (10:08 +0200)
committerStefan Metzmacher <metze@samba.org>
Sat, 10 Aug 2013 07:18:59 +0000 (09:18 +0200)
We use cli_credentials_get_netlogon_creds() which returns the same value.

dcerpc_schannel_creds() is a layer violation.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
source4/libnet/libnet_samsync.c

index 9629b9f0856345f793749e9196a521f2245ed270..206d81ee36605bbd88143523957bf57dedf85dc5 100644 (file)
@@ -25,7 +25,6 @@
 #include "libcli/auth/libcli_auth.h"
 #include "../libcli/samsync/samsync.h"
 #include "auth/gensec/gensec.h"
-#include "auth/gensec/schannel.h"
 #include "auth/credentials/credentials.h"
 #include "libcli/auth/schannel.h"
 #include "librpc/gen_ndr/ndr_netlogon.h"
@@ -183,9 +182,9 @@ NTSTATUS libnet_SamSync_netlogon(struct libnet_context *ctx, TALLOC_CTX *mem_ctx
 
        /* get NETLOGON credentials */
 
-       nt_status = dcerpc_schannel_creds(p->conn->security_state.generic_state, samsync_ctx, &creds);
-       if (!NT_STATUS_IS_OK(nt_status)) {
-               r->out.error_string = talloc_strdup(mem_ctx, "Could not obtain NETLOGON credentials from DCERPC/GENSEC layer");
+       creds = cli_credentials_get_netlogon_creds(machine_account);
+       if (creds == NULL) {
+               r->out.error_string = talloc_strdup(mem_ctx, "Could not obtain NETLOGON credentials from credentials");
                talloc_free(samsync_ctx);
                return nt_status;
        }