Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mWKGo-0006kY-3l for pgsql-hackers@arkaria.postgresql.org; Fri, 01 Oct 2021 15:16:18 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1mWKGn-0007lR-2c for pgsql-hackers@arkaria.postgresql.org; Fri, 01 Oct 2021 15:16:17 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mWKGm-0007lH-DS for pgsql-hackers@lists.postgresql.org; Fri, 01 Oct 2021 15:16:16 +0000 Received: from starship.nidsa.net ([212.227.110.112]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mWKGj-0000dJ-74 for pgsql-hackers@postgresql.org; Fri, 01 Oct 2021 15:16:15 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=nidsa.net; s=k1; h=MIME-Version:Content-Type:Message-ID:Date:Subject:To:From:Sender: Reply-To:Cc:Content-Transfer-Encoding:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: In-Reply-To:References:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=v0uoS+Dqjqbh9xSmkJyWsVVjEJxXXhfBLvE2PLkBAag=; b=pJJXVtITvhV4x89sGpozyxNN7w aLcdcG5rABZ6Ff4lfuheYhCuCYonki/nb2wbwbVhH2vPp9JhEfMosJMY/u5csIpFgCFcHrDKqjrRM 7cjmS0p+pvosRkJZ/xJys7eyBB0vFXfAfdUpaKIyTc7qecwqQ9wuBtI7HlTGTR8nRxWc=; Received: from [10.13.1.101] (port=24714 helo=starship.nidsa.net) by starship.nidsa.net with esmtps (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (Exim 4.94.2) (envelope-from ) id 1mWKGa-000Gd3-2s for pgsql-hackers@postgresql.org; Fri, 01 Oct 2021 17:16:05 +0200 Received: from W2012-02.nidsa.loc (10.13.1.101) by W2012-02.nidsa.loc (10.13.1.101) with Microsoft SMTP Server (TLS) id 15.0.1497.23; Fri, 1 Oct 2021 17:15:59 +0200 Received: from W2012-02.nidsa.loc ([::1]) by W2012-02.nidsa.loc ([::1]) with mapi id 15.00.1497.023; Fri, 1 Oct 2021 17:15:59 +0200 X-SASI-Hits: BODYTEXTP_SIZE_3000_LESS 0.000000, BODY_SIZE_10000_PLUS 0.000000, HTML_00_01 0.050000, HTML_00_10 0.050000, NO_CTA_URI_FOUND 0.000000, NO_FUR_HEADER 0.000000, NO_URI_FOUND 0.000000, NO_URI_HTTPS 0.000000, OUTBOUND 0.000000, OUTBOUND_SOPHOS 0.000000, SENDER_NO_AUTH 0.000000, SUPERLONG_LINE 0.050000, WEBMAIL_SOURCE 0.000000, WEBMAIL_XOIP 0.000000, WEBMAIL_X_IP_HDR 0.000000, __ATTACHMENT_NOT_IMG 0.000000, __ATTACHMENT_SIZE_10_25K 0.000000, __BODY_NO_MAILTO 0.000000, __CT 0.000000, __CTYPE_HAS_BOUNDARY 0.000000, __CTYPE_MULTIPART 0.000000, __CTYPE_MULTIPART_MIXED 0.000000, __DQ_NEG_HEUR 0.000000, __DQ_NEG_IP 0.000000, __FRAUD_MONEY_CURRENCY 0.000000, __FRAUD_MONEY_CURRENCY_DOLLAR 0.000000, __FROM_DOMAIN_NOT_IN_BODY 0.000000, __FUR_RDNS_SOPHOS 0.000000, __FW_1LN_BOT_MSGID 0.000000, __HAS_ATTACHMENT 0.000000, __HAS_ATTACHMENT1 0.000000, __HAS_ATTACHMENT2 0.000000, __HAS_FROM 0.000000, __HAS_MSGID 0.000000, __HAS_XOIP 0.000000, __MIME_TEXT_P 0.000000, __MIME_TEXT_P1 0.000000, __MIME_TEXT_P2 0.000000, __MIME_VERSION 0.000000, __NO_HTML_TAG_RAW 0.000000, __OUTBOUND_SOPHOS_FUR 0.000000, __OUTBOUND_SOPHOS_FUR_IP 0.000000, __OUTBOUND_SOPHOS_FUR_RDNS 0.000000, __PHISH_SPEAR_SUBJ_TEAM 0.000000, __SANE_MSGID 0.000000, __SUBJ_ALPHA_END 0.000000, __TO_MALFORMED_2 0.000000, __TO_NAME 0.000000, __TO_NO_NAME 0.000000, __URI_NO_MAILTO 0.000000 X-SASI-Probability: 8% X-SASI-RCODE: 200 X-SASI-Version: Antispam-Engine: 4.1.4, AntispamData: 2021.10.1.143615 From: Hans Buschmann To: "pgsql-hackers@postgresql.org" Subject: VS2022: Support Visual Studio 2022 on Windows Thread-Topic: VS2022: Support Visual Studio 2022 on Windows Thread-Index: AQHXttbFleQl3LtVbkKX/+aZn60SMA== Date: Fri, 1 Oct 2021 15:15:59 +0000 Message-ID: <1633101364685.39218@nidsa.net> Accept-Language: de-DE, en-US Content-Language: de-DE X-MS-Has-Attach: yes X-MS-TNEF-Correlator: x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [185.101.185.196] Content-Type: multipart/mixed; boundary="_002_163310136468539218nidsanet_" MIME-Version: 1.0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --_002_163310136468539218nidsanet_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable =0A= During testing of the new Visual Studio 2022 Preview Version 4.1 from Micro= soft I also tried PG14.0 on it.=0A= =0A= The x64 version built without error!.=0A= =0A= Even when this is only a preview version (the real thing is to expected soo= n) it seems appropriate to include the support to Postgres msvc tools direc= tory.=0A= =0A= I followed the guideline of the patch msvc-2019-support-v4.patch for VS2019= support. New patch attached.=0A= =0A= The only thing that will change later in the first non-preview release is t= he exact version number, which seems to change allways on every minor VS up= grade and is not used explicitely:=0A= =0A= $self->{VisualStudioVersion} =3D '17.0.31717.71';=0A= =0A= The patch is not invasive, so it should follow the practice of backpatching= it to (most) supported versions.=0A= =0A= I have tested the x64 compile and install with the release source code of P= G14.0 from 2021-09-30.=0A= =0A= Due to bad development environment I did not a full run of all tests afterw= ords.=0A= =0A= =0A= Visual Studio is co-installable to an already existing VS version on the sa= me machine (I had VS2019 installed) and is separately choosable as compile = environment.=0A= =0A= Compilation time and file sizes are almost identical, but the GUI promises = a native 64bit implementation, so it may appealing to use the new version.= =0A= =0A= HELP NEEDED:=0A= =0A= Please could somebody test the patch and enter it to the next commit fest?= =0A= (Only my second patch, not much experience with the tool chain :-( )=0A= =0A= Another point is the failure of using VS2019/VS2022 for building the 32bit = version, but this has to be discussed in another thread (if the Windows 32b= it Version is still important to support on newer VS Versions)=0A= =0A= Thanks for looking at it=0A= =0A= Hans Buschmann=0A= =0A= --_002_163310136468539218nidsanet_ Content-Type: application/octet-stream; name="0001_support_vs2022.patch" Content-Description: 0001_support_vs2022.patch Content-Disposition: attachment; filename="0001_support_vs2022.patch"; size=7853; creation-date="Fri, 01 Oct 2021 15:12:38 GMT"; modification-date="Fri, 01 Oct 2021 15:12:38 GMT" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL3Bvc3RncmVzcWwtMTQuMF9vcmlnL2RvYy9zcmMvc2dtbC9pbnN0YWxsLXdp bmRvd3Muc2dtbCBiL3Bvc3RncmVzcWwtMTQuMF92czIwMjIvZG9jL3NyYy9zZ21sL2luc3RhbGwt d2luZG93cy5zZ21sCmluZGV4IDMxMmVkYzYuLjk0MDgzNmEgMTAwNjQ0Ci0tLSBhL3Bvc3RncmVz cWwtMTQuMF9vcmlnL2RvYy9zcmMvc2dtbC9pbnN0YWxsLXdpbmRvd3Muc2dtbAorKysgYi9wb3N0 Z3Jlc3FsLTE0LjBfdnMyMDIyL2RvYy9zcmMvc2dtbC9pbnN0YWxsLXdpbmRvd3Muc2dtbApAQCAt MjAsOSArMjAsOSBAQAogIDxwYXJhPgogICBUaGVyZSBhcmUgc2V2ZXJhbCBkaWZmZXJlbnQgd2F5 cyBvZiBidWlsZGluZyBQb3N0Z3JlU1FMIG9uCiAgIDxwcm9kdWN0bmFtZT5XaW5kb3dzPC9wcm9k dWN0bmFtZT4uIFRoZSBzaW1wbGVzdCB3YXkgdG8gYnVpbGQgd2l0aAotICBNaWNyb3NvZnQgdG9v bHMgaXMgdG8gaW5zdGFsbCA8cHJvZHVjdG5hbWU+VmlzdWFsIFN0dWRpbyAyMDE5PC9wcm9kdWN0 bmFtZT4KKyAgTWljcm9zb2Z0IHRvb2xzIGlzIHRvIGluc3RhbGwgPHByb2R1Y3RuYW1lPlZpc3Vh bCBTdHVkaW8gMjAyMjwvcHJvZHVjdG5hbWU+CiAgIGFuZCB1c2UgdGhlIGluY2x1ZGVkIGNvbXBp bGVyLiBJdCBpcyBhbHNvIHBvc3NpYmxlIHRvIGJ1aWxkIHdpdGggdGhlIGZ1bGwKLSAgPHByb2R1 Y3RuYW1lPk1pY3Jvc29mdCBWaXN1YWwgQysrIDIwMTMgdG8gMjAxOTwvcHJvZHVjdG5hbWU+Lgor ICA8cHJvZHVjdG5hbWU+TWljcm9zb2Z0IFZpc3VhbCBDKysgMjAxMyB0byAyMDIyPC9wcm9kdWN0 bmFtZT4uCiAgIEluIHNvbWUgY2FzZXMgdGhhdCByZXF1aXJlcyB0aGUgaW5zdGFsbGF0aW9uIG9m IHRoZQogICA8cHJvZHVjdG5hbWU+V2luZG93cyBTREs8L3Byb2R1Y3RuYW1lPiBpbiBhZGRpdGlv biB0byB0aGUgY29tcGlsZXIuCiAgPC9wYXJhPgpAQCAtNjksNyArNjksNyBAQAogICA8cHJvZHVj dG5hbWU+TWljcm9zb2Z0IFdpbmRvd3MgU0RLPC9wcm9kdWN0bmFtZT4uIElmIHlvdSBkbyBub3Qg YWxyZWFkeSBoYXZlIGEKICAgPHByb2R1Y3RuYW1lPlZpc3VhbCBTdHVkaW88L3Byb2R1Y3RuYW1l PiBlbnZpcm9ubWVudCBzZXQgdXAsIHRoZSBlYXNpZXN0CiAgIHdheXMgYXJlIHRvIHVzZSB0aGUg Y29tcGlsZXJzIGZyb20KLSAgPHByb2R1Y3RuYW1lPlZpc3VhbCBTdHVkaW8gMjAxOTwvcHJvZHVj dG5hbWU+IG9yIHRob3NlIGluIHRoZQorICA8cHJvZHVjdG5hbWU+VmlzdWFsIFN0dWRpbyAyMDIy PC9wcm9kdWN0bmFtZT4gb3IgdGhvc2UgaW4gdGhlCiAgIDxwcm9kdWN0bmFtZT5XaW5kb3dzIFNE SyAxMDwvcHJvZHVjdG5hbWU+LCB3aGljaCBhcmUgYm90aCBmcmVlIGRvd25sb2FkcwogICBmcm9t IE1pY3Jvc29mdC4KICA8L3BhcmE+CkBAIC03OCw3ICs3OCw3IEBACiAgIEJvdGggMzItYml0IGFu ZCA2NC1iaXQgYnVpbGRzIGFyZSBwb3NzaWJsZSB3aXRoIHRoZSBNaWNyb3NvZnQgQ29tcGlsZXIg c3VpdGUuCiAgIDMyLWJpdCBQb3N0Z3JlU1FMIGJ1aWxkcyBhcmUgcG9zc2libGUgd2l0aAogICA8 cHJvZHVjdG5hbWU+VmlzdWFsIFN0dWRpbyAyMDEzPC9wcm9kdWN0bmFtZT4gdG8KLSAgPHByb2R1 Y3RuYW1lPlZpc3VhbCBTdHVkaW8gMjAxOTwvcHJvZHVjdG5hbWU+LAorICA8cHJvZHVjdG5hbWU+ VmlzdWFsIFN0dWRpbyAyMDIyPC9wcm9kdWN0bmFtZT4sCiAgIGFzIHdlbGwgYXMgc3RhbmRhbG9u ZSBXaW5kb3dzIFNESyByZWxlYXNlcyA4LjFhIHRvIDEwLgogICA2NC1iaXQgUG9zdGdyZVNRTCBi dWlsZHMgYXJlIHN1cHBvcnRlZCB3aXRoCiAgIDxwcm9kdWN0bmFtZT5NaWNyb3NvZnQgV2luZG93 cyBTREs8L3Byb2R1Y3RuYW1lPiB2ZXJzaW9uIDguMWEgdG8gMTAgb3IKQEAgLTg2LDcgKzg2LDcg QEAKICAgaXMgc3VwcG9ydGVkIGRvd24gdG8gPHByb2R1Y3RuYW1lPldpbmRvd3MgNzwvcHJvZHVj dG5hbWU+IGFuZAogICA8cHJvZHVjdG5hbWU+V2luZG93cyBTZXJ2ZXIgMjAwOCBSMiBTUDE8L3By b2R1Y3RuYW1lPiB3aGVuIGJ1aWxkaW5nIHdpdGgKICAgPHByb2R1Y3RuYW1lPlZpc3VhbCBTdHVk aW8gMjAxMzwvcHJvZHVjdG5hbWU+IHRvCi0gIDxwcm9kdWN0bmFtZT5WaXN1YWwgU3R1ZGlvIDIw MTk8L3Byb2R1Y3RuYW1lPi4KKyAgPHByb2R1Y3RuYW1lPlZpc3VhbCBTdHVkaW8gMjAyMjwvcHJv ZHVjdG5hbWU+LgogICAgPCEtLQogICAgICAgIEZvciAyMDEzIHJlcXVpcmVtZW50czoKICAgICAg ICBodHRwczovL2RvY3MubWljcm9zb2Z0LmNvbS9lbi11cy92aXN1YWxzdHVkaW8vcHJvZHVjdGlu Zm8vdnMyMDEzLXN5c3JlcXVpcmVtZW50cy12cwpAQCAtOTYsNiArOTYsOCBAQAogICAgICAgIGh0 dHBzOi8vZG9jcy5taWNyb3NvZnQuY29tL2VuLXVzL3Zpc3VhbHN0dWRpby9wcm9kdWN0aW5mby92 czIwMTctc3lzdGVtLXJlcXVpcmVtZW50cy12cwogICAgICAgIEZvciAyMDE5IHJlcXVpcmVtZW50 czoKICAgICAgICBodHRwczovL2RvY3MubWljcm9zb2Z0LmNvbS9lbi11cy92aXN1YWxzdHVkaW8v cmVsZWFzZXMvMjAxOS9zeXN0ZW0tcmVxdWlyZW1lbnRzCisgICAgICAgRm9yIDIwMjIgcmVxdWly ZW1lbnRzOgorICAgICAgIGh0dHBzOi8vZG9jcy5taWNyb3NvZnQuY29tL2VuLXVzL3Zpc3VhbHN0 dWRpby9yZWxlYXNlcy8yMDIyL3N5c3RlbS1yZXF1aXJlbWVudHMKICAgIC0tPgogIDwvcGFyYT4K IApkaWZmIC0tZ2l0IGEvcG9zdGdyZXNxbC0xNC4wX29yaWcvc3JjL3Rvb2xzL21zdmMvTVNCdWls ZFByb2plY3QucG0gYi9wb3N0Z3Jlc3FsLTE0LjBfdnMyMDIyL3NyYy90b29scy9tc3ZjL01TQnVp bGRQcm9qZWN0LnBtCmluZGV4IGViZTY1MzAuLjUyZjhlYzIgMTAwNjQ0Ci0tLSBhL3Bvc3RncmVz cWwtMTQuMF9vcmlnL3NyYy90b29scy9tc3ZjL01TQnVpbGRQcm9qZWN0LnBtCisrKyBiL3Bvc3Rn cmVzcWwtMTQuMF92czIwMjIvc3JjL3Rvb2xzL21zdmMvTVNCdWlsZFByb2plY3QucG0KQEAgLTUw OCw0ICs1MDgsMzAgQEAgc3ViIG5ldwogCXJldHVybiAkc2VsZjsKIH0KIAorCitwYWNrYWdlIFZD MjAyMlByb2plY3Q7CisKKyMKKyMgUGFja2FnZSB0aGF0IGVuY2Fwc3VsYXRlcyBhIFZpc3VhbCBD KysgMjAyMiBwcm9qZWN0IGZpbGUKKyMKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKK3Vz ZSBiYXNlIHF3KE1TQnVpbGRQcm9qZWN0KTsKKworbm8gd2FybmluZ3MgcXcocmVkZWZpbmUpOyAg ICAjIyBubyBjcml0aWMKKworc3ViIG5ldworeworCW15ICRjbGFzc25hbWUgPSBzaGlmdDsKKwlt eSAkc2VsZiAgICAgID0gJGNsYXNzbmFtZS0+U1VQRVI6Ol9uZXcoQF8pOworCWJsZXNzKCRzZWxm LCAkY2xhc3NuYW1lKTsKKworCSRzZWxmLT57dmN2ZXJ9ICAgICAgICAgICA9ICcxNy4wMCc7CisJ JHNlbGYtPntQbGF0Zm9ybVRvb2xzZXR9ID0gJ3YxNDMnOworCSRzZWxmLT57VG9vbHNWZXJzaW9u fSAgICA9ICcxNy4wJzsKKworCXJldHVybiAkc2VsZjsKK30KKwogMTsKZGlmZiAtLWdpdCBhL3Bv c3RncmVzcWwtMTQuMF9vcmlnL3NyYy90b29scy9tc3ZjL1JFQURNRSBiL3Bvc3RncmVzcWwtMTQu MF92czIwMjIvc3JjL3Rvb2xzL21zdmMvUkVBRE1FCmluZGV4IGYxNTQ3NTkuLjM0ZWE0ZDUgMTAw NjQ0Ci0tLSBhL3Bvc3RncmVzcWwtMTQuMF9vcmlnL3NyYy90b29scy9tc3ZjL1JFQURNRQorKysg Yi9wb3N0Z3Jlc3FsLTE0LjBfdnMyMDIyL3NyYy90b29scy9tc3ZjL1JFQURNRQpAQCAtNCw3ICs0 LDcgQEAgTVNWQyBidWlsZAogPT09PT09PT09PQogCiBUaGlzIGRpcmVjdG9yeSBjb250YWlucyB0 aGUgdG9vbHMgcmVxdWlyZWQgdG8gYnVpbGQgUG9zdGdyZVNRTCB1c2luZwotTWljcm9zb2Z0IFZp c3VhbCBTdHVkaW8gMjAxMyAtIDIwMTkuIFRoaXMgYnVpbGRzIHRoZSB3aG9sZSBiYWNrZW5kLCBu b3QganVzdAorTWljcm9zb2Z0IFZpc3VhbCBTdHVkaW8gMjAxMyAtIDIwMjIuIFRoaXMgYnVpbGRz IHRoZSB3aG9sZSBiYWNrZW5kLCBub3QganVzdAogdGhlIGxpYnBxIGZyb250ZW5kIGxpYnJhcnku IEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIGRvY3VtZW50YXRpb24KIGNoYXB0ZXIgIklu c3RhbGxhdGlvbiBvbiBXaW5kb3dzIiBhbmQgdGhlIGRlc2NyaXB0aW9uIGJlbG93LgogCkBAIC04 OSwxMCArODksMTAgQEAgVGhlc2UgY29uZmlndXJhdGlvbiBhcmd1bWVudHMgYXJlIHBhc3NlZCBv dmVyIHRvIE1rdmNidWlsZDo6bWt2Y2J1aWxkCiAoTWt2Y2J1aWxkLnBtKSB3aGljaCBjcmVhdGVz IHRoZSBWaXN1YWwgU3R1ZGlvIHByb2plY3QgYW5kIHNvbHV0aW9uIGZpbGVzLgogSXQgZG9lcyB0 aGlzIGJ5IHVzaW5nIFZTT2JqZWN0RmFjdG9yeTo6Q3JlYXRlU29sdXRpb24gdG8gY3JlYXRlIGFu IG9iamVjdAogaW1wbGVtZW50aW5nIHRoZSBTb2x1dGlvbiBpbnRlcmZhY2UgKHRoaXMgY291bGQg YmUgZWl0aGVyIFZTMjAxM1NvbHV0aW9uLAotVlMyMDE1U29sdXRpb24sIFZTMjAxN1NvbHV0aW9u IG9yIFZTMjAxOVNvbHV0aW9uLCBhbGwgaW4gU29sdXRpb24ucG0sCitWUzIwMTVTb2x1dGlvbiwg VlMyMDE3U29sdXRpb24sIFZTMjAxOVNvbHV0aW9uIG9yIFZTMjAyMlNvbHV0aW9uLCBhbGwgaW4g U29sdXRpb24ucG0sCiBkZXBlbmRpbmcgb24gdGhlIHVzZXIncyBidWlsZCBlbnZpcm9ubWVudCkg YW5kIGFkZGluZyBvYmplY3RzIGltcGxlbWVudGluZwogdGhlIGNvcnJlc3BvbmRpbmcgUHJvamVj dCBpbnRlcmZhY2UgKFZDMjAxM1Byb2plY3QsIFZDMjAxNVByb2plY3QsCi1WQzIwMTdQcm9qZWN0 IG9yIFZDMjAxOVByb2plY3QgZnJvbSBNU0J1aWxkUHJvamVjdC5wbSkgdG8gaXQuCitWQzIwMTdQ cm9qZWN0LFZDMjAxOVByb2plY3Qgb3IgVkMyMDIyUHJvamVjdCBmcm9tIE1TQnVpbGRQcm9qZWN0 LnBtKSB0byBpdC4KIFdoZW4gU29sdXRpb246OlNhdmUgaXMgY2FsbGVkLCB0aGUgaW1wbGVtZW50 YXRpb25zIG9mIFNvbHV0aW9uIGFuZCBQcm9qZWN0CiBzYXZlIHRoZWlyIGNvbnRlbnQgaW4gdGhl IGFwcHJvcHJpYXRlIGZvcm1hdC4KIFRoZSBmaW5hbCBzdGVwIG9mIHN0YXJ0aW5nIHRoZSBhcHBy b3ByaWF0ZSBidWlsZCBwcm9ncmFtIChtc2J1aWxkKSBpcwpkaWZmIC0tZ2l0IGEvcG9zdGdyZXNx bC0xNC4wX29yaWcvc3JjL3Rvb2xzL21zdmMvU29sdXRpb24ucG0gYi9wb3N0Z3Jlc3FsLTE0LjBf dnMyMDIyL3NyYy90b29scy9tc3ZjL1NvbHV0aW9uLnBtCmluZGV4IGNmZGE1YWMuLmE5NTc1NGQg MTAwNjQ0Ci0tLSBhL3Bvc3RncmVzcWwtMTQuMF9vcmlnL3NyYy90b29scy9tc3ZjL1NvbHV0aW9u LnBtCisrKyBiL3Bvc3RncmVzcWwtMTQuMF92czIwMjIvc3JjL3Rvb2xzL21zdmMvU29sdXRpb24u cG0KQEAgLTEzMTUsNiArMTMxNSwzNCBAQCBzdWIgbmV3CiAJcmV0dXJuICRzZWxmOwogfQogCitw YWNrYWdlIFZTMjAyMlNvbHV0aW9uOworCisjCisjIFBhY2thZ2UgdGhhdCBlbmNhcHN1bGF0ZXMg YSBWaXN1YWwgU3R1ZGlvIDIwMjIgc29sdXRpb24gZmlsZQorIworCit1c2UgQ2FycDsKK3VzZSBz dHJpY3Q7Cit1c2Ugd2FybmluZ3M7Cit1c2UgYmFzZSBxdyhTb2x1dGlvbik7CisKK25vIHdhcm5p bmdzIHF3KHJlZGVmaW5lKTsgICAgIyMgbm8gY3JpdGljCisKK3N1YiBuZXcKK3sKKwlteSAkY2xh c3NuYW1lID0gc2hpZnQ7CisJbXkgJHNlbGYgICAgICA9ICRjbGFzc25hbWUtPlNVUEVSOjpfbmV3 KEBfKTsKKwlibGVzcygkc2VsZiwgJGNsYXNzbmFtZSk7CisKKwkkc2VsZi0+e3NvbHV0aW9uRmls ZVZlcnNpb259ICAgICAgICA9ICcxMi4wMCc7CisJJHNlbGYtPnt2Y3Zlcn0gICAgICAgICAgICAg ICAgICAgICAgPSAnMTcuMDAnOworCSRzZWxmLT57dmlzdWFsU3R1ZGlvTmFtZX0gICAgICAgICAg ID0gJ1Zpc3VhbCBTdHVkaW8gMjAyMic7CisJJHNlbGYtPntWaXN1YWxTdHVkaW9WZXJzaW9ufSAg ICAgICAgPSAnMTcuMC4zMTcxNy43MSc7CisJJHNlbGYtPntNaW5pbXVtVmlzdWFsU3R1ZGlvVmVy c2lvbn0gPSAnMTAuMC40MDIxOS4xJzsKKworCXJldHVybiAkc2VsZjsKK30KKwogc3ViIEdldEFk ZGl0aW9uYWxIZWFkZXJzCiB7CiAJbXkgKCRzZWxmLCAkZikgPSBAXzsKZGlmZiAtLWdpdCBhL3Bv c3RncmVzcWwtMTQuMF9vcmlnL3NyYy90b29scy9tc3ZjL1ZTT2JqZWN0RmFjdG9yeS5wbSBiL3Bv c3RncmVzcWwtMTQuMF92czIwMjIvc3JjL3Rvb2xzL21zdmMvVlNPYmplY3RGYWN0b3J5LnBtCmlu ZGV4IDYxZTgzZjUuLmY3OGUwOGMgMTAwNjQ0Ci0tLSBhL3Bvc3RncmVzcWwtMTQuMF9vcmlnL3Ny Yy90b29scy9tc3ZjL1ZTT2JqZWN0RmFjdG9yeS5wbQorKysgYi9wb3N0Z3Jlc3FsLTE0LjBfdnMy MDIyL3NyYy90b29scy9tc3ZjL1ZTT2JqZWN0RmFjdG9yeS5wbQpAQCAtNjEsNiArNjEsMTYgQEAg c3ViIENyZWF0ZVNvbHV0aW9uCiAJewogCQlyZXR1cm4gbmV3IFZTMjAxOVNvbHV0aW9uKEBfKTsK IAl9CisKKwkjIFRoZSB2ZXJzaW9uIG9mIG5tYWtlIGJ1bmRsZWQgaW4gVmlzdWFsIFN0dWRpbyAy MDIyIGlzIGdyZWF0ZXIKKwkjIHRoYW4gMTQuMzAgYW5kIGxlc3MgdGhhbiAxNC40MC4gIEFuZCB0 aGUgdmVyc2lvbiBudW1iZXIgaXMKKwkjIGFjdHVhbGx5IDE3LjAwLgorCWVsc2lmICgKKwkJKCR2 aXN1YWxTdHVkaW9WZXJzaW9uIGdlICcxNC4zMCcgJiYgJHZpc3VhbFN0dWRpb1ZlcnNpb24gbHQg JzE0LjQwJykKKwkJfHwgJHZpc3VhbFN0dWRpb1ZlcnNpb24gZXEgJzE3LjAwJykKKwl7CisJCXJl dHVybiBuZXcgVlMyMDIyU29sdXRpb24oQF8pOworCX0KIAllbHNlCiAJewogCQljcm9hawpAQCAt MTA1LDYgKzExNSwxNiBAQCBzdWIgQ3JlYXRlUHJvamVjdAogCXsKIAkJcmV0dXJuIG5ldyBWQzIw MTlQcm9qZWN0KEBfKTsKIAl9CisKKwkjIFRoZSB2ZXJzaW9uIG9mIG5tYWtlIGJ1bmRsZWQgaW4g VmlzdWFsIFN0dWRpbyAyMDIyIGlzIGdyZWF0ZXIKKwkjIHRoYW4gMTQuMzAgYW5kIGxlc3MgdGhh biAxNC40MC4gIEFuZCB0aGUgdmVyc2lvbiBudW1iZXIgaXMKKwkjIGFjdHVhbGx5IDE3LjAwLgor CWVsc2lmICgKKwkJKCR2aXN1YWxTdHVkaW9WZXJzaW9uIGdlICcxNC4zMCcgJiYgJHZpc3VhbFN0 dWRpb1ZlcnNpb24gbHQgJzE0LjQwJykKKwkJfHwgJHZpc3VhbFN0dWRpb1ZlcnNpb24gZXEgJzE3 LjAwJykKKwl7CisJCXJldHVybiBuZXcgVkMyMDIyUHJvamVjdChAXyk7CisJfQogCWVsc2UKIAl7 CiAJCWNyb2FrCkBAIC0xMzQsNyArMTU0LDcgQEAgc3ViIERldGVybWluZVZpc3VhbFN0dWRpb1Zl cnNpb24KIAllbHNlCiAJewogCQkjIGZha2UgdmVyc2lvbgotCQlyZXR1cm4gJzE2LjAwJzsKKwkJ cmV0dXJuICcxNy4wMCc7CiAJfQogfQogCkBAIC0xNDMsMTMgKzE2MywxMyBAQCBzdWIgX0dldFZp c3VhbFN0dWRpb1ZlcnNpb24KIAlteSAoJG1ham9yLCAkbWlub3IpID0gQF87CiAKIAkjIFRoZSBt YWpvciB2aXN1YWwgc3R1ZGlvIHRoYXQgaXMgc3VwcG9ydGVkIGhhcyBubWFrZQotCSMgdmVyc2lv biA8PSAxNC4zMCwgc28gc3RpY2sgd2l0aCBpdCBhcyB0aGUgbGF0ZXN0IHZlcnNpb24KKwkjIHZl cnNpb24gPCAxNC40MCwgc28gc3RpY2sgd2l0aCBpdCBhcyB0aGUgbGF0ZXN0IHZlcnNpb24KIAkj IGlmIGJ1bXBpbmcgb24gc29tZXRoaW5nIGV2ZW4gbmV3ZXIuCi0JaWYgKCRtYWpvciA+PSAxNCAm JiAkbWlub3IgPj0gMzApCisJaWYgKCRtYWpvciA+PSAxNCAmJiAkbWlub3IgPj0gNDApCiAJewog CQljYXJwCiAJCSAgIlRoZSBkZXRlcm1pbmVkIHZlcnNpb24gb2YgVmlzdWFsIFN0dWRpbyBpcyBu ZXdlciB0aGFuIHRoZSBsYXRlc3Qgc3VwcG9ydGVkIHZlcnNpb24uIFJldHVybmluZyB0aGUgbGF0 ZXN0IHN1cHBvcnRlZCB2ZXJzaW9uIGluc3RlYWQuIjsKLQkJcmV0dXJuICcxNC4yMCc7CisJCXJl dHVybiAnMTQuMzAnOwogCX0KIAllbHNpZiAoJG1ham9yIDwgMTIpCiAJewo= --_002_163310136468539218nidsanet_--