summaryrefslogtreecommitdiff
path: root/source4/nbt_server/wins
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2006-01-13 16:27:47 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:51:01 -0500
commit4c117a001fd7c9ca214f15096f4158b94bf7ae3d (patch)
treef19eb73d1aa0c70bc2523af283d6b991a56720b8 /source4/nbt_server/wins
parentd45a8de617eaeb42ce43435f57916bab4274af13 (diff)
downloadsamba-4c117a001fd7c9ca214f15096f4158b94bf7ae3d.tar.gz
samba-4c117a001fd7c9ca214f15096f4158b94bf7ae3d.tar.bz2
samba-4c117a001fd7c9ca214f15096f4158b94bf7ae3d.zip
r12906: return the correct nb_flags
metze (This used to be commit c52436108d1628feb50c9bf720ae30c4dc469b34)
Diffstat (limited to 'source4/nbt_server/wins')
-rw-r--r--source4/nbt_server/wins/winsserver.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/source4/nbt_server/wins/winsserver.c b/source4/nbt_server/wins/winsserver.c
index 8760ffe922..b5c008121b 100644
--- a/source4/nbt_server/wins/winsserver.c
+++ b/source4/nbt_server/wins/winsserver.c
@@ -559,7 +559,7 @@ static void nbtd_winsserver_query(struct nbt_name_socket *nbtsock,
struct winsdb_record *rec_1b = NULL;
const char **addresses;
const char **addresses_1b = NULL;
- uint16_t nb_flags = 0; /* TODO: ... */
+ uint16_t nb_flags = 0;
if (name->type == NBT_NAME_MASTER) {
goto notfound;
@@ -606,6 +606,7 @@ static void nbtd_winsserver_query(struct nbt_name_socket *nbtsock,
if (!addresses) {
goto notfound;
}
+ nb_flags |= NBT_NM_GROUP;
goto found;
}
@@ -642,6 +643,12 @@ static void nbtd_winsserver_query(struct nbt_name_socket *nbtsock,
}
}
+ if (rec->type == WREPL_TYPE_SGROUP) {
+ nb_flags |= NBT_NM_GROUP;
+ } else {
+ nb_flags |= (rec->node <<13);
+ }
+
found:
nbtd_name_query_reply(nbtsock, packet, src, name,
0, nb_flags, addresses);