enum dcerpc_transport_t transport,
struct netlogon_creds_cli_context *creds_ctx,
bool force_reauth,
- struct cli_credentials *cli_creds)
+ struct cli_credentials *cli_creds,
+ uint32_t *negotiate_flags)
{
TALLOC_CTX *frame = talloc_stackframe();
struct rpc_pipe_client *netlogon_pipe = NULL;
creds->account_name, creds->computer_name,
smbXcli_conn_remote_name(cli->conn)));
if (!force_reauth) {
- TALLOC_FREE(frame);
- return NT_STATUS_OK;
+ goto done;
}
TALLOC_FREE(creds);
}
creds->account_name, creds->computer_name,
smbXcli_conn_remote_name(cli->conn)));
+done:
+ if (negotiate_flags != NULL) {
+ *negotiate_flags = creds->negotiate_flags;
+ }
+
TALLOC_FREE(frame);
return NT_STATUS_OK;
}
}
status = rpccli_setup_netlogon_creds_locked(
- cli, transport, creds_ctx, force_reauth, cli_creds);
+ cli, transport, creds_ctx, force_reauth, cli_creds, NULL);
TALLOC_FREE(frame);
enum dcerpc_transport_t transport,
struct netlogon_creds_cli_context *creds_ctx,
bool force_reauth,
- struct cli_credentials *cli_creds);
+ struct cli_credentials *cli_creds,
+ uint32_t *negotiate_flags);
NTSTATUS rpccli_setup_netlogon_creds(
struct cli_state *cli,
enum dcerpc_transport_t transport,