| NAME | C SYNOPSIS | DESCRIPTION | DIAGNOSTICS | SEE ALSO | COLOPHON | |
|  | 
ATTR_REMOVE(3)            XFS Compatibility API            ATTR_REMOVE(3)
       attr_remove, attr_removef - remove a user attribute of a
       filesystem object
       #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);
       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.
       On success, zero is returned.  On error, -1 is returned, and errno
       is set appropriately.
       attr(1), attr_get(3), attr_list(3), attr_multi(3), attr_set(3)
       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 2025-08-11.  (At that
       time, the date of the most recent commit that was found in the
       repository was 2025-06-07.)  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)