diff options
author | Luke Leighton <lkcl@samba.org> | 1998-12-14 21:22:59 +0000 |
---|---|---|
committer | Luke Leighton <lkcl@samba.org> | 1998-12-14 21:22:59 +0000 |
commit | e67a8d9d984dbdef307294358d7d9a7f4314ea09 (patch) | |
tree | 3552948e76404eda2ed99ff12ee8a48a219b72bd /source3/libsmb | |
parent | 254470cb566fc06f5818830d105361d853648d6e (diff) | |
download | samba-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')
-rw-r--r-- | source3/libsmb/clientgen.c | 13 |
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)); |