diff options
author | James Morris <jmorris@namei.org> | 2008-11-18 02:52:37 -0500 |
---|---|---|
committer | James Morris <jmorris@namei.org> | 2008-11-18 02:52:37 -0500 |
commit | f3a5c547012a09f38f7c27b17a8e3150b69cd259 (patch) | |
tree | 4d1d47382a4a445fc7ef7431bcf5d06b7cca8539 /net/core/scm.c | |
parent | e50a906e0200084f04f8f3b7c3a14b0442d1347f (diff) | |
parent | 4e14e833ac3b97a4aa8803eea49f899adc5bb5f4 (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.c | 2 |
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)); |