diff options
author | Andrew Tridgell <tridge@samba.org> | 1998-10-04 10:46:52 +0000 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 1998-10-04 10:46:52 +0000 |
commit | 147d49dade3901835b5d60b02c495bea544ff5e9 (patch) | |
tree | e42840e7a4e63ea89359820aa329e9c24da48180 /source/smbwrapper/smbw.c | |
parent | 7bd738c30a09a211fd14a8544309efeec17c66f5 (diff) | |
download | samba-147d49dade3901835b5d60b02c495bea544ff5e9.tar.gz samba-147d49dade3901835b5d60b02c495bea544ff5e9.tar.xz samba-147d49dade3901835b5d60b02c495bea544ff5e9.zip |
use *SMBSERVER convention in smbwrapper to allow us to connect to
servers that we don't know the netbios name of.
Diffstat (limited to 'source/smbwrapper/smbw.c')
-rw-r--r-- | source/smbwrapper/smbw.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/source/smbwrapper/smbw.c b/source/smbwrapper/smbw.c index 0abe823e299..054b694c415 100644 --- a/source/smbwrapper/smbw.c +++ b/source/smbwrapper/smbw.c @@ -360,21 +360,27 @@ struct smbw_server *smbw_server(char *server, char *share) return NULL; } + make_nmb_name(&calling, global_myname, 0x0, ""); + make_nmb_name(&called , server, 0x20, ""); + + again: /* have to open a new connection */ if (!cli_initialise(&c) || !cli_connect(&c, server, NULL)) { errno = ENOENT; return NULL; } - make_nmb_name(&calling, global_myname, 0x0, ""); - make_nmb_name(&called , server, 0x20, ""); - if (!cli_session_request(&c, &calling, &called)) { cli_shutdown(&c); + if (strcmp(called.name, "*SMBSERVER")) { + make_nmb_name(&called , "*SMBSERVER", 0x20, ""); + goto again; + } errno = ENOENT; return NULL; } + if (!cli_negprot(&c)) { cli_shutdown(&c); errno = ENOENT; |