aboutsummaryrefslogtreecommitdiffstats
path: root/net/core/scm.c
diff options
context:
space:
mode:
authorJames Morris <jmorris@namei.org>2008-11-18 02:52:37 -0500
committerJames Morris <jmorris@namei.org>2008-11-18 02:52:37 -0500
commitf3a5c547012a09f38f7c27b17a8e3150b69cd259 (patch)
tree4d1d47382a4a445fc7ef7431bcf5d06b7cca8539 /net/core/scm.c
parente50a906e0200084f04f8f3b7c3a14b0442d1347f (diff)
parent4e14e833ac3b97a4aa8803eea49f899adc5bb5f4 (diff)
Merge branch 'master' into next
Conflicts: fs/cifs/misc.c Merge to resolve above, per the patch below. Signed-off-by: James Morris <jmorris@namei.org> diff --cc fs/cifs/misc.c index ec36410,addd1dc..0000000 --- a/fs/cifs/misc.c +++ b/fs/cifs/misc.c @@@ -347,13 -338,13 +338,13 @@@ header_assemble(struct smb_hdr *buffer /* BB Add support for establishing new tCon and SMB Session */ /* with userid/password pairs found on the smb session */ /* for other target tcp/ip addresses BB */ - if (current->fsuid != treeCon->ses->linux_uid) { + if (current_fsuid() != treeCon->ses->linux_uid) { cFYI(1, ("Multiuser mode and UID " "did not match tcon uid")); - read_lock(&GlobalSMBSeslock); - list_for_each(temp_item, &GlobalSMBSessionList) { - ses = list_entry(temp_item, struct cifsSesInfo, cifsSessionList); + read_lock(&cifs_tcp_ses_lock); + list_for_each(temp_item, &treeCon->ses->server->smb_ses_list) { + ses = list_entry(temp_item, struct cifsSesInfo, smb_ses_list); - if (ses->linux_uid == current->fsuid) { + if (ses->linux_uid == current_fsuid()) { if (ses->server == treeCon->ses->server) { cFYI(1, ("found matching uid substitute right smb_uid")); buffer->Uid = ses->Suid;
Diffstat (limited to 'net/core/scm.c')
-rw-r--r--net/core/scm.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/net/core/scm.c b/net/core/scm.c
index 1e17949c12ca..b7ba91b074b3 100644
--- a/net/core/scm.c
+++ b/net/core/scm.c
@@ -77,7 +77,6 @@ static int scm_fp_copy(struct cmsghdr *cmsg, struct scm_fp_list **fplp)
77 if (!fpl) 77 if (!fpl)
78 return -ENOMEM; 78 return -ENOMEM;
79 *fplp = fpl; 79 *fplp = fpl;
80 INIT_LIST_HEAD(&fpl->list);
81 fpl->count = 0; 80 fpl->count = 0;
82 } 81 }
83 fpp = &fpl->fp[fpl->count]; 82 fpp = &fpl->fp[fpl->count];
@@ -303,7 +302,6 @@ struct scm_fp_list *scm_fp_dup(struct scm_fp_list *fpl)
303 302
304 new_fpl = kmalloc(sizeof(*fpl), GFP_KERNEL); 303 new_fpl = kmalloc(sizeof(*fpl), GFP_KERNEL);
305 if (new_fpl) { 304 if (new_fpl) {
306 INIT_LIST_HEAD(&new_fpl->list);
307 for (i=fpl->count-1; i>=0; i--) 305 for (i=fpl->count-1; i>=0; i--)
308 get_file(fpl->fp[i]); 306 get_file(fpl->fp[i]);
309 memcpy(new_fpl, fpl, sizeof(*fpl)); 307 memcpy(new_fpl, fpl, sizeof(*fpl));