summaryrefslogtreecommitdiff
path: root/source3/namepacket.c
diff options
context:
space:
mode:
authorSamba Release Account <samba-bugs@samba.org>1997-03-09 14:58:22 +0000
committerSamba Release Account <samba-bugs@samba.org>1997-03-09 14:58:22 +0000
commitb581d0324098f12a5bcb1941e698339a84e44a93 (patch)
treee6582f6847cc0df3377b7d722f4d3f8f2b573659 /source3/namepacket.c
parent3046a0d7c29ad6a5bdafe763c90aa521ac8aa93a (diff)
downloadsamba-b581d0324098f12a5bcb1941e698339a84e44a93.tar.gz
samba-b581d0324098f12a5bcb1941e698339a84e44a93.tar.bz2
samba-b581d0324098f12a5bcb1941e698339a84e44a93.zip
1) updated ipc.c NetUserGetInfo - load \\%L\%U instead of \\%L\HOMES
because the share must be browseable by a w95 client 2) send_mailslot_reply - unique or group datagram argument added. 3) netlogon.c - rewrote response packet to do the right thing for w95. 4) server.c reply_nt1() - added OEMDomainstring to the end. 5) (deep breath) reworked the nmbd-browsing code a little bit. i discovered two months ago that becoming a primary domain controller (and domain master browser) is done independently of becoming a backup domain controller (logon server) is done independently of becoming a local master browser. therefore, three sets of state-machines (instead of just one) are in place - each of which is responsible for taking samba through the required stages to become: a logon server; a domain master browser; and a local master browser. each of these three things can occur independently on each interface, _including_ the wins pseudo-interface. the only slight caveat is that the wins pseudo-interface, by virtue of _not_ being a broadcast interface, does _not_ register as a local master browser with the wins server, as this doesn't make sense. lkcl (This used to be commit 88c6a00c3c1b430307f512986185b5ed7aea7181)
Diffstat (limited to 'source3/namepacket.c')
-rw-r--r--source3/namepacket.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/source3/namepacket.c b/source3/namepacket.c
index e62f3f00b0..e31d423784 100644
--- a/source3/namepacket.c
+++ b/source3/namepacket.c
@@ -559,7 +559,7 @@ void listen_for_packets(BOOL run_election)
Note that this currently sends all answers to port 138. thats the
wrong things to do! I should send to the requestors port. XXX
**************************************************************************/
-BOOL send_mailslot_reply(char *mailslot,int fd,char *buf,int len,char *srcname,
+BOOL send_mailslot_reply(BOOL unique, char *mailslot,int fd,char *buf,int len,char *srcname,
char *dstname,int src_type,int dest_type,
struct in_addr dest_ip,struct in_addr src_ip)
{
@@ -576,7 +576,8 @@ BOOL send_mailslot_reply(char *mailslot,int fd,char *buf,int len,char *srcname,
update_name_trn_id();
- dgram->header.msg_type = 0x11; /* DIRECT GROUP DATAGRAM */
+ /* DIRECT GROUP or UNIQUE datagram */
+ dgram->header.msg_type = unique ? 0x10 : 0x11;
dgram->header.flags.node_type = M_NODE;
dgram->header.flags.first = True;
dgram->header.flags.more = False;