Gentoo Archives: gentoo-commits

From: "Ulrich Müller" <ulm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/portage:master commit in: lib/portage/package/ebuild/
Date: Tue, 30 Jul 2019 07:09:42
Message-Id: 1564470430.4fea794c94932a63942c0722183e1c2dffd6ecd2.ulm@gentoo
1 commit: 4fea794c94932a63942c0722183e1c2dffd6ecd2
2 Author: Ulrich Müller <ulm <AT> gentoo <DOT> org>
3 AuthorDate: Mon Jul 29 12:22:57 2019 +0000
4 Commit: Ulrich Müller <ulm <AT> gentoo <DOT> org>
5 CommitDate: Tue Jul 30 07:07:10 2019 +0000
6 URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=4fea794c
7
8 doebuild.py: Override network-sandbox in unpack only for live ebuilds.
9
10 Suggested-by: Michał Górny <mgorny <AT> gentoo.org>
11 Reviewed-by: Zac Medico <zmedico <AT> gentoo.org>
12 Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>
13
14 lib/portage/package/ebuild/doebuild.py | 11 +++--------
15 1 file changed, 3 insertions(+), 8 deletions(-)
16
17 diff --git a/lib/portage/package/ebuild/doebuild.py b/lib/portage/package/ebuild/doebuild.py
18 index 67867d33e..6f980f87d 100644
19 --- a/lib/portage/package/ebuild/doebuild.py
20 +++ b/lib/portage/package/ebuild/doebuild.py
21 @@ -115,13 +115,6 @@ _ipc_phases = frozenset([
22 _global_pid_phases = frozenset([
23 'config', 'depend', 'preinst', 'prerm', 'postinst', 'postrm'])
24
25 -# phases in which networking access is allowed
26 -_networked_phases = frozenset([
27 - # for VCS fetching
28 - "unpack",
29 - # + for network-bound IPC
30 -] + list(_ipc_phases))
31 -
32 _phase_func_map = {
33 "config": "pkg_config",
34 "setup": "pkg_setup",
35 @@ -156,7 +149,9 @@ def _doebuild_spawn(phase, settings, actionmap=None, **kwargs):
36 phase in _ipc_phases
37 kwargs['mountns'] = 'mount-sandbox' in settings.features
38 kwargs['networked'] = 'network-sandbox' not in settings.features or \
39 - phase in _networked_phases or \
40 + (phase == 'unpack' and \
41 + 'live' in settings.configdict['pkg'].get('PROPERTIES', '').split()) or \
42 + phase in _ipc_phases or \
43 'network-sandbox' in settings['PORTAGE_RESTRICT'].split()
44 kwargs['pidns'] = ('pid-sandbox' in settings.features and
45 phase not in _global_pid_phases)