From mboxrd@z Thu Jan 1 00:00:00 1970 From: fu.wei@linaro.org Subject: [PATCH] xen/arm64: check XSM Magic and Signature from the second unknown module. Date: Fri, 18 Mar 2016 15:41:48 +0800 Message-ID: <1458286908-27677-1-git-send-email-fu.wei@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xensource.com, Ian.Campbell@citrix.com, julien.grall@linaro.org Cc: jcm@redhat.com, Fu Wei , leif.lindholm@linaro.org, linaro-uefi@lists.linaro.org List-Id: xen-devel@lists.xenproject.org RnJvbTogRnUgV2VpIDxmdS53ZWlAbGluYXJvLm9yZz4KClRoaXMgcGF0Y2ggYWRkIGEgY2hlY2tf eHNtX3NpZ25hdHVyZSBzdGF0aWMgZnVuY3Rpb24gZm9yIGRldGVjdGluZyBYU00KZnJvbSB0aGUg c2Vjb25kIHVua25vd24gbW9kdWxlLgoKSWYgeGVuIGNhbid0IGdldCB0aGUga2luZCBvZiBtb2R1 bGUgZnJvbSBjb21wYXRpYmxlLCB3ZSBndWVzcyB0aGUga2luZCBvZgp0aGVzZSBmaXJzdCB0d28g dW5rbm93biByZXNwZWN0aXZlbHk6CiAgICAoMSkgVGhlIGZpcnN0IHVua25vd24gbXVzdCBiZSBr ZXJuZWw7CiAgICAoMikgVGhlIHNlY29uZCB1bmtub3duIGlzIHJhbWRpc2ssIG9ubHkgaWYgd2Ug aGF2ZSByYW1kaXNrOwogICAgKDMpIFN0YXJ0IGZyb20gdGhlIDJuZCB1bmtub3duLCBkZXRlY3Qg dGhlIFhTTSBiaW5hcnkgc2lnbmF0dXJlOwogICAgKDQpIElmIHdlIGdvdCBYU00gaW4gdGhlIDJu ZCB1bmtub3duLCB0aGF0IG1lYW5zIHdlIGRvbid0IGxvYWQgaW5pdHJkLgoKU2lnbmVkLW9mZi1i eTogRnUgV2VpIDxmdS53ZWlAbGluYXJvLm9yZz4KLS0tCkNoYW5nZUxvZzoKdjE6IFRoaXMgcGF0 Y2ggLSB0aGUgZmlyc3QgdXBzdHJlYW0gcGF0Y2ggdG8geGVuLWRldmVsIG1haWxpbmcgbGlzdHMu CgogeGVuL2FyY2gvYXJtL2Jvb3RmZHQuYyB8IDQxICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKystCiAxIGZpbGUgY2hhbmdlZCwgNDAgaW5zZXJ0aW9ucygrKSwgMSBkZWxl dGlvbigtKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9ib290ZmR0LmMgYi94ZW4vYXJjaC9h cm0vYm9vdGZkdC5jCmluZGV4IDhhMTQwMTUuLjFhNzRlY2YgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNo L2FybS9ib290ZmR0LmMKKysrIGIveGVuL2FyY2gvYXJtL2Jvb3RmZHQuYwpAQCAtMTYzLDYgKzE2 MywzNiBAQCBzdGF0aWMgdm9pZCBfX2luaXQgcHJvY2Vzc19tZW1vcnlfbm9kZShjb25zdCB2b2lk ICpmZHQsIGludCBub2RlLAogICAgIH0KIH0KIAorc3RhdGljIGJvb2wgX19pbml0IGNoZWNrX3hz bV9zaWduYXR1cmUoY29uc3Qgdm9pZCAqZmR0LCBpbnQgbm9kZSwKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKm5hbWUsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB1MzIgYWRkcmVzc19jZWxscywgdTMyIHNpemVfY2VsbHMp Cit7CisgICAgdWludDMyX3Qgc2VsaW51eF9tYWdpYyA9IDB4Zjk3Y2ZmOGM7CisgICAgY29uc3Qg c3RydWN0IGZkdF9wcm9wZXJ0eSAqcHJvcDsKKyAgICBwYWRkcl90IHN0YXJ0LCBzaXplOworICAg IGNvbnN0IF9fYmUzMiAqY2VsbDsKKyAgICAvKiAxNiA9PSBzaXplb2YodWludDMyX3QpICogMiAr IHNpemVvZigiWGVuRmxhc2siKSAtIDEgKi8KKyAgICBjaGFyIG1hZ2ljWzE2XTsKKyAgICBpbnQg bGVuOworCisgICAgcHJvcCA9IGZkdF9nZXRfcHJvcGVydHkoZmR0LCBub2RlLCAicmVnIiwgJmxl bik7CisgICAgaWYgKCAhcHJvcCApCisgICAgICAgIHBhbmljKCJub2RlICVzIG1pc3NpbmcgYHJl ZycgcHJvcGVydHlcbiIsIG5hbWUpOworCisgICAgaWYgKCBsZW4gPCBkdF9jZWxsc190b19zaXpl KGFkZHJlc3NfY2VsbHMgKyBzaXplX2NlbGxzKSApCisgICAgICAgIHBhbmljKCJmZHQ6IG5vZGUg YCVzJzogYHJlZ2AgcHJvcGVydHkgbGVuZ3RoIGlzIHRvbyBzaG9ydFxuIiwgbmFtZSk7CisKKyAg ICBjZWxsID0gKGNvbnN0IF9fYmUzMiAqKXByb3AtPmRhdGE7CisgICAgZGV2aWNlX3RyZWVfZ2V0 X3JlZygmY2VsbCwgYWRkcmVzc19jZWxscywgc2l6ZV9jZWxscywgJnN0YXJ0LCAmc2l6ZSk7CisK KyAgICBjb3B5X2Zyb21fcGFkZHIobWFnaWMsIHN0YXJ0LCAxNik7CisgICAgaWYgKHN0cm5jbXAo bWFnaWMsIChjaGFyICopICZzZWxpbnV4X21hZ2ljLCBzaXplb2YodWludDMyX3QpKSB8fAorICAg ICAgICBzdHJuY21wKG1hZ2ljICsgc2l6ZW9mKHVpbnQzMl90KSAqIDIsICJYZW5GbGFzayIsIDgp KQorICAgICAgICByZXR1cm4gMDsKKworICAgIHJldHVybiAxOworfQorCiBzdGF0aWMgdm9pZCBf X2luaXQgcHJvY2Vzc19tdWx0aWJvb3Rfbm9kZShjb25zdCB2b2lkICpmZHQsIGludCBub2RlLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqbmFt ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHUzMiBhZGRyZXNz X2NlbGxzLCB1MzIgc2l6ZV9jZWxscykKQEAgLTE4Niw3ICsyMTYsMTMgQEAgc3RhdGljIHZvaWQg X19pbml0IHByb2Nlc3NfbXVsdGlib290X25vZGUoY29uc3Qgdm9pZCAqZmR0LCBpbnQgbm9kZSwK ICAgICBlbHNlCiAgICAgICAgIGtpbmQgPSBCT09UTU9EX1VOS05PV047CiAKLSAgICAvKiBHdWVz cyB0aGF0IGZpcnN0IHR3byB1bmtub3duIGFyZSBrZXJuZWwgYW5kIHJhbWRpc2sgcmVzcGVjdGl2 ZWx5LiAqLworICAgIC8qKgorICAgICAqIEd1ZXNzIHRoZSBraW5kIG9mIHRoZXNlIGZpcnN0IHR3 byB1bmtub3duIHJlc3BlY3RpdmVseToKKyAgICAgKiAoMSkgVGhlIGZpcnN0IHVua25vd24gbXVz dCBiZSBrZXJuZWw7CisgICAgICogKDIpIFRoZSBzZWNvbmQgdW5rbm93biBpcyByYW1kaXNrLCBv bmx5IGlmIHdlIGhhdmUgcmFtZGlzazsKKyAgICAgKiAoMykgU3RhcnQgZnJvbSB0aGUgMm5kIHVu a25vd24sIGRldGVjdCB0aGUgWFNNIGJpbmFyeSBzaWduYXR1cmU7CisgICAgICogKDQpIElmIHdl IGdvdCBYU00gaW4gdGhlIDJuZCB1bmtub3duLCB0aGF0IG1lYW5zIHdlIGhhdmUgbm90IGluaXRy ZC4KKyAgICAgKi8KICAgICBpZiAoIGtpbmQgPT0gQk9PVE1PRF9VTktOT1dOICkKICAgICB7CiAg ICAgICAgIHN3aXRjaCAoIGtpbmRfZ3Vlc3MrKyApCkBAIC0xOTUsNiArMjMxLDkgQEAgc3RhdGlj IHZvaWQgX19pbml0IHByb2Nlc3NfbXVsdGlib290X25vZGUoY29uc3Qgdm9pZCAqZmR0LCBpbnQg bm9kZSwKICAgICAgICAgY2FzZSAxOiBraW5kID0gQk9PVE1PRF9SQU1ESVNLOyBicmVhazsKICAg ICAgICAgZGVmYXVsdDogYnJlYWs7CiAgICAgICAgIH0KKyAgICAgICAgaWYgKGtpbmRfZ3Vlc3Mg PiAxICYmIGNoZWNrX3hzbV9zaWduYXR1cmUoZmR0LCBub2RlLCBuYW1lLAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGRyZXNzX2NlbGxzLCBzaXpl X2NlbGxzKSkKKyAgICAgICAgICAgIGtpbmQgPSBCT09UTU9EX1hTTTsKICAgICB9CiAKICAgICBw cm9wID0gZmR0X2dldF9wcm9wZXJ0eShmZHQsIG5vZGUsICJyZWciLCAmbGVuKTsKLS0gCjIuNS4w CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRl dmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwOi8vbGlzdHMueGVu Lm9yZy94ZW4tZGV2ZWwK