diff options
author | Andrew Bartlett <abartlet@samba.org> | 2012-04-04 08:34:25 +1000 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2012-04-05 13:39:00 +1000 |
commit | c70ac29c5441073752da7384b7f3bf54c9986aa0 (patch) | |
tree | ad33c1dc4ac5782f682ce66029d73cc5551a4a82 /source3/lib | |
parent | c5b17c555576a2b8e24e0df613dde922fe60520d (diff) | |
download | samba-c70ac29c5441073752da7384b7f3bf54c9986aa0.tar.gz samba-c70ac29c5441073752da7384b7f3bf54c9986aa0.tar.bz2 samba-c70ac29c5441073752da7384b7f3bf54c9986aa0.zip |
s3-vfs: Remove unused lsetxattr call from VFS modules, system.c and configure
If this is ever needed again, it would be more appropriate as an options argument
to listxattr.
Andrew Bartlett
Diffstat (limited to 'source3/lib')
-rw-r--r-- | source3/lib/system.c | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/source3/lib/system.c b/source3/lib/system.c index ed5cf0cec8..abebb43915 100644 --- a/source3/lib/system.c +++ b/source3/lib/system.c @@ -1821,70 +1821,6 @@ int sys_setxattr (const char *path, const char *name, const void *value, size_t #endif } -int sys_lsetxattr (const char *path, const char *name, const void *value, size_t size, int flags) -{ -#if defined(HAVE_LSETXATTR) - return lsetxattr(path, name, value, size, flags); -#elif defined(HAVE_SETXATTR) && defined(XATTR_ADD_OPT) - int options = XATTR_NOFOLLOW; - return setxattr(path, name, value, size, 0, options); -#elif defined(LSETEA) - return lsetea(path, name, value, size, flags); -#elif defined(HAVE_EXTATTR_SET_LINK) - char *s; - int retval = 0; - int attrnamespace = (strncmp(name, "system", 6) == 0) ? - EXTATTR_NAMESPACE_SYSTEM : EXTATTR_NAMESPACE_USER; - const char *attrname = ((s=strchr_m(name, '.')) == NULL) ? name : s + 1; - if (flags) { - /* Check attribute existence */ - retval = extattr_get_link(path, attrnamespace, attrname, NULL, 0); - if (retval < 0) { - /* REPLACE attribute, that doesn't exist */ - if (flags & XATTR_REPLACE && errno == ENOATTR) { - errno = ENOATTR; - return -1; - } - /* Ignore other errors */ - } - else { - /* CREATE attribute, that already exists */ - if (flags & XATTR_CREATE) { - errno = EEXIST; - return -1; - } - } - } - - retval = extattr_set_link(path, attrnamespace, attrname, value, size); - return (retval < 0) ? -1 : 0; -#elif defined(HAVE_ATTR_SET) - int myflags = ATTR_DONTFOLLOW; - char *attrname = strchr(name,'.') + 1; - - if (strncmp(name, "system", 6) == 0) myflags |= ATTR_ROOT; - if (flags & XATTR_CREATE) myflags |= ATTR_CREATE; - if (flags & XATTR_REPLACE) myflags |= ATTR_REPLACE; - - return attr_set(path, attrname, (const char *)value, size, myflags); -#elif defined(HAVE_ATTROPEN) - int ret = -1; - int myflags = O_RDWR | AT_SYMLINK_NOFOLLOW; - int attrfd; - if (flags & XATTR_CREATE) myflags |= O_EXCL; - if (!(flags & XATTR_REPLACE)) myflags |= O_CREAT; - attrfd = solaris_attropen(path, name, myflags, (mode_t) SOLARIS_ATTRMODE); - if (attrfd >= 0) { - ret = solaris_write_xattr(attrfd, value, size); - close(attrfd); - } - return ret; -#else - errno = ENOSYS; - return -1; -#endif -} - int sys_fsetxattr (int filedes, const char *name, const void *value, size_t size, int flags) { #if defined(HAVE_FSETXATTR) |