From: Alexander Graf Date: Fri, 6 Jul 2007 09:39:53 +0000 (-0700) Subject: fix logic error in ipc compat semctl() X-Git-Tag: v2.6.22~17 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d57d973101e87b2e30ccfa899fe36c4b2e32d217;p=linux-2.6 fix logic error in ipc compat semctl() When calling a semctl(IPC_STAT) without IPC_64 the check if the memory is unevaluated. This patch fixes this. Signed-off-by: Alexander Graf Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/ipc/compat.c b/ipc/compat.c index 8b44aa9a7c..ab76fb0ef8 100644 --- a/ipc/compat.c +++ b/ipc/compat.c @@ -225,7 +225,7 @@ static inline int put_compat_semid_ds(struct semid64_ds *s, int err; if (!access_ok (VERIFY_WRITE, up, sizeof(*up))) - err = -EFAULT; + return -EFAULT; err = __put_compat_ipc_perm(&s->sem_perm, &up->sem_perm); err |= __put_user(s->sem_otime, &up->sem_otime); err |= __put_user(s->sem_ctime, &up->sem_ctime);