patch-2.0.34 linux/kernel/sys.c

Next file: linux/kernel/sysctl.c
Previous file: linux/kernel/panic.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.0.33/linux/kernel/sys.c linux/kernel/sys.c
@@ -171,7 +171,7 @@
 #endif
 
 extern void hard_reset_now(void);
-extern asmlinkage sys_kill(int, int);
+extern asmlinkage int sys_kill(int, int);
 
 /*
  * Reboot system call: for obvious reasons only root may call it,
@@ -663,7 +663,8 @@
 	int i;
 	int * groups;
 
-	if (gidsetsize < 0)
+	/* Avoid an integer overflow on systems with 32 bit gid_t (Alpha) */
+	if (gidsetsize & ~0x3FFFFFFF)
 		return -EINVAL;
 	groups = current->groups;
 	for (i = 0 ; i < NGROUPS ; i++) {

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov