diff options
author | Volker Lendecke <vl@samba.org> | 2010-08-28 14:05:20 +0200 |
---|---|---|
committer | Volker Lendecke <vl@samba.org> | 2010-08-28 14:06:10 +0200 |
commit | 755ef5cf1159f4af40e763ab797be8fcaa0c6d37 (patch) | |
tree | be9105ed0521d9be54ba64bd751270567d2189c6 /source3 | |
parent | 5e58156654759674d1a93208302c4d4c8f4c258c (diff) | |
download | samba-755ef5cf1159f4af40e763ab797be8fcaa0c6d37.tar.gz samba-755ef5cf1159f4af40e763ab797be8fcaa0c6d37.tar.bz2 samba-755ef5cf1159f4af40e763ab797be8fcaa0c6d37.zip |
s3: Remove smbd_server_fd() from set_local_machine_name()
Diffstat (limited to 'source3')
-rw-r--r-- | source3/lib/substitute.c | 15 | ||||
-rw-r--r-- | source3/smbd/reply.c | 9 |
2 files changed, 9 insertions, 15 deletions
diff --git a/source3/lib/substitute.c b/source3/lib/substitute.c index e5f1b2dbdf..e655128f49 100644 --- a/source3/lib/substitute.c +++ b/source3/lib/substitute.c @@ -45,7 +45,6 @@ bool set_local_machine_name(const char *local_name, bool perm) { static bool already_perm = false; char *tmp_local_machine = NULL; - char addr[INET6_ADDRSTRLEN]; size_t len; tmp_local_machine = SMB_STRDUP(local_name); @@ -54,20 +53,6 @@ bool set_local_machine_name(const char *local_name, bool perm) } trim_char(tmp_local_machine,' ',' '); - /* - * Windows NT/2k uses "*SMBSERVER" and XP uses "*SMBSERV" - * arrggg!!! - */ - - if (strequal(tmp_local_machine, "*SMBSERVER") || - strequal(tmp_local_machine, "*SMBSERV") ) { - SAFE_FREE(local_machine); - local_machine = SMB_STRDUP(client_socket_addr(smbd_server_fd(), - addr, sizeof(addr)) ); - SAFE_FREE(tmp_local_machine); - return local_machine ? true : false; - } - if (already_perm) { return true; } diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c index 5533ee07d1..df7dac7b09 100644 --- a/source3/smbd/reply.c +++ b/source3/smbd/reply.c @@ -528,6 +528,15 @@ void reply_special(struct smbd_server_connection *sconn, char *inbuf) exit_server_cleanly("retargeted client"); } + /* + * Windows NT/2k uses "*SMBSERVER" and XP uses + * "*SMBSERV" arrggg!!! + */ + if (strequal(name1, "*SMBSERVER ") + || strequal(name1, "*SMBSERV ")) { + fstrcpy(name1, sconn->client_id.addr); + } + set_local_machine_name(name1, True); set_remote_machine_name(name2, True); |