Skip to content

Commit

Permalink
turn cifs_setattr into a multiplexor that calls the correct function
Browse files Browse the repository at this point in the history
Signed-off-by: Jeff Layton <[email protected]>
Signed-off-by: Steve French <[email protected]>
  • Loading branch information
jtlayton authored and Steve French committed Aug 6, 2008
1 parent feb3e20 commit 0510eeb
Showing 1 changed file with 17 additions and 5 deletions.
22 changes: 17 additions & 5 deletions fs/cifs/inode.c
Original file line number Diff line number Diff line change
Expand Up @@ -1709,21 +1709,18 @@ cifs_setattr_unix(struct dentry *direntry, struct iattr *attrs)
return rc;
}

int cifs_setattr(struct dentry *direntry, struct iattr *attrs)
static int
cifs_setattr_nounix(struct dentry *direntry, struct iattr *attrs)
{
int xid;
struct inode *inode = direntry->d_inode;
struct cifs_sb_info *cifs_sb = CIFS_SB(inode->i_sb);
struct cifsTconInfo *pTcon = cifs_sb->tcon;
struct cifsInodeInfo *cifsInode = CIFS_I(inode);
char *full_path = NULL;
int rc = -EACCES;
__u32 dosattr = 0;
__u64 mode = NO_CHANGE_64;

if (pTcon->unix_ext)
return cifs_setattr_unix(direntry, attrs);

xid = GetXid();

cFYI(1, ("setattr on file %s attrs->iavalid 0x%x",
Expand Down Expand Up @@ -1850,6 +1847,21 @@ int cifs_setattr(struct dentry *direntry, struct iattr *attrs)
return rc;
}

int
cifs_setattr(struct dentry *direntry, struct iattr *attrs)
{
struct inode *inode = direntry->d_inode;
struct cifs_sb_info *cifs_sb = CIFS_SB(inode->i_sb);
struct cifsTconInfo *pTcon = cifs_sb->tcon;

if (pTcon->unix_ext)
return cifs_setattr_unix(direntry, attrs);

return cifs_setattr_nounix(direntry, attrs);

/* BB: add cifs_setattr_legacy for really old servers */
}

#if 0
void cifs_delete_inode(struct inode *inode)
{
Expand Down

0 comments on commit 0510eeb

Please sign in to comment.