* fhandler.h (fhandler_base::mkdir): New virtual method.
(fhandler_base::rmdir): Ditto. (fhandler_disk_file:mkdir): New method. (fhandler_disk_file:rmdir): Ditto. * dir.cc (mkdir): Implement with fhandlers. (rmdir): Ditto. * fhandler.cc (fhandler_base::mkdir): New virtual method. (fhandler_base::rmdir): Ditto. (fhandler_disk_file::mkdir): New method. (fhandler_disk_file::rmdir): Ditto. fhandler_random.cc: white space.
This commit is contained in:
@@ -1509,6 +1509,28 @@ fhandler_base::set_nonblocking (int yes)
|
||||
openflags = (openflags & ~O_NONBLOCK_MASK) | new_flags;
|
||||
}
|
||||
|
||||
int
|
||||
fhandler_base::mkdir (mode_t)
|
||||
{
|
||||
if (exists ())
|
||||
set_errno (EEXIST);
|
||||
else
|
||||
set_errno (EROFS);
|
||||
return -1;
|
||||
}
|
||||
|
||||
int
|
||||
fhandler_base::rmdir ()
|
||||
{
|
||||
if (!exists ())
|
||||
set_errno (ENOENT);
|
||||
else if (!pc.isdir ())
|
||||
set_errno (ENOTDIR);
|
||||
else
|
||||
set_errno (EROFS);
|
||||
return -1;
|
||||
}
|
||||
|
||||
DIR *
|
||||
fhandler_base::opendir ()
|
||||
{
|
||||
|
Reference in New Issue
Block a user