ipc: fix compat msgrcv with negative msgtyp
authorMateusz Guzik <mguzik@redhat.com>
Tue, 28 Jan 2014 01:07:11 +0000 (17:07 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 19 Apr 2015 08:10:50 +0000 (10:10 +0200)
commit1f55176763a6556916d4c41c80eba7c69d5d3e5a
tree2d4aac669cd7326a1a67b3ff2901b6cb43a3c95a
parentd212dc60a1c2a41e9e1d2e69f1c137ffd3af909b
ipc: fix compat msgrcv with negative msgtyp

commit e7ca2552369c1dfe0216c626baf82c3d83ec36bb upstream.

Compat function takes msgtyp argument as u32 and passes it down to
do_msgrcv which results in casting to long, thus the sign is lost and we
get a big positive number instead.

Cast the argument to signed type before passing it down.

Signed-off-by: Mateusz Guzik <mguzik@redhat.com>
Reported-by: Gabriellla Schmidt <gsc@bruker.de>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Davidlohr Bueso <davidlohr@hp.com>
Cc: Manfred Spraul <manfred@colorfullife.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Masanari Iida <standby24x7@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
ipc/compat.c