Author: metze
Date: 2005-09-20 20:36:28 +0000 (Tue, 20 Sep 2005)
New Revision: 10361

WebSVN: 
http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=10361

Log:
we should only use 255.255.255.255 for group records,
only when we reply, not when the name is registered.
the real address is used for replication

metze
Modified:
   branches/tmp/samba4-winsrepl/source/nbt_server/wins/winsserver.c


Changeset:
Modified: branches/tmp/samba4-winsrepl/source/nbt_server/wins/winsserver.c
===================================================================
--- branches/tmp/samba4-winsrepl/source/nbt_server/wins/winsserver.c    
2005-09-20 20:20:59 UTC (rev 10360)
+++ branches/tmp/samba4-winsrepl/source/nbt_server/wins/winsserver.c    
2005-09-20 20:36:28 UTC (rev 10361)
@@ -61,9 +61,6 @@
        rec.addresses     = winsdb_addr_list_make(packet);
        if (rec.addresses == NULL) return NBT_RCODE_SVR;
 
-       if (IS_GROUP_NAME(name, nb_flags)) {
-               address = WINSDB_GROUP_ADDRESS;
-       }
        rec.addresses     = winsdb_addr_list_add(rec.addresses,
                                                 address,
                                                 WINSDB_OWNER_LOCAL,
@@ -200,10 +197,20 @@
                return;
        }
 
-       addresses = winsdb_addr_string_list(packet, rec->addresses);
-       if (addresses == NULL) {
-               nbtd_negative_name_query_reply(nbtsock, packet, src);
-               return; 
+       if (IS_GROUP_NAME(name, rec->nb_flags)) {
+               addresses = talloc_array(packet, const char *, 2);
+               if (addresses == NULL) {
+                       nbtd_negative_name_query_reply(nbtsock, packet, src);
+                       return;
+               }
+               addresses[0] = WINSDB_GROUP_ADDRESS;
+               addresses[1] = NULL;
+       } else {
+               addresses = winsdb_addr_string_list(packet, rec->addresses);
+               if (addresses == NULL) {
+                       nbtd_negative_name_query_reply(nbtsock, packet, src);
+                       return; 
+               }
        }
 
        nbtd_name_query_reply(nbtsock, packet, src, name, 

Reply via email to