From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: [PATCH livepatch-tools] Rename of xSplice to LivePatch. Date: Thu, 2 Jun 2016 16:40:30 -0400 Message-ID: <1464900030-26305-1-git-send-email-konrad.wilk@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta14.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b8ZQ1-00009l-Eh for xen-devel@lists.xenproject.org; Thu, 02 Jun 2016 20:40:41 +0000 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, ross.lagerwall@citrix.com Cc: Konrad Rzeszutek Wilk List-Id: xen-devel@lists.xenproject.org cy94c3BsaWNlL2xpdmVwYXRjaC8Kcy9YU1BMSUNFL0xJVkVQQVRDSC8Kcy94U3BsaWNlL0xpdmVQ YXRjaC8KClNpZ25lZC1vZmYtYnk6IEtvbnJhZCBSemVzenV0ZWsgV2lsayA8a29ucmFkLndpbGtA b3JhY2xlLmNvbT4KLS0tCiBSRUFETUUubWQgICAgICAgICAgICAgICAgICAgICAgICB8IDI2ICsr KysrKysrKysrKy0tLS0tLS0tLS0tLS0KIGNvbW1vbi5oICAgICAgICAgICAgICAgICAgICAgICAg IHwgIDIgKy0KIGNyZWF0ZS1kaWZmLW9iamVjdC5jICAgICAgICAgICAgIHwgNDIgKysrKysrKysr KysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQogeHNwbGljZS1idWlsZCA9PiBsaXZlcGF0 Y2gtYnVpbGQgfCAzMiArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0KIHhzcGxpY2UtZ2Nj ID0+IGxpdmVwYXRjaC1nY2MgICAgIHwgMTIgKysrKysrLS0tLS0tCiBwcmVsaW5rLmMgICAgICAg ICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KIDYgZmlsZXMgY2hhbmdlZCwgNTkgaW5zZXJ0aW9u cygrKSwgNTkgZGVsZXRpb25zKC0pCiByZW5hbWUgeHNwbGljZS1idWlsZCA9PiBsaXZlcGF0Y2gt YnVpbGQgKDkwJSkKIHJlbmFtZSB4c3BsaWNlLWdjYyA9PiBsaXZlcGF0Y2gtZ2NjICg4MCUpCgpk aWZmIC0tZ2l0IGEvUkVBRE1FLm1kIGIvUkVBRE1FLm1kCmluZGV4IGMzOWIzNzYuLjlmYjcwOWYg MTAwNjQ0Ci0tLSBhL1JFQURNRS5tZAorKysgYi9SRUFETUUubWQKQEAgLTEsOSArMSw5IEBACi14 c3BsaWNlLWJ1aWxkCitsaXZlcGF0Y2gtYnVpbGQKID09PT09PT09PT09PT0KIAoteHNwbGljZS1i dWlsZCBpcyBhIHRvb2wgZm9yIGJ1aWxkaW5nIHhTcGxpY2UgcGF0Y2hlcyBmcm9tIHNvdXJjZSBj b2RlCitsaXZlcGF0Y2gtYnVpbGQgaXMgYSB0b29sIGZvciBidWlsZGluZyBMaXZlUGF0Y2ggcGF0 Y2hlcyBmcm9tIHNvdXJjZSBjb2RlCiBwYXRjaGVzLiAgSXQgdGFrZXMgYXMgaW5wdXQsIGEgWGVu IHRyZWUgYW5kIGEgcGF0Y2ggYW5kIG91dHB1dHMgYW4KLWAueHNwbGljZWAgbW9kdWxlIGNvbnRh aW5pbmcgY29udGFpbmluZyB0aGUgbGl2ZSBwYXRjaC4KK2AubGl2ZXBhdGNoYCBtb2R1bGUgY29u dGFpbmluZyBjb250YWluaW5nIHRoZSBsaXZlIHBhdGNoLgogCiBRdWljayBzdGFydAogLS0tLS0t LS0tLS0KQEAgLTE1LDE0ICsxNSwxNCBAQCAkIGNkIH4vc3JjL3hlbgogJCBnaXQgcmVzZXQgLS1o YXJkCiAkIGdpdCBjbGVhbiAteCAtZiAtZAogJCBnaXQgY2hlY2tvdXQgMzQ2ZDQ1NDU1Njk5Mjhi NjUyYzQwYzc4MTVjMTczMjY3NmY4NTg3Y14KLSQgY2Qgfi9zcmMveHNwbGljZS1idWlsZAorJCBj ZCB+L3NyYy9saXZlcGF0Y2gtYnVpbGQKICQgd2dldCAtcSAnaHR0cDovL3hlbmJpdHMueGVuLm9y Zy94c2EveHNhMTA2LnBhdGNoJwotJCAuL3hzcGxpY2UtYnVpbGQgLS14ZW4tZGVidWcgLXMgfi9z cmMveGVuIC1wIHhzYTEwNi5wYXRjaCAtbyBvdXQKLUJ1aWxkaW5nIHhTcGxpY2UgcGF0Y2g6IHhz YTEwNgorJCAuL2xpdmVwYXRjaC1idWlsZCAtLXhlbi1kZWJ1ZyAtcyB+L3NyYy94ZW4gLXAgeHNh MTA2LnBhdGNoIC1vIG91dAorQnVpbGRpbmcgTGl2ZVBhdGNoIHBhdGNoOiB4c2ExMDYKIAogWGVu IGRpcmVjdG9yeTogL2hvbWUvcm9zcy9zcmMveGVuCi1QYXRjaCBmaWxlOiAvaG9tZS9yb3NzL3Ny Yy94c3BsaWNlLWJ1aWxkL3hzYTEwNi5wYXRjaAotT3V0cHV0IGRpcmVjdG9yeTogL2hvbWUvcm9z cy9zcmMveHNwbGljZS1idWlsZC9vdXQKK1BhdGNoIGZpbGU6IC9ob21lL3Jvc3Mvc3JjL2xpdmVw YXRjaC1idWlsZC94c2ExMDYucGF0Y2gKK091dHB1dCBkaXJlY3Rvcnk6IC9ob21lL3Jvc3Mvc3Jj L2xpdmVwYXRjaC1idWlsZC9vdXQKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQogCiBUZXN0aW5nIHBhdGNoIGZpbGUuLi4KQEAgLTMyLDEwICszMiwxMCBA QCBVbmFwcGx5IHBhdGNoIGFuZCBidWlsZCB3aXRoIDQgQ1BVKHMpLi4uCiBFeHRyYWN0aW5nIG5l dyBhbmQgbW9kaWZpZWQgRUxGIHNlY3Rpb25zLi4uCiBQcm9jZXNzaW5nIHhlbi9hcmNoL3g4Ni94 ODZfZW11bGF0ZS5vCiBDcmVhdGluZyBwYXRjaCBtb2R1bGUuLi4KLXhzYTEwNi54c3BsaWNlIGNy ZWF0ZWQgc3VjY2Vzc2Z1bGx5Cit4c2ExMDYubGl2ZXBhdGNoIGNyZWF0ZWQgc3VjY2Vzc2Z1bGx5 CiAKLSQgbHMgLWxoIG91dC94c2ExMDYueHNwbGljZQotLXJ3LXJ3LXItLS4gMSByb3NzIHJvc3Mg NDE4SyBPY3QgMTIgMTI6MDIgb3V0L3hzYTEwNi54c3BsaWNlCiskIGxzIC1saCBvdXQveHNhMTA2 LmxpdmVwYXRjaAorLXJ3LXJ3LXItLS4gMSByb3NzIHJvc3MgNDE4SyBPY3QgMTIgMTI6MDIgb3V0 L3hzYTEwNi5saXZlcGF0Y2gKIGBgYAogCiBQcm9qZWN0IFN0YXR1cwpAQCAtNDMsNyArNDMsNyBA QCBQcm9qZWN0IFN0YXR1cwogVGhpcyBpcyBwcm90b3R5cGUgY29kZToKICAqIFRoZXJlJ3Mgbm8g d2F5IHRvIGFwcGx5IGJ1aWx0IHBhdGNoZXMKICAqIFBhdGNoZXMgY2Fubm90IGJlIGJ1aWx0IGZv ciBzb21lIHNvdXJjZSBwYXRjaGVzCi0gKiBUaGUgb3V0cHV0IGZvcm1hdCBkb2VzIG5vdCBjb3Jy ZXNwb25kIHRvIHRoZSBsYXRlc3QgeFNwbGljZSBkZXNpZ24KKyAqIFRoZSBvdXRwdXQgZm9ybWF0 IGRvZXMgbm90IGNvcnJlc3BvbmQgdG8gdGhlIGxhdGVzdCBMaXZlUGF0Y2ggZGVzaWduCiAKIFdp dGggbm8gc291cmNlIHBhdGNoIG1vZGlmaWNhdGlvbnMsIGxpdmUgcGF0Y2hlcyBjYW4gYmUgYnVp bHQgZm9yIGV2ZXJ5CiBYU0EgdGhhdCBhcHBsaWVzIHRvIHg4NiBiYWNrIHRvIFhTQS05MCBleGNl cHQgZm9yIFhTQS05NywgWFNBLTExMSwKQEAgLTUxLDcgKzUxLDcgQEAgWFNBLTExMiwgYW5kIFhT QS0xMTQgKDgzJSBzdWNjZXNzIHJhdGUpLgogCiBMaWNlbnNlCiAtLS0tLS0tCi14U3BsaWNlIGlz IHVuZGVyIHRoZSBHUEx2MiBsaWNlbnNlLgorTGl2ZVBhdGNoIGlzIHVuZGVyIHRoZSBHUEx2MiBs aWNlbnNlLgogCiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3Ry aWJ1dGUgaXQgYW5kL29yCiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2Vu ZXJhbCBQdWJsaWMgTGljZW5zZQpkaWZmIC0tZ2l0IGEvY29tbW9uLmggYi9jb21tb24uaAppbmRl eCBkNzY4ODFjLi43NTk5ZmU3IDEwMDY0NAotLS0gYS9jb21tb24uaAorKysgYi9jb21tb24uaApA QCAtMTE2LDcgKzExNiw3IEBAIHN0cnVjdCBrcGF0Y2hfZWxmIHsKIAogI2RlZmluZSBQQVRDSF9J TlNOX1NJWkUgNQogCi1zdHJ1Y3QgeHNwbGljZV9wYXRjaF9mdW5jIHsKK3N0cnVjdCBsaXZlcGF0 Y2hfcGF0Y2hfZnVuYyB7CiAJY2hhciAqbmFtZTsKIAl1bnNpZ25lZCBsb25nIG5ld19hZGRyOwog CXVuc2lnbmVkIGxvbmcgb2xkX2FkZHI7CmRpZmYgLS1naXQgYS9jcmVhdGUtZGlmZi1vYmplY3Qu YyBiL2NyZWF0ZS1kaWZmLW9iamVjdC5jCmluZGV4IDA0ODg1NTYuLjY5YmNkODggMTAwNjQ0Ci0t LSBhL2NyZWF0ZS1kaWZmLW9iamVjdC5jCisrKyBiL2NyZWF0ZS1kaWZmLW9iamVjdC5jCkBAIC04 NjAsNyArODYwLDcgQEAgc3RhdGljIHZvaWQga3BhdGNoX21hcmtfaWdub3JlZF9mdW5jdGlvbnNf c2FtZShzdHJ1Y3Qga3BhdGNoX2VsZiAqa2VsZikKIAlzdHJ1Y3Qgc2VjdGlvbiAqc2VjOwogCXN0 cnVjdCByZWxhICpyZWxhOwogCi0Jc2VjID0gZmluZF9zZWN0aW9uX2J5X25hbWUoJmtlbGYtPnNl Y3Rpb25zLCAiLnhzcGxpY2UuaWdub3JlLmZ1bmN0aW9ucyIpOworCXNlYyA9IGZpbmRfc2VjdGlv bl9ieV9uYW1lKCZrZWxmLT5zZWN0aW9ucywgIi5saXZlcGF0Y2guaWdub3JlLmZ1bmN0aW9ucyIp OwogCWlmICghc2VjKQogCQlyZXR1cm47CiAKQEAgLTg4Nyw3ICs4ODcsNyBAQCBzdGF0aWMgdm9p ZCBrcGF0Y2hfbWFya19pZ25vcmVkX3NlY3Rpb25zKHN0cnVjdCBrcGF0Y2hfZWxmICprZWxmKQog CXN0cnVjdCByZWxhICpyZWxhOwogCWNoYXIgKm5hbWU7CiAKLQlzZWMgPSBmaW5kX3NlY3Rpb25f YnlfbmFtZSgma2VsZi0+c2VjdGlvbnMsICIueHNwbGljZS5pZ25vcmUuc2VjdGlvbnMiKTsKKwlz ZWMgPSBmaW5kX3NlY3Rpb25fYnlfbmFtZSgma2VsZi0+c2VjdGlvbnMsICIubGl2ZXBhdGNoLmln bm9yZS5zZWN0aW9ucyIpOwogCWlmICghc2VjKQogCQlyZXR1cm47CiAKQEAgLTEyOTcsMTAgKzEy OTcsMTAgQEAgc3RhdGljIHZvaWQga3BhdGNoX2luY2x1ZGVfaG9va19lbGVtZW50cyhzdHJ1Y3Qg a3BhdGNoX2VsZiAqa2VsZikKIAogCS8qIGluY2x1ZGUgbG9hZC91bmxvYWQgc2VjdGlvbnMgKi8K IAlsaXN0X2Zvcl9lYWNoX2VudHJ5KHNlYywgJmtlbGYtPnNlY3Rpb25zLCBsaXN0KSB7Ci0JCWlm ICghc3RyY21wKHNlYy0+bmFtZSwgIi54c3BsaWNlLmhvb2tzLmxvYWQiKSB8fAotCQkgICAgIXN0 cmNtcChzZWMtPm5hbWUsICIueHNwbGljZS5ob29rcy51bmxvYWQiKSB8fAotCQkgICAgIXN0cmNt cChzZWMtPm5hbWUsICIucmVsYS54c3BsaWNlLmhvb2tzLmxvYWQiKSB8fAotCQkgICAgIXN0cmNt cChzZWMtPm5hbWUsICIucmVsYS54c3BsaWNlLmhvb2tzLnVubG9hZCIpKSB7CisJCWlmICghc3Ry Y21wKHNlYy0+bmFtZSwgIi5saXZlcGF0Y2guaG9va3MubG9hZCIpIHx8CisJCSAgICAhc3RyY21w KHNlYy0+bmFtZSwgIi5saXZlcGF0Y2guaG9va3MudW5sb2FkIikgfHwKKwkJICAgICFzdHJjbXAo c2VjLT5uYW1lLCAiLnJlbGEubGl2ZXBhdGNoLmhvb2tzLmxvYWQiKSB8fAorCQkgICAgIXN0cmNt cChzZWMtPm5hbWUsICIucmVsYS5saXZlcGF0Y2guaG9va3MudW5sb2FkIikpIHsKIAkJCXNlYy0+ aW5jbHVkZSA9IDE7CiAJCQlpZiAoaXNfcmVsYV9zZWN0aW9uKHNlYykpIHsKIAkJCQkvKiBpbmNs dWRlIGhvb2sgZGVwZW5kZW5jaWVzICovCkBAIC0xMzI1LDggKzEzMjUsOCBAQCBzdGF0aWMgdm9p ZCBrcGF0Y2hfaW5jbHVkZV9ob29rX2VsZW1lbnRzKHN0cnVjdCBrcGF0Y2hfZWxmICprZWxmKQog CSAqIHVzZWQgYnkgdGhlIGtwYXRjaF9bbG9hZHx1bmxvYWRdKCkgbWFjcm9zLgogCSAqLwogCWxp c3RfZm9yX2VhY2hfZW50cnkoc3ltLCAma2VsZi0+c3ltYm9scywgbGlzdCkKLQkJaWYgKCFzdHJj bXAoc3ltLT5uYW1lLCAieHNwbGljZV9sb2FkX2RhdGEiKSB8fAotCQkgICAgIXN0cmNtcChzeW0t Pm5hbWUsICJ4c3BsaWNlX3VubG9hZF9kYXRhIikpCisJCWlmICghc3RyY21wKHN5bS0+bmFtZSwg ImxpdmVwYXRjaF9sb2FkX2RhdGEiKSB8fAorCQkgICAgIXN0cmNtcChzeW0tPm5hbWUsICJsaXZl cGF0Y2hfdW5sb2FkX2RhdGEiKSkKIAkJCXN5bS0+aW5jbHVkZSA9IDA7CiB9CiAKQEAgLTE0Njks NyArMTQ2OSw3IEBAIHN0YXRpYyB2b2lkIGtwYXRjaF9jcmVhdGVfc3RyaW5nc19lbGVtZW50cyhz dHJ1Y3Qga3BhdGNoX2VsZiAqa2VsZikKIAogCS8qIGFsbG9jYXRlIHNlY3Rpb24gcmVzb3VyY2Vz ICovCiAJQUxMT0NfTElOSyhzZWMsICZrZWxmLT5zZWN0aW9ucyk7Ci0Jc2VjLT5uYW1lID0gIi54 c3BsaWNlLnN0cmluZ3MiOworCXNlYy0+bmFtZSA9ICIubGl2ZXBhdGNoLnN0cmluZ3MiOwogCiAJ Lyogc2V0IGRhdGEgKi8KIAlzZWMtPmRhdGEgPSBtYWxsb2Moc2l6ZW9mKCpzZWMtPmRhdGEpKTsK QEAgLTE0OTAsNyArMTQ5MCw3IEBAIHN0YXRpYyB2b2lkIGtwYXRjaF9jcmVhdGVfc3RyaW5nc19l bGVtZW50cyhzdHJ1Y3Qga3BhdGNoX2VsZiAqa2VsZikKIAlzeW0tPnN5bS5zdF9pbmZvID0gR0VM Rl9TVF9JTkZPKFNUQl9MT0NBTCwgU1RUX1NFQ1RJT04pOwogCXN5bS0+dHlwZSA9IFNUVF9TRUNU SU9OOwogCXN5bS0+YmluZCA9IFNUQl9MT0NBTDsKLQlzeW0tPm5hbWUgPSAiLnhzcGxpY2Uuc3Ry aW5ncyI7CisJc3ltLT5uYW1lID0gIi5saXZlcGF0Y2guc3RyaW5ncyI7CiB9CiAKIHN0YXRpYyB2 b2lkIGtwYXRjaF9idWlsZF9zdHJpbmdzX3NlY3Rpb25fZGF0YShzdHJ1Y3Qga3BhdGNoX2VsZiAq a2VsZikKQEAgLTE1MDAsNyArMTUwMCw3IEBAIHN0YXRpYyB2b2lkIGtwYXRjaF9idWlsZF9zdHJp bmdzX3NlY3Rpb25fZGF0YShzdHJ1Y3Qga3BhdGNoX2VsZiAqa2VsZikKIAlpbnQgc2l6ZTsKIAlj aGFyICpzdHJ0YWI7CiAKLQlzZWMgPSBmaW5kX3NlY3Rpb25fYnlfbmFtZSgma2VsZi0+c2VjdGlv bnMsICIueHNwbGljZS5zdHJpbmdzIik7CisJc2VjID0gZmluZF9zZWN0aW9uX2J5X25hbWUoJmtl bGYtPnNlY3Rpb25zLCAiLmxpdmVwYXRjaC5zdHJpbmdzIik7CiAJaWYgKCFzZWMpCiAJCUVSUk9S KCJjYW4ndCBmaW5kIC5rcGF0Y2guc3RyaW5ncyIpOwogCkBAIC0xNTYwLDcgKzE1NjAsNyBAQCBz dGF0aWMgY2hhciAqbWFuZ2xlX2xvY2FsX3N5bWJvbChjaGFyICpmaWxlbmFtZSwgY2hhciAqc3lt bmFtZSkKICAqIFJlbmFtZSBsb2NhbCBzeW1ib2xzIHRvIHRoZSBmaWxlbmFtZSNzeW1ib2wgZm9y bWF0IHVzZWQgYnkgWGVuJ3MgInNwZWNpYWwiCiAgKiBzeW1ib2wgdGFibGUuCiAgKi8KLXN0YXRp YyB2b2lkIHhzcGxpY2VfcmVuYW1lX2xvY2FsX3N5bWJvbHMoc3RydWN0IGtwYXRjaF9lbGYgKmtl bGYsIGNoYXIgKmhpbnQpCitzdGF0aWMgdm9pZCBsaXZlcGF0Y2hfcmVuYW1lX2xvY2FsX3N5bWJv bHMoc3RydWN0IGtwYXRjaF9lbGYgKmtlbGYsIGNoYXIgKmhpbnQpCiB7CiAJc3RydWN0IHN5bWJv bCAqc3ltOwogCkBAIC0xNjM4LDcgKzE2MzgsNyBAQCBzdGF0aWMgc3RydWN0IHNlY3Rpb24gKmNy ZWF0ZV9zZWN0aW9uX3BhaXIoc3RydWN0IGtwYXRjaF9lbGYgKmtlbGYsCiAJcmV0dXJuIHNlYzsK IH0KIAotc3RhdGljIHZvaWQgeHNwbGljZV9jcmVhdGVfcGF0Y2hlc19zZWN0aW9ucyhzdHJ1Y3Qg a3BhdGNoX2VsZiAqa2VsZiwKK3N0YXRpYyB2b2lkIGxpdmVwYXRjaF9jcmVhdGVfcGF0Y2hlc19z ZWN0aW9ucyhzdHJ1Y3Qga3BhdGNoX2VsZiAqa2VsZiwKIAkJCQkJICAgIHN0cnVjdCBsb29rdXBf dGFibGUgKnRhYmxlLAogCQkJCQkgICAgY2hhciAqaGludCwgaW50IHJlc29sdmUpCiB7CkBAIC0x NjQ3LDcgKzE2NDcsNyBAQCBzdGF0aWMgdm9pZCB4c3BsaWNlX2NyZWF0ZV9wYXRjaGVzX3NlY3Rp b25zKHN0cnVjdCBrcGF0Y2hfZWxmICprZWxmLAogCXN0cnVjdCBzeW1ib2wgKnN5bSwgKnN0cnN5 bTsKIAlzdHJ1Y3QgcmVsYSAqcmVsYTsKIAlzdHJ1Y3QgbG9va3VwX3Jlc3VsdCByZXN1bHQ7Ci0J c3RydWN0IHhzcGxpY2VfcGF0Y2hfZnVuYyAqZnVuY3M7CisJc3RydWN0IGxpdmVwYXRjaF9wYXRj aF9mdW5jICpmdW5jczsKIAljaGFyICpmdW5jbmFtZTsKIAogCS8qIGNvdW50IHBhdGNoZWQgZnVu Y3Rpb25zICovCkBAIC0xNjU3LDE0ICsxNjU3LDE0IEBAIHN0YXRpYyB2b2lkIHhzcGxpY2VfY3Jl YXRlX3BhdGNoZXNfc2VjdGlvbnMoc3RydWN0IGtwYXRjaF9lbGYgKmtlbGYsCiAJCQlucisrOwog CiAJLyogY3JlYXRlIHRleHQvcmVsYSBzZWN0aW9uIHBhaXIgKi8KLQlzZWMgPSBjcmVhdGVfc2Vj dGlvbl9wYWlyKGtlbGYsICIueHNwbGljZS5mdW5jcyIsIHNpemVvZigqZnVuY3MpLCBucik7CisJ c2VjID0gY3JlYXRlX3NlY3Rpb25fcGFpcihrZWxmLCAiLmxpdmVwYXRjaC5mdW5jcyIsIHNpemVv ZigqZnVuY3MpLCBucik7CiAJcmVsYXNlYyA9IHNlYy0+cmVsYTsKIAlmdW5jcyA9IHNlYy0+ZGF0 YS0+ZF9idWY7CiAKIAkvKiBsb29rdXAgc3RyaW5ncyBzeW1ib2wgKi8KLQlzdHJzeW0gPSBmaW5k X3N5bWJvbF9ieV9uYW1lKCZrZWxmLT5zeW1ib2xzLCAiLnhzcGxpY2Uuc3RyaW5ncyIpOworCXN0 cnN5bSA9IGZpbmRfc3ltYm9sX2J5X25hbWUoJmtlbGYtPnN5bWJvbHMsICIubGl2ZXBhdGNoLnN0 cmluZ3MiKTsKIAlpZiAoIXN0cnN5bSkKLQkJRVJST1IoImNhbid0IGZpbmQgLnhzcGxpY2Uuc3Ry aW5ncyBzeW1ib2wiKTsKKwkJRVJST1IoImNhbid0IGZpbmQgLmxpdmVwYXRjaC5zdHJpbmdzIHN5 bWJvbCIpOwogCiAJLyogcG9wdWxhdGUgc2VjdGlvbnMgKi8KIAlpbmRleCA9IDA7CkBAIC0xNzEz LDcgKzE3MTMsNyBAQCBzdGF0aWMgdm9pZCB4c3BsaWNlX2NyZWF0ZV9wYXRjaGVzX3NlY3Rpb25z KHN0cnVjdCBrcGF0Y2hfZWxmICprZWxmLAogCQkJcmVsYS0+YWRkZW5kID0gMDsKIAkJCXJlbGEt Pm9mZnNldCA9IGluZGV4ICogc2l6ZW9mKCpmdW5jcyk7CiAJCQlyZWxhLT5vZmZzZXQgPSBpbmRl eCAqIHNpemVvZigqZnVuY3MpICsKLQkJCSAgICAgICAgICAgICAgIG9mZnNldG9mKHN0cnVjdCB4 c3BsaWNlX3BhdGNoX2Z1bmMsIG5ld19hZGRyKTsKKwkJCSAgICAgICAgICAgICAgIG9mZnNldG9m KHN0cnVjdCBsaXZlcGF0Y2hfcGF0Y2hfZnVuYywgbmV3X2FkZHIpOwogCiAJCQkvKgogCQkJICog QWRkIGEgcmVsb2NhdGlvbiB0aGF0IHdpbGwgcG9wdWxhdGUKQEAgLTE3MjQsNyArMTcyNCw3IEBA IHN0YXRpYyB2b2lkIHhzcGxpY2VfY3JlYXRlX3BhdGNoZXNfc2VjdGlvbnMoc3RydWN0IGtwYXRj aF9lbGYgKmtlbGYsCiAJCQlyZWxhLT50eXBlID0gUl9YODZfNjRfNjQ7CiAJCQlyZWxhLT5hZGRl bmQgPSBvZmZzZXRfb2Zfc3RyaW5nKCZrZWxmLT5zdHJpbmdzLCBmdW5jbmFtZSk7CiAJCQlyZWxh LT5vZmZzZXQgPSBpbmRleCAqIHNpemVvZigqZnVuY3MpICsKLQkJCSAgICAgICAgICAgICAgIG9m ZnNldG9mKHN0cnVjdCB4c3BsaWNlX3BhdGNoX2Z1bmMsIG5hbWUpOworCQkJICAgICAgICAgICAg ICAgb2Zmc2V0b2Yoc3RydWN0IGxpdmVwYXRjaF9wYXRjaF9mdW5jLCBuYW1lKTsKIAogCQkJaW5k ZXgrKzsKIAkJfQpAQCAtMTk2NSwxMiArMTk2NSwxMiBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hh ciAqYXJndltdKQogCWxvZ19kZWJ1ZygiQ3JlYXRlIHN0cmluZ3MgZWxlbWVudHNcbiIpOwogCWtw YXRjaF9jcmVhdGVfc3RyaW5nc19lbGVtZW50cyhrZWxmX291dCk7CiAJbG9nX2RlYnVnKCJDcmVh dGUgcGF0Y2hlcyBzZWN0aW9uc1xuIik7Ci0JeHNwbGljZV9jcmVhdGVfcGF0Y2hlc19zZWN0aW9u cyhrZWxmX291dCwgbG9va3VwLCBoaW50LAorCWxpdmVwYXRjaF9jcmVhdGVfcGF0Y2hlc19zZWN0 aW9ucyhrZWxmX291dCwgbG9va3VwLCBoaW50LAogCQkJICAgICAgICAgICAgICAgIGFyZ3VtZW50 cy5yZXNvbHZlKTsKIAlrcGF0Y2hfYnVpbGRfc3RyaW5nc19zZWN0aW9uX2RhdGEoa2VsZl9vdXQp OwogCiAJbG9nX2RlYnVnKCJSZW5hbWUgbG9jYWwgc3ltYm9sc1xuIik7Ci0JeHNwbGljZV9yZW5h bWVfbG9jYWxfc3ltYm9scyhrZWxmX291dCwgaGludCk7CisJbGl2ZXBhdGNoX3JlbmFtZV9sb2Nh bF9zeW1ib2xzKGtlbGZfb3V0LCBoaW50KTsKIAogCS8qCiAJICogIEF0IHRoaXMgcG9pbnQsIHRo ZSBzZXQgb2Ygb3V0cHV0IHNlY3Rpb25zIGFuZCBzeW1ib2xzIGlzCmRpZmYgLS1naXQgYS94c3Bs aWNlLWJ1aWxkIGIvbGl2ZXBhdGNoLWJ1aWxkCnNpbWlsYXJpdHkgaW5kZXggOTAlCnJlbmFtZSBm cm9tIHhzcGxpY2UtYnVpbGQKcmVuYW1lIHRvIGxpdmVwYXRjaC1idWlsZAppbmRleCA1ODUyMTg2 Li5hNDllMGQ0IDEwMDc1NQotLS0gYS94c3BsaWNlLWJ1aWxkCisrKyBiL2xpdmVwYXRjaC1idWls ZApAQCAtMSw2ICsxLDYgQEAKICMhL2Jpbi9iYXNoCiAjCi0jIHhzcGxpY2UgYnVpbGQgc2NyaXB0 CisjIGxpdmVwYXRjaCBidWlsZCBzY3JpcHQKICMKICMgQ29weXJpZ2h0IChDKSAyMDE0IFNldGgg SmVubmluZ3MgPHNqZW5uaW5nQHJlZGhhdC5jb20+CiAjIENvcHlyaWdodCAoQykgMjAxMywyMDE0 IEpvc2ggUG9pbWJvZXVmIDxqcG9pbWJvZUByZWRoYXQuY29tPgpAQCAtMTksNyArMTksNyBAQAog IyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJs aWMgTGljZW5zZQogIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRw Oi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KICMKLSMgVGhpcyBzY3JpcHQgdGFrZXMgYSBYZW4g dHJlZSwgYW5kIGEgcGF0Y2ggYW5kIG91dHB1dHMgYW4geHNwbGljZQorIyBUaGlzIHNjcmlwdCB0 YWtlcyBhIFhlbiB0cmVlLCBhbmQgYSBwYXRjaCBhbmQgb3V0cHV0cyBhbiBsaXZlcGF0Y2gKICMg bW9kdWxlIGludGVuZGVkIHRvIHBhdGNoIFhlbiBhdCBydW50aW1lLgogIyBMYXJnZSBhbW91bnRz IG9mIHRoaXMgc2NyaXB0IGFyZSB0YWtlbiBmcm9tIGtwYXRjaCdzIGtwYXRjaC1idWlsZAogIyBz Y3JpcHQuCkBAIC0zOSw3ICszOSw3IEBAIHdhcm4oKSB7CiAKIGRpZSgpIHsKICAgICBpZiBbWyAt eiAkMSBdXTsgdGhlbgotICAgICAgICBtc2c9InhTcGxpY2UgYnVpbGQgZmFpbGVkIgorICAgICAg ICBtc2c9IkxpdmVQYXRjaCBidWlsZCBmYWlsZWQiCiAgICAgZWxzZQogICAgICAgICBtc2c9IiQx IgogICAgIGZpCkBAIC03OCwxMCArNzgsMTAgQEAgZnVuY3Rpb24gYnVpbGRfc3BlY2lhbCgpCiAg ICAgY2QgIiR7U1JDRElSfSIgfHwgZGllCiAKICAgICAjIENhcHR1cmUgLm8gZmlsZXMgZnJvbSB0 aGUgcGF0Y2hlZCBidWlsZAotICAgIGV4cG9ydCBDUk9TU19DT01QSUxFPSIke1NDUklQVERJUn0v eHNwbGljZS1nY2MgIgotICAgIGV4cG9ydCBYU1BMSUNFX0JVSUxEX0RJUj0iJChwd2QpLyIKLSAg ICBleHBvcnQgWFNQTElDRV9DQVBUVVJFX0RJUj0iJE9VVFBVVC8ke25hbWV9IgotICAgIG1rZGly IC1wICIkWFNQTElDRV9DQVBUVVJFX0RJUiIKKyAgICBleHBvcnQgQ1JPU1NfQ09NUElMRT0iJHtT Q1JJUFRESVJ9L2xpdmVwYXRjaC1nY2MgIgorICAgIGV4cG9ydCBMSVZFUEFUQ0hfQlVJTERfRElS PSIkKHB3ZCkvIgorICAgIGV4cG9ydCBMSVZFUEFUQ0hfQ0FQVFVSRV9ESVI9IiRPVVRQVVQvJHtu YW1lfSIKKyAgICBta2RpciAtcCAiJExJVkVQQVRDSF9DQVBUVVJFX0RJUiIKIAogICAgICMgQnVp bGQgd2l0aCBzcGVjaWFsIEdDQyBmbGFncwogICAgIGNkICIke1NSQ0RJUn0veGVuIiB8fCBkaWUK QEAgLTg5LDggKzg5LDggQEAgZnVuY3Rpb24gYnVpbGRfc3BlY2lhbCgpCiAgICAgbWFrZSAiLWok Q1BVUyIgZGVidWc9IiRYRU5fREVCVUciICY+ICIke09VVFBVVH0vYnVpbGRfJHtuYW1lfV9jb21w aWxlLmxvZyIgfHwgZGllCiAgICAgc2VkIC1pICdzL0NGTEFHUyArPSAtbm9zdGRpbmMgLWZmdW5j dGlvbi1zZWN0aW9ucyAtZmRhdGEtc2VjdGlvbnMvQ0ZMQUdTICs9IC1ub3N0ZGluYy8nIFJ1bGVz Lm1rCiAKLSAgICB1bnNldCBYU1BMSUNFX0JVSUxEX0RJUgotICAgIHVuc2V0IFhTUExJQ0VfQ0FQ VFVSRV9ESVIKKyAgICB1bnNldCBMSVZFUEFUQ0hfQlVJTERfRElSCisgICAgdW5zZXQgTElWRVBB VENIX0NBUFRVUkVfRElSCiB9CiAKIGZ1bmN0aW9uIGNyZWF0ZV9wYXRjaCgpCkBAIC0xNDIsMTUg KzE0MiwxNSBAQCBmdW5jdGlvbiBjcmVhdGVfcGF0Y2goKQogCiAgICAgZWNobyAiQ3JlYXRpbmcg cGF0Y2ggbW9kdWxlLi4uIgogICAgIGlmIFsgLXogIiRQUkVMSU5LIiBdOyB0aGVuCi0gICAgICAg IGxkIC1yIC1vICIke1BBVENITkFNRX0ueHNwbGljZSIgLS1idWlsZC1pZD1zaGExICQoZmluZCBv dXRwdXQgLXR5cGUgZiAtbmFtZSAiKi5vIikgfHwgZGllCi0gICAgICAgIGNobW9kICt4ICIke1BB VENITkFNRX0ueHNwbGljZSIKKyAgICAgICAgbGQgLXIgLW8gIiR7UEFUQ0hOQU1FfS5saXZlcGF0 Y2giIC0tYnVpbGQtaWQ9c2hhMSAkKGZpbmQgb3V0cHV0IC10eXBlIGYgLW5hbWUgIioubyIpIHx8 IGRpZQorICAgICAgICBjaG1vZCAreCAiJHtQQVRDSE5BTUV9LmxpdmVwYXRjaCIKICAgICBlbHNl CiAgICAgICAgIGxkIC1yIC1vIG91dHB1dC5vIC0tYnVpbGQtaWQ9c2hhMSAkKGZpbmQgb3V0cHV0 IC10eXBlIGYgLW5hbWUgIioubyIpIHx8IGRpZQotICAgICAgICAiJHtTQ1JJUFRESVJ9Ii9wcmVs aW5rICRkZWJ1Z29wdCBvdXRwdXQubyAiJHtQQVRDSE5BTUV9LnhzcGxpY2UiICIkWEVOU1lNUyIg Jj4+ICIke09VVFBVVH0vcHJlbGluay5sb2ciIHx8IGRpZQorICAgICAgICAiJHtTQ1JJUFRESVJ9 Ii9wcmVsaW5rICRkZWJ1Z29wdCBvdXRwdXQubyAiJHtQQVRDSE5BTUV9LmxpdmVwYXRjaCIgIiRY RU5TWU1TIiAmPj4gIiR7T1VUUFVUfS9wcmVsaW5rLmxvZyIgfHwgZGllCiAgICAgZmkKIAotICAg IG9iamNvcHkgLS1hZGQtc2VjdGlvbiAueHNwbGljZS5kZXBlbmRzPWRlcGVuZHMuYmluICIke1BB VENITkFNRX0ueHNwbGljZSIKLSAgICBvYmpjb3B5IC0tc2V0LXNlY3Rpb24tZmxhZ3MgLnhzcGxp Y2UuZGVwZW5kcz1hbGxvYyxyZWFkb25seSAiJHtQQVRDSE5BTUV9LnhzcGxpY2UiCisgICAgb2Jq Y29weSAtLWFkZC1zZWN0aW9uIC5saXZlcGF0Y2guZGVwZW5kcz1kZXBlbmRzLmJpbiAiJHtQQVRD SE5BTUV9LmxpdmVwYXRjaCIKKyAgICBvYmpjb3B5IC0tc2V0LXNlY3Rpb24tZmxhZ3MgLmxpdmVw YXRjaC5kZXBlbmRzPWFsbG9jLHJlYWRvbmx5ICIke1BBVENITkFNRX0ubGl2ZXBhdGNoIgogfQog CiB1c2FnZSgpIHsKQEAgLTI0Nyw3ICsyNDcsNyBAQCBPVVRQVVQ9IiQocmVhZGxpbmsgLW0gLS0g IiRvdXRwdXRhcmciKSIKIAogUEFUQ0hOQU1FPSQobWFrZV9wYXRjaF9uYW1lICIke1BBVENIRklM RX0iKQogCi1lY2hvICJCdWlsZGluZyB4U3BsaWNlIHBhdGNoOiAke1BBVENITkFNRX0iCitlY2hv ICJCdWlsZGluZyBMaXZlUGF0Y2ggcGF0Y2g6ICR7UEFUQ0hOQU1FfSIKIGVjaG8KIGVjaG8gIlhl biBkaXJlY3Rvcnk6ICR7U1JDRElSfSIKIGVjaG8gIlBhdGNoIGZpbGU6ICR7UEFUQ0hGSUxFfSIK QEAgLTI4Miw1ICsyODIsNSBAQCBpZiBbICIke1NLSVB9IiAhPSAiZGlmZiIgXTsgdGhlbgogCiAg ICAgY2QgIiR7T1VUUFVUfSIgfHwgZGllCiAgICAgY3JlYXRlX3BhdGNoCi0gICAgZWNobyAiJHtQ QVRDSE5BTUV9LnhzcGxpY2UgY3JlYXRlZCBzdWNjZXNzZnVsbHkiCisgICAgZWNobyAiJHtQQVRD SE5BTUV9LmxpdmVwYXRjaCBjcmVhdGVkIHN1Y2Nlc3NmdWxseSIKIGZpCmRpZmYgLS1naXQgYS94 c3BsaWNlLWdjYyBiL2xpdmVwYXRjaC1nY2MKc2ltaWxhcml0eSBpbmRleCA4MCUKcmVuYW1lIGZy b20geHNwbGljZS1nY2MKcmVuYW1lIHRvIGxpdmVwYXRjaC1nY2MKaW5kZXggOGI2M2U1MC4uNjM0 MTU3YSAxMDA3NTUKLS0tIGEveHNwbGljZS1nY2MKKysrIGIvbGl2ZXBhdGNoLWdjYwpAQCAtMSw2 ICsxLDYgQEAKICMhL2Jpbi9iYXNoCiAjCi0jIHhzcGxpY2UgYnVpbGQgc2NyaXB0CisjIGxpdmVw YXRjaCBidWlsZCBzY3JpcHQKICMKICMgQ29weXJpZ2h0IChDKSAyMDE1IFJvc3MgTGFnZXJ3YWxs IDxyb3NzLmxhZ2Vyd2FsbEBjaXRyaXguY29tPgogIwpAQCAtMzksOSArMzksOSBAQCBpZiBbWyAi JFRPT0xDSEFJTkNNRCIgPSAiZ2NjIiBdXSA7IHRoZW4KICAgICAgICAgICAgICAgICA7OwogICAg ICAgICAgICAgKi5vKQogICAgICAgICAgICAgICAgIHBhdGg9IiQocHdkKS8kKGRpcm5hbWUgJG9i aikiCi0gICAgICAgICAgICAgICAgZGlyPSIke3BhdGgjJFhTUExJQ0VfQlVJTERfRElSfSIKLSAg ICAgICAgICAgICAgICBpZiBbIC1uICIkWFNQTElDRV9DQVBUVVJFX0RJUiIgLWEgLWQgIiRYU1BM SUNFX0NBUFRVUkVfRElSIiBdOyB0aGVuCi0gICAgICAgICAgICAgICAgICAgIGVjaG8gIiRkaXIv JG9iaiIgPj4gIiR7WFNQTElDRV9DQVBUVVJFX0RJUn0vY2hhbmdlZF9vYmpzIgorICAgICAgICAg ICAgICAgIGRpcj0iJHtwYXRoIyRMSVZFUEFUQ0hfQlVJTERfRElSfSIKKyAgICAgICAgICAgICAg ICBpZiBbIC1uICIkTElWRVBBVENIX0NBUFRVUkVfRElSIiAtYSAtZCAiJExJVkVQQVRDSF9DQVBU VVJFX0RJUiIgXTsgdGhlbgorICAgICAgICAgICAgICAgICAgICBlY2hvICIkZGlyLyRvYmoiID4+ ICIke0xJVkVQQVRDSF9DQVBUVVJFX0RJUn0vY2hhbmdlZF9vYmpzIgogICAgICAgICAgICAgICAg ICAgICBrZWVwPXllcwogICAgICAgICAgICAgICAgIGZpCiAgICAgICAgICAgICAgICAgYnJlYWsK QEAgLTU5LDggKzU5LDggQEAgZmkKIHJldD0iJD8iCiAKIGlmIFtbICIka2VlcCIgPSAieWVzIiBd XSA7IHRoZW4KLSAgICBta2RpciAtcCAiJChkaXJuYW1lICRYU1BMSUNFX0NBUFRVUkVfRElSLyRk aXIvJG9iaikiCi0gICAgY3AgIiRvYmoiICIkWFNQTElDRV9DQVBUVVJFX0RJUi8kZGlyLyRvYmoi CisgICAgbWtkaXIgLXAgIiQoZGlybmFtZSAkTElWRVBBVENIX0NBUFRVUkVfRElSLyRkaXIvJG9i aikiCisgICAgY3AgIiRvYmoiICIkTElWRVBBVENIX0NBUFRVUkVfRElSLyRkaXIvJG9iaiIKIGZp CiAKIGV4aXQgIiRyZXQiCmRpZmYgLS1naXQgYS9wcmVsaW5rLmMgYi9wcmVsaW5rLmMKaW5kZXgg NmI5MjljMy4uMjAzOWU1YiAxMDA2NDQKLS0tIGEvcHJlbGluay5jCisrKyBiL3ByZWxpbmsuYwpA QCAtNDAsNyArNDAsNyBAQCBjaGFyICpjaGlsZG9iajsKIGVudW0gbG9nbGV2ZWwgbG9nbGV2ZWwg PSBOT1JNQUw7CiAKIC8qIFJlc29sdmUgc3ltYm9scyB1c2luZyB4ZW4tc3ltcyAqLwotdm9pZCB4 c3BsaWNlX3Jlc29sdmVfc3ltYm9scyhzdHJ1Y3Qga3BhdGNoX2VsZiAqa2VsZiwKK3ZvaWQgbGl2 ZXBhdGNoX3Jlc29sdmVfc3ltYm9scyhzdHJ1Y3Qga3BhdGNoX2VsZiAqa2VsZiwKIAkJCSAgICAg c3RydWN0IGxvb2t1cF90YWJsZSAqdGFibGUpCiB7CiAJc3RydWN0IHN5bWJvbCAqc3ltOwpAQCAt MTU3LDcgKzE1Nyw3IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAJbG9va3Vw ID0gbG9va3VwX29wZW4oYXJndW1lbnRzLmFyZ3NbMl0pOwogCiAJbG9nX2RlYnVnKCJSZXNvbHZl IHN5bWJvbHNcbiIpOwotCXhzcGxpY2VfcmVzb2x2ZV9zeW1ib2xzKGtlbGYsIGxvb2t1cCk7CisJ bGl2ZXBhdGNoX3Jlc29sdmVfc3ltYm9scyhrZWxmLCBsb29rdXApOwogCiAJLyoKIAkgKiBVcGRh dGUgcmVsYSBzZWN0aW9uIGhlYWRlcnMgYW5kIHJlYnVpbGQgdGhlIHJlbGEgc2VjdGlvbiBkYXRh Ci0tIAoyLjUuNQoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cDov L2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==