aboutsummaryrefslogtreecommitdiffstats
path: root/fs/cifs/dir.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/cifs/dir.c')
-rw-r--r--fs/cifs/dir.c25
1 files changed, 7 insertions, 18 deletions
diff --git a/fs/cifs/dir.c b/fs/cifs/dir.c
index 699ec1198409..0f5c62ba4038 100644
--- a/fs/cifs/dir.c
+++ b/fs/cifs/dir.c
@@ -3,7 +3,7 @@
3 * 3 *
4 * vfs operations that deal with dentries 4 * vfs operations that deal with dentries
5 * 5 *
6 * Copyright (C) International Business Machines Corp., 2002,2007 6 * Copyright (C) International Business Machines Corp., 2002,2008
7 * Author(s): Steve French (sfrench@us.ibm.com) 7 * Author(s): Steve French (sfrench@us.ibm.com)
8 * 8 *
9 * This library is free software; you can redistribute it and/or modify 9 * This library is free software; you can redistribute it and/or modify
@@ -111,16 +111,6 @@ cifs_bp_rename_retry:
111 return full_path; 111 return full_path;
112} 112}
113 113
114/* char * build_wildcard_path_from_dentry(struct dentry *direntry)
115{
116 if(full_path == NULL)
117 return full_path;
118
119 full_path[namelen] = '\\';
120 full_path[namelen+1] = '*';
121 full_path[namelen+2] = 0;
122BB remove above eight lines BB */
123
124/* Inode operations in similar order to how they appear in Linux file fs.h */ 114/* Inode operations in similar order to how they appear in Linux file fs.h */
125 115
126int 116int
@@ -171,9 +161,8 @@ cifs_create(struct inode *inode, struct dentry *direntry, int mode,
171 disposition = FILE_OVERWRITE_IF; 161 disposition = FILE_OVERWRITE_IF;
172 else if ((oflags & O_CREAT) == O_CREAT) 162 else if ((oflags & O_CREAT) == O_CREAT)
173 disposition = FILE_OPEN_IF; 163 disposition = FILE_OPEN_IF;
174 else { 164 else
175 cFYI(1, ("Create flag not set in create function")); 165 cFYI(1, ("Create flag not set in create function"));
176 }
177 } 166 }
178 167
179 /* BB add processing to set equivalent of mode - e.g. via CreateX with 168 /* BB add processing to set equivalent of mode - e.g. via CreateX with
@@ -240,7 +229,8 @@ cifs_create(struct inode *inode, struct dentry *direntry, int mode,
240 inode->i_sb, xid); 229 inode->i_sb, xid);
241 else { 230 else {
242 rc = cifs_get_inode_info(&newinode, full_path, 231 rc = cifs_get_inode_info(&newinode, full_path,
243 buf, inode->i_sb, xid); 232 buf, inode->i_sb, xid,
233 &fileHandle);
244 if (newinode) { 234 if (newinode) {
245 newinode->i_mode = mode; 235 newinode->i_mode = mode;
246 if ((oplock & CIFS_CREATE_ACTION) && 236 if ((oplock & CIFS_CREATE_ACTION) &&
@@ -367,7 +357,7 @@ int cifs_mknod(struct inode *inode, struct dentry *direntry, int mode,
367 if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_UNX_EMUL) { 357 if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_UNX_EMUL) {
368 int oplock = 0; 358 int oplock = 0;
369 u16 fileHandle; 359 u16 fileHandle;
370 FILE_ALL_INFO * buf; 360 FILE_ALL_INFO *buf;
371 361
372 cFYI(1, ("sfu compat create special file")); 362 cFYI(1, ("sfu compat create special file"));
373 363
@@ -494,7 +484,7 @@ cifs_lookup(struct inode *parent_dir_inode, struct dentry *direntry,
494 parent_dir_inode->i_sb, xid); 484 parent_dir_inode->i_sb, xid);
495 else 485 else
496 rc = cifs_get_inode_info(&newInode, full_path, NULL, 486 rc = cifs_get_inode_info(&newInode, full_path, NULL,
497 parent_dir_inode->i_sb, xid); 487 parent_dir_inode->i_sb, xid, NULL);
498 488
499 if ((rc == 0) && (newInode != NULL)) { 489 if ((rc == 0) && (newInode != NULL)) {
500 if (pTcon->nocase) 490 if (pTcon->nocase)
@@ -534,9 +524,8 @@ cifs_d_revalidate(struct dentry *direntry, struct nameidata *nd)
534 int isValid = 1; 524 int isValid = 1;
535 525
536 if (direntry->d_inode) { 526 if (direntry->d_inode) {
537 if (cifs_revalidate(direntry)) { 527 if (cifs_revalidate(direntry))
538 return 0; 528 return 0;
539 }
540 } else { 529 } else {
541 cFYI(1, ("neg dentry 0x%p name = %s", 530 cFYI(1, ("neg dentry 0x%p name = %s",
542 direntry, direntry->d_name.name)); 531 direntry, direntry->d_name.name));