summaryrefslogtreecommitdiff
path: root/source3/smbwrapper
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2003-04-23 10:07:25 +0000
committerAndrew Bartlett <abartlet@samba.org>2003-04-23 10:07:25 +0000
commitdb7b2e822f9b8eddb3d11437c675ab6bae5aad97 (patch)
treed0aaa92e68b41efcbd519b80851588025ec599fc /source3/smbwrapper
parent95af8e27b1e1889f85aa361ce6151dc0e2071724 (diff)
downloadsamba-db7b2e822f9b8eddb3d11437c675ab6bae5aad97.tar.gz
samba-db7b2e822f9b8eddb3d11437c675ab6bae5aad97.tar.bz2
samba-db7b2e822f9b8eddb3d11437c675ab6bae5aad97.zip
Parinoia for compleatly broken SMB servers that don't send back the right
fstype for IPC$ - assume the device type is IPC. Andrew Bartlett (This used to be commit 5ec78042124589d7d4e377581c187712950c93b2)
Diffstat (limited to 'source3/smbwrapper')
-rw-r--r--source3/smbwrapper/smbw_dir.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/source3/smbwrapper/smbw_dir.c b/source3/smbwrapper/smbw_dir.c
index 31d81a1e7e..6d55c1d9da 100644
--- a/source3/smbwrapper/smbw_dir.c
+++ b/source3/smbwrapper/smbw_dir.c
@@ -216,7 +216,7 @@ int smbw_dir_open(const char *fname)
smbw_NetServerEnum(&srv->cli, srv->server_name, SV_TYPE_ALL,
smbw_server_add, NULL);
*p = '#';
- } else if (strcmp(srv->cli.dev,"IPC") == 0) {
+ } else if ((strcmp(srv->cli.dev,"IPC") == 0) || (strcasecmp(share,"IPC$") == 0)) {
DEBUG(4,("doing NetShareEnum\n"));
smbw_share_add(".",0,"", NULL);
smbw_share_add("..",0,"", NULL);
@@ -412,7 +412,8 @@ int smbw_chdir(const char *name)
goto failed;
}
- if (strncmp(srv->cli.dev,"IPC",3) &&
+ if (strncmp(srv->cli.dev,"IPC",3) &&
+ strcasecmp(share, "IPC$") &&
strncmp(srv->cli.dev,"LPT",3) &&
!smbw_getatr(srv, path,
&mode, NULL, NULL, NULL, NULL, NULL)) {