This commit was manufactured by cvs2svn to create tag
[linux-2.6.git] / fs / smbfs / proc.c
index 8090b6a..fc59e4b 100644 (file)
@@ -2074,7 +2074,7 @@ out:
        return result;
 }
 
-void smb_decode_unix_basic(struct smb_fattr *fattr, struct smb_sb_info *server, char *p)
+void smb_decode_unix_basic(struct smb_fattr *fattr, char *p)
 {
        u64 size, disk_bytes;
 
@@ -2111,17 +2111,8 @@ void smb_decode_unix_basic(struct smb_fattr *fattr, struct smb_sb_info *server,
        fattr->f_ctime = smb_ntutc2unixutc(LVAL(p, 16));
        fattr->f_atime = smb_ntutc2unixutc(LVAL(p, 24));
        fattr->f_mtime = smb_ntutc2unixutc(LVAL(p, 32));
-
-       if (server->mnt->flags & SMB_MOUNT_UID)
-               fattr->f_uid = server->mnt->uid;
-       else
-               fattr->f_uid = LVAL(p, 40);
-
-       if (server->mnt->flags & SMB_MOUNT_GID)
-               fattr->f_gid = server->mnt->gid;
-       else
-               fattr->f_gid = LVAL(p, 48);
-
+       fattr->f_uid = LVAL(p, 40); 
+       fattr->f_gid = LVAL(p, 48); 
        fattr->f_mode |= smb_filetype_to_mode(WVAL(p, 56));
 
        if (S_ISBLK(fattr->f_mode) || S_ISCHR(fattr->f_mode)) {
@@ -2130,20 +2121,10 @@ void smb_decode_unix_basic(struct smb_fattr *fattr, struct smb_sb_info *server,
 
                fattr->f_rdev = MKDEV(major & 0xffffffff, minor & 0xffffffff);
                if (MAJOR(fattr->f_rdev) != (major & 0xffffffff) ||
-               MINOR(fattr->f_rdev) != (minor & 0xffffffff))
+                   MINOR(fattr->f_rdev) != (minor & 0xffffffff))
                        fattr->f_rdev = 0;
        }
-
        fattr->f_mode |= LVAL(p, 84);
-
-       if ( (server->mnt->flags & SMB_MOUNT_DMODE) &&
-            (S_ISDIR(fattr->f_mode)) )
-               fattr->f_mode = (server->mnt->dir_mode & S_IRWXUGO) | S_IFDIR;
-       else if ( (server->mnt->flags & SMB_MOUNT_FMODE) &&
-                 !(S_ISDIR(fattr->f_mode)) )
-               fattr->f_mode = (server->mnt->file_mode & S_IRWXUGO) |
-                               (fattr->f_mode & S_IFMT);
-
 }
 
 /*
@@ -2229,7 +2210,7 @@ smb_decode_long_dirent(struct smb_sb_info *server, char *p, int level,
                /* FIXME: should we check the length?? */
 
                p += 8;
-               smb_decode_unix_basic(fattr, server, p);
+               smb_decode_unix_basic(fattr, p);
                VERBOSE("info SMB_FIND_FILE_UNIX at %p, len=%d, name=%.*s\n",
                        p, len, len, qname->name);
                break;
@@ -2788,7 +2769,7 @@ smb_proc_getattr_unix(struct smb_sb_info *server, struct dentry *dir,
        if (result < 0)
                goto out_free;
 
-       smb_decode_unix_basic(attr, server, req->rq_data);
+       smb_decode_unix_basic(attr, req->rq_data);
 
 out_free:
        smb_rput(req);