aboutsummaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorAndy Green <andy@openmoko.com>2009-01-27 14:38:52 +0000
committerAndy Green <agreen@octopus.localdomain>2009-01-27 14:38:52 +0000
commit4d91e0b5eb559594e4201e60b3cf4eb4c6127859 (patch)
treea46ce449fd137d295011b6d827dbe427e2cf394b /drivers
parent57a4af9be7051302edc51c878ecfbd90466827ff (diff)
tracking-2.6.29-rc2-android-breakage.patch
include/linux/sched.h has two copies of these credentials now... real and effective held in two struct creds. I chose real cred but I am uncertain it's the desired one. Signed-off-by: Andy Green <andy@openmoko.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/android/binder.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/android/binder.c b/drivers/android/binder.c
index 80a96bef392..87ae0b8965b 100644
--- a/drivers/android/binder.c
+++ b/drivers/android/binder.c
@@ -1397,7 +1397,7 @@ binder_transaction(struct binder_proc *proc, struct binder_thread *thread,
t->from = thread;
else
t->from = NULL;
- t->sender_euid = proc->tsk->euid;
+ t->sender_euid = proc->tsk->real_cred->euid;
t->to_proc = target_proc;
t->to_thread = target_thread;
t->code = tr->code;
@@ -2586,16 +2586,16 @@ static long binder_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
goto err;
}
if (binder_context_mgr_uid != -1) {
- if (binder_context_mgr_uid != current->euid) {
+ if (binder_context_mgr_uid != current->real_cred->euid) {
printk(KERN_ERR "binder: BINDER_SET_"
"CONTEXT_MGR bad uid %d != %d\n",
- current->euid,
+ current->real_cred->euid,
binder_context_mgr_uid);
ret = -EPERM;
goto err;
}
} else
- binder_context_mgr_uid = current->euid;
+ binder_context_mgr_uid = current->real_cred->euid;
binder_context_mgr_node = binder_new_node(proc, NULL, NULL);
if (binder_context_mgr_node == NULL) {
ret = -ENOMEM;