[systemd-devel] [PATCH 1/4] Add change_attr_fd()
Lennart Poettering
lennart at poettering.net
Wed Apr 8 11:37:34 PDT 2015
On Mon, 16.03.15 20:33, Goffredo Baroncelli (kreijack at libero.it) wrote:
>
> +int change_attr_fd(int fd, unsigned value, unsigned mask) {
> + unsigned old_attr, new_attr;
> +
> + assert(fd >= 0);
> +
> + if (mask == 0)
> + return 0;
> +
> + if (ioctl(fd, FS_IOC_GETFLAGS, &old_attr) < 0)
> + return -errno;
> +
> + new_attr = (old_attr & ~mask) |(value & mask);
> +
> + if (new_attr == old_attr)
> + return 0;
> +
> + if (ioctl(fd, FS_IOC_SETFLAGS, &new_attr) < 0)
> + return -errno;
> +
> + return 0;
> +}
> +
With this added chattr_fd() is kinda redundant, no?
Lennart
--
Lennart Poettering, Red Hat
More information about the systemd-devel
mailing list