summaryrefslogtreecommitdiff
path: root/source3/smbd/negprot.c
diff options
context:
space:
mode:
Diffstat (limited to 'source3/smbd/negprot.c')
-rw-r--r--source3/smbd/negprot.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/source3/smbd/negprot.c b/source3/smbd/negprot.c
index 28e3cf97d1..96961368fb 100644
--- a/source3/smbd/negprot.c
+++ b/source3/smbd/negprot.c
@@ -169,6 +169,8 @@ static int reply_lanman2(char *inbuf, char *outbuf)
static int negprot_spnego(char *p)
{
DATA_BLOB blob;
+ nstring dos_name;
+ fstring unix_name;
uint8 guid[17];
const char *OIDs_krb5[] = {OID_KERBEROS5,
OID_KERBEROS5_OLD,
@@ -181,7 +183,11 @@ static int negprot_spnego(char *p)
global_spnego_negotiated = True;
ZERO_STRUCT(guid);
- safe_strcpy((char *)guid, global_myname(), sizeof(guid)-1);
+
+ safe_strcpy(unix_name, global_myname(), sizeof(unix_name)-1);
+ strlower_m(unix_name);
+ push_ascii_nstring(dos_name, unix_name);
+ safe_strcpy((char *)guid, dos_name, sizeof(guid)-1);
#ifdef DEVELOPER
/* valgrind fixer... */
@@ -192,8 +198,6 @@ static int negprot_spnego(char *p)
}
#endif
- strlower_m((char *)guid);
-
#if 0
/* strangely enough, NT does not sent the single OID NTLMSSP when
not a ADS member, it sends no OIDs at all