attr_remove(3) — Linux manual page

NAME | C SYNOPSIS | DESCRIPTION | DIAGNOSTICS | SEE ALSO | COLOPHON

ATTR_REMOVE(3)            XFS Compatibility API           ATTR_REMOVE(3)

NAME         top

       attr_remove, attr_removef - remove a user attribute of a
       filesystem object

C SYNOPSIS         top

       #include <attr/attributes.h>

       int attr_remove (const char *path, const char *attrname, int flags);

       int attr_removef (int fd, const char *attrname, int flags);

DESCRIPTION         top

       The attr_remove and attr_removef functions provide a way to
       remove previously created attributes from filesystem objects.

       Path points to a path name for a filesystem object, and fd refers
       to the file descriptor associated with a file.  If the attribute
       attrname exists, the attribute name and value will be removed
       from the filesystem object.  The flags argument can contain the
       following symbols bitwise OR'ed together:

       ATTR_ROOT
              Look for attrname in the root address space, not in the
              user address space.  (limited to use by super-user only)

       ATTR_DONTFOLLOW
              Do not follow symbolic links when resolving a path on an
              attr_remove function call.  The default is to follow
              symbolic links.

       attr_remove will fail if one or more of the following are true:

       [ENOATTR]
              The attribute name given is not associated with the
              indicated filesystem object.

       [ENOENT]
              The named file does not exist.

       [EPERM]
              The effective user ID does not match the owner of the file
              and the effective user ID is not super-user.

       [ENOTDIR]
              A component of the path prefix is not a directory.

       [EACCES]
              Search permission is denied on a component of the path
              prefix.

       [EINVAL]
              A bit was set in the flag argument that is not defined for
              this system call.

       [EFAULT]
              Path points outside the allocated address space of the
              process.

       [ELOOP]
              A path name lookup involved too many symbolic links.

       [ENAMETOOLONG]
              The length of path exceeds {MAXPATHLEN}, or a pathname
              component is longer than {MAXNAMELEN}.

       attr_removef will fail if:

       [ENOATTR]
              The attribute name given is not associated with the
              indicated filesystem object.

       [EINVAL]
              A bit was set in the flag argument that is not defined for
              this system call, or fd refers to a socket, not a file.

       [EFAULT]
              Attrname points outside the allocated address space of the
              process.

       [EBADF]
              Fd does not refer to a valid descriptor.

DIAGNOSTICS         top

       On success, zero is returned.  On error, -1 is returned, and
       errno is set appropriately.

SEE ALSO         top

       attr(1), attr_get(3), attr_list(3), attr_multi(3), attr_set(3)

COLOPHON         top

       This page is part of the attr (manipulating filesystem extended
       attributes) project.  Information about the project can be found
       at ⟨http://savannah.nongnu.org/projects/attr⟩.  If you have a bug
       report for this manual page, see
       ⟨http://savannah.nongnu.org/bugs/?group=attr⟩.  This page was
       obtained from the project's upstream Git repository
       ⟨git://git.savannah.nongnu.org/attr.git⟩ on 2023-12-22.  (At that
       time, the date of the most recent commit that was found in the
       repository was 2023-12-01.)  If you discover any rendering
       problems in this HTML version of the page, or you believe there
       is a better or more up-to-date source for the page, or you have
       corrections or improvements to the information in this COLOPHON
       (which is not part of the original manual page), send a mail to
       man-pages@man7.org

Dec 2001                   Extended Attributes            ATTR_REMOVE(3)

Pages that refer to this page: attr(1)attr_get(3)attr_list(3)attr_multi(3)attr_set(3)