aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorJ.R. Mauro <jrm8005@gmail.com>2009-01-05 17:08:53 -0500
committerGreg Kroah-Hartman <gregkh@suse.de>2009-01-06 16:52:42 -0500
commit9279bcc31698842961a30bb05b00aef7236dd728 (patch)
treee175b67a2928883d338f8cdf025aaa61fe991276 /drivers
parenta2bf2153cb2a2de341b6a87cb644870a5bde2a9d (diff)
staging: android: binder: Fix use of euid
Task credentials were moved and must be accessed through task_struct.cred Signed-off-by: J.R. Mauro <jrm8005@gmail.com> Cc: Arve Hjønnevåg <arve@android.com> Cc: Brian Swetland <swetland@google.com> Cc: Robert Love <rlove@google.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/staging/android/binder.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/staging/android/binder.c b/drivers/staging/android/binder.c
index 765048eaaf6..7c3da5aa777 100644
--- a/drivers/staging/android/binder.c
+++ b/drivers/staging/android/binder.c
@@ -1401,7 +1401,7 @@ binder_transaction(struct binder_proc *proc, struct binder_thread *thread,
1401 t->from = thread; 1401 t->from = thread;
1402 else 1402 else
1403 t->from = NULL; 1403 t->from = NULL;
1404 t->sender_euid = proc->tsk->euid; 1404 t->sender_euid = proc->tsk->cred->euid;
1405 t->to_proc = target_proc; 1405 t->to_proc = target_proc;
1406 t->to_thread = target_thread; 1406 t->to_thread = target_thread;
1407 t->code = tr->code; 1407 t->code = tr->code;
@@ -2593,16 +2593,16 @@ static long binder_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
2593 goto err; 2593 goto err;
2594 } 2594 }
2595 if (binder_context_mgr_uid != -1) { 2595 if (binder_context_mgr_uid != -1) {
2596 if (binder_context_mgr_uid != current->euid) { 2596 if (binder_context_mgr_uid != current->cred->euid) {
2597 printk(KERN_ERR "binder: BINDER_SET_" 2597 printk(KERN_ERR "binder: BINDER_SET_"
2598 "CONTEXT_MGR bad uid %d != %d\n", 2598 "CONTEXT_MGR bad uid %d != %d\n",
2599 current->euid, 2599 current->cred->euid,
2600 binder_context_mgr_uid); 2600 binder_context_mgr_uid);
2601 ret = -EPERM; 2601 ret = -EPERM;
2602 goto err; 2602 goto err;
2603 } 2603 }
2604 } else 2604 } else
2605 binder_context_mgr_uid = current->euid; 2605 binder_context_mgr_uid = current->cred->euid;
2606 binder_context_mgr_node = binder_new_node(proc, NULL, NULL); 2606 binder_context_mgr_node = binder_new_node(proc, NULL, NULL);
2607 if (binder_context_mgr_node == NULL) { 2607 if (binder_context_mgr_node == NULL) {
2608 ret = -ENOMEM; 2608 ret = -ENOMEM;