mirror of
https://github.com/samba-team/samba.git
synced 2025-08-26 01:49:31 +03:00
auth/ntlmssp: use ntlmssp_version_blob() in the server
We already set NTLMSSP_NEGOTIATE_VERSION in
gensec_ntlmssp_server_start(), so it's always
set in chal_flags.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=11804
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Günther Deschner <gd@samba.org>
(cherry picked from commit 8af6b8d2eb
)
This commit is contained in:
@ -168,29 +168,7 @@ NTSTATUS gensec_ntlmssp_server_negotiate(struct gensec_security *gensec_security
|
||||
{
|
||||
/* Marshal the packet in the right format, be it unicode or ASCII */
|
||||
const char *gen_string;
|
||||
DATA_BLOB version_blob = data_blob_null;
|
||||
|
||||
if (chal_flags & NTLMSSP_NEGOTIATE_VERSION) {
|
||||
enum ndr_err_code err;
|
||||
struct ntlmssp_VERSION vers;
|
||||
|
||||
/* "What Windows returns" as a version number. */
|
||||
ZERO_STRUCT(vers);
|
||||
vers.ProductMajorVersion = NTLMSSP_WINDOWS_MAJOR_VERSION_6;
|
||||
vers.ProductMinorVersion = NTLMSSP_WINDOWS_MINOR_VERSION_1;
|
||||
vers.ProductBuild = 0;
|
||||
vers.NTLMRevisionCurrent = NTLMSSP_REVISION_W2K3;
|
||||
|
||||
err = ndr_push_struct_blob(&version_blob,
|
||||
ntlmssp_state,
|
||||
&vers,
|
||||
(ndr_push_flags_fn_t)ndr_push_ntlmssp_VERSION);
|
||||
|
||||
if (!NDR_ERR_CODE_IS_SUCCESS(err)) {
|
||||
data_blob_free(&struct_blob);
|
||||
return NT_STATUS_NO_MEMORY;
|
||||
}
|
||||
}
|
||||
const DATA_BLOB version_blob = ntlmssp_version_blob();
|
||||
|
||||
if (ntlmssp_state->unicode) {
|
||||
gen_string = "CdUdbddBb";
|
||||
@ -209,13 +187,10 @@ NTSTATUS gensec_ntlmssp_server_negotiate(struct gensec_security *gensec_security
|
||||
version_blob.data, version_blob.length);
|
||||
|
||||
if (!NT_STATUS_IS_OK(status)) {
|
||||
data_blob_free(&version_blob);
|
||||
data_blob_free(&struct_blob);
|
||||
return status;
|
||||
}
|
||||
|
||||
data_blob_free(&version_blob);
|
||||
|
||||
if (DEBUGLEVEL >= 10) {
|
||||
struct CHALLENGE_MESSAGE *challenge = talloc(
|
||||
ntlmssp_state, struct CHALLENGE_MESSAGE);
|
||||
|
Reference in New Issue
Block a user