summaryrefslogtreecommitdiff
path: root/source4/utils/nmblookup.c
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2005-01-31 01:57:58 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:09:23 -0500
commit414f6c80b22b128c25d947d62f6b5d1ec13091b6 (patch)
treeda147a6c2802a7af79b5dfcdf3d3f6508287520e /source4/utils/nmblookup.c
parent37449657a8d335097b3f3559f8b5bf084b50b85a (diff)
downloadsamba-414f6c80b22b128c25d947d62f6b5d1ec13091b6.tar.gz
samba-414f6c80b22b128c25d947d62f6b5d1ec13091b6.tar.bz2
samba-414f6c80b22b128c25d947d62f6b5d1ec13091b6.zip
r5114: the nbtd task can now act as a basic B-node server. It registers its
names on the network and answers name queries. Lots of details are still missing, but at least this now means you don't need a Samba3 nmbd to use Samba4. missing pieces include: - name registrations should be "shout 3 times, then demand" - no WINS server yet - no master browser code (This used to be commit d7d31fdc6670f026f96b50e51a4de19f0b920e5b)
Diffstat (limited to 'source4/utils/nmblookup.c')
-rw-r--r--source4/utils/nmblookup.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/source4/utils/nmblookup.c b/source4/utils/nmblookup.c
index 5881b25c79..824ce64298 100644
--- a/source4/utils/nmblookup.c
+++ b/source4/utils/nmblookup.c
@@ -141,6 +141,7 @@ static NTSTATUS do_node_query(struct nbt_name_socket *nbtsock,
{
struct nbt_name_query io;
NTSTATUS status;
+ int i;
io.in.name.name = node_name;
io.in.name.type = node_type;
@@ -151,14 +152,16 @@ static NTSTATUS do_node_query(struct nbt_name_socket *nbtsock,
io.in.timeout = 3;
status = nbt_name_query(nbtsock, nbtsock, &io);
- if (NT_STATUS_IS_OK(status)) {
+ NT_STATUS_NOT_OK_RETURN(status);
+
+ for (i=0;i<io.out.num_addrs;i++) {
printf("%s %s<%02x>\n",
- io.out.reply_addr,
+ io.out.reply_addrs[i],
io.out.name.name,
io.out.name.type);
- if (options.node_status) {
- do_node_status(nbtsock, io.out.reply_addr);
- }
+ }
+ if (options.node_status && io.out.num_addrs > 0) {
+ do_node_status(nbtsock, io.out.reply_addrs[0]);
}
return status;