summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2021-12-21 17:38:58 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2022-01-12 21:10:24 +0000
commit4eea21b7addd091c7e549684699897fe7d60533c (patch)
treea25e1860691ff81d2f3289fb3fc18d69967baa43
parent15465422ecd1f61193473ca19fecbd188d405a49 (diff)
downloadpoky-4eea21b7addd091c7e549684699897fe7d60533c.tar.gz
classes: Only allow network in existing network accessing code
Use the newly added network task flag against tasks where network access is expected. This is do_fetch, do_checkuri, do_testimage, do_testsdk and do_testsdkext. We can't disable networking in sstate tasks due to sstate downloads and also so we can report hash equivalence to the server so network access is enabled in sstate tasks. Access within build-appliance do_image is also allowed due to the use of pip, this is a poor example made rather obvious now and needs to be reworked. Network access anywhere else in any other task isn't allowed. (From OE-Core rev: 7ce1e88a3ad85bbb925bb9f7167dc0a5fd1c27f4) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/base.bbclass1
-rw-r--r--meta/classes/sstate.bbclass2
-rw-r--r--meta/classes/testimage.bbclass1
-rw-r--r--meta/classes/testsdk.bbclass2
-rw-r--r--meta/classes/utility-tasks.bbclass1
-rw-r--r--meta/recipes-core/images/build-appliance-image_15.0.0.bb2
6 files changed, 9 insertions, 0 deletions
diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index b709777f24..5f4956a1d3 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -150,6 +150,7 @@ do_fetch[dirs] = "${DL_DIR}"
150do_fetch[file-checksums] = "${@bb.fetch.get_checksum_file_list(d)}" 150do_fetch[file-checksums] = "${@bb.fetch.get_checksum_file_list(d)}"
151do_fetch[file-checksums] += " ${@get_lic_checksum_file_list(d)}" 151do_fetch[file-checksums] += " ${@get_lic_checksum_file_list(d)}"
152do_fetch[vardeps] += "SRCREV" 152do_fetch[vardeps] += "SRCREV"
153do_fetch[network] = "1"
153python base_do_fetch() { 154python base_do_fetch() {
154 155
155 src_uri = (d.getVar('SRC_URI') or "").split() 156 src_uri = (d.getVar('SRC_URI') or "").split()
diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
index 0326d27c74..645377fdd8 100644
--- a/meta/classes/sstate.bbclass
+++ b/meta/classes/sstate.bbclass
@@ -158,6 +158,8 @@ python () {
158 for task in unique_tasks: 158 for task in unique_tasks:
159 d.prependVarFlag(task, 'prefuncs', "sstate_task_prefunc ") 159 d.prependVarFlag(task, 'prefuncs', "sstate_task_prefunc ")
160 d.appendVarFlag(task, 'postfuncs', " sstate_task_postfunc") 160 d.appendVarFlag(task, 'postfuncs', " sstate_task_postfunc")
161 d.setVarFlag(task, 'network', '1')
162 d.setVarFlag(task + "_setscene", 'network', '1')
161} 163}
162 164
163def sstate_init(task, d): 165def sstate_init(task, d):
diff --git a/meta/classes/testimage.bbclass b/meta/classes/testimage.bbclass
index 1c5fd4ee6a..898248992c 100644
--- a/meta/classes/testimage.bbclass
+++ b/meta/classes/testimage.bbclass
@@ -139,6 +139,7 @@ python do_testimage() {
139 139
140addtask testimage 140addtask testimage
141do_testimage[nostamp] = "1" 141do_testimage[nostamp] = "1"
142do_testimage[network] = "1"
142do_testimage[depends] += "${TESTIMAGEDEPENDS}" 143do_testimage[depends] += "${TESTIMAGEDEPENDS}"
143do_testimage[lockfiles] += "${TESTIMAGELOCK}" 144do_testimage[lockfiles] += "${TESTIMAGELOCK}"
144 145
diff --git a/meta/classes/testsdk.bbclass b/meta/classes/testsdk.bbclass
index 758a23ac55..8b2e74f606 100644
--- a/meta/classes/testsdk.bbclass
+++ b/meta/classes/testsdk.bbclass
@@ -36,12 +36,14 @@ python do_testsdk() {
36} 36}
37addtask testsdk 37addtask testsdk
38do_testsdk[nostamp] = "1" 38do_testsdk[nostamp] = "1"
39do_testsdk[network] = "1"
39 40
40python do_testsdkext() { 41python do_testsdkext() {
41 import_and_run('TESTSDKEXT_CLASS_NAME', d) 42 import_and_run('TESTSDKEXT_CLASS_NAME', d)
42} 43}
43addtask testsdkext 44addtask testsdkext
44do_testsdkext[nostamp] = "1" 45do_testsdkext[nostamp] = "1"
46do_testsdkext[network] = "1"
45 47
46python () { 48python () {
47 if oe.types.boolean(d.getVar("TESTIMAGE_AUTO") or "False"): 49 if oe.types.boolean(d.getVar("TESTIMAGE_AUTO") or "False"):
diff --git a/meta/classes/utility-tasks.bbclass b/meta/classes/utility-tasks.bbclass
index 34d6b8f4d5..0466325c13 100644
--- a/meta/classes/utility-tasks.bbclass
+++ b/meta/classes/utility-tasks.bbclass
@@ -38,6 +38,7 @@ python do_clean() {
38 38
39addtask checkuri 39addtask checkuri
40do_checkuri[nostamp] = "1" 40do_checkuri[nostamp] = "1"
41do_checkuri[network] = "1"
41python do_checkuri() { 42python do_checkuri() {
42 src_uri = (d.getVar('SRC_URI') or "").split() 43 src_uri = (d.getVar('SRC_URI') or "").split()
43 if len(src_uri) == 0: 44 if len(src_uri) == 0:
diff --git a/meta/recipes-core/images/build-appliance-image_15.0.0.bb b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
index ce72a944e7..b774095b97 100644
--- a/meta/recipes-core/images/build-appliance-image_15.0.0.bb
+++ b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
@@ -109,6 +109,8 @@ fakeroot do_populate_poky_src () {
109} 109}
110 110
111IMAGE_PREPROCESS_COMMAND += "do_populate_poky_src; " 111IMAGE_PREPROCESS_COMMAND += "do_populate_poky_src; "
112# For pip usage above
113do_image[network] = "1"
112 114
113addtask rootfs after do_unpack 115addtask rootfs after do_unpack
114 116