From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id D74D4C32750 for ; Fri, 2 Aug 2019 15:57:59 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 9CBF620B7C for ; Fri, 2 Aug 2019 15:57:59 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9CBF620B7C Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=citrix.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1htZw8-0005lY-MX; Fri, 02 Aug 2019 15:57:44 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1htZw7-0005lT-Mk for xen-devel@lists.xenproject.org; Fri, 02 Aug 2019 15:57:43 +0000 X-Inumbo-ID: 41901864-b53e-11e9-a0ec-5f7986644955 Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id 41901864-b53e-11e9-a0ec-5f7986644955; Fri, 02 Aug 2019 15:57:40 +0000 (UTC) Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none; spf=None smtp.pra=anthony.perard@citrix.com; spf=Pass smtp.mailfrom=anthony.perard@citrix.com; spf=None smtp.helo=postmaster@mail.citrix.com Received-SPF: None (esa5.hc3370-68.iphmx.com: no sender authenticity information available from domain of anthony.perard@citrix.com) identity=pra; client-ip=162.221.158.21; receiver=esa5.hc3370-68.iphmx.com; envelope-from="anthony.perard@citrix.com"; x-sender="anthony.perard@citrix.com"; x-conformance=sidf_compatible Received-SPF: Pass (esa5.hc3370-68.iphmx.com: domain of anthony.perard@citrix.com designates 162.221.158.21 as permitted sender) identity=mailfrom; client-ip=162.221.158.21; receiver=esa5.hc3370-68.iphmx.com; envelope-from="anthony.perard@citrix.com"; x-sender="anthony.perard@citrix.com"; x-conformance=sidf_compatible; x-record-type="v=spf1"; x-record-text="v=spf1 ip4:209.167.231.154 ip4:178.63.86.133 ip4:195.66.111.40/30 ip4:85.115.9.32/28 ip4:199.102.83.4 ip4:192.28.146.160 ip4:192.28.146.107 ip4:216.52.6.88 ip4:216.52.6.188 ip4:162.221.158.21 ip4:162.221.156.83 ~all" Received-SPF: None (esa5.hc3370-68.iphmx.com: no sender authenticity information available from domain of postmaster@mail.citrix.com) identity=helo; client-ip=162.221.158.21; receiver=esa5.hc3370-68.iphmx.com; envelope-from="anthony.perard@citrix.com"; x-sender="postmaster@mail.citrix.com"; x-conformance=sidf_compatible IronPort-SDR: y3W7NMF+KWLERxRDL3PmPmo5OWlijjhHKY1LRJxtxtKonnU1JVAu3HdHrbj36KlCY5e7sDHUY+ mFAjN0z/JdI5f5oqjz7moFvqZ+L1yaqxnJa+KBGVjV+5IB8Vgk8az5kZE+EMUrhftOGm8WoToP dVlT8x+N40IHOFATNWXLNaS3+hSdKjVJ1VAYsWh1taRnfTGV7Y72t0FcoxlTupSjgStZ+HLnfq Pww/5BT7r4vFkVmrgEYMo7ThboPU5FGwWVUdYCeL4+tmQtG5FjMkCsBD1dJR7gqcoD83W0tEg2 mv0= X-SBRS: 2.7 X-MesageID: 3911343 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.158.21 X-Policy: $RELAYED X-IronPort-AV: E=Sophos;i="5.64,338,1559534400"; d="scan'208";a="3911343" From: Anthony PERARD To: Date: Fri, 2 Aug 2019 16:36:05 +0100 Message-ID: <20190802153606.32061-35-anthony.perard@citrix.com> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20190802153606.32061-1-anthony.perard@citrix.com> References: <20190802153606.32061-1-anthony.perard@citrix.com> MIME-Version: 1.0 Subject: [Xen-devel] [PATCH 34/35] libxl: libxl_retrieve_domain_configuration now uses ev_qmp X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Anthony PERARD , Ian Jackson , Wei Liu Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" VGhpcyB3YXMgdGhlIGxhc3QgdXNlciBvZiBsaWJ4bF9fcW1wX3F1ZXJ5X2NwdXMgd2hpY2ggY2Fu IG5vdyBiZQpyZW1vdmVkLgoKU2lnbmVkLW9mZi1ieTogQW50aG9ueSBQRVJBUkQgPGFudGhvbnku cGVyYXJkQGNpdHJpeC5jb20+Ci0tLQogdG9vbHMvbGlieGwvbGlieGxfZG9tYWluLmMgICB8IDE2 MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLQogdG9vbHMvbGlieGwvbGlieGxf aW50ZXJuYWwuaCB8ICAgMyAtCiB0b29scy9saWJ4bC9saWJ4bF9xbXAuYyAgICAgIHwgIDM4IC0t LS0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDEzMSBpbnNlcnRpb25zKCspLCA3MyBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9saWJ4bF9kb21haW4uYyBiL3Rvb2xzL2xpYnhs L2xpYnhsX2RvbWFpbi5jCmluZGV4IGI5N2U4NzRhOWMuLjZhOGZmZTEwZjAgMTAwNjQ0Ci0tLSBh L3Rvb2xzL2xpYnhsL2xpYnhsX2RvbWFpbi5jCisrKyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2RvbWFp bi5jCkBAIC0xODAwLDI3ICsxODAwLDYgQEAgdWludDMyX3QgbGlieGxfdm1fZ2V0X3N0YXJ0X3Rp bWUobGlieGxfY3R4ICpjdHgsIHVpbnQzMl90IGRvbWlkKQogICAgIHJldHVybiByZXQ7CiB9CiAK LS8qIEZvciBRRU1VIHVwc3RyZWFtIHdlIGFsd2F5cyBuZWVkIHRvIHByb3ZpZGUgdGhlIG51bWJl ciBvZiBjcHVzIHByZXNlbnQgdG8KLSAqIFFFTVUgd2hldGhlciB0aGV5IGFyZSBvbmxpbmUgb3Ig bm90OyBvdGhlcndpc2UgUUVNVSB3b24ndCBhY2NlcHQgdGhlIHNhdmVkCi0gKiBzdGF0ZS4gU2Vl IGltcGxlbWVudGF0aW9uIG9mIGxpYnhsX19xbXBfcXVlcnlfY3B1cy4KLSAqLwotc3RhdGljIGlu dCBsaWJ4bF9fdXBkYXRlX2F2YWlsX3ZjcHVzX3FtcChsaWJ4bF9fZ2MgKmdjLCB1aW50MzJfdCBk b21pZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg aW50IG1heF92Y3B1cywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg bGlieGxfYml0bWFwICptYXApCi17Ci0gICAgaW50IHJjOwotCi0gICAgcmMgPSBsaWJ4bF9fcW1w X3F1ZXJ5X2NwdXMoZ2MsIGRvbWlkLCBtYXApOwotICAgIGlmIChyYykgewotICAgICAgICBMT0dE KEVSUk9SLCBkb21pZCwgIkZhaWwgdG8gZ2V0IG51bWJlciBvZiBjcHVzIik7Ci0gICAgICAgIGdv dG8gb3V0OwotICAgIH0KLQotICAgIHJjID0gMDsKLW91dDoKLSAgICByZXR1cm4gcmM7Ci19Ci0K IHN0YXRpYyBpbnQgbGlieGxfX3VwZGF0ZV9hdmFpbF92Y3B1c194ZW5zdG9yZShsaWJ4bF9fZ2Mg KmdjLCB1aW50MzJfdCBkb21pZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB1bnNpZ25lZCBpbnQgbWF4X3ZjcHVzLAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX2JpdG1hcCAqbWFwKQpAQCAtMTg0OSwxMyAr MTgyOCw2MSBAQCBzdGF0aWMgaW50IGxpYnhsX191cGRhdGVfYXZhaWxfdmNwdXNfeGVuc3RvcmUo bGlieGxfX2djICpnYywgdWludDMyX3QgZG9taWQsCiAgICAgcmV0dXJuIHJjOwogfQogCit0eXBl ZGVmIHN0cnVjdCB7CisgICAgbGlieGxfX2V2X3FtcCBxbXA7CisgICAgbGlieGxfX2V2X3RpbWUg dGltZW91dDsKKyAgICBsaWJ4bF9kb21haW5fY29uZmlnICpkX2NvbmZpZzsgLyogdXNlciBwb2lu dGVyICovCisgICAgbGlieGxfX2V2X2xvY2sgZXZfbG9jazsKKyAgICBsaWJ4bF9iaXRtYXAgcWVt dXVfY3B1czsKK30gcmV0cmlldmVfZG9tYWluX2NvbmZpZ3VyYXRpb25fc3RhdGU7CisKK3N0YXRp YyB2b2lkIHJldHJpZXZlX2RvbWFpbl9jb25maWd1cmF0aW9uX2xvY2tfYWNxdWlyZWQoCisgICAg bGlieGxfX2VnYyAqZWdjLCBsaWJ4bF9fZXZfbG9jayAqLCBpbnQgcmMpOworc3RhdGljIHZvaWQg cmV0cmlldmVfZG9tYWluX2NvbmZpZ3VyYXRpb25fY3B1X3F1ZXJpZWQoCisgICAgbGlieGxfX2Vn YyAqZWdjLCBsaWJ4bF9fZXZfcW1wICpxbXAsCisgICAgY29uc3QgbGlieGxfX2pzb25fb2JqZWN0 ICpyZXNwb25zZSwgaW50IHJjKTsKK3N0YXRpYyB2b2lkIHJldHJpZXZlX2RvbWFpbl9jb25maWd1 cmF0aW9uX3RpbWVvdXQobGlieGxfX2VnYyAqZWdjLAorICAgIGxpYnhsX19ldl90aW1lICpldiwg Y29uc3Qgc3RydWN0IHRpbWV2YWwgKnJlcXVlc3RlZF9hYnMsIGludCByYyk7CitzdGF0aWMgdm9p ZCByZXRyaWV2ZV9kb21haW5fY29uZmlndXJhdGlvbl9lbmQobGlieGxfX2VnYyAqZWdjLAorICAg IHJldHJpZXZlX2RvbWFpbl9jb25maWd1cmF0aW9uX3N0YXRlICpyZGNzLCBpbnQgcmMpOworCiBp bnQgbGlieGxfcmV0cmlldmVfZG9tYWluX2NvbmZpZ3VyYXRpb24obGlieGxfY3R4ICpjdHgsIHVp bnQzMl90IGRvbWlkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxp YnhsX2RvbWFpbl9jb25maWcgKmRfY29uZmlnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGNvbnN0IGxpYnhsX2FzeW5jb3BfaG93ICphb19ob3cpCiB7CiAgICAgQU9f Q1JFQVRFKGN0eCwgZG9taWQsIGFvX2hvdyk7Ci0gICAgaW50IHJjOworICAgIHJldHJpZXZlX2Rv bWFpbl9jb25maWd1cmF0aW9uX3N0YXRlICpyZGNzOworCisgICAgR0NORVcocmRjcyk7CisgICAg bGlieGxfX2V2X3FtcF9pbml0KCZyZGNzLT5xbXApOworICAgIHJkY3MtPnFtcC5hbyA9IGFvOwor ICAgIHJkY3MtPnFtcC5kb21pZCA9IGRvbWlkOworICAgIHJkY3MtPnFtcC5wYXlsb2FkX2ZkID0g LTE7CisgICAgbGlieGxfX2V2X3RpbWVfaW5pdCgmcmRjcy0+dGltZW91dCk7CisgICAgcmRjcy0+ ZF9jb25maWcgPSBkX2NvbmZpZzsKKyAgICBsaWJ4bF9iaXRtYXBfaW5pdCgmcmRjcy0+cWVtdXVf Y3B1cyk7CisgICAgbGlieGxfX2V2X2xvY2tfaW5pdCgmcmRjcy0+ZXZfbG9jayk7CisgICAgcmRj cy0+ZXZfbG9jay5hbyA9IGFvOworICAgIHJkY3MtPmV2X2xvY2suZG9taWQgPSBkb21pZDsKKyAg ICByZGNzLT5ldl9sb2NrLmNhbGxiYWNrID0gcmV0cmlldmVfZG9tYWluX2NvbmZpZ3VyYXRpb25f bG9ja19hY3F1aXJlZDsKKyAgICBsaWJ4bF9fZXZfbG9ja19nZXQoZWdjLCAmcmRjcy0+ZXZfbG9j ayk7CisgICAgcmV0dXJuIEFPX0lOUFJPR1JFU1M7Cit9CisKK3N0YXRpYyB2b2lkIHJldHJpZXZl X2RvbWFpbl9jb25maWd1cmF0aW9uX2xvY2tfYWNxdWlyZWQoCisgICAgbGlieGxfX2VnYyAqZWdj LCBsaWJ4bF9fZXZfbG9jayAqZXZfbG9jaywgaW50IHJjKQoreworICAgIHJldHJpZXZlX2RvbWFp bl9jb25maWd1cmF0aW9uX3N0YXRlICpyZGNzID0KKyAgICAgICAgQ09OVEFJTkVSX09GKGV2X2xv Y2ssICpyZGNzLCBldl9sb2NrKTsKKyAgICBTVEFURV9BT19HQyhyZGNzLT5xbXAuYW8pOwogICAg IGxpYnhsX19kb21haW5fdXNlcmRhdGFfbG9jayAqbG9jayA9IE5VTEw7CisgICAgYm9vbCBoYXNf Y2FsbGJhY2sgPSBmYWxzZTsKKworICAgIC8qIENvbnZlbmllbmNlIGFsaWFzZXMgKi8KKyAgICBs aWJ4bF9kb21pZCBkb21pZCA9IHJkY3MtPnFtcC5kb21pZDsKKyAgICBsaWJ4bF9kb21haW5fY29u ZmlnICpjb25zdCBkX2NvbmZpZyA9IHJkY3MtPmRfY29uZmlnOworCisgICAgaWYgKHJjKSBnb3Rv IG91dDsKIAogICAgIGxvY2sgPSBsaWJ4bF9fbG9ja19kb21haW5fdXNlcmRhdGEoZ2MsIGRvbWlk KTsKICAgICBpZiAoIWxvY2spIHsKQEAgLTE4NzAsMTAgKzE4OTcsODEgQEAgaW50IGxpYnhsX3Jl dHJpZXZlX2RvbWFpbl9jb25maWd1cmF0aW9uKGxpYnhsX2N0eCAqY3R4LCB1aW50MzJfdCBkb21p ZCwKICAgICAgICAgZ290byBvdXQ7CiAgICAgfQogCisgICAgbGlieGxfX3VubG9ja19kb21haW5f dXNlcmRhdGEobG9jayk7CisgICAgbG9jayA9IE5VTEw7CisKKyAgICAvKiBXZSBzdGFydCBieSBx dWVyeWluZyBRRU1VLCBpZiBpdCBpcyBydW5uaW5nLCBmb3IgaXRzIGNwdW1hcCBhcyB0aGlzCisg ICAgICogaXMgYSBsb25nIG9wZXJhdGlvbi4gKi8KKyAgICBpZiAoZF9jb25maWctPmJfaW5mby50 eXBlID09IExJQlhMX0RPTUFJTl9UWVBFX0hWTSAmJgorICAgICAgICBsaWJ4bF9fZGV2aWNlX21v ZGVsX3ZlcnNpb25fcnVubmluZyhnYywgZG9taWQpID09CisgICAgICAgICAgICBMSUJYTF9ERVZJ Q0VfTU9ERUxfVkVSU0lPTl9RRU1VX1hFTikgeworICAgICAgICAvKiBGb3IgUUVNVSB1cHN0cmVh bSB3ZSBhbHdheXMgbmVlZCB0byBwcm92aWRlIHRoZSBudW1iZXIKKyAgICAgICAgICogb2YgY3B1 cyBwcmVzZW50IHRvIFFFTVUgd2hldGhlciB0aGV5IGFyZSBvbmxpbmUgb3Igbm90OworICAgICAg ICAgKiBvdGhlcndpc2UgUUVNVSB3b24ndCBhY2NlcHQgdGhlIHNhdmVkIHN0YXRlLgorICAgICAg ICAgKi8KKyAgICAgICAgcmMgPSBsaWJ4bF9fZXZfdGltZV9yZWdpc3Rlcl9yZWwoYW8sICZyZGNz LT50aW1lb3V0LAorICAgICAgICAgICAgcmV0cmlldmVfZG9tYWluX2NvbmZpZ3VyYXRpb25fdGlt ZW91dCwKKyAgICAgICAgICAgIExJQlhMX1FNUF9DTURfVElNRU9VVCAqIDEwMDApOworICAgICAg ICBpZiAocmMpIGdvdG8gb3V0OworICAgICAgICBsaWJ4bF9iaXRtYXBfYWxsb2MoQ1RYLCAmcmRj cy0+cWVtdXVfY3B1cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGRfY29uZmlnLT5iX2lu Zm8ubWF4X3ZjcHVzKTsKKyAgICAgICAgcmRjcy0+cW1wLmNhbGxiYWNrID0gcmV0cmlldmVfZG9t YWluX2NvbmZpZ3VyYXRpb25fY3B1X3F1ZXJpZWQ7CisgICAgICAgIHJjID0gbGlieGxfX2V2X3Ft cF9zZW5kKGdjLCAmcmRjcy0+cW1wLCAicXVlcnktY3B1cyIsIE5VTEwpOworICAgICAgICBpZiAo cmMpIGdvdG8gb3V0OworICAgICAgICBoYXNfY2FsbGJhY2sgPSB0cnVlOworICAgIH0KKworb3V0 OgorICAgIGlmIChsb2NrKSBsaWJ4bF9fdW5sb2NrX2RvbWFpbl91c2VyZGF0YShsb2NrKTsKKyAg ICBpZiAoIWhhc19jYWxsYmFjaykKKyAgICAgICAgcmV0cmlldmVfZG9tYWluX2NvbmZpZ3VyYXRp b25fZW5kKGVnYywgcmRjcywgcmMpOworfQorCitzdGF0aWMgdm9pZCByZXRyaWV2ZV9kb21haW5f Y29uZmlndXJhdGlvbl9jcHVfcXVlcmllZCgKKyAgICBsaWJ4bF9fZWdjICplZ2MsIGxpYnhsX19l dl9xbXAgKnFtcCwKKyAgICBjb25zdCBsaWJ4bF9fanNvbl9vYmplY3QgKnJlc3BvbnNlLCBpbnQg cmMpCit7CisgICAgRUdDX0dDOworICAgIHJldHJpZXZlX2RvbWFpbl9jb25maWd1cmF0aW9uX3N0 YXRlICpyZGNzID0KKyAgICAgICAgQ09OVEFJTkVSX09GKHFtcCwgKnJkY3MsIHFtcCk7CisKKyAg ICBpZiAocmMpIGdvdG8gb3V0OworCisgICAgcmMgPSBxbXBfcGFyc2VfcXVlcnlfY3B1cyhnYywg cW1wLT5kb21pZCwgcmVzcG9uc2UsICZyZGNzLT5xZW11dV9jcHVzKTsKKworb3V0OgorICAgIHJl dHJpZXZlX2RvbWFpbl9jb25maWd1cmF0aW9uX2VuZChlZ2MsIHJkY3MsIHJjKTsKK30KKworc3Rh dGljIHZvaWQgcmV0cmlldmVfZG9tYWluX2NvbmZpZ3VyYXRpb25fdGltZW91dChsaWJ4bF9fZWdj ICplZ2MsCisgICAgbGlieGxfX2V2X3RpbWUgKmV2LCBjb25zdCBzdHJ1Y3QgdGltZXZhbCAqcmVx dWVzdGVkX2FicywgaW50IHJjKQoreworICAgIHJldHJpZXZlX2RvbWFpbl9jb25maWd1cmF0aW9u X3N0YXRlICpyZGNzID0KKyAgICAgICAgQ09OVEFJTkVSX09GKGV2LCAqcmRjcywgdGltZW91dCk7 CisKKyAgICByZXRyaWV2ZV9kb21haW5fY29uZmlndXJhdGlvbl9lbmQoZWdjLCByZGNzLCByYyk7 Cit9CisKK3N0YXRpYyB2b2lkIHJldHJpZXZlX2RvbWFpbl9jb25maWd1cmF0aW9uX2VuZChsaWJ4 bF9fZWdjICplZ2MsCisgICAgcmV0cmlldmVfZG9tYWluX2NvbmZpZ3VyYXRpb25fc3RhdGUgKnJk Y3MsIGludCByYykKK3sKKyAgICBTVEFURV9BT19HQyhyZGNzLT5xbXAuYW8pOworICAgIGxpYnhs X19kb21haW5fdXNlcmRhdGFfbG9jayAqbG9jazsKKworICAgIC8qIENvbnZlbmllbmNlIGFsaWFz ZXMgKi8KKyAgICBsaWJ4bF9kb21haW5fY29uZmlnICpjb25zdCBkX2NvbmZpZyA9IHJkY3MtPmRf Y29uZmlnOworICAgIGxpYnhsX2RvbWlkIGRvbWlkID0gcmRjcy0+cW1wLmRvbWlkOworCisgICAg bG9jayA9IGxpYnhsX19sb2NrX2RvbWFpbl91c2VyZGF0YShnYywgZG9taWQpOworICAgIGlmICgh bG9jaykgeworICAgICAgICByYyA9IEVSUk9SX0xPQ0tfRkFJTDsKKyAgICAgICAgZ290byBvdXQ7 CisgICAgfQorCiAgICAgLyogRG9tYWluIG5hbWUgKi8KICAgICB7CiAgICAgICAgIGNoYXIgKmRv bW5hbWU7Ci0gICAgICAgIGRvbW5hbWUgPSBsaWJ4bF9kb21pZF90b19uYW1lKGN0eCwgZG9taWQp OworICAgICAgICBkb21uYW1lID0gbGlieGxfZG9taWRfdG9fbmFtZShDVFgsIGRvbWlkKTsKICAg ICAgICAgaWYgKCFkb21uYW1lKSB7CiAgICAgICAgICAgICBMT0dEKEVSUk9SLCBkb21pZCwgIkZh aWwgdG8gZ2V0IGRvbWFpbiBuYW1lIik7CiAgICAgICAgICAgICBnb3RvIG91dDsKQEAgLTE4ODYs MTMgKzE5ODQsMTMgQEAgaW50IGxpYnhsX3JldHJpZXZlX2RvbWFpbl9jb25maWd1cmF0aW9uKGxp YnhsX2N0eCAqY3R4LCB1aW50MzJfdCBkb21pZCwKICAgICB7CiAgICAgICAgIGxpYnhsX2RvbWlu Zm8gaW5mbzsKICAgICAgICAgbGlieGxfZG9taW5mb19pbml0KCZpbmZvKTsKLSAgICAgICAgcmMg PSBsaWJ4bF9kb21haW5faW5mbyhjdHgsICZpbmZvLCBkb21pZCk7CisgICAgICAgIHJjID0gbGli eGxfZG9tYWluX2luZm8oQ1RYLCAmaW5mbywgZG9taWQpOwogICAgICAgICBpZiAocmMpIHsKICAg ICAgICAgICAgIExPR0QoRVJST1IsIGRvbWlkLCAiRmFpbCB0byBnZXQgZG9tYWluIGluZm8iKTsK ICAgICAgICAgICAgIGxpYnhsX2RvbWluZm9fZGlzcG9zZSgmaW5mbyk7CiAgICAgICAgICAgICBn b3RvIG91dDsKICAgICAgICAgfQotICAgICAgICBsaWJ4bF91dWlkX2NvcHkoY3R4LCAmZF9jb25m aWctPmNfaW5mby51dWlkLCAmaW5mby51dWlkKTsKKyAgICAgICAgbGlieGxfdXVpZF9jb3B5KENU WCwgJmRfY29uZmlnLT5jX2luZm8udXVpZCwgJmluZm8udXVpZCk7CiAgICAgICAgIGxpYnhsX2Rv bWluZm9fZGlzcG9zZSgmaW5mbyk7CiAgICAgfQogCkBAIC0xOTEzLDggKzIwMTEsNyBAQCBpbnQg bGlieGxfcmV0cmlldmVfZG9tYWluX2NvbmZpZ3VyYXRpb24obGlieGxfY3R4ICpjdHgsIHVpbnQz Ml90IGRvbWlkLAogICAgICAgICAgICAgYXNzZXJ0KHZlcnNpb24gIT0gTElCWExfREVWSUNFX01P REVMX1ZFUlNJT05fVU5LTk9XTik7CiAgICAgICAgICAgICBzd2l0Y2ggKHZlcnNpb24pIHsKICAg ICAgICAgICAgIGNhc2UgTElCWExfREVWSUNFX01PREVMX1ZFUlNJT05fUUVNVV9YRU46Ci0gICAg ICAgICAgICAgICAgcmMgPSBsaWJ4bF9fdXBkYXRlX2F2YWlsX3ZjcHVzX3FtcChnYywgZG9taWQs Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhf dmNwdXMsIG1hcCk7CisgICAgICAgICAgICAgICAgbGlieGxfYml0bWFwX2NvcHkoQ1RYLCBtYXAs ICZyZGNzLT5xZW11dV9jcHVzKTsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAg IGNhc2UgTElCWExfREVWSUNFX01PREVMX1ZFUlNJT05fUUVNVV9YRU5fVFJBRElUSU9OQUw6CiAg ICAgICAgICAgICAgICAgcmMgPSBsaWJ4bF9fdXBkYXRlX2F2YWlsX3ZjcHVzX3hlbnN0b3JlKGdj LCBkb21pZCwKQEAgLTE5MzksNiArMjAzNiw3IEBAIGludCBsaWJ4bF9yZXRyaWV2ZV9kb21haW5f Y29uZmlndXJhdGlvbihsaWJ4bF9jdHggKmN0eCwgdWludDMyX3QgZG9taWQsCiAgICAgICAgIH0K ICAgICB9CiAKKwogICAgIC8qIE1lbW9yeSBsaW1pdHM6CiAgICAgICoKICAgICAgKiBDdXJyZW50 bHkgdGhlcmUgYXJlIHRocmVlIG1lbW9yeSBsaW1pdHM6CkBAIC0xOTcyLDcgKzIwNzAsNyBAQCBp bnQgbGlieGxfcmV0cmlldmVfZG9tYWluX2NvbmZpZ3VyYXRpb24obGlieGxfY3R4ICpjdHgsIHVp bnQzMl90IGRvbWlkLAogICAgIC8qIFNjaGVkdWxlciBwYXJhbXMgKi8KICAgICB7CiAgICAgICAg IGxpYnhsX2RvbWFpbl9zY2hlZF9wYXJhbXNfZGlzcG9zZSgmZF9jb25maWctPmJfaW5mby5zY2hl ZF9wYXJhbXMpOwotICAgICAgICByYyA9IGxpYnhsX2RvbWFpbl9zY2hlZF9wYXJhbXNfZ2V0KGN0 eCwgZG9taWQsCisgICAgICAgIHJjID0gbGlieGxfZG9tYWluX3NjaGVkX3BhcmFtc19nZXQoQ1RY LCBkb21pZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZF9j b25maWctPmJfaW5mby5zY2hlZF9wYXJhbXMpOwogICAgICAgICBpZiAocmMpIHsKICAgICAgICAg ICAgIExPR0QoRVJST1IsIGRvbWlkLCAiRmFpbCB0byBnZXQgc2NoZWR1bGVyIHBhcmFtZXRlcnMi KTsKQEAgLTIwMzQsNyArMjEzMiw3IEBAIGludCBsaWJ4bF9yZXRyaWV2ZV9kb21haW5fY29uZmln dXJhdGlvbihsaWJ4bF9jdHggKmN0eCwgdWludDMyX3QgZG9taWQsCiAKICAgICAgICAgICAgICAg ICBpZiAoaiA8IG51bSkgeyAgICAgICAgIC8qIGZvdW5kIGluIHhlbnN0b3JlICovCiAgICAgICAg ICAgICAgICAgICAgIGlmIChkdC0+bWVyZ2UpCi0gICAgICAgICAgICAgICAgICAgICAgICBkdC0+ bWVyZ2UoY3R4LCBwICsgZHQtPmRldl9lbGVtX3NpemUgKiBqLCBxKTsKKyAgICAgICAgICAgICAg ICAgICAgICAgIGR0LT5tZXJnZShDVFgsIHAgKyBkdC0+ZGV2X2VsZW1fc2l6ZSAqIGosIHEpOwog ICAgICAgICAgICAgICAgIH0gZWxzZSB7ICAgICAgICAgICAgICAgIC8qIG5vdCBmb3VuZCBpbiB4 ZW5zdG9yZSAqLwogICAgICAgICAgICAgICAgICAgICBMT0dEKFdBUk4sIGRvbWlkLAogICAgICAg ICAgICAgICAgICAgICAgICAgICJEZXZpY2UgcHJlc2VudCBpbiBKU09OIGJ1dCBub3QgaW4geGVu c3RvcmUsIGlnbm9yZWQiKTsKQEAgLTIwNjIsMTEgKzIxNjAsMTIgQEAgaW50IGxpYnhsX3JldHJp ZXZlX2RvbWFpbl9jb25maWd1cmF0aW9uKGxpYnhsX2N0eCAqY3R4LCB1aW50MzJfdCBkb21pZCwK ICAgICB9CiAKIG91dDoKKyAgICBsaWJ4bF9fZXZfdW5sb2NrKGdjLCAmcmRjcy0+ZXZfbG9jayk7 CiAgICAgaWYgKGxvY2spIGxpYnhsX191bmxvY2tfZG9tYWluX3VzZXJkYXRhKGxvY2spOwotICAg IGlmIChyYykKLSAgICAgICAgcmV0dXJuIEFPX0NSRUFURV9GQUlMKHJjKTsKKyAgICBsaWJ4bF9i aXRtYXBfZGlzcG9zZSgmcmRjcy0+cWVtdXVfY3B1cyk7CisgICAgbGlieGxfX2V2X3FtcF9kaXNw b3NlKGdjLCAmcmRjcy0+cW1wKTsKKyAgICBsaWJ4bF9fZXZfdGltZV9kZXJlZ2lzdGVyKGdjLCAm cmRjcy0+dGltZW91dCk7CiAgICAgbGlieGxfX2FvX2NvbXBsZXRlKGVnYywgYW8sIHJjKTsKLSAg ICByZXR1cm4gQU9fSU5QUk9HUkVTUzsKIH0KIAogLyoKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhs L2xpYnhsX2ludGVybmFsLmggYi90b29scy9saWJ4bC9saWJ4bF9pbnRlcm5hbC5oCmluZGV4IDAz ZTk5YjIzZjUuLjkxNDRiYzIwMmQgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnhsL2xpYnhsX2ludGVy bmFsLmgKKysrIGIvdG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaApAQCAtMTk4Nyw5ICsxOTg3 LDYgQEAgX2hpZGRlbiBsaWJ4bF9fcW1wX2hhbmRsZXIgKmxpYnhsX19xbXBfaW5pdGlhbGl6ZShs aWJ4bF9fZ2MgKmdjLAogX2hpZGRlbiBpbnQgbGlieGxfX3FtcF9yZXN1bWUobGlieGxfX2djICpn YywgaW50IGRvbWlkKTsKIC8qIExvYWQgY3VycmVudCBRRU1VIHN0YXRlIGZyb20gZmlsZS4gKi8K IF9oaWRkZW4gaW50IGxpYnhsX19xbXBfcmVzdG9yZShsaWJ4bF9fZ2MgKmdjLCBpbnQgZG9taWQs IGNvbnN0IGNoYXIgKmZpbGVuYW1lKTsKLS8qIFF1ZXJ5IHRoZSBiaXRtYXAgb2YgQ1BVcyAqLwot X2hpZGRlbiBpbnQgbGlieGxfX3FtcF9xdWVyeV9jcHVzKGxpYnhsX19nYyAqZ2MsIGludCBkb21p ZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9iaXRtYXAgKm1hcCk7 CiAvKiBTdGFydCBOQkQgc2VydmVyICovCiBfaGlkZGVuIGludCBsaWJ4bF9fcW1wX25iZF9zZXJ2 ZXJfc3RhcnQobGlieGxfX2djICpnYywgaW50IGRvbWlkLAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmhvc3QsIGNvbnN0IGNoYXIgKnBvcnQpOwpk aWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvbGlieGxfcW1wLmMgYi90b29scy9saWJ4bC9saWJ4bF9x bXAuYwppbmRleCAyNzE4M2JjNmM0Li45NjM5ZDQ5MWQ5IDEwMDY0NAotLS0gYS90b29scy9saWJ4 bC9saWJ4bF9xbXAuYworKysgYi90b29scy9saWJ4bC9saWJ4bF9xbXAuYwpAQCAtNzY3LDQ0ICs3 NjcsNiBAQCBpbnQgbGlieGxfX3FtcF9yZXN1bWUobGlieGxfX2djICpnYywgaW50IGRvbWlkKQog ICAgIHJldHVybiBxbXBfcnVuX2NvbW1hbmQoZ2MsIGRvbWlkLCAiY29udCIsIE5VTEwsIE5VTEws IE5VTEwpOwogfQogCi1zdGF0aWMgaW50IHF1ZXJ5X2NwdXNfY2FsbGJhY2sobGlieGxfX3FtcF9o YW5kbGVyICpxbXAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbGlieGxf X2pzb25fb2JqZWN0ICpyZXNwb25zZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2 b2lkICpvcGFxdWUpCi17Ci0gICAgbGlieGxfYml0bWFwICptYXAgPSBvcGFxdWU7Ci0gICAgdW5z aWduZWQgaW50IGk7Ci0gICAgY29uc3QgbGlieGxfX2pzb25fb2JqZWN0ICpjcHUgPSBOVUxMOwot ICAgIGludCByYzsKLSAgICBHQ19JTklUKHFtcC0+Y3R4KTsKLQotICAgIGxpYnhsX2JpdG1hcF9z ZXRfbm9uZShtYXApOwotICAgIGZvciAoaSA9IDA7IChjcHUgPSBsaWJ4bF9fanNvbl9hcnJheV9n ZXQocmVzcG9uc2UsIGkpKTsgaSsrKSB7Ci0gICAgICAgIHVuc2lnbmVkIGludCBpZHg7Ci0gICAg ICAgIGNvbnN0IGxpYnhsX19qc29uX29iamVjdCAqbzsKLQotICAgICAgICBvID0gbGlieGxfX2pz b25fbWFwX2dldCgiQ1BVIiwgY3B1LCBKU09OX0lOVEVHRVIpOwotICAgICAgICBpZiAoIW8pIHsK LSAgICAgICAgICAgIExPR0QoRVJST1IsIHFtcC0+ZG9taWQsICJGYWlsZWQgdG8gcmV0cmlldmUg Q1BVIGluZGV4LiIpOwotICAgICAgICAgICAgcmMgPSBFUlJPUl9GQUlMOwotICAgICAgICAgICAg Z290byBvdXQ7Ci0gICAgICAgIH0KLQotICAgICAgICBpZHggPSBsaWJ4bF9fanNvbl9vYmplY3Rf Z2V0X2ludGVnZXIobyk7Ci0gICAgICAgIGxpYnhsX2JpdG1hcF9zZXQobWFwLCBpZHgpOwotICAg IH0KLQotICAgIHJjID0gMDsKLW91dDoKLSAgICBHQ19GUkVFOwotICAgIHJldHVybiByYzsKLX0K LQotaW50IGxpYnhsX19xbXBfcXVlcnlfY3B1cyhsaWJ4bF9fZ2MgKmdjLCBpbnQgZG9taWQsIGxp YnhsX2JpdG1hcCAqbWFwKQotewotICAgIHJldHVybiBxbXBfcnVuX2NvbW1hbmQoZ2MsIGRvbWlk LCAicXVlcnktY3B1cyIsIE5VTEwsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBxdWVyeV9j cHVzX2NhbGxiYWNrLCBtYXApOwotfQotCiBpbnQgbGlieGxfX3FtcF9uYmRfc2VydmVyX3N0YXJ0 KGxpYnhsX19nYyAqZ2MsIGludCBkb21pZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgY29uc3QgY2hhciAqaG9zdCwgY29uc3QgY2hhciAqcG9ydCkKIHsKLS0gCkFudGhvbnkgUEVS QVJECgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVu LWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6 Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==