Hugh Dickins 53e9309e01 compat_do_execve should unshare_files
2.6.26's commit fd8328be874f4190a811c58cd4778ec2c74d2c05
"sanitize handling of shared descriptor tables in failing execve()"
moved the unshare_files() from flush_old_exec() and several binfmts
to the head of do_execve(); but forgot to make the same change to
compat_do_execve(), leaving a CLONE_FILES files_struct shared across
exec from a 32-bit process on a 64-bit kernel.

It's arguable whether the files_struct really ought to be unshared
across exec; but 2.6.1 made that so to stop the loading binary's fd
leaking into other threads, and a 32-bit process on a 64-bit kernel
ought to behave in the same way as 32 on 32 and 64 on 64.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Cc: stable@kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-03-28 17:30:00 -07:00
..
2009-03-27 14:44:00 -04:00
2009-01-22 13:15:57 +03:00
2009-01-22 13:15:57 +03:00
2009-01-22 13:15:58 +03:00
2009-01-22 13:15:57 +03:00
2009-03-27 14:44:01 -04:00
2009-01-22 13:15:58 +03:00
2009-03-27 14:44:01 -04:00
2008-11-14 10:39:25 +11:00
2009-03-22 11:28:37 -07:00
2009-03-27 14:43:59 -04:00
2008-10-17 02:38:36 +11:00
2009-03-27 14:44:05 -04:00
2009-01-22 13:15:55 +03:00
2009-03-27 14:44:02 -04:00
2009-01-22 13:15:58 +03:00
2009-01-22 13:15:59 +03:00
2009-03-26 02:18:35 +01:00
2009-01-22 13:15:59 +03:00
2009-03-27 14:44:03 -04:00
2008-12-31 18:07:43 -05:00
2009-01-03 11:45:54 -08:00
2009-02-06 17:34:07 -08:00
2009-03-27 14:44:03 -04:00
2009-03-27 14:44:03 -04:00
2009-03-28 17:30:00 -07:00
2009-03-27 14:43:57 -04:00
2009-03-27 14:44:05 -04:00
2009-03-16 08:32:27 -06:00
2009-03-24 10:52:46 +11:00
2009-03-16 08:34:35 -06:00
2009-02-07 08:46:18 +11:00
2009-03-16 08:34:35 -06:00
2009-02-18 15:37:53 -08:00
2009-02-18 15:37:53 -08:00