aboutsummaryrefslogtreecommitdiff
path: root/net/core/scm.c
diff options
context:
space:
mode:
authorronaxdevil <pratabidya.007@gmail.com>2020-06-06 12:16:58 +0530
committerlucasponez <lucasponez@outlook.com>2020-12-06 05:32:19 -0800
commitc9d101bffe7b6a10fddc18bc7a2d0dc0962ed71f (patch)
treecc92c8d9bbff0f97a4036908f210b2adb2adaf1a /net/core/scm.c
parent13ba6318ccffd7e3167f514ac34358ab74ff6b6c (diff)
Merge tag 'v3.18.140' of https://source.codeaurora.org/quic/la/kernel/msm-3.18 into android-10-release-qpk30.54r11.0
This is the 3.18.140 stable release gpg: Signature made Thu 16 May 2019 12:47:33 PM IST gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E Signed-off-by: ronaxdevil <pratabidya.007@gmail.com>
Diffstat (limited to 'net/core/scm.c')
-rw-r--r--net/core/scm.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/net/core/scm.c b/net/core/scm.c
index d30eb057fa7b..cad57a1390dd 100644
--- a/net/core/scm.c
+++ b/net/core/scm.c
@@ -87,6 +87,7 @@ static int scm_fp_copy(struct cmsghdr *cmsg, struct scm_fp_list **fplp)
*fplp = fpl;
fpl->count = 0;
fpl->max = SCM_MAX_FD;
+ fpl->user = NULL;
}
fpp = &fpl->fp[fpl->count];
@@ -107,6 +108,10 @@ static int scm_fp_copy(struct cmsghdr *cmsg, struct scm_fp_list **fplp)
*fpp++ = file;
fpl->count++;
}
+
+ if (!fpl->user)
+ fpl->user = get_uid(current_user());
+
return num;
}
@@ -119,6 +124,7 @@ void __scm_destroy(struct scm_cookie *scm)
scm->fp = NULL;
for (i=fpl->count-1; i>=0; i--)
fput(fpl->fp[i]);
+ free_uid(fpl->user);
kfree(fpl);
}
}
@@ -337,6 +343,7 @@ struct scm_fp_list *scm_fp_dup(struct scm_fp_list *fpl)
for (i = 0; i < fpl->count; i++)
get_file(fpl->fp[i]);
new_fpl->max = new_fpl->count;
+ new_fpl->user = get_uid(fpl->user);
}
return new_fpl;
}