* path.cc (path_conv::check): Always reset to FH_FS when component != 0 and
FH_NETDRIVE to fix problems with strict case checking.
This commit is contained in:
parent
fbc0e572ce
commit
0fc9cf11f8
@ -1,3 +1,8 @@
|
|||||||
|
2005-06-14 Christopher Faylor <cgf@timesys.com>
|
||||||
|
|
||||||
|
* path.cc (path_conv::check): Always reset to FH_FS when component != 0
|
||||||
|
and FH_NETDRIVE to fix problems with strict case checking.
|
||||||
|
|
||||||
2005-06-12 Corinna Vinschen <corinna@vinschen.de>
|
2005-06-12 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
* fhandler_socket.cc (fhandler_socket::recvmsg): Avoid SEGV in OpenSSH
|
* fhandler_socket.cc (fhandler_socket::recvmsg): Avoid SEGV in OpenSSH
|
||||||
|
@ -886,22 +886,19 @@ out:
|
|||||||
error = EROFS;
|
error = EROFS;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
else if (dev.devn == FH_NETDRIVE && component)
|
||||||
|
{
|
||||||
|
/* This case indicates a non-existant resp. a non-retrievable
|
||||||
|
share. This happens for instance if the share is a printer.
|
||||||
|
In this case the path must not be treated like a FH_NETDRIVE,
|
||||||
|
but like a FH_FS instead, so the usual open call for files
|
||||||
|
is used on it. */
|
||||||
|
dev.parse (FH_FS);
|
||||||
|
}
|
||||||
else if (isvirtual_dev (dev.devn) && fileattr == INVALID_FILE_ATTRIBUTES)
|
else if (isvirtual_dev (dev.devn) && fileattr == INVALID_FILE_ATTRIBUTES)
|
||||||
{
|
{
|
||||||
if (dev.devn == FH_NETDRIVE && component)
|
error = dev.devn == FH_NETDRIVE ? ENOSHARE : ENOENT;
|
||||||
{
|
return;
|
||||||
/* This case indicates a non-existant resp. a non-retrievable
|
|
||||||
share. This happens for instance if the share is a printer.
|
|
||||||
In this case the path must not be treated like a FH_NETDRIVE,
|
|
||||||
but like a FH_FS instead, so the usual open call for files
|
|
||||||
is used on it. */
|
|
||||||
dev.parse (FH_FS);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
error = dev.devn == FH_NETDRIVE ? ENOSHARE : ENOENT;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else if (!need_directory || error)
|
else if (!need_directory || error)
|
||||||
/* nothing to do */;
|
/* nothing to do */;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user