s3-vfs: Remove unused lgetxattr call from VFS modules, system.c and configure
authorAndrew Bartlett <abartlet@samba.org>
Mon, 2 Apr 2012 02:43:15 +0000 (12:43 +1000)
committerAndrew Bartlett <abartlet@samba.org>
Thu, 5 Apr 2012 03:39:00 +0000 (13:39 +1000)
17 files changed:
docs-xml/manpages-3/vfs_full_audit.8.xml
examples/VFS/skel_opaque.c
examples/VFS/skel_transparent.c
source3/configure.in
source3/include/proto.h
source3/include/vfs.h
source3/include/vfs_macros.h
source3/lib/system.c
source3/modules/vfs_cap.c
source3/modules/vfs_catia.c
source3/modules/vfs_default.c
source3/modules/vfs_full_audit.c
source3/modules/vfs_onefs_shadow_copy.c
source3/modules/vfs_shadow_copy2.c
source3/modules/vfs_time_audit.c
source3/smbd/vfs.c
source3/wscript

index 9c9dc843f896e16787f6e31faa02c95b06f4b3b7..d77d0234ddc09eea691670d3a90df6d5490bba0b 100644 (file)
@@ -74,7 +74,6 @@
         <member>getwd</member>
         <member>getxattr</member>
         <member>kernel_flock</member>
-        <member>lgetxattr</member>
         <member>link</member>
         <member>linux_setlease</member>
         <member>listxattr</member>
index 426e7b70e259a0cbd0f4ebf79a268fa7a21629fd..924947afff7c92bd79bd8c3d2b2a8aa1d455ef10 100644 (file)
@@ -668,13 +668,6 @@ static ssize_t skel_getxattr(vfs_handle_struct *handle, const char *path, const
        return -1;
 }
 
-static ssize_t skel_lgetxattr(vfs_handle_struct *handle, const char *path, const char *name, void *value, size_t
-size)
-{
-       errno = ENOSYS;
-       return -1;
-}
-
 static ssize_t skel_fgetxattr(vfs_handle_struct *handle, struct files_struct *fsp, const char *name, void *value, size_t size)
 {
        errno = ENOSYS;
@@ -913,7 +906,6 @@ struct vfs_fn_pointers skel_opaque_fns = {
 
        /* EA operations. */
        .getxattr_fn = skel_getxattr,
-       .lgetxattr_fn = skel_lgetxattr,
        .fgetxattr_fn = skel_fgetxattr,
        .listxattr_fn = skel_listxattr,
        .llistxattr_fn = skel_llistxattr,
index f94719403dda33e0c1de48b5d36bc3d1187b50e9..29923d80833791571cafa17ab2ea8e7f671cd343 100644 (file)
@@ -646,12 +646,6 @@ static ssize_t skel_getxattr(vfs_handle_struct *handle, const char *path, const
         return SMB_VFS_NEXT_GETXATTR(handle, path, name, value, size);
 }
 
-static ssize_t skel_lgetxattr(vfs_handle_struct *handle, const char *path, const char *name, void *value, size_t
-size)
-{
-        return SMB_VFS_NEXT_LGETXATTR(handle, path, name, value, size);
-}
-
 static ssize_t skel_fgetxattr(vfs_handle_struct *handle, struct files_struct *fsp, const char *name, void *value, size_t size)
 {
         return SMB_VFS_NEXT_FGETXATTR(handle, fsp, name, value, size);
@@ -869,7 +863,6 @@ struct vfs_fn_pointers skel_transparent_fns = {
 
        /* EA operations. */
        .getxattr_fn = skel_getxattr,
-       .lgetxattr_fn = skel_lgetxattr,
        .fgetxattr_fn = skel_fgetxattr,
        .listxattr_fn = skel_listxattr,
        .llistxattr_fn = skel_llistxattr,
index e278a390b09eb8050db6ab386d1b852f30f8f1ee..58dd1c230713ec36e29fc94ffbaeee582f1e4cba 100644 (file)
@@ -1301,7 +1301,7 @@ case "$host_os" in
   *)
        AC_SEARCH_LIBS(getxattr, [attr])
        AC_CHECK_FUNCS(getxattr,[
-               AC_CHECK_FUNCS(lgetxattr fgetxattr listxattr llistxattr flistxattr removexattr lremovexattr fremovexattr setxattr lsetxattr fsetxattr)
+               AC_CHECK_FUNCS(fgetxattr listxattr llistxattr flistxattr removexattr lremovexattr fremovexattr setxattr lsetxattr fsetxattr)
                ])
        AC_CHECK_FUNCS(getea,[
                AC_CHECK_FUNCS(fgetea lgetea listea flistea llistea removeea fremoveea lremoveea setea fsetea lsetea)
index 303ea9ccb4b2ce8df49f68bae281b229b89cae3f..2872ada33d0e0d36c9a2d8f84222f3049063a390 100644 (file)
@@ -351,7 +351,6 @@ int sys_setgroups(gid_t UNUSED(primary_gid), int setlen, gid_t *gidset);
 int sys_popen(const char *command);
 int sys_pclose(int fd);
 ssize_t sys_getxattr (const char *path, const char *name, void *value, size_t size);
-ssize_t sys_lgetxattr (const char *path, const char *name, void *value, size_t size);
 ssize_t sys_fgetxattr (int filedes, const char *name, void *value, size_t size);
 ssize_t sys_listxattr (const char *path, char *list, size_t size);
 ssize_t sys_llistxattr (const char *path, char *list, size_t size);
index 585214f77b1495513998f3c877b7ceae09d9a513..d1aa9e96dc75c1662fd47e2f422fddbb4e1aabf9 100644 (file)
@@ -398,7 +398,6 @@ struct vfs_fn_pointers {
 
        /* EA operations. */
        ssize_t (*getxattr_fn)(struct vfs_handle_struct *handle,const char *path, const char *name, void *value, size_t size);
-       ssize_t (*lgetxattr_fn)(struct vfs_handle_struct *handle,const char *path, const char *name, void *value, size_t size);
        ssize_t (*fgetxattr_fn)(struct vfs_handle_struct *handle, struct files_struct *fsp, const char *name, void *value, size_t size);
        ssize_t (*listxattr_fn)(struct vfs_handle_struct *handle, const char *path, char *list, size_t size);
        ssize_t (*llistxattr_fn)(struct vfs_handle_struct *handle, const char *path, char *list, size_t size);
@@ -805,9 +804,6 @@ int smb_vfs_call_sys_acl_free_qualifier(struct vfs_handle_struct *handle,
 ssize_t smb_vfs_call_getxattr(struct vfs_handle_struct *handle,
                              const char *path, const char *name, void *value,
                              size_t size);
-ssize_t smb_vfs_call_lgetxattr(struct vfs_handle_struct *handle,
-                              const char *path, const char *name, void *value,
-                              size_t size);
 ssize_t smb_vfs_call_fgetxattr(struct vfs_handle_struct *handle,
                               struct files_struct *fsp, const char *name,
                               void *value, size_t size);
index 68165fe092cb59961e81eac419a3ac3e69cf44c5..e35630a629aa643e71b45032bba2cef69ba93d04 100644 (file)
 #define SMB_VFS_NEXT_GETXATTR(handle,path,name,value,size) \
        smb_vfs_call_getxattr((handle)->next,(path),(name),(value),(size))
 
-#define SMB_VFS_LGETXATTR(conn,path,name,value,size) \
-       smb_vfs_call_lgetxattr((conn)->vfs_handles,(path),(name),(value),(size))
-#define SMB_VFS_NEXT_LGETXATTR(handle,path,name,value,size) \
-       smb_vfs_call_lgetxattr((handle)->next,(path),(name),(value),(size))
-
 #define SMB_VFS_FGETXATTR(fsp,name,value,size) \
        smb_vfs_call_fgetxattr((fsp)->conn->vfs_handles, (fsp), (name),(value),(size))
 #define SMB_VFS_NEXT_FGETXATTR(handle,fsp,name,value,size) \
index 5ba3aebd6955592ccfc955377bcdc1bd941cafc5..70df46605dfbae5fe948b3a75805ed81b6e1d180 100644 (file)
@@ -1365,57 +1365,6 @@ ssize_t sys_getxattr (const char *path, const char *name, void *value, size_t si
 #endif
 }
 
-ssize_t sys_lgetxattr (const char *path, const char *name, void *value, size_t size)
-{
-#if defined(HAVE_LGETXATTR)
-       return lgetxattr(path, name, value, size);
-#elif defined(HAVE_GETXATTR) && defined(XATTR_ADD_OPT)
-       int options = XATTR_NOFOLLOW;
-       return getxattr(path, name, value, size, 0, options);
-#elif defined(HAVE_LGETEA)
-       return lgetea(path, name, value, size);
-#elif defined(HAVE_EXTATTR_GET_LINK)
-       char *s;
-       ssize_t retval;
-       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((retval=extattr_get_link(path, attrnamespace, attrname, NULL, 0)) >= 0) {
-               if(retval > size) {
-                       errno = ERANGE;
-                       return -1;
-               }
-               if((retval=extattr_get_link(path, attrnamespace, attrname, value, size)) >= 0)
-                       return retval;
-       }
-
-       DEBUG(10,("sys_lgetxattr: extattr_get_link() failed with: %s\n", strerror(errno)));
-       return -1;
-#elif defined(HAVE_ATTR_GET)
-       int retval, flags = ATTR_DONTFOLLOW;
-       int valuelength = (int)size;
-       char *attrname = strchr(name,'.') + 1;
-
-       if (strncmp(name, "system", 6) == 0) flags |= ATTR_ROOT;
-
-       retval = attr_get(path, attrname, (char *)value, &valuelength, flags);
-
-       return retval ? retval : valuelength;
-#elif defined(HAVE_ATTROPEN)
-       ssize_t ret = -1;
-       int attrfd = solaris_attropen(path, name, O_RDONLY|AT_SYMLINK_NOFOLLOW, 0);
-       if (attrfd >= 0) {
-               ret = solaris_read_xattr(attrfd, value, size);
-               close(attrfd);
-       }
-       return ret;
-#else
-       errno = ENOSYS;
-       return -1;
-#endif
-}
-
 ssize_t sys_fgetxattr (int filedes, const char *name, void *value, size_t size)
 {
 #if defined(HAVE_FGETXATTR)
index d5682720cdb921eef5651c14aa592a8a493d7ba8..716e5dce80596de4fdb477da797edaa710424b42 100644 (file)
@@ -454,19 +454,6 @@ static ssize_t cap_getxattr(vfs_handle_struct *handle, const char *path, const c
         return SMB_VFS_NEXT_GETXATTR(handle, cappath, capname, value, size);
 }
 
-static ssize_t cap_lgetxattr(vfs_handle_struct *handle, const char *path, const char *name, void *value, size_t
-size)
-{
-       char *cappath = capencode(talloc_tos(), path);
-       char *capname = capencode(talloc_tos(), name);
-
-       if (!cappath || !capname) {
-               errno = ENOMEM;
-               return -1;
-       }
-        return SMB_VFS_NEXT_LGETXATTR(handle, cappath, capname, value, size);
-}
-
 static ssize_t cap_fgetxattr(vfs_handle_struct *handle, struct files_struct *fsp, const char *path, void *value, size_t size)
 {
        char *cappath = capencode(talloc_tos(), path);
@@ -596,7 +583,6 @@ static struct vfs_fn_pointers vfs_cap_fns = {
        .sys_acl_set_file_fn = cap_sys_acl_set_file,
        .sys_acl_delete_def_file_fn = cap_sys_acl_delete_def_file,
        .getxattr_fn = cap_getxattr,
-       .lgetxattr_fn = cap_lgetxattr,
        .fgetxattr_fn = cap_fgetxattr,
        .listxattr_fn = cap_listxattr,
        .llistxattr_fn = cap_llistxattr,
index 5834ead2a8f11e32bc1fe695014c99a3a841e7d0..c34edf70730d123001990528ee2928a530cab545 100644 (file)
@@ -830,28 +830,6 @@ catia_getxattr(vfs_handle_struct *handle, const char *path,
        return ret;
 }
 
-static ssize_t
-catia_lgetxattr(vfs_handle_struct *handle, const char *path,
-               const char *name, void *value, size_t size)
-{
-       char *mapped_name = NULL;
-       NTSTATUS status;
-       ssize_t ret;
-
-       status = catia_string_replace_allocate(handle->conn,
-                               name, &mapped_name, vfs_translate_to_unix);
-       if (!NT_STATUS_IS_OK(status)) {
-               errno = map_errno_from_nt_status(status);
-               return -1;
-       }
-
-
-       ret = SMB_VFS_NEXT_LGETXATTR(handle, path, mapped_name, value, size);
-       TALLOC_FREE(mapped_name);
-
-       return ret;
-}
-
 static ssize_t
 catia_listxattr(vfs_handle_struct *handle, const char *path,
                char *list, size_t size)
@@ -1009,7 +987,6 @@ static struct vfs_fn_pointers vfs_catia_fns = {
        .sys_acl_set_file_fn = catia_sys_acl_set_file,
        .sys_acl_delete_def_file_fn = catia_sys_acl_delete_def_file,
        .getxattr_fn = catia_getxattr,
-       .lgetxattr_fn = catia_lgetxattr,
        .listxattr_fn = catia_listxattr,
        .llistxattr_fn = catia_llistxattr,
        .removexattr_fn = catia_removexattr,
index 49c948f8af399fe75dd85759e2dcffd26bb4a416..ed1ee707e26d5a82dac9fed9df94a163f23716e7 100644 (file)
@@ -2008,11 +2008,6 @@ static ssize_t vfswrap_getxattr(struct vfs_handle_struct *handle,const char *pat
        return sys_getxattr(path, name, value, size);
 }
 
-static ssize_t vfswrap_lgetxattr(struct vfs_handle_struct *handle,const char *path, const char *name, void *value, size_t size)
-{
-       return sys_lgetxattr(path, name, value, size);
-}
-
 static ssize_t vfswrap_fgetxattr(struct vfs_handle_struct *handle, struct files_struct *fsp, const char *name, void *value, size_t size)
 {
        return sys_fgetxattr(fsp->fh->fd, name, value, size);
@@ -2279,7 +2274,6 @@ static struct vfs_fn_pointers vfs_default_fns = {
 
        /* EA operations. */
        .getxattr_fn = vfswrap_getxattr,
-       .lgetxattr_fn = vfswrap_lgetxattr,
        .fgetxattr_fn = vfswrap_fgetxattr,
        .listxattr_fn = vfswrap_listxattr,
        .llistxattr_fn = vfswrap_llistxattr,
index 34c7a848e63ad617c8d105c474e8879b3594f8b2..a35c210d2b79333492a4936279ca6b232771a488 100644 (file)
@@ -191,7 +191,6 @@ typedef enum _vfs_op_type {
 
        /* EA operations. */
        SMB_VFS_OP_GETXATTR,
-       SMB_VFS_OP_LGETXATTR,
        SMB_VFS_OP_FGETXATTR,
        SMB_VFS_OP_LISTXATTR,
        SMB_VFS_OP_LLISTXATTR,
@@ -322,7 +321,6 @@ static struct {
        { SMB_VFS_OP_SYS_ACL_FREE_ACL,  "sys_acl_free_acl" },
        { SMB_VFS_OP_SYS_ACL_FREE_QUALIFIER,    "sys_acl_free_qualifier" },
        { SMB_VFS_OP_GETXATTR,  "getxattr" },
-       { SMB_VFS_OP_LGETXATTR, "lgetxattr" },
        { SMB_VFS_OP_FGETXATTR, "fgetxattr" },
        { SMB_VFS_OP_LISTXATTR, "listxattr" },
        { SMB_VFS_OP_LLISTXATTR,        "llistxattr" },
@@ -1974,20 +1972,6 @@ static ssize_t smb_full_audit_getxattr(struct vfs_handle_struct *handle,
        return result;
 }
 
-static ssize_t smb_full_audit_lgetxattr(struct vfs_handle_struct *handle,
-                              const char *path, const char *name,
-                              void *value, size_t size)
-{
-       ssize_t result;
-
-       result = SMB_VFS_NEXT_LGETXATTR(handle, path, name, value, size);
-
-       do_log(SMB_VFS_OP_LGETXATTR, (result >= 0), handle,
-              "%s|%s", path, name);
-
-       return result;
-}
-
 static ssize_t smb_full_audit_fgetxattr(struct vfs_handle_struct *handle,
                               struct files_struct *fsp,
                               const char *name, void *value, size_t size)
@@ -2338,7 +2322,6 @@ static struct vfs_fn_pointers vfs_full_audit_fns = {
        .sys_acl_free_acl_fn = smb_full_audit_sys_acl_free_acl,
        .sys_acl_free_qualifier_fn = smb_full_audit_sys_acl_free_qualifier,
        .getxattr_fn = smb_full_audit_getxattr,
-       .lgetxattr_fn = smb_full_audit_lgetxattr,
        .fgetxattr_fn = smb_full_audit_fgetxattr,
        .listxattr_fn = smb_full_audit_listxattr,
        .llistxattr_fn = smb_full_audit_llistxattr,
index c9b6f0809695e80f3eda9f075455e1da3f6b31d3..09df2f8f3e252b4de2f88cdf4fa7a7216b8caddc 100644 (file)
@@ -568,15 +568,6 @@ onefs_shadow_copy_getxattr(vfs_handle_struct *handle, const char *path,
                    ssize_t);
 }
 
-static ssize_t
-onefs_shadow_copy_lgetxattr(vfs_handle_struct *handle, const char *path,
-                           const char *name, void *value, size_t size)
-{
-       SHADOW_NEXT(LGETXATTR,
-                   (handle, cpath ?: path, name, value, size),
-                   ssize_t);
-}
-
 static ssize_t
 onefs_shadow_copy_listxattr(vfs_handle_struct *handle, const char *path,
                            char *list, size_t size)
@@ -689,7 +680,6 @@ static struct vfs_fn_pointers onefs_shadow_copy_fns = {
        .sys_acl_set_file_fn = onefs_shadow_copy_sys_acl_set_file,
        .sys_acl_delete_def_file_fn = onefs_shadow_copy_sys_acl_delete_def_file,
        .getxattr_fn = onefs_shadow_copy_getxattr,
-       .lgetxattr_fn = onefs_shadow_copy_lgetxattr,
        .listxattr_fn = onefs_shadow_copy_listxattr,
        .llistxattr_fn = onefs_shadow_copy_llistxattr,
        .removexattr_fn = onefs_shadow_copy_removexattr,
index 755a9b616c2e57c44a9f27d819bbf88b19c4b6d5..441a68a30c2ef14d2ed83a184a29fd825b223522 100644 (file)
@@ -1321,36 +1321,6 @@ static ssize_t shadow_copy2_getxattr(vfs_handle_struct *handle,
        return ret;
 }
 
-static ssize_t shadow_copy2_lgetxattr(vfs_handle_struct *handle,
-                                     const char *fname, const char *aname,
-                                     void *value, size_t size)
-{
-       time_t timestamp;
-       char *stripped;
-       ssize_t ret;
-       int saved_errno;
-       char *conv;
-
-       if (!shadow_copy2_strip_snapshot(talloc_tos(), handle, fname,
-                                        &timestamp, &stripped)) {
-               return -1;
-       }
-       if (timestamp == 0) {
-               return SMB_VFS_NEXT_LGETXATTR(handle, fname, aname, value,
-                                             size);
-       }
-       conv = shadow_copy2_convert(talloc_tos(), handle, stripped, timestamp);
-       TALLOC_FREE(stripped);
-       if (conv == NULL) {
-               return -1;
-       }
-       ret = SMB_VFS_NEXT_LGETXATTR(handle, conv, aname, value, size);
-       saved_errno = errno;
-       TALLOC_FREE(conv);
-       errno = saved_errno;
-       return ret;
-}
-
 static ssize_t shadow_copy2_listxattr(struct vfs_handle_struct *handle,
                                      const char *fname,
                                      char *list, size_t size)
@@ -1589,7 +1559,6 @@ static struct vfs_fn_pointers vfs_shadow_copy2_fns = {
        .mkdir_fn = shadow_copy2_mkdir,
        .rmdir_fn = shadow_copy2_rmdir,
        .getxattr_fn = shadow_copy2_getxattr,
-       .lgetxattr_fn = shadow_copy2_lgetxattr,
        .listxattr_fn = shadow_copy2_listxattr,
        .removexattr_fn = shadow_copy2_removexattr,
        .lremovexattr_fn = shadow_copy2_lremovexattr,
index 035f2df40683398f7ca01c38593cf30075a307af..8d7c7439f2beb3e45f3f1b5a0926c26acc7619af 100644 (file)
@@ -1952,26 +1952,6 @@ static ssize_t smb_time_audit_getxattr(struct vfs_handle_struct *handle,
        return result;
 }
 
-static ssize_t smb_time_audit_lgetxattr(struct vfs_handle_struct *handle,
-                                       const char *path, const char *name,
-                                       void *value, size_t size)
-{
-       ssize_t result;
-       struct timespec ts1,ts2;
-       double timediff;
-
-       clock_gettime_mono(&ts1);
-       result = SMB_VFS_NEXT_LGETXATTR(handle, path, name, value, size);
-       clock_gettime_mono(&ts2);
-       timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9;
-
-       if (timediff > audit_timeout) {
-               smb_time_audit_log("lgetxattr", timediff);
-       }
-
-       return result;
-}
-
 static ssize_t smb_time_audit_fgetxattr(struct vfs_handle_struct *handle,
                                        struct files_struct *fsp,
                                        const char *name, void *value,
@@ -2434,7 +2414,6 @@ static struct vfs_fn_pointers vfs_time_audit_fns = {
        .sys_acl_free_acl_fn = smb_time_audit_sys_acl_free_acl,
        .sys_acl_free_qualifier_fn = smb_time_audit_sys_acl_free_qualifier,
        .getxattr_fn = smb_time_audit_getxattr,
-       .lgetxattr_fn = smb_time_audit_lgetxattr,
        .fgetxattr_fn = smb_time_audit_fgetxattr,
        .listxattr_fn = smb_time_audit_listxattr,
        .llistxattr_fn = smb_time_audit_llistxattr,
index 33f270170432b9a204a0ee1c1aaa945dc3294b29..93c268f6fad792a9fede6bafbd6d9047ad7b198b 100644 (file)
@@ -2150,14 +2150,6 @@ ssize_t smb_vfs_call_getxattr(struct vfs_handle_struct *handle,
        return handle->fns->getxattr_fn(handle, path, name, value, size);
 }
 
-ssize_t smb_vfs_call_lgetxattr(struct vfs_handle_struct *handle,
-                              const char *path, const char *name, void *value,
-                              size_t size)
-{
-       VFS_FIND(lgetxattr);
-       return handle->fns->lgetxattr_fn(handle, path, name, value, size);
-}
-
 ssize_t smb_vfs_call_fgetxattr(struct vfs_handle_struct *handle,
                               struct files_struct *fsp, const char *name,
                               void *value, size_t size)
index eb4e0ff51b0014de291ef5eb673bc6d5d049c0bb..dcf2b9d4150bc3ddcf4df540af1db50bdff46603 100644 (file)
@@ -242,7 +242,7 @@ getcwd _getcwd __getcwd getdents __getdents getdirentries
 getgrent getgrnam getgrouplist getgrset getmntent getpagesize
 getproplist get_proplist_entry getpwanam getpwent_r getrlimit gettext
 glob grantpt hstrerror initgroups innetgr
-inotify_init lgetea lgetxattr listea listxattr llistea llistxattr
+inotify_init listea listxattr llistea llistxattr
 llseek _llseek __llseek lremoveea lremovexattr _lseek __lseek
 lsetea lsetxattr _lstat __lstat lutimes
 __lxstat memalign mknod mlock mlockall munlock munlockall