diff options
author | Ronan Le Martret <ronan.lemartret@iot.bzh> | 2018-08-30 12:16:20 +0000 |
---|---|---|
committer | Ronan Le Martret <ronan.lemartret@iot.bzh> | 2019-09-13 10:30:51 +0200 |
commit | 62ef568cb2d9cdecde8cc58d677f1a42722ff3a5 (patch) | |
tree | 8354dc57fe081eec946bc439457f5202e64a6ac7 /meta-rcar-gen3/include/checksum_control.inc | |
parent | 838c095da6554becb79d1bdac3267f6801fe95db (diff) |
[AGL] Add driver control checksum
* As the driver files come from out of git repository,
we need to check driver file integrity.
Change-Id: I46f2a281f8da1ae606e8ae1ee55324fd5fd9b772
Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh>
Diffstat (limited to 'meta-rcar-gen3/include/checksum_control.inc')
-rw-r--r-- | meta-rcar-gen3/include/checksum_control.inc | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/meta-rcar-gen3/include/checksum_control.inc b/meta-rcar-gen3/include/checksum_control.inc new file mode 100644 index 0000000..e0decc7 --- /dev/null +++ b/meta-rcar-gen3/include/checksum_control.inc @@ -0,0 +1,25 @@ +require include/checksum_control_files.inc + +python do_checksum_control() { + to_check_dico = d.getVarFlags("CTL_CHECKSUM") + if to_check_dico is None: + return 0 + + src_uri = (d.getVar('SRC_URI') or "").split() + for s in src_uri: + c_source=os.path.basename(s) + bb.note("Check source: %s " % (c_source)) + if c_source in to_check_dico: + f_data = bb.fetch2.FetchData(s, d, True) + f_data.setup_localpath(d) + if os.path.exists(f_data.localpath): + mdr5_sum=bb.utils.md5_file(f_data.localpath) + mdr5_ctl=to_check_dico[c_source] + if mdr5_sum != mdr5_ctl: + bb.fatal( "File %s hash should be %s but %s find, please update your driver files." % (c_source, mdr5_ctl, mdr5_sum)) +} + +do_checksum_control[doc] = "Do a checksum of the archives source files" +do_checksum_control[vardeps] = "CTL_CHECKSUM" + +addtask do_checksum_control before do_unpack after do_fetch |