Browse Source

Merge pull request #385 from trapexit/clone-errors

make fs::attr return ENOTSUP on EINVAL #381
pull/386/head
Antonio SJ Musumeci 8 years ago
committed by GitHub
parent
commit
9486bc9b21
  1. 16
      src/fs_attr_linux.icpp
  2. 4
      src/fs_attr_unsupported.icpp

16
src/fs_attr_linux.icpp

@ -35,7 +35,13 @@ namespace fs
get_fs_ioc_flags(const int fd,
int &flags)
{
return fs::ioctl(fd,FS_IOC_GETFLAGS,(void*)&flags);
int rv;
rv = fs::ioctl(fd,FS_IOC_GETFLAGS,(void*)&flags);
if((rv == -1) && (errno == EINVAL))
errno = ENOTSUP;
return rv;
}
static
@ -68,7 +74,13 @@ namespace fs
set_fs_ioc_flags(const int fd,
const int flags)
{
return fs::ioctl(fd,FS_IOC_SETFLAGS,(void*)&flags);
int rv;
rv = fs::ioctl(fd,FS_IOC_SETFLAGS,(void*)&flags);
if((rv == -1) && (errno == EINVAL))
errno = ENOTSUP;
return rv;
}
static

4
src/fs_attr_unsupported.icpp

@ -26,14 +26,14 @@ namespace fs
copy(const int fdin,
const int fdout)
{
return ENOTSUP;
return (errno=ENOTSUP,-1);
}
int
copy(const std::string &from,
const std::string &to)
{
return ENOTSUP;
return (errno=ENOTSUP,-1);
}
}
}
Loading…
Cancel
Save