>>>>> On Mon, 29 Jul 2019, Zac Medico wrote:

> This will enable network-sandbox for all of _networked_phases, but
> Michał only suggested to do it for src_unpack.

Right. Patch v2 below.


From 6e929fac0a3f5f0bcfe85152c0931cb20d579881 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ulrich=20M=C3=BCller?= <u...@gentoo.org>
Date: Mon, 29 Jul 2019 14:22:57 +0200
Subject: [PATCH] doebuild.py: Override network-sandbox in unpack only for live
 ebuilds.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Suggested-by: Michał Górny <mgo...@gentoo.org>
Signed-off-by: Ulrich Müller <u...@gentoo.org>
---
 lib/portage/package/ebuild/doebuild.py | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/lib/portage/package/ebuild/doebuild.py 
b/lib/portage/package/ebuild/doebuild.py
index 67867d33e..6f980f87d 100644
--- a/lib/portage/package/ebuild/doebuild.py
+++ b/lib/portage/package/ebuild/doebuild.py
@@ -115,13 +115,6 @@ _ipc_phases = frozenset([
 _global_pid_phases = frozenset([
        'config', 'depend', 'preinst', 'prerm', 'postinst', 'postrm'])
 
-# phases in which networking access is allowed
-_networked_phases = frozenset([
-       # for VCS fetching
-       "unpack",
-       # + for network-bound IPC
-] + list(_ipc_phases))
-
 _phase_func_map = {
        "config": "pkg_config",
        "setup": "pkg_setup",
@@ -156,7 +149,9 @@ def _doebuild_spawn(phase, settings, actionmap=None, 
**kwargs):
                phase in _ipc_phases
        kwargs['mountns'] = 'mount-sandbox' in settings.features
        kwargs['networked'] = 'network-sandbox' not in settings.features or \
-               phase in _networked_phases or \
+               (phase == 'unpack' and \
+               'live' in settings.configdict['pkg'].get('PROPERTIES', 
'').split()) or \
+               phase in _ipc_phases or \
                'network-sandbox' in settings['PORTAGE_RESTRICT'].split()
        kwargs['pidns'] = ('pid-sandbox' in settings.features and
                phase not in _global_pid_phases)
-- 
2.22.0

Attachment: signature.asc
Description: PGP signature

Reply via email to