Miss Islington (bot)
85bbfa8a4b
[3.12] gh-112334: Restore subprocess's use of vfork() & fix extra_groups=[] behavior (GH-112617) ( #112731 )
...
Restore `subprocess`'s intended use of `vfork()` by default for performance on Linux;
also fixes the behavior of `extra_groups=[]` which was unintentionally broken in 3.12.0:
Fixed a performance regression in 3.12's :mod:`subprocess` on Linux where it
would no longer use the fast-path ``vfork()`` system call when it could have
due to a logic bug, instead falling back to the safe but slower ``fork()``.
Also fixed a security bug introduced in 3.12.0. If a value of ``extra_groups=[]``
was passed to :mod:`subprocess.Popen` or related APIs, the underlying
``setgroups(0, NULL)`` system call to clear the groups list would not be made
in the child process prior to ``exec()``.
The security issue was identified via code inspection in the process of
fixing the first bug. Thanks to @vain for the detailed report and
analysis in the initial bug on Github.
(cherry picked from commit 9fe7655c6c )
+ Reword NEWS for the bugfix/security release. (mentions the assigned CVE number)
Co-authored-by: Gregory P. Smith [Google LLC] <greg@krypto.org >
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com >
2023-12-04 23:33:59 +00:00
..
2023-10-10 22:38:18 +02:00
2023-11-09 15:41:44 +01:00
2023-12-04 16:17:38 +00:00
2023-12-04 16:17:38 +00:00
2023-11-14 13:25:19 +01:00
2023-11-19 07:19:12 -08:00
2023-11-29 22:02:57 +02:00
2023-10-03 22:28:13 +00:00
2023-10-06 01:26:14 +00:00
2023-10-16 15:48:02 +00:00
2023-10-02 17:11:03 +02:00
2023-10-24 17:44:46 +00:00
2023-10-02 17:12:54 +02:00
2023-10-17 18:45:55 +00:00
2023-10-13 19:05:03 +02:00
2023-11-28 00:39:01 +00:00
2023-12-01 14:13:15 +00:00
2023-06-26 21:11:49 +02:00
2023-11-28 00:39:01 +00:00
2023-08-25 18:15:53 +02:00
2023-08-25 18:15:53 +02:00
2023-08-25 18:15:53 +02:00
2023-10-02 17:22:07 +02:00
2023-08-29 20:30:23 +02:00
2023-10-24 14:53:21 +03:00
2023-09-08 15:18:02 +02:00
2023-10-02 17:11:24 +02:00
2023-11-27 20:14:37 +00:00
2023-10-18 08:01:18 +00:00
2023-07-10 21:03:32 +00:00
2023-10-24 17:32:08 -07:00
2023-10-15 10:59:19 +03:00
2023-10-02 17:11:24 +02:00
2023-11-08 16:56:24 +00:00
2023-11-02 12:04:27 +00:00
2023-10-12 22:03:07 +02:00
2023-10-02 17:46:45 +02:00
2023-10-06 01:26:14 +00:00
2023-10-30 18:00:57 +00:00
2023-10-16 15:48:02 +00:00
2023-08-11 11:58:58 +02:00
2023-10-12 22:03:07 +02:00
2023-09-08 15:14:17 +02:00
2023-07-22 11:06:46 +02:00
2023-08-04 12:25:51 +02:00
2023-10-04 11:26:45 +00:00
2023-08-04 12:25:51 +02:00
2023-12-01 14:12:46 +00:00
2023-10-12 22:03:07 +02:00
2023-10-12 22:03:07 +02:00
2023-10-02 17:42:40 +02:00
2023-10-10 22:38:18 +02:00
2023-10-02 17:48:17 +02:00
2023-07-07 14:25:24 -07:00
2023-05-19 16:44:43 +00:00
2023-09-03 01:22:33 +02:00
2023-09-12 15:56:02 +02:00
2023-08-11 11:58:58 +02:00
2023-10-23 12:50:07 +03:00
2023-09-03 01:22:33 +02:00
2023-12-04 08:46:40 +00:00
2023-12-01 10:16:47 +02:00
2023-08-25 18:22:06 +02:00
2023-08-04 12:25:51 +02:00
2023-08-16 14:29:08 +02:00
2023-10-10 12:35:21 +02:00
2023-05-10 17:44:52 +01:00
2023-07-10 21:03:32 +00:00
2023-10-28 23:40:02 +00:00
2023-11-23 10:18:17 -08:00
2023-11-06 11:31:58 +00:00
2023-10-07 13:39:19 +00:00
2023-10-30 19:53:01 +00:00
2023-05-13 09:55:35 +01:00
2023-07-11 15:47:15 +00:00
2023-05-20 12:07:40 -04:00
2023-10-02 17:43:16 +02:00
2023-09-12 16:22:43 +02:00
2023-05-09 11:02:14 -06:00
2023-05-07 18:47:28 +01:00
2023-11-28 08:33:44 +00:00
2023-11-09 15:41:44 +01:00
2023-09-03 01:22:33 +02:00
2023-10-10 13:12:30 +02:00
2023-11-10 14:00:48 +00:00
2023-12-01 14:13:15 +00:00
2023-06-29 23:39:18 +00:00
2023-08-25 18:18:24 +02:00
2023-06-28 21:12:12 +00:00
2023-08-25 18:18:24 +02:00
2023-10-02 17:34:49 +00:00
2023-08-04 12:25:51 +02:00
2023-08-04 12:25:51 +02:00
2023-05-09 11:02:14 -06:00
2023-11-25 17:56:46 +00:00
2023-07-31 11:16:30 +02:00
2023-10-02 17:34:49 +00:00
2023-09-08 15:14:17 +02:00
2023-10-06 01:26:14 +00:00
2023-10-31 15:01:28 -07:00
2023-08-04 12:25:51 +02:00
2023-11-27 19:41:53 -07:00
2023-10-12 22:03:07 +02:00
2023-09-01 15:36:52 +02:00
2023-11-07 12:06:21 +00:00
2023-10-02 16:59:26 +02:00
2023-10-02 17:34:49 +00:00
2023-11-20 15:38:57 +00:00
2023-10-10 22:38:18 +02:00
2023-08-17 12:51:07 +02:00
2023-09-12 16:17:05 +02:00
2023-08-22 12:00:07 +02:00
2023-07-01 00:32:44 +00:00
2023-10-16 15:48:02 +00:00
2023-08-17 01:19:48 +02:00
2023-09-08 15:17:14 +02:00
2023-10-09 16:27:01 +02:00
2023-10-02 17:10:33 +02:00
2023-08-24 12:30:16 +02:00
2023-05-11 21:23:52 +00:00
2023-11-19 15:25:36 -08:00
2023-09-17 22:49:42 +02:00
2023-05-13 23:55:20 -04:00
2023-10-10 22:38:18 +02:00
2023-11-28 19:42:49 +00:00
2023-11-15 15:55:46 +02:00
2023-10-22 19:14:50 +00:00
2023-12-04 12:15:41 +00:00
2023-05-15 20:36:23 -07:00
2023-10-16 15:48:02 +00:00
2023-11-11 09:21:52 -08:00
2023-09-03 01:22:33 +02:00
2023-11-08 20:48:18 +00:00
2023-11-09 19:34:10 +00:00
2023-08-25 18:22:06 +02:00
2023-07-07 14:25:24 -07:00
2023-05-19 21:03:49 +01:00
2023-11-13 15:54:40 +01:00
2023-10-25 11:25:31 +00:00
2023-10-02 12:09:54 +02:00
2023-10-15 17:32:08 +00:00
2023-09-03 01:22:33 +02:00
2023-09-04 21:13:02 +02:00
2023-10-10 22:38:18 +02:00
2023-08-22 12:01:24 +02:00
2023-06-16 18:29:55 +00:00
2023-10-02 17:10:33 +02:00
2023-08-21 14:31:11 +02:00
2023-11-11 08:02:08 +00:00
2023-10-11 04:30:23 +00:00
2023-11-14 13:25:19 +01:00
2023-12-01 00:35:49 +00:00
2023-09-04 18:41:42 +02:00
2023-10-02 17:00:11 +02:00
2023-05-21 11:12:24 +01:00
2023-09-08 15:14:17 +02:00
2023-10-10 22:38:18 +02:00
2023-11-11 08:02:08 +00:00
2023-06-05 03:45:12 +00:00
2023-10-12 10:10:00 +02:00
2023-10-02 17:11:24 +02:00
2023-11-19 18:59:50 +00:00
2023-09-12 16:03:47 +02:00
2023-10-14 06:42:19 +00:00
2023-11-28 06:42:54 +00:00
2023-12-04 16:17:38 +00:00
2023-10-02 17:41:26 +02:00
2023-11-07 22:04:29 +00:00
2023-09-03 01:22:33 +02:00
2023-10-02 17:42:55 +02:00
2023-12-03 16:28:57 +00:00
2023-10-11 00:26:48 +00:00
2023-09-12 16:03:18 +02:00
2023-09-08 15:14:17 +02:00
2023-10-11 11:15:44 +00:00
2023-10-05 22:17:20 +00:00
2023-10-02 17:11:24 +02:00
2023-11-27 17:30:53 +00:00
2023-06-06 16:22:04 +02:00
2023-09-03 01:22:33 +02:00
2023-10-27 04:02:17 +00:00
2023-11-27 08:25:06 +00:00
2023-10-04 12:01:03 +03:00
2023-10-16 15:48:02 +00:00
2023-12-04 23:33:59 +00:00
2023-07-24 21:13:17 +00:00
2023-10-25 14:56:27 +03:00
2023-10-02 16:55:41 +02:00
2023-11-27 19:02:57 +00:00
2023-10-09 09:11:51 +00:00
2023-10-26 22:44:47 +00:00
2023-11-29 00:36:07 +00:00
2023-05-24 10:40:51 +00:00
2023-10-02 17:16:25 +02:00
2023-08-16 14:32:04 +02:00
2023-09-08 15:14:57 +02:00
2023-10-10 14:10:55 +02:00
2023-11-27 19:01:05 -07:00
2023-09-08 15:24:55 +02:00
2023-10-19 09:18:22 +00:00
2023-09-08 15:25:18 +02:00
2023-10-27 06:43:38 +09:00
2023-10-14 06:18:14 +00:00
2023-09-01 15:32:35 +02:00
2023-11-08 16:56:24 +00:00
2023-06-05 13:42:31 +00:00
2023-09-08 15:16:55 +02:00
2023-09-15 00:42:39 +02:00
2023-08-03 17:07:43 +02:00
2023-12-03 00:41:03 +00:00
2023-10-02 17:11:24 +02:00
2023-12-01 10:16:47 +02:00
2023-09-03 01:22:33 +02:00
2023-10-02 17:34:49 +00:00
2023-10-05 14:07:25 +00:00
2023-10-10 22:38:18 +02:00
2023-09-08 15:14:17 +02:00
2023-09-08 15:14:17 +02:00
2023-05-17 01:49:20 -07:00
2023-10-06 01:26:14 +00:00
2023-05-09 16:01:58 +00:00
2023-07-10 21:03:32 +00:00
2023-10-04 10:27:12 +00:00
2023-09-03 01:22:33 +02:00
2023-09-05 12:51:37 +02:00
2023-11-16 18:11:33 +01:00
2023-09-08 15:14:17 +02:00
2023-10-04 11:25:13 +00:00