summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>1996-10-07 11:06:34 +0000
committerAndrew Tridgell <tridge@samba.org>1996-10-07 11:06:34 +0000
commitdfa2b456c743a643080d3a2eb0d9db62503141f5 (patch)
tree9ef3ba3fb4bc2fd73d21e621dc72a5c41954086e
parent8781e4d787763a6b50d7b3819b33ace208ff7784 (diff)
downloadsamba-dfa2b456c743a643080d3a2eb0d9db62503141f5.tar.gz
samba-dfa2b456c743a643080d3a2eb0d9db62503141f5.tar.bz2
samba-dfa2b456c743a643080d3a2eb0d9db62503141f5.zip
- continue when failing to load config file in nmblookup and smbclient
- fix important bug in nmbd where it set the return code for a negative name response to 0 (which means success!) (This used to be commit bfa816cc8f30d9a629b4fe9f71bf0707aa6c4502)
-rw-r--r--source3/client/client.c1
-rw-r--r--source3/namepacket.c2
-rw-r--r--source3/smbd/reply.c2
-rw-r--r--source3/utils/nmblookup.c12
4 files changed, 11 insertions, 6 deletions
diff --git a/source3/client/client.c b/source3/client/client.c
index b8b63207d7..477c8fe1f8 100644
--- a/source3/client/client.c
+++ b/source3/client/client.c
@@ -4500,7 +4500,6 @@ static void usage(char *pname)
if (!lp_load(servicesf,True)) {
fprintf(stderr, "Can't load %s - run testparm to debug it\n", servicesf);
- return (-1);
}
if (*workgroup == 0)
diff --git a/source3/namepacket.c b/source3/namepacket.c
index 5bfa55d4f1..cd133d0a53 100644
--- a/source3/namepacket.c
+++ b/source3/namepacket.c
@@ -252,7 +252,7 @@ void reply_netbios_packet(struct packet_struct *p1,int trn_id,
nmb->header.ancount = 1;
nmb->header.nscount = 0;
nmb->header.arcount = 0;
- nmb->header.rcode = 0;
+ nmb->header.rcode = rcode;
bzero((char*)&nmb->question,sizeof(nmb->question));
diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c
index 89b07f1b9e..48a0732617 100644
--- a/source3/smbd/reply.c
+++ b/source3/smbd/reply.c
@@ -302,7 +302,7 @@ int reply_unknown(char *inbuf,char *outbuf)
int reply_ioctl(char *inbuf,char *outbuf)
{
DEBUG(3,("ignoring ioctl\n"));
-#if 1
+#if 0
/* we just say it succeeds and hope its all OK.
some day it would be nice to interpret them individually */
return set_message(outbuf,1,0,True);
diff --git a/source3/utils/nmblookup.c b/source3/utils/nmblookup.c
index c137b4f93a..ccdbec45e6 100644
--- a/source3/utils/nmblookup.c
+++ b/source3/utils/nmblookup.c
@@ -101,6 +101,8 @@ int main(int argc,char *argv[])
BOOL find_status=False;
int i;
static pstring servicesf = CONFIGFILE;
+ struct in_addr bcast_addr;
+ BOOL got_bcast = False;
DEBUGLEVEL = 1;
*lookup = 0;
@@ -116,6 +118,8 @@ int main(int argc,char *argv[])
{
case 'B':
iface_set_default(NULL,optarg,NULL);
+ bcast_addr = *interpret_addr2(optarg);
+ got_bcast = True;
break;
case 'i':
strcpy(scope,optarg);
@@ -149,14 +153,16 @@ int main(int argc,char *argv[])
if (!lp_load(servicesf,True)) {
fprintf(stderr, "Can't load %s - run testparm to debug it\n", servicesf);
- return (-1);
}
load_interfaces();
init_structs();
if (!open_sockets()) return(1);
- DEBUG(1,("Sending queries to %s\n",inet_ntoa(*iface_bcast(ipzero))));
+ if (!got_bcast)
+ bcast_addr = *iface_bcast(ipzero);
+
+ DEBUG(1,("Sending queries to %s\n",inet_ntoa(bcast_addr)));
for (i=optind;i<argc;i++)
@@ -187,7 +193,7 @@ int main(int argc,char *argv[])
}
if (name_query(ServerFD,lookup,lookup_type,bcast,True,
- *iface_bcast(ipzero),&ip,NULL))
+ bcast_addr,&ip,NULL))
{
printf("%s %s\n",inet_ntoa(ip),lookup);
}