Fix some POSIX-compliance bugs in link, rename, mkdir.
* syscalls.cc (link): Delete obsolete comment. Reject directories and missing source up front. (rename): Use correct errno for trailing '.'. Detect empty strings. Allow trailing slash to newpath iff oldpath is directory. * dir.cc (mkdir): Reject dangling symlink with trailing slash. * fhandler_disk_file.cc (fhandler_disk_file::link): Reject trailing slash. * fhandler.cc (fhandler_base::link): Match Linux errno.
This commit is contained in:
@ -1541,7 +1541,7 @@ fhandler_base::ftruncate (_off64_t length, bool allow_truncate)
|
||||
int
|
||||
fhandler_base::link (const char *newpath)
|
||||
{
|
||||
set_errno (EINVAL);
|
||||
set_errno (EPERM);
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user