From mboxrd@z Thu Jan 1 00:00:00 1970 From: Zhongze Liu Subject: [PATCH v4] xen: Allow a default compiled-in command line using Kconfig Date: Thu, 9 Mar 2017 11:13:21 +0800 Message-ID: <20170309031321.19355-1-blackskygg@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cloWN-0006GA-Ji for xen-devel@lists.xenproject.org; Thu, 09 Mar 2017 03:13:43 +0000 Received: by mail-pf0-f194.google.com with SMTP id 67so5714745pfg.2 for ; Wed, 08 Mar 2017 19:13:41 -0800 (PST) List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Zhongze Liu , Andrew Cooper , Doug Goldstein , Julien Grall , Jan Beulich List-Id: xen-devel@lists.xenproject.org QWRkZWQgMiBuZXcgY29uZmlnIGVudHJpZXMgaW4gY29tbW9uL0tjb25maWc6CiAgICBDTURMSU5F IGFuZCBDTURMSU5FX09WRVJSSURFCk1vZGlmaWVkIHRoZSBpbnRlcmZhY2UgY29tbW9uL2tlcm5l bC5jOmNtZGxpbmVfcGFyc2UoKS4KClRoZSAyIG5ldyBlbnRyaWVzIGFsbG93IGFuIGVtYmVkZGVk IGNvbW1hbmQgbGluZSB0byBiZSBjb21waWxlZCBpbiB0aGUKaHlwZXJ2aXNvci5UaGlzIGFsbG93 cyBkb3duc3RyZWFtcyB0byBzZXQgdGhlaXIgZGVmYXVsdHMgd2l0aG91dCBtb2RpZnlpbmcKdGhl IHNvdXJjZSBjb2RlIGFsbCBvdmVyIHRoZSBwbGFjZS4gQWxzbyBwcm9iYWJseSB1c2VmdWwgZm9y IHRoZSBlbWJlZGRlZCBzcGFjZS4KKFNlZSBBbHNvOiBodHRwczovL3hlbnByb2plY3QuYXRsYXNz aWFuLm5ldC9icm93c2UvWEVOLTQxKQoKSWYgQ01ETElORSBpcyBzZXQsIHRoZSBjbWRsaW5lX3Bh cnNlKCkgcm91dGluZSB3aWxsIGFwcGVuZCB0aGUgYm9vdGxvYWRlcgpjb21tYW5kIGxpbmUgdG8g dGhpcyBzdHJpbmcsIGZvcm1pbmcgdGhlIGNvbXBsZXRlIGNvbW1hbmQgbGluZQpiZWZvcmUgcGFy c2luZy4gVGhpcyBvcmRlciBvZiBjb25jYXRlbmF0aW9uIGltcGxpZXMgdGhhdCBpZiBhbnkgbm9u LWN1bXVsYXRpdmUKb3B0aW9ucyBhcmUgc2V0IGluIGJvdGggdGhlIGJ1aWx0LWluIGFuZCBib290 bG9hZGVyIGNvbW1hbmQgbGluZSwKb25seSB0aGUgb25lcyBpbiB0aGUgbGF0dGVyIHdpbGwgdGFr ZSBlZmZlY3QuIEFuZCBpZiBDTURMSU5FX09WRVJSSURFIGlzCnNldCB0byB5LCB0aGUgd2hvbGUg Ym9vdGxvYWRlciBjb21tYW5kIGxpbmUgd2lsbCBiZSBpZ25vcmVkLCB3aGljaCB3aWxsIGJlCnVz ZWZ1bCB0byB3b3JrIGFyb3VuZCBicm9rZW4gYm9vdGxvYWRlcnMuCgpTaW5jZSBzb21lIGFyY2hp dGVjdHVyZXMgKGUuZy4geDg2KSBhbGxvdyBvcHRpb25hbCBkb20wIG9wdGlvbnMgdG8gYXBwZWFy IGFmdGVyCiIgLS0gIiBpbiB0aGUgY29tbWFuZCBsaW5lLiBjbWRsaW5lX3BhcnNlKCkgd2FzIG1v ZGlmaWVkIHRvIGhhbmRsZSB0aGVzZQpkb20wIG9wdGlvbnMgaWYgdGhlIGNhbGxlciByZXF1ZXN0 IGl0IHRvIGRvIHNvLCBhbmQgdGh1cyBhcmNoaXRlY3R1cmVzCnN1cHBvcnRpbmcgdGhpcyBmZWF0 dXJlIGRvbid0IG5lZWQgdG8gaGFuZGxlIHRoZW0gaW4gdGhlaXIgc2V0dXAuYydzIGFueW1vcmUu CgpTaWduZWQtb2ZmLWJ5OiBaaG9uZ3plIExpdSA8YmxhY2tza3lnZ0BnbWFpbC5jb20+Ci0tLQpD aGFuZ2VkIHNpbmNlIHYzOgogICogUmVtb3ZlIHRoZSBDTURMSU5FX0JPT0wgb3B0aW9uLgogICog TWFrZSB0aGUgb3B0aW9uIENNRExJTkVfT1ZFUlJJREUgZGVwZW5kIG9uIEVYUEVSVCA9ICJ5Ii4K ICAqIE1vdmUgdGhlIENNRExJTkUtcmVsYXRlZCBjb2RlIGZyb20gdmFyaW91cyAveGVuLyQoQVJD SCkvc2V0dXAuYydzIHRvCiAgICBjb21tb24va2VybmVsLmM6Y21kbGluZV9wYXJzZSgpLgogICog RGVhbGluZyB3aXRoIHRoZSBvcHRpb25hbCBkb20wIG9wdGlvbnMgaW4gY21kbGluZV9wYXJzZSgp LgogICogUmVtb3ZlIHNvbWUgcG9pbnRsZXNzIGluaXRpYWxpemVycy4KICAqIFJlbW92ZSB1bm5l Y2Vzc2FyeSAjaWZkZWYtYXJ5J3MKLS0tCiB4ZW4vYXJjaC9hcm0vc2V0dXAuYyAgfCAgNiArKy0t LQogeGVuL2FyY2gveDg2L3NldHVwLmMgIHwgMjMgKysrKystLS0tLS0tLS0tLQogeGVuL2NvbW1v bi9LY29uZmlnICAgIHwgMjQgKysrKysrKysrKysrKysrKysKIHhlbi9jb21tb24va2VybmVsLmMg ICB8IDc0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0t LQogeGVuL2luY2x1ZGUveGVuL2xpYi5oIHwgIDIgKy0KIDUgZmlsZXMgY2hhbmdlZCwgMTAzIGlu c2VydGlvbnMoKyksIDI2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9z ZXR1cC5jIGIveGVuL2FyY2gvYXJtL3NldHVwLmMKaW5kZXggOTJhMmRlNmI3MC4uYTVlY2RiYjU0 YSAxMDA2NDQKLS0tIGEveGVuL2FyY2gvYXJtL3NldHVwLmMKKysrIGIveGVuL2FyY2gvYXJtL3Nl dHVwLmMKQEAgLTcwNSw3ICs3MDUsNyBAQCB2b2lkIF9faW5pdCBzdGFydF94ZW4odW5zaWduZWQg bG9uZyBib290X3BoeXNfb2Zmc2V0LAogICAgIHNpemVfdCBmZHRfc2l6ZTsKICAgICBpbnQgY3B1 cywgaTsKICAgICBwYWRkcl90IHhlbl9wYWRkcjsKLSAgICBjb25zdCBjaGFyICpjbWRsaW5lOwor ICAgIGNvbnN0IGNoYXIgKmNtZGxpbmUsICpjb21wbGV0ZV9jbWRsaW5lOwogICAgIHN0cnVjdCBi b290bW9kdWxlICp4ZW5fYm9vdG1vZHVsZTsKICAgICBzdHJ1Y3QgZG9tYWluICpkb20wOwogICAg IHN0cnVjdCB4ZW5fYXJjaF9kb21haW5jb25maWcgY29uZmlnOwpAQCAtNzMwLDggKzczMCw4IEBA IHZvaWQgX19pbml0IHN0YXJ0X3hlbih1bnNpZ25lZCBsb25nIGJvb3RfcGh5c19vZmZzZXQsCiAg ICAgZmR0X3NpemUgPSBib290X2ZkdF9pbmZvKGRldmljZV90cmVlX2ZsYXR0ZW5lZCwgZmR0X3Bh ZGRyKTsKIAogICAgIGNtZGxpbmUgPSBib290X2ZkdF9jbWRsaW5lKGRldmljZV90cmVlX2ZsYXR0 ZW5lZCk7Ci0gICAgcHJpbnRrKCJDb21tYW5kIGxpbmU6ICVzXG4iLCBjbWRsaW5lKTsKLSAgICBj bWRsaW5lX3BhcnNlKGNtZGxpbmUpOworICAgIGNvbXBsZXRlX2NtZGxpbmUgPSBjbWRsaW5lX3Bh cnNlKGNtZGxpbmUsIE5VTEwsIDApOworICAgIHByaW50aygiQ29tbWFuZCBsaW5lOiAlc1xuIiwg Y29tcGxldGVfY21kbGluZSk7CiAKICAgICAvKiBSZWdpc3RlciBYZW4ncyBsb2FkIGFkZHJlc3Mg YXMgYSBib290IG1vZHVsZS4gKi8KICAgICB4ZW5fYm9vdG1vZHVsZSA9IGFkZF9ib290X21vZHVs ZShCT09UTU9EX1hFTiwKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9zZXR1cC5jIGIveGVuL2Fy Y2gveDg2L3NldHVwLmMKaW5kZXggZGFiNjdkNTQ5MS4uZGM2NWQ4ZjM4OSAxMDA2NDQKLS0tIGEv eGVuL2FyY2gveDg2L3NldHVwLmMKKysrIGIveGVuL2FyY2gveDg2L3NldHVwLmMKQEAgLTYzOSw3 ICs2MzksOSBAQCBzdGF0aWMgY2hhciAqIF9faW5pdCBjbWRsaW5lX2Nvb2soY2hhciAqcCwgY29u c3QgY2hhciAqbG9hZGVyX25hbWUpCiB2b2lkIF9faW5pdCBub3JldHVybiBfX3N0YXJ0X3hlbih1 bnNpZ25lZCBsb25nIG1iaV9wKQogewogICAgIGNoYXIgKm1lbW1hcF90eXBlID0gTlVMTDsKLSAg ICBjaGFyICpjbWRsaW5lLCAqa2V4dHJhLCAqbG9hZGVyOworICAgIGNoYXIgKmNtZGxpbmUsICps b2FkZXI7CisgICAgY29uc3QgY2hhciAqY29tcGxldGVfY21kbGluZTsKKyAgICBzdGF0aWMgY2hh ciBfX2luaXRkYXRhIGtleHRyYVtNQVhfR1VFU1RfQ01ETElORV07CiAgICAgdW5zaWduZWQgaW50 IGluaXRyZGlkeCwgZG9tY3JfZmxhZ3MgPSBET01DUkZfczNfaW50ZWdyaXR5OwogICAgIG11bHRp Ym9vdF9pbmZvX3QgKm1iaSA9IF9fdmEobWJpX3ApOwogICAgIG1vZHVsZV90ICptb2QgPSAobW9k dWxlX3QgKilfX3ZhKG1iaS0+bW9kc19hZGRyKTsKQEAgLTY3OSwxOCArNjgxLDcgQEAgdm9pZCBf X2luaXQgbm9yZXR1cm4gX19zdGFydF94ZW4odW5zaWduZWQgbG9uZyBtYmlfcCkKICAgICBjbWRs aW5lID0gY21kbGluZV9jb29rKChtYmktPmZsYWdzICYgTUJJX0NNRExJTkUpID8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIF9fdmEobWJpLT5jbWRsaW5lKSA6IE5VTEwsCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBsb2FkZXIpOwotICAgIGlmICggKGtleHRyYSA9IHN0cnN0cihjbWRs aW5lLCAiIC0tICIpKSAhPSBOVUxMICkKLSAgICB7Ci0gICAgICAgIC8qCi0gICAgICAgICAqIE9w dGlvbnMgYWZ0ZXIgJyAtLSAnIHNlcGFyYXRvciBiZWxvbmcgdG8gZG9tMC4KLSAgICAgICAgICog IDEuIE9ycGhhbiBkb20wJ3Mgb3B0aW9ucyBmcm9tIFhlbidzIGNvbW1hbmQgbGluZS4KLSAgICAg ICAgICogIDIuIFNraXAgYWxsIGJ1dCBmaW5hbCBsZWFkaW5nIHNwYWNlIGZyb20gZG9tMCdzIG9w dGlvbnMuCi0gICAgICAgICAqLwotICAgICAgICAqa2V4dHJhID0gJ1wwJzsKLSAgICAgICAga2V4 dHJhICs9IDM7Ci0gICAgICAgIHdoaWxlICgga2V4dHJhWzFdID09ICcgJyApIGtleHRyYSsrOwot ICAgIH0KLSAgICBjbWRsaW5lX3BhcnNlKGNtZGxpbmUpOworICAgIGNvbXBsZXRlX2NtZGxpbmUg PSBjbWRsaW5lX3BhcnNlKGNtZGxpbmUsIGtleHRyYSwgc2l6ZW9mKGtleHRyYSkpOwogCiAgICAg LyogTXVzdCBiZSBhZnRlciBjb21tYW5kIGxpbmUgYXJndW1lbnQgcGFyc2luZyBhbmQgYmVmb3Jl CiAgICAgICogYWxsb2NpbmcgYW55IHhlbmhlYXAgc3RydWN0dXJlcyB3YW50ZWQgaW4gbG93ZXIg bWVtb3J5LiAqLwpAQCAtNzEzLDcgKzcwNCw3IEBAIHZvaWQgX19pbml0IG5vcmV0dXJuIF9fc3Rh cnRfeGVuKHVuc2lnbmVkIGxvbmcgbWJpX3ApCiAKICAgICBwcmludGsoIkJvb3Rsb2FkZXI6ICVz XG4iLCBsb2FkZXIpOwogCi0gICAgcHJpbnRrKCJDb21tYW5kIGxpbmU6ICVzXG4iLCBjbWRsaW5l KTsKKyAgICBwcmludGsoIkNvbW1hbmQgbGluZTogJXNcbiIsIGNvbXBsZXRlX2NtZGxpbmUpOwog CiAgICAgcHJpbnRrKCJWaWRlbyBpbmZvcm1hdGlvbjpcbiIpOwogCkBAIC0xNTY2LDE0ICsxNTU3 LDE0IEBAIHZvaWQgX19pbml0IG5vcmV0dXJuIF9fc3RhcnRfeGVuKHVuc2lnbmVkIGxvbmcgbWJp X3ApCiAKICAgICAvKiBHcmFiIHRoZSBET00wIGNvbW1hbmQgbGluZS4gKi8KICAgICBjbWRsaW5l ID0gKGNoYXIgKikobW9kWzBdLnN0cmluZyA/IF9fdmEobW9kWzBdLnN0cmluZykgOiBOVUxMKTsK LSAgICBpZiAoIChjbWRsaW5lICE9IE5VTEwpIHx8IChrZXh0cmEgIT0gTlVMTCkgKQorICAgIGlm ICggKGNtZGxpbmUgIT0gTlVMTCkgfHwgc3RybGVuKGtleHRyYSkgKQogICAgIHsKICAgICAgICAg c3RhdGljIGNoYXIgX19pbml0ZGF0YSBkb20wX2NtZGxpbmVbTUFYX0dVRVNUX0NNRExJTkVdOwog CiAgICAgICAgIGNtZGxpbmUgPSBjbWRsaW5lX2Nvb2soY21kbGluZSwgbG9hZGVyKTsKICAgICAg ICAgc2FmZV9zdHJjcHkoZG9tMF9jbWRsaW5lLCBjbWRsaW5lKTsKIAotICAgICAgICBpZiAoIGtl eHRyYSAhPSBOVUxMICkKKyAgICAgICAgaWYgKCBzdHJsZW4oa2V4dHJhKSApCiAgICAgICAgICAg ICAvKiBrZXh0cmEgYWx3YXlzIGluY2x1ZGVzIGV4YWN0bHkgb25lIGxlYWRpbmcgc3BhY2UuICov CiAgICAgICAgICAgICBzYWZlX3N0cmNhdChkb20wX2NtZGxpbmUsIGtleHRyYSk7CiAKZGlmZiAt LWdpdCBhL3hlbi9jb21tb24vS2NvbmZpZyBiL3hlbi9jb21tb24vS2NvbmZpZwppbmRleCBmMmVj YmM0M2Q2Li5kNzI4OGFiZGNjIDEwMDY0NAotLS0gYS94ZW4vY29tbW9uL0tjb25maWcKKysrIGIv eGVuL2NvbW1vbi9LY29uZmlnCkBAIC0yMzcsNCArMjM3LDI4IEBAIGNvbmZpZyBGQVNUX1NZTUJP TF9MT09LVVAKIAkgIFRoZSBvbmx5IHVzZXIgb2YgdGhpcyBpcyBMaXZlIHBhdGNoaW5nLgogCiAJ ICBJZiB1bnN1cmUsIHNheSBZLgorCitjb25maWcgQ01ETElORQorCXN0cmluZyAiQnVpbHQtaW4g aHlwZXJ2aXNvciBjb21tYW5kIHN0cmluZyIKKwlkZWZhdWx0ICIiCisJLS0taGVscC0tLQorCSAg RW50ZXIgYXJndW1lbnRzIGhlcmUgdGhhdCBzaG91bGQgYmUgY29tcGlsZWQgaW50byB0aGUgaHlw ZXJ2aXNvcgorCSAgaW1hZ2UgYW5kIHVzZWQgYXQgYm9vdCB0aW1lLiAgSWYgdGhlIGJvb3Rsb2Fk ZXIgcHJvdmlkZXMgYQorCSAgY29tbWFuZCBsaW5lIGF0IGJvb3QgdGltZSwgaXQgaXMgYXBwZW5k ZWQgdG8gdGhpcyBzdHJpbmcgdG8KKwkgIGZvcm0gdGhlIGZ1bGwgaHlwZXJ2aXNvciBjb21tYW5k IGxpbmUsIHdoZW4gdGhlIHN5c3RlbSBib290cy4KKwkgIFNvIGlmIHRoZSBzYW1lIGNvbW1hbmQg bGluZSBvcHRpb24gaXMgbm90IGN1bXVsYXRpdmUsCisJICBhbmQgd2FzIHNldCBib3RoIGluIHRo aXMgc3RyaW5nIGFuZCBpbiB0aGUgYm9vdGxvYWRlciBjb21tYW5kIGxpbmUsCisJICBvbmx5IHRo ZSBsYXR0ZXIgKGkuZS4gdGhlIG9uZSBpbiB0aGUgYm9vdGxvYWRlciBjb21tYW5kIGxpbmUpLAor CSAgd2lsbCB0YWtlIGVmZmVjdC4KKworY29uZmlnIENNRExJTkVfT1ZFUlJJREUKKwlib29sICJC dWlsdC1pbiBjb21tYW5kIGxpbmUgb3ZlcnJpZGVzIGJvb3Rsb2FkZXIgYXJndW1lbnRzIgorCWRl ZmF1bHQgbgorCWRlcGVuZHMgb24gRVhQRVJUID0gInkiCisJLS0taGVscC0tLQorCSAgU2V0IHRo aXMgb3B0aW9uIHRvICdZJyB0byBoYXZlIHRoZSBoeXBlcnZpc29yIGlnbm9yZSB0aGUgYm9vdGxv YWRlcgorCSAgY29tbWFuZCBsaW5lLCBhbmQgdXNlIE9OTFkgdGhlIGJ1aWx0LWluIGNvbW1hbmQg bGluZS4KKworCSAgVGhpcyBpcyB1c2VkIHRvIHdvcmsgYXJvdW5kIGJyb2tlbiBib290bG9hZGVy cy4gVGhpcyBzaG91bGQKKwkgIGJlIHNldCB0byAnTicgdW5kZXIgbm9ybWFsIGNvbmRpdGlvbnMu CiBlbmRtZW51CmRpZmYgLS1naXQgYS94ZW4vY29tbW9uL2tlcm5lbC5jIGIveGVuL2NvbW1vbi9r ZXJuZWwuYwppbmRleCA0Yjg3YzYwODQ1Li43NzU0NGJlOTQ4IDEwMDY0NAotLS0gYS94ZW4vY29t bW9uL2tlcm5lbC5jCisrKyBiL3hlbi9jb21tb24va2VybmVsLmMKQEAgLTIyLDcgKzIyLDcgQEAK IAogZW51bSBzeXN0ZW1fc3RhdGUgc3lzdGVtX3N0YXRlID0gU1lTX1NUQVRFX2Vhcmx5X2Jvb3Q7 CiAKLXhlbl9jb21tYW5kbGluZV90IHNhdmVkX2NtZGxpbmU7Cit4ZW5fY29tbWFuZGxpbmVfdCBz YXZlZF9jbWRsaW5lID0gQ09ORklHX0NNRExJTkU7CiAKIHN0YXRpYyB2b2lkIF9faW5pdCBhc3Np Z25faW50ZWdlcl9wYXJhbSgKICAgICBjb25zdCBzdHJ1Y3Qga2VybmVsX3BhcmFtICpwYXJhbSwg dWludDY0X3QgdmFsKQpAQCAtNDYsMTcgKzQ2LDc3IEBAIHN0YXRpYyB2b2lkIF9faW5pdCBhc3Np Z25faW50ZWdlcl9wYXJhbSgKICAgICB9CiB9CiAKLXZvaWQgX19pbml0IGNtZGxpbmVfcGFyc2Uo Y29uc3QgY2hhciAqY21kbGluZSkKKy8qCisgKiBFeHRyYWN0cyBkb20wIG9wdGlvbnMgZnJvbSB0 aGUgQGNtZGxpbmUuCisgKiBPcHRpb25zIGFmdGVyICcgLS0gJyBzZXBhcmF0b3IgYmVsb25nIHRv IGRvbTAuCisgKiAgMS4gT3JwaGFuIGRvbTAncyBvcHRpb25zIGZyb20gWGVuJ3MgY29tbWFuZCBs aW5lLgorICogIDIuIFNraXAgYWxsIGJ1dCBmaW5hbCBsZWFkaW5nIHNwYWNlIGZyb20gZG9tMCdz IG9wdGlvbnMuCisgKiAgMy4gQXBwZW5kIGRvbTAncyBvcHRpb25zIHRvIGtleHRyYS4KKyAqLwor c3RhdGljIHZvaWQgX19pbml0IGdhdGhlcl9kb20wX29wdGlvbnMoCisgICAgY2hhciAqY21kbGlu ZSwgY2hhciAqa2V4dHJhLCBzaXplX3Qga2V4dHJhX2xlbikKK3sKKyAgICBjaGFyICpwOworCisg ICAgaWYgKCAocCA9IHN0cnN0cihjbWRsaW5lLCAiIC0tICIpKSAhPSBOVUxMICkKKyAgICB7Cisg ICAgICAgICpwID0gJ1wwJzsKKyAgICAgICAgcCArPSAzOworICAgICAgICB3aGlsZSAoIHBbMV0g PT0gJyAnICkKKyAgICAgICAgICAgIHArKzsKKworICAgICAgICBzdHJsY2F0KGtleHRyYSwgcCwg a2V4dHJhX2xlbik7CisgICAgfQorfQorCisvKioKKyAqIGNtZGxpbmVfcGFyc2UgLSBwYXJzZXMg dGhlIGNvbW1hbmQgbGluZSBvcHRpb25zLgorICoKKyAqIEBjbWRsaW5lOiAgICB0aGUgY29tbWFu ZCBsaW5lIHRvIGJlIHBhcnNlZC4KKyAqIEBrZXh0cmE6ICAgICBpZiBub3QgTlVMTCwgdGhpcyB3 aWxsIGJlIGZpbGxlZCB3aXRoIHRoZSBvcHRpb25hbCBkb20wIG9wdGlvbnMuCisgKiAgICAgICAg ICAgICAgKHNvbWUgYXJjaGl0ZWN0dXJlIGFsbG93cyBkb20wIG9wdGlvbnMgdG8gYXBwZWFyIGFm dGVyICIgLS0gIiBpbgorICogICAgICAgICAgICAgIHRoZSBjbWRsaW5lKTsgaWYgc2V0IHRvIE5V TEwsIHRoZSBmdW5jdGlvbiB3b24ndCBzZWVrIGZvciBkb20wCisgKiAgICAgICAgICAgICAgb3B0 aW9ucy4KKyAqIEBrZXh0cmFfbGVuOiBsZW5ndGggb2YgQGtleHRyYSwgaWdub3JlZCBpZiBAa2V4 dHJhIGlzIE5VTEwuCisgKgorICogSWYgQ09ORklHX0NNRExJTkUgaXMgc2V0LCBAY21kbGluZSB3 aWxsIGJlIGFwcGVuZGVkIHRvIENPTkZJR19DTURMSU5FCisgKiB0byBmb3JtIHRoZSBjb21wbGV0 ZSBjbWRsaW5lIGJlZm9yZSBwYXJzaW5nLCBhbmQgdGhlIG9wdGlvbmFsIGRvbTAgb3B0aW9ucwor ICogd2lsbCBhbHNvIGJlIGNvbmNhdGVuYXRlZCBpbiB0aGUgc2FtZSBvcmRlciBiZWZvcmUgd2Ug cHV0IHRoZW0gaW4gQGtleHRyYS4KKyAqIEJ1dCBpZiBDT05GSUdfQ01ETElORV9PVkVSUklERSBp cyBzZXQgdG8geSwgdGhlIHdob2xlIGJvb3Rsb2FkZXIgY29tbWFuZAorICogbGluZSB3aWxsIGJl IGlnbm9yZWQuCisgKiBUaGUgZnVjbnRpb24gcmV0cnVucyB0aGUgY29tcGxldGUgY29tbWFuZCBs aW5lIHdpdGggdGhlIG9wdGlvbmFsIGRvbTAKKyAqIG9wdGlvbnMgc3RyaXBwZWQgb3V0LgorICov Citjb25zdCBjaGFyKiBfX2luaXQgY21kbGluZV9wYXJzZSgKKyAgICBjb25zdCBjaGFyICpjbWRs aW5lLCBjaGFyICprZXh0cmEsIHNpemVfdCBrZXh0cmFfbGVuKQogewogICAgIGNoYXIgb3B0WzEw MF0sICpvcHR2YWwsICpvcHRrZXksICpxOwotICAgIGNvbnN0IGNoYXIgKnAgPSBjbWRsaW5lOwor ICAgIGNvbnN0IGNoYXIgKnAgPSBzYXZlZF9jbWRsaW5lOwogICAgIGNvbnN0IHN0cnVjdCBrZXJu ZWxfcGFyYW0gKnBhcmFtOwogICAgIGludCBib29sX2Fzc2VydDsKIAotICAgIGlmICggY21kbGlu ZSA9PSBOVUxMICkKLSAgICAgICAgcmV0dXJuOworICAgIGlmICgga2V4dHJhICE9IE5VTEwgKQor ICAgICAgICBrZXh0cmFbMF0gPSAnXDAnOwogCi0gICAgc2FmZV9zdHJjcHkoc2F2ZWRfY21kbGlu ZSwgY21kbGluZSk7CisgICAgaWYgKCBzdHJsZW4oc2F2ZWRfY21kbGluZSkgKQorICAgIHsKKyAg ICAgICAgaWYgKCBrZXh0cmEgIT0gTlVMTCApCisgICAgICAgICAgICBnYXRoZXJfZG9tMF9vcHRp b25zKHNhdmVkX2NtZGxpbmUsIGtleHRyYSwga2V4dHJhX2xlbik7CisgICAgICAgIHNhZmVfc3Ry Y2F0KHNhdmVkX2NtZGxpbmUsICIgIik7CisgICAgfQorCisjaWZuZGVmIENPTkZJR19DTURMSU5F X09WRVJSSURFCisgICAgaWYgKCBjbWRsaW5lICE9IE5VTEwgKQorICAgIHsKKyAgICAgICAgc2Fm ZV9zdHJjYXQoc2F2ZWRfY21kbGluZSwgY21kbGluZSk7CisgICAgICAgIGlmICgga2V4dHJhICE9 IE5VTEwgKQorICAgICAgICAgICAgZ2F0aGVyX2RvbTBfb3B0aW9ucyhzYXZlZF9jbWRsaW5lLCBr ZXh0cmEsIGtleHRyYV9sZW4pOworICAgIH0KKyNlbmRpZgorCisgICAgaWYgKCAhc3RybGVuKHNh dmVkX2NtZGxpbmUpICkKKyAgICAgICAgLyogTm90aGluZyB0byBwYXJzZS4gKi8KKyAgICAgICAg cmV0dXJuIHNhdmVkX2NtZGxpbmU7CiAKICAgICBmb3IgKCA7IDsgKQogICAgIHsKQEAgLTE0NSw2 ICsyMDUsOCBAQCB2b2lkIF9faW5pdCBjbWRsaW5lX3BhcnNlKGNvbnN0IGNoYXIgKmNtZGxpbmUp CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9CisKKyAgICByZXR1cm4gc2F2ZWRfY21k bGluZTsKIH0KIAogaW50IF9faW5pdCBwYXJzZV9ib29sKGNvbnN0IGNoYXIgKnMpCmRpZmYgLS1n aXQgYS94ZW4vaW5jbHVkZS94ZW4vbGliLmggYi94ZW4vaW5jbHVkZS94ZW4vbGliLmgKaW5kZXgg OTk1YTg1YTdkYi4uMzNlNWZiZmUyMCAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUveGVuL2xpYi5o CisrKyBiL3hlbi9pbmNsdWRlL3hlbi9saWIuaApAQCAtNzAsNyArNzAsNyBAQAogCiBzdHJ1Y3Qg ZG9tYWluOwogCi12b2lkIGNtZGxpbmVfcGFyc2UoY29uc3QgY2hhciAqY21kbGluZSk7Citjb25z dCBjaGFyICpjbWRsaW5lX3BhcnNlKGNvbnN0IGNoYXIgKmNtZGxpbmUsIGNoYXIgKmtleHRyYSwg c2l6ZV90IGtleHRyYV9sZW4pOwogaW50IHBhcnNlX2Jvb2woY29uc3QgY2hhciAqcyk7CiAKIC8q I2RlZmluZSBERUJVR19UUkFDRV9EVU1QKi8KLS0gCjIuMTIuMAoKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVu LWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=