unix: Fix ABI change for CVE-2013-4312

This commit is contained in:
Ben Hutchings 2016-01-17 16:39:58 +00:00
parent f335c0cfcc
commit 18b52b0baa
2 changed files with 34 additions and 0 deletions

View File

@ -0,0 +1,33 @@
From: Ben Hutchings <ben@decadent.org.uk>
Date: Sun, 17 Jan 2016 15:55:02 +0000
Subject: unix: Fix ABI change for CVE-2013-4312
Forwarded: not-needed
The fix for CVE-2013-4312 added a new structure member,
user_struct::unix_inflight. As this is always allocated in
kernel/user.c and the new member is only used by af_unix which is also
built-in, we can safely add new members at the end. So move it to the
end and hide it from genksyms.
---
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -830,7 +830,6 @@ struct user_struct {
unsigned long mq_bytes; /* How many bytes can be allocated to mqueue? */
#endif
unsigned long locked_shm; /* How many pages of mlocked shm ? */
- unsigned long unix_inflight; /* How many files in flight in unix sockets */
#ifdef CONFIG_KEYS
struct key *uid_keyring; /* UID specific keyring */
@@ -844,6 +843,10 @@ struct user_struct {
#ifdef CONFIG_PERF_EVENTS
atomic_long_t locked_vm;
#endif
+
+#ifndef __GENKSYMS__
+ unsigned long unix_inflight; /* How many files in flight in unix sockets */
+#endif
};
extern int uids_sysfs_init(void);

View File

@ -139,3 +139,4 @@ bugfix/all/tty-fix-unsafe-ldisc-reference-via-ioctl-tiocgetd.patch
bugfix/all/block-sd-fix-device-imposed-transfer-length-limits.patch
bugfix/x86/drm-vmwgfx-fix-a-width-pitch-mismatch-on-framebuffer.patch
bugfix/all/unix-properly-account-for-FDs-passed-over-unix-socke.patch
debian/unix-fix-abi-change-for-cve-2013-4312-fix.patch