summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Potter <tpot@samba.org>2003-09-29 06:22:55 +0000
committerTim Potter <tpot@samba.org>2003-09-29 06:22:55 +0000
commit1052b52178fb4ce0e83ddfc48339d68d34fd43c3 (patch)
tree2f6ab4c5fe544f3bc77dc5b8413d91734f16e282
parent981c82b16e82da859f7205cfc37ffe849e58b78c (diff)
downloadsamba-1052b52178fb4ce0e83ddfc48339d68d34fd43c3.tar.gz
samba-1052b52178fb4ce0e83ddfc48339d68d34fd43c3.tar.bz2
samba-1052b52178fb4ce0e83ddfc48339d68d34fd43c3.zip
Merge from 3.0:
>Apply some NULL pointer paranoia to previous wins hook fix. >Fix broken wins hook functionality. A i18n fixe caused the name type >to be appended to the netbios name between angle brackets. This interfered >the 'sh -c' used to implement smbrun(). Closes bug #528. (This used to be commit 12659ae74965f8a088361cb4fbf8730cdad84af1)
-rw-r--r--source3/nmbd/nmbd_winsserver.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/source3/nmbd/nmbd_winsserver.c b/source3/nmbd/nmbd_winsserver.c
index 484588c662..3694072420 100644
--- a/source3/nmbd/nmbd_winsserver.c
+++ b/source3/nmbd/nmbd_winsserver.c
@@ -107,7 +107,7 @@ static void wins_hook(const char *operation, struct name_record *namerec, int tt
{
pstring command;
char *cmd = lp_wins_hook();
- char *p;
+ char *p, *namestr;
int i;
if (!cmd || !*cmd) return;
@@ -119,11 +119,17 @@ static void wins_hook(const char *operation, struct name_record *namerec, int tt
}
}
+ /* Use the name without the nametype (and scope) appended */
+
+ namestr = nmb_namestr(&namerec->name);
+ if ((p = strchr(namestr, '<')))
+ *p = 0;
+
p = command;
p += slprintf(p, sizeof(command)-1, "%s %s %s %02x %d",
cmd,
operation,
- nmb_namestr(&namerec->name),
+ namestr,
namerec->name.name_type,
ttl);