From owner-freebsd-ports-bugs@FreeBSD.ORG Mon Oct 24 22:10:09 2011 Return-Path: Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4C8111065676 for ; Mon, 24 Oct 2011 22:10:09 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 5B04A8FC17 for ; Mon, 24 Oct 2011 22:10:04 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.4/8.14.4) with ESMTP id p9OMA4Cm042679 for ; Mon, 24 Oct 2011 22:10:04 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.4/8.14.4/Submit) id p9OMA4t0042678; Mon, 24 Oct 2011 22:10:04 GMT (envelope-from gnats) Date: Mon, 24 Oct 2011 22:10:04 GMT Message-Id: <201110242210.p9OMA4t0042678@freefall.freebsd.org> To: freebsd-ports-bugs@FreeBSD.org From: "Jeremy C. Reed" Cc: Subject: Subject: Re: ports/161167: security/botan configure does not work with python 3.1 X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: "Jeremy C. Reed" List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 Oct 2011 22:10:09 -0000 The following reply was made to PR ports/161167; it has been noted by GNATS. From: "Jeremy C. Reed" To: bug-followup@FreeBSD.org Cc: Subject: Subject: Re: ports/161167: security/botan configure does not work with python 3.1 Date: Mon, 24 Oct 2011 16:29:19 -0500 (CDT) This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --0-1170577971-1319491759=:11267 Content-Type: TEXT/PLAIN; charset=US-ASCII Please upgrade to 1.8.13. From the upstream changelog: * 1.8.13, 2011-07-02 - A race in Algorithm_Factory that could cause crashes in multithreaded code has been fixed. * 1.8.12, 2011-06-20 - If EMSA3(Raw) was used for more than one signature, it would produce incorrect output. - Fix the --enable-debug option to configure.py - Improve OS detection on Cygwin - Fix compilation under Sun Studio 12 on Solaris - Fix a memory leak in the constructors of DataSource_Stream and DataSink_Stream which would occur if opening the file failed. PR 144 In addition the attachment (patch-configure.py) provides a patch from the mtn-based botan repo for some python portabilities plus I ran 2to3-3.1. The upstream change history also says: | Fix matching of CPU submodels. Because we search arches in basically | random order, a regex match could match things unexpectedly. In | particular, --cpu=s390x would canonicalize to s390 because it was hit | first. To fix, first search for an exact match through all arches | including submodels. Then, if we failed, try matching via regex. (That may be in 1.8.14.) If you don't use this patch as-is, please confirm that your patch works with both python 2.6 and python 3.1. Thank you. --- ../botan.orig/Makefile 2011-10-24 20:00:42.000000000 +0000 +++ Makefile 2011-10-24 20:06:18.000000000 +0000 @@ -7,7 +7,7 @@ # PORTNAME= botan -PORTVERSION= 1.8.11 +PORTVERSION= 1.8.13 CATEGORIES= security MASTER_SITES= http://files.randombit.net/botan/v1.8/ DISTNAME= Botan-${PORTVERSION} @@ -57,8 +57,10 @@ CONFIGURE_ARGS+=--with-tr1-implementation=none .endif -.if defined(NOPORTDOCS) post-patch: + ${REINPLACE_CMD} -e "s|#!/usr/bin/env python|#!${PYTHON_CMD}|" \ + ${WRKSRC}/configure.py +.if defined(NOPORTDOCS) ${REINPLACE_CMD} -e '/$$(MKDIR_INSTALL) $$(DOCDIR)/d' \ -e '/$$(INSTALL_CMD_DATA) $$$$i $$(DOCDIR); /d' \ ${WRKSRC}/src/build-data/makefile/unix_shr.in --- ../botan.orig/distinfo 2011-10-24 20:01:30.000000000 +0000 +++ distinfo 2011-10-24 19:32:40.000000000 +0000 @@ -1,2 +1,2 @@ -SHA256 (Botan-1.8.11.tbz) = c3b60a2c3dfcbe7b21626e8459e5134d3cbabe45b6d94f454860b99798739ba4 -SIZE (Botan-1.8.11.tbz) = 2808114 +SHA256 (Botan-1.8.13.tbz) = 5593ce257d753c305ecf6f4d16e2f516f647bd6494f823fe9766a816ac439dba +SIZE (Botan-1.8.13.tbz) = 2811686 --0-1170577971-1319491759=:11267 Content-Type: TEXT/PLAIN; charset=US-ASCII; name=patch-configure.py Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename=patch-configure.py LS0tIGNvbmZpZ3VyZS5weS5vcmlnCTIwMTEtMTAtMjQgMTk6NTE6MzEuMDAw MDAwMDAwICswMDAwDQorKysgY29uZmlndXJlLnB5CTIwMTEtMTAtMjQgMTk6 NTI6MjUuMDAwMDAwMDAwICswMDAwDQpAQCAtNTgsNyArNTgsNyBAQA0KICAg ICAgICAgc2VsZi5pbmNsdWRlX2RpciA9IG9zLnBhdGguam9pbihzZWxmLmJ1 aWxkX2RpciwgJ2luY2x1ZGUnKQ0KICAgICAgICAgc2VsZi5mdWxsX2luY2x1 ZGVfZGlyID0gb3MucGF0aC5qb2luKHNlbGYuaW5jbHVkZV9kaXIsICdib3Rh bicpDQogDQotICAgICAgICBhbGxfZmlsZXMgPSBzdW0oW21vZC5hZGQgZm9y IG1vZCBpbiBtb2R1bGVzXSwgW10pDQorICAgICAgICBhbGxfZmlsZXMgPSBz dW0oW2xpc3QobW9kLmFkZCkgZm9yIG1vZCBpbiBtb2R1bGVzXSwgW10pDQog DQogICAgICAgICBzZWxmLmhlYWRlcnMgPSBzb3J0ZWQoDQogICAgICAgICAg ICAgW2ZpbGUgZm9yIGZpbGUgaW4gYWxsX2ZpbGVzIGlmIGZpbGUuZW5kc3dp dGgoJy5oJyldKQ0KQEAgLTI5MCw3ICsyOTAsNyBAQA0KIA0KICAgICBmb3Ig Z3JvdXAgaW4gYWxsb3dlZF9ncm91cHM6DQogICAgICAgICB0b19vYmouX19k aWN0X19bZ3JvdXBdID0gW10NCi0gICAgZm9yIChrZXksdmFsKSBpbiBuYW1l X3ZhbF9wYWlycy5pdGVyaXRlbXMoKToNCisgICAgZm9yIChrZXksdmFsKSBp biBsaXN0KG5hbWVfdmFsX3BhaXJzLml0ZW1zKCkpOg0KICAgICAgICAgdG9f b2JqLl9fZGljdF9fW2tleV0gPSB2YWwNCiANCiAgICAgZGVmIGxleGVkX3Rv a2VucygpOiAjIENvbnZlcnQgdG8gYW4gaW50ZXJhdG9yDQpAQCAtMzIwLDcg KzMyMCw3IEBADQogICAgICAgICAgICAgICAgICAgICByYWlzZSBMZXhlckVy cm9yKCdHcm91cCAiJXMiIG5vdCB0ZXJtaW5hdGVkJyAlIChncm91cCksDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxleGVyLmxp bmVubykNCiANCi0gICAgICAgIGVsaWYgdG9rZW4gaW4gbmFtZV92YWxfcGFp cnMua2V5cygpOg0KKyAgICAgICAgZWxpZiB0b2tlbiBpbiBsaXN0KG5hbWVf dmFsX3BhaXJzLmtleXMoKSk6DQogICAgICAgICAgICAgdG9fb2JqLl9fZGlj dF9fW3Rva2VuXSA9IGxleGVyLmdldF90b2tlbigpDQogICAgICAgICBlbHNl OiAjIE5vIG1hdGNoIC0+IGVycm9yDQogICAgICAgICAgICAgcmFpc2UgTGV4 ZXJFcnJvcignQmFkIHRva2VuICIlcyInICUgKHRva2VuKSwgbGV4ZXIubGlu ZW5vKQ0KQEAgLTMyOSw3ICszMjksNyBAQA0KIENvbnZlcnQgYSBsZXgnZWQg bWFwIChmcm9tIGJ1aWxkLWRhdGEgZmlsZXMpIGZyb20gYSBsaXN0IHRvIGEg ZGljdA0KICIiIg0KIGRlZiBmb3JjZV90b19kaWN0KGwpOg0KLSAgICByZXR1 cm4gZGljdCh6aXAobFs6OjNdLGxbMjo6M10pKQ0KKyAgICByZXR1cm4gZGlj dChsaXN0KHppcChsWzo6M10sbFsyOjozXSkpKQ0KIA0KICIiIg0KIFJlcHJl c2VudHMgdGhlIGluZm9ybWF0aW9uIGFib3V0IGEgcGFydGljdWxhciBtb2R1 bGUNCkBAIC0zNjEsNyArMzYxLDcgQEANCiAgICAgICAgICAgICByZXR1cm4g b3MucGF0aC5qb2luKG9zLnBhdGguc3BsaXQoc2VsZi5saXZlc19pbilbMF0s DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqZmlsZW5hbWUu c3BsaXQoJzonKSkNCiANCi0gICAgICAgIHNlbGYuYWRkID0gbWFwKGFkZF9k aXJfbmFtZSwgc2VsZi5hZGQpDQorICAgICAgICBzZWxmLmFkZCA9IGxpc3Qo bWFwKGFkZF9kaXJfbmFtZSwgc2VsZi5hZGQpKQ0KIA0KICAgICAgICAgc2Vs Zi5tcF9iaXRzID0gaW50KHNlbGYubXBfYml0cykNCiANCkBAIC00MTMsOCAr NDEzLDggQEANCiAgICAgICAgICAgICBzZWxmLnVuYWxpZ25lZF9vayA9IDAN CiANCiAgICAgZGVmIGFsbF9zdWJtb2RlbHMoc2VsZik6DQotICAgICAgICBy ZXR1cm4gc29ydGVkKHppcChzZWxmLnN1Ym1vZGVscywgc2VsZi5zdWJtb2Rl bHMpICsNCi0gICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuc3VibW9k ZWxfYWxpYXNlcy5pdGVtcygpLA0KKyAgICAgICAgcmV0dXJuIHNvcnRlZChb KGssaykgZm9yIGsgaW4gc2VsZi5zdWJtb2RlbHNdICsNCisgICAgICAgICAg ICAgICAgICAgICAgW2sgZm9yIGsgaW4gbGlzdChzZWxmLnN1Ym1vZGVsX2Fs aWFzZXMuaXRlbXMoKSldLA0KICAgICAgICAgICAgICAgICAgICAgICBrZXkg PSBsYW1iZGEgazogbGVuKGtbMF0pLCByZXZlcnNlID0gVHJ1ZSkNCiANCiAg ICAgZGVmIGRlZmluZXMoc2VsZiwgdGFyZ2V0X3N1Ym1vZGVsLCB3aXRoX2Vu ZGlhbik6DQpAQCAtNTc0LDEzICs1NzQsMjYgQEANCiAgICAgICAgICAgICAg ICAgZm9yIGZlYXQgaW4gc2VsZi50YXJnZXRfZmVhdHVyZXNdDQogDQogZGVm IGNhbm9uX3Byb2Nlc3NvcihhcmNoaW5mbywgcHJvYyk6DQotICAgIGZvciBh aW5mbyBpbiBhcmNoaW5mby52YWx1ZXMoKToNCisgICAgIyBGaXJzdCwgdHJ5 IHRvIHNlYXJjaCBmb3IgYW4gZXhhY3QgbWF0Y2gNCisgICAgZm9yIGFpbmZv IGluIGxpc3QoYXJjaGluZm8udmFsdWVzKCkpOg0KICAgICAgICAgaWYgYWlu Zm8uYmFzZW5hbWUgPT0gcHJvYyBvciBwcm9jIGluIGFpbmZvLmFsaWFzZXM6 DQogICAgICAgICAgICAgcmV0dXJuIChhaW5mby5iYXNlbmFtZSwgYWluZm8u YmFzZW5hbWUpDQotICAgICAgICBlbHNlOg0KLSAgICAgICAgICAgIGZvciAo bWF0Y2gsc3VibW9kZWwpIGluIGFpbmZvLmFsbF9zdWJtb2RlbHMoKToNCi0g ICAgICAgICAgICAgICAgaWYgcmUuc2VhcmNoKG1hdGNoLCBwcm9jKSAhPSBO b25lOg0KLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChhaW5mby5iYXNl bmFtZSwgc3VibW9kZWwpDQorDQorICAgICAgICBmb3IgKG1hdGNoLHN1Ym1v ZGVsKSBpbiBhaW5mby5hbGxfc3VibW9kZWxzKCk6DQorICAgICAgICAgICAg aWYgcHJvYyA9PSBzdWJtb2RlbDoNCisgICAgICAgICAgICAgICAgcmV0dXJu IChhaW5mby5iYXNlbmFtZSwgc3VibW9kZWwpDQorDQorICAgICMgTm93LCB0 cnkgc2VhcmNoaW5nIHZpYSByZWdleCBtYXRjaA0KKyAgICBmb3IgYWluZm8g aW4gbGlzdChhcmNoaW5mby52YWx1ZXMoKSk6DQorICAgICAgICBmb3IgKG1h dGNoLHN1Ym1vZGVsKSBpbiBhaW5mby5hbGxfc3VibW9kZWxzKCk6DQorICAg ICAgICAgICAgaWYgcmUuc2VhcmNoKG1hdGNoLCBwcm9jKSAhPSBOb25lOg0K KyAgICAgICAgICAgICAgICByZXR1cm4gKGFpbmZvLmJhc2VuYW1lLCBzdWJt b2RlbCkNCisNCisgICAgbG9nZ2luZy5kZWJ1ZygnS25vd24gQ1BVIG5hbWVz OiAnICsgJyAnLmpvaW4oDQorICAgICAgICBzb3J0ZWQoc3VtKFtbYWluZm8u YmFzZW5hbWVdICsgXA0KKyAgICAgICAgICAgICAgICAgICAgYWluZm8uYWxp YXNlcyArIFwNCisgICAgICAgICAgICAgICAgICAgIFt4IGZvciAoeCxfKSBp biBhaW5mby5hbGxfc3VibW9kZWxzKCldDQorICAgICAgICAgICAgICAgICAg ICBmb3IgYWluZm8gaW4gbGlzdChhcmNoaW5mby52YWx1ZXMoKSldLCBbXSkp KSkNCiANCiAgICAgcmFpc2UgRXhjZXB0aW9uKCdVbmtub3duIG9yIHVuaWRl bnRpZmlhYmxlIHByb2Nlc3NvciAiJXMiJyAlIChwcm9jKSkNCiANCkBAIC01 OTcsNyArNjEwLDcgQEANCiAgICAgaWYgZnVsbF9wcm9jID09ICcnOg0KICAg ICAgICAgZnVsbF9wcm9jID0gYmFzZV9wcm9jDQogDQotICAgIGZvciBhaW5m byBpbiBhcmNoaW5mby52YWx1ZXMoKToNCisgICAgZm9yIGFpbmZvIGluIGxp c3QoYXJjaGluZm8udmFsdWVzKCkpOg0KICAgICAgICAgaWYgYWluZm8uYmFz ZW5hbWUgPT0gYmFzZV9wcm9jIG9yIGJhc2VfcHJvYyBpbiBhaW5mby5hbGlh c2VzOg0KICAgICAgICAgICAgIGZvciAobWF0Y2gsc3VibW9kZWwpIGluIGFp bmZvLmFsbF9zdWJtb2RlbHMoKToNCiAgICAgICAgICAgICAgICAgaWYgcmUu c2VhcmNoKG1hdGNoLCBmdWxsX3Byb2MpICE9IE5vbmU6DQpAQCAtNjI2LDcg KzYzOSw3IEBADQogICAgIHRyeToNCiAgICAgICAgIHRlbXBsYXRlID0gUGVy Y2VudFNpZ25UZW1wbGF0ZShzbHVycF9maWxlKHRlbXBsYXRlX2ZpbGUpKQ0K ICAgICAgICAgcmV0dXJuIHRlbXBsYXRlLnN1YnN0aXR1dGUodmFyaWFibGVz KQ0KLSAgICBleGNlcHQgS2V5RXJyb3IsIGU6DQorICAgIGV4Y2VwdCBLZXlF cnJvciBhcyBlOg0KICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCdVbmJvdW5k IHZhciAlcyBpbiB0ZW1wbGF0ZSAlcycgJSAoZSwgdGVtcGxhdGVfZmlsZSkp DQogDQogIiIiDQpAQCAtNjQyLDcgKzY1NSw3IEBADQogICAgIGRlZiBsaW5r X3RvKCk6DQogICAgICAgICBsaWJzID0gc2V0KCkNCiAgICAgICAgIGZvciBt b2R1bGUgaW4gbW9kdWxlczoNCi0gICAgICAgICAgICBmb3IgKG9zbmFtZSxs aW5rX3RvKSBpbiBtb2R1bGUubGlicy5pdGVyaXRlbXMoKToNCisgICAgICAg ICAgICBmb3IgKG9zbmFtZSxsaW5rX3RvKSBpbiBsaXN0KG1vZHVsZS5saWJz Lml0ZW1zKCkpOg0KICAgICAgICAgICAgICAgICBpZiBvc25hbWUgPT0gJ2Fs bCcgb3Igb3NuYW1lID09IG9zaW5mby5iYXNlbmFtZToNCiAgICAgICAgICAg ICAgICAgICAgIGxpYnMuYWRkKGxpbmtfdG8pDQogICAgICAgICAgICAgICAg IGVsc2U6DQpAQCAtNzk4LDggKzgxMSw3IEBADQogDQogICAgICAgICAnZG9j X2ZpbGVzJzogbWFrZWZpbGVfbGlzdChidWlsZF9jb25maWcuZG9jX2ZpbGVz KCkpLA0KIA0KLSAgICAgICAgJ21vZF9saXN0JzogJ1xuJy5qb2luKFsnJXMg KCVzKScgJSAobS5iYXNlbmFtZSwgbS5yZWFsbmFtZSkNCi0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgZm9yIG0gaW4gc29ydGVkKG1vZHVsZXMp XSksDQorICAgICAgICAnbW9kX2xpc3QnOiAnXG4nLmpvaW4oc29ydGVkKFtt LmJhc2VuYW1lIGZvciBtIGluIG1vZHVsZXNdKSksDQogICAgICAgICB9DQog DQogIiIiDQpAQCAtODE0LDcgKzgyNiw3IEBADQogICAgIGRlZiBjYW5ub3Rf dXNlX2JlY2F1c2UobW9kLCByZWFzb24pOg0KICAgICAgICAgbm90X3VzaW5n X2JlY2F1c2Uuc2V0ZGVmYXVsdChyZWFzb24sIFtdKS5hcHBlbmQobW9kKQ0K IA0KLSAgICBmb3IgKG1vZG5hbWUsIG1vZHVsZSkgaW4gbW9kdWxlcy5pdGVy aXRlbXMoKToNCisgICAgZm9yIChtb2RuYW1lLCBtb2R1bGUpIGluIGxpc3Qo bW9kdWxlcy5pdGVtcygpKToNCiAgICAgICAgIGlmIG1vZG5hbWUgaW4gb3B0 aW9ucy5kaXNhYmxlZF9tb2R1bGVzOg0KICAgICAgICAgICAgIGNhbm5vdF91 c2VfYmVjYXVzZShtb2RuYW1lLCAnZGlzYWJsZWQgYnkgdXNlcicpDQogICAg ICAgICBlbGlmIG1vZG5hbWUgaW4gb3B0aW9ucy5lbmFibGVkX21vZHVsZXM6 DQpAQCAtODYyLDggKzg3NCw3IEBADQogICAgIHdoaWxlIGRlcGVuZGVuY3lf ZmFpbHVyZToNCiAgICAgICAgIGRlcGVuZGVuY3lfZmFpbHVyZSA9IEZhbHNl DQogICAgICAgICBmb3IgbW9kbmFtZSBpbiB0b19sb2FkOg0KLSAgICAgICAg ICAgIGZvciBkZXBsaXN0IGluIG1hcChsYW1iZGEgczogcy5zcGxpdCgnfCcp LA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2R1bGVzW21v ZG5hbWVdLmRlcGVuZGVuY2llcygpKToNCisgICAgICAgICAgICBmb3IgZGVw bGlzdCBpbiBbcy5zcGxpdCgnfCcpIGZvciBzIGluIG1vZHVsZXNbbW9kbmFt ZV0uZGVwZW5kZW5jaWVzKCldOg0KIA0KICAgICAgICAgICAgICAgICBkZXBf bWV0ID0gRmFsc2UNCiAgICAgICAgICAgICAgICAgZm9yIG1vZCBpbiBkZXBs aXN0Og0KQEAgLTEwMjAsNyArMTAzMSw3IEBADQogICAgICMgRmlyc3QgZGVs ZXRlIHRoZSBidWlsZCB0cmVlLCBpZiBleGlzdGluZw0KICAgICB0cnk6DQog ICAgICAgICBzaHV0aWwucm10cmVlKGJ1aWxkX2NvbmZpZy5idWlsZF9kaXIp DQotICAgIGV4Y2VwdCBPU0Vycm9yLCBlOg0KKyAgICBleGNlcHQgT1NFcnJv ciBhcyBlOg0KICAgICAgICAgbG9nZ2luZy5kZWJ1ZygnRXJyb3Igd2hpbGUg cmVtb3ZpbmcgYnVpbGQgZGlyOiAlcycgJSAoZSkpDQogDQogICAgIGZvciBk aXJzIGluIFtidWlsZF9jb25maWcuY2hlY2tvYmpfZGlyLA0KQEAgLTEwNTUs NyArMTA2Niw3IEBADQogICAgICAgICAgICAgc2luayA9IG9zLnBhdGguam9p bihidWlsZF9jb25maWcuYnVpbGRfZGlyLCBzaW5rKQ0KICAgICAgICAgdGVt cGxhdGVzX3RvX3Byb2Nbc291cmNlXSA9IHNpbmsNCiANCi0gICAgZm9yICh0 ZW1wbGF0ZSwgc2luaykgaW4gdGVtcGxhdGVzX3RvX3Byb2MuaXRlbXMoKToN CisgICAgZm9yICh0ZW1wbGF0ZSwgc2luaykgaW4gbGlzdCh0ZW1wbGF0ZXNf dG9fcHJvYy5pdGVtcygpKToNCiAgICAgICAgIHRyeToNCiAgICAgICAgICAg ICBmID0gb3BlbihzaW5rLCAndycpDQogICAgICAgICAgICAgZi53cml0ZShw cm9jZXNzX3RlbXBsYXRlKHRlbXBsYXRlLCB0ZW1wbGF0ZV92YXJzKSkNCkBA IC0xMTI4LDcgKzExMzksNyBAQA0KICAgICBpZiBvcHRpb25zLm9zIG5vdCBp biBvc2luZm86DQogDQogICAgICAgICBkZWYgZmluZF9jYW5vbmljYWxfb3Nf bmFtZShvcyk6DQotICAgICAgICAgICAgZm9yIChuYW1lLCBpbmZvKSBpbiBv c2luZm8uaXRlbXMoKToNCisgICAgICAgICAgICBmb3IgKG5hbWUsIGluZm8p IGluIGxpc3Qob3NpbmZvLml0ZW1zKCkpOg0KICAgICAgICAgICAgICAgICBp ZiBvcyBpbiBpbmZvLmFsaWFzZXM6DQogICAgICAgICAgICAgICAgICAgICBy ZXR1cm4gbmFtZQ0KICAgICAgICAgICAgIHJldHVybiBvcyAjIG5vdCBmb3Vu ZA0KQEAgLTExNjYsMTMgKzExNzcsMTMgQEANCiAgICAgICAgICAgICAgICAg bWF0Y2hpbmdfdmVyc2lvbiA9ICcoNFwuWzAxMjM0XVwuKXwoM1wuWzM0XVwu KXwoMlwuOTVcLlswLTRdKScNCiANCiAgICAgICAgICAgICAgICAgZ2NjX3Zl cnNpb24gPSAnJy5qb2luKA0KLSAgICAgICAgICAgICAgICAgICAgc3VicHJv Y2Vzcy5Qb3BlbihbJ2crKycsICctdiddLA0KKyAgICAgICAgICAgICAgICAg ICAgc3RyKHN1YnByb2Nlc3MuUG9wZW4oWydnKysnLCAnLXYnXSwNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Rkb3V0PXN1YnBy b2Nlc3MuUElQRSwNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgc3RkZXJyPXN1YnByb2Nlc3MuUElQRSkuY29tbXVuaWNhdGUoKSkN CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkZXJy PXN1YnByb2Nlc3MuUElQRSkuY29tbXVuaWNhdGUoKSkpDQogDQogICAgICAg ICAgICAgICAgIGlmIHJlLnNlYXJjaChtYXRjaGluZ192ZXJzaW9uLCBnY2Nf dmVyc2lvbik6DQogICAgICAgICAgICAgICAgICAgICBvcHRpb25zLmR1bWJf Z2NjID0gVHJ1ZQ0KLSAgICAgICAgICAgIGV4Y2VwdCBPU0Vycm9yLCBlOg0K KyAgICAgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6DQogICAgICAgICAg ICAgICAgIGxvZ2dpbmcuaW5mbygnQ291bGQgbm90IGV4ZWN1dGUgR0NDIGZv ciB2ZXJzaW9uIGNoZWNrJykNCiANCiAgICAgICAgIGlmIG9wdGlvbnMuZHVt Yl9nY2MgaXMgVHJ1ZToNCkBAIC0xMjA2LDggKzEyMTcsOCBAQA0KIGlmIF9f bmFtZV9fID09ICdfX21haW5fXyc6DQogICAgIHRyeToNCiAgICAgICAgIG1h aW4oKQ0KLSAgICBleGNlcHQgRXhjZXB0aW9uLCBlOg0KLSAgICAgICAgcHJp bnQgPj5zeXMuc3RkZXJyLCBlDQorICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMg ZToNCisgICAgICAgIGxvZ2dpbmcuZXJyb3Ioc3RyKGUpKQ0KICAgICAgICAg I2ltcG9ydCB0cmFjZWJhY2sNCiAgICAgICAgICN0cmFjZWJhY2sucHJpbnRf ZXhjKGZpbGU9c3lzLnN0ZGVycikNCiAgICAgICAgIHN5cy5leGl0KDEpDQo= --0-1170577971-1319491759=:11267--