summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuke Leighton <lkcl@samba.org>2000-03-19 02:14:07 +0000
committerLuke Leighton <lkcl@samba.org>2000-03-19 02:14:07 +0000
commita1b8c17728de2c6d8ad21d89f6a6faa810c761e6 (patch)
treebb838657212f24175f7d0ba0938bb77dfb2de686
parent6eeeb0cbbfe90436acd2e63898563ca0375f7a08 (diff)
downloadsamba-a1b8c17728de2c6d8ad21d89f6a6faa810c761e6.tar.gz
samba-a1b8c17728de2c6d8ad21d89f6a6faa810c761e6.tar.xz
samba-a1b8c17728de2c6d8ad21d89f6a6faa810c761e6.zip
experimenting on getting GETDC responses right: there is a domain name
length+name (sometimes length = 0) plus 16 bytes of padding and i'm trying to work out the rules as to when this domain name is in there. so far: - if request is sent to DOMAIN<1b> or - DGRAM type is a DGRAM_GROUP (msg_type of 17)
-rw-r--r--source/nmbd/nmbd_processlogon.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/source/nmbd/nmbd_processlogon.c b/source/nmbd/nmbd_processlogon.c
index 3fd817e2e00..1355eebbf74 100644
--- a/source/nmbd/nmbd_processlogon.c
+++ b/source/nmbd/nmbd_processlogon.c
@@ -136,10 +136,15 @@ logons are not enabled.\n",
else
{ /* A full length request */
- if (dgram_unique)
+ if ((!dgram_unique) ||
+ dgram->dest_name.name_type == 0x1b)
{
/* skip domain name */
- q += 22;
+ int dom_len = CVAL(q, 0);
+ q+= 1;
+ DEBUG(10,("domain name :%s\n", q));
+ q += dom_len;
+ q += 16;
}
ntversion = IVAL(q, 0);