summaryrefslogtreecommitdiff
path: root/source3/libsmb/clientgen.c
diff options
context:
space:
mode:
authorLuke Leighton <lkcl@samba.org>1998-12-14 21:22:59 +0000
committerLuke Leighton <lkcl@samba.org>1998-12-14 21:22:59 +0000
commite67a8d9d984dbdef307294358d7d9a7f4314ea09 (patch)
tree3552948e76404eda2ed99ff12ee8a48a219b72bd /source3/libsmb/clientgen.c
parent254470cb566fc06f5818830d105361d853648d6e (diff)
downloadsamba-e67a8d9d984dbdef307294358d7d9a7f4314ea09.tar.gz
samba-e67a8d9d984dbdef307294358d7d9a7f4314ea09.tar.bz2
samba-e67a8d9d984dbdef307294358d7d9a7f4314ea09.zip
server_cryptkey() now calling cli_connectserverlist(). stupid microsoft
idiotic *SMBSERVER connectionism added to cli_connect_serverlist(). also added check for protocol < LANMAN2. (This used to be commit c2bcb3a286f22ed4f0f55da2a3eb2bff17906fb1)
Diffstat (limited to 'source3/libsmb/clientgen.c')
-rw-r--r--source3/libsmb/clientgen.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/source3/libsmb/clientgen.c b/source3/libsmb/clientgen.c
index 99d868e216..5bae8ffa81 100644
--- a/source3/libsmb/clientgen.c
+++ b/source3/libsmb/clientgen.c
@@ -2728,7 +2728,7 @@ BOOL cli_connect_serverlist(struct cli_state *cli, char *p)
extern pstring scope;
fstring remote_machine;
struct in_addr dest_ip;
- struct nmb_name calling, called;
+ struct nmb_name calling, called, stupid_smbserver_called;
BOOL connected_ok = False;
/*
@@ -2763,19 +2763,28 @@ BOOL cli_connect_serverlist(struct cli_state *cli, char *p)
make_nmb_name(&calling, global_myname , 0x0 , scope);
make_nmb_name(&called , remote_machine, 0x20, scope);
+ /* stupid microsoft destruction of the ability of netbios
+ * to provide multiple netbios servers on one host.
+ */
+ make_nmb_name(&stupid_smbserver_called , "*SMBSERVER", 0x20, scope);
pwd_set_nullpwd(&cli->pwd);
if (!cli_establish_connection(cli, remote_machine, &dest_ip,
&calling, &called,
"IPC$", "IPC",
+ False, True) &&
+ !cli_establish_connection(cli, remote_machine, &dest_ip,
+ &calling, &stupid_smbserver_called,
+ "IPC$", "IPC",
False, True))
{
cli_shutdown(cli);
continue;
}
- if (!IS_BITS_SET_ALL(cli->sec_mode, 1))
+ if (cli->protocol < PROTOCOL_LANMAN2 ||
+ !IS_BITS_SET_ALL(cli->sec_mode, 1))
{
DEBUG(1,("cli_connect_serverlist: machine %s isn't in user level security mode\n",
remote_machine));