From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Richard Hansen Newsgroups: gmane.emacs.bugs Subject: bug#56048: [PATCH] bindat (strz): Null terminate fixed-length strings if there is room Date: Fri, 17 Jun 2022 23:02:57 -0400 Message-ID: References: <8b471c36-abbe-819c-96d8-8f0d7b671afb@rhansen.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------0cGwk6IiMMMcX1LeGIXhodm0" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="24634"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.9.1 Cc: monnier@iro.umontreal.ca To: 56048@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Jun 18 05:04:13 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1o2Oku-00068w-Qn for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 18 Jun 2022 05:04:13 +0200 Original-Received: from localhost ([::1]:57472 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o2Okt-0007v9-J2 for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 17 Jun 2022 23:04:11 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:57364) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o2Okl-0007um-5I for bug-gnu-emacs@gnu.org; Fri, 17 Jun 2022 23:04:03 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:53426) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1o2Okk-0005Ap-Qq for bug-gnu-emacs@gnu.org; Fri, 17 Jun 2022 23:04:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1o2Okk-0003Oo-Fi for bug-gnu-emacs@gnu.org; Fri, 17 Jun 2022 23:04:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Richard Hansen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 18 Jun 2022 03:04:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 56048 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 56048-submit@debbugs.gnu.org id=B56048.165552139113006 (code B ref 56048); Sat, 18 Jun 2022 03:04:02 +0000 Original-Received: (at 56048) by debbugs.gnu.org; 18 Jun 2022 03:03:11 +0000 Original-Received: from localhost ([127.0.0.1]:47323 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o2Oju-0003Ni-B7 for submit@debbugs.gnu.org; Fri, 17 Jun 2022 23:03:10 -0400 Original-Received: from spork.scientician.org ([66.228.35.160]:41348) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o2Ojm-0003NG-Gr for 56048@debbugs.gnu.org; Fri, 17 Jun 2022 23:03:09 -0400 X-Submitted: to spork.scientician.org (Postfix) with ESMTPSA id D41754810F DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rhansen.org; s=20130902-spork; t=1655521381; bh=mccMmdzkokWh7oJzhrLxgwAEH4X/0G+JE1iRHsYe/RA=; h=Date:Subject:From:References:To:Cc:In-Reply-To:From; b=O/mOov2orxek5lGRnD/WXUyC/37cfD3fKn4M4I0C7nmM5n6ETdnNJSdA+Xp+hPZbp S+aligqan4/SD7QiKxMhxp+dxYeFIDS3momAx8aMt9nq2qTUCWKJq8CKT8tI3vNRWv +4UJ2nua52Kn99ZUjwfZAhKUxaBr7sj6fdQag/uw= X-Submitted: to mail.scientician.org (Postfix) with ESMTPSA id 6FAFA2009D DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rhansen.org; s=20130902-mail; t=1655521379; bh=mccMmdzkokWh7oJzhrLxgwAEH4X/0G+JE1iRHsYe/RA=; h=Date:Subject:From:References:To:Cc:In-Reply-To:From; b=PuNvrVUYVD37V28vIZXcwoMU6TVY0Fv/p/er+Mhaa7O4Cg6qriSr4qrofu2GvU4p1 Idw7H5kSXi7q0wiyWjQOnNw7+KFSzdXN18jPoDnd0vHq7LPvh8fMMszULlmIbfh1jD 4MXlWQqzI7uq77z1emT8cqUtmL/38aldUYP1Y6JE= Content-Language: en-US In-Reply-To: <8b471c36-abbe-819c-96d8-8f0d7b671afb@rhansen.org> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:234734 Archived-At: This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------0cGwk6IiMMMcX1LeGIXhodm0 Content-Type: multipart/mixed; boundary="------------MVj6CU0xKkj55kOvp4UZ0xeB"; protected-headers="v1" From: Richard Hansen To: 56048@debbugs.gnu.org Cc: monnier@iro.umontreal.ca Message-ID: Subject: Re: [PATCH] bindat (strz): Null terminate fixed-length strings if there is room References: <8b471c36-abbe-819c-96d8-8f0d7b671afb@rhansen.org> In-Reply-To: <8b471c36-abbe-819c-96d8-8f0d7b671afb@rhansen.org> --------------MVj6CU0xKkj55kOvp4UZ0xeB Content-Type: multipart/mixed; boundary="------------BnM1JU0lYe9cEWBhXeqtXSp4" --------------BnM1JU0lYe9cEWBhXeqtXSp4 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 QXR0YWNoZWQgYXJlIG5ldyByZXZpc2lvbnMgb2YgdGhlIHBhdGNoZXMuIFRoZSBvbmx5IGRp ZmZlcmVuY2VzIGFyZSB0aGUgY29tbWVudHMgd2VyZSBmaWxsZWQgYXQgY29sdW1uIDcwIGlu c3RlYWQgb2YgODAsIGFuZCB0aGUgY29tbWl0IG1lc3NhZ2UgbWVudGlvbnMgdGhlIGJ1ZyBu dW1iZXIuDQo= --------------BnM1JU0lYe9cEWBhXeqtXSp4 Content-Type: text/x-patch; charset=UTF-8; name="v2-0001-bindat-strz-Move-all-pack-logic-to-pack-function.patch" Content-Disposition: attachment; filename*0="v2-0001-bindat-strz-Move-all-pack-logic-to-pack-function.pat"; filename*1="ch" Content-Transfer-Encoding: base64 RnJvbSA2MDk2YmM4YmNlYWRhODdhNWM1NGU0ZWI1MDA4MTJhMGI3MmZmZDQ0IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBSaWNoYXJkIEhhbnNlbiA8cmhhbnNlbkByaGFuc2Vu Lm9yZz4KRGF0ZTogU3VuLCAyOSBNYXkgMjAyMiAyMToyMzo1NyAtMDQwMApTdWJqZWN0OiBb UEFUQ0ggdjIgMS8yXSA7IGJpbmRhdCAoc3Ryeik6IE1vdmUgYWxsIHBhY2sgbG9naWMgdG8g cGFjayBmdW5jdGlvbgoKLS0tCiBsaXNwL2VtYWNzLWxpc3AvYmluZGF0LmVsIHwgNDkgKysr KysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwg MjMgaW5zZXJ0aW9ucygrKSwgMjYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGlzcC9l bWFjcy1saXNwL2JpbmRhdC5lbCBiL2xpc3AvZW1hY3MtbGlzcC9iaW5kYXQuZWwKaW5kZXgg NDZlMmE0OTAxYy4uNGE2NDJiYjljNSAxMDA2NDQKLS0tIGEvbGlzcC9lbWFjcy1saXNwL2Jp bmRhdC5lbAorKysgYi9saXNwL2VtYWNzLWxpc3AvYmluZGF0LmVsCkBAIC00NDAsMjAgKzQ0 MCwyNyBAQCBiaW5kYXQtLXBhY2stc3RyCiAgICAgICAoYXNldCBiaW5kYXQtcmF3ICgrIGJp bmRhdC1pZHggaSkgKGFyZWYgdiBpKSkpCiAgICAgKHNldHEgYmluZGF0LWlkeCAoKyBiaW5k YXQtaWR4IGxlbikpKSkKIAotKGRlZnVuIGJpbmRhdC0tcGFjay1zdHJ6ICh2KQorKGRlZnVu IGJpbmRhdC0tcGFjay1zdHJ6IChsZW4gdikKICAgKGxldCogKCh2IChzdHJpbmctdG8tdW5p Ynl0ZSB2KSkKLSAgICAgICAgIChsZW4gKGxlbmd0aCB2KSkpCi0gICAgKGRvdGltZXMgKGkg bGVuKQotICAgICAgKHdoZW4gKD0gKGFyZWYgdiBpKSAwKQotICAgICAgICA7OyBBbHRlcm5h dGl2ZWx5IHdlIGNvdWxkIHByZXRlbmQgdGhhdCB0aGlzIHdhcyB0aGUgZW5kIG9mCi0gICAg ICAgIDs7IHRoZSBzdHJpbmcgYW5kIHN0b3AgcGFja2luZywgYnV0IHRoZW4gYmluZGF0LWxl bmd0aCB3b3VsZAotICAgICAgICA7OyBuZWVkIHRvIHNjYW4gdGhlIGlucHV0IHN0cmluZyBs b29raW5nIGZvciBhIG51bGwgYnl0ZS4KLSAgICAgICAgKGVycm9yICJOdWxsIGJ5dGUgZW5j b3VudGVyZWQgaW4gaW5wdXQgc3RyeiBzdHJpbmciKSkKLSAgICAgIChhc2V0IGJpbmRhdC1y YXcgKCsgYmluZGF0LWlkeCBpKSAoYXJlZiB2IGkpKSkKLSAgICA7OyBFeHBsaWNpdGx5IHdy aXRlIGEgbnVsbCB0ZXJtaW5hdG9yIGluIGNhc2UgdGhlIHVzZXIgcHJvdmlkZWQgYQotICAg IDs7IHByZS1hbGxvY2F0ZWQgc3RyaW5nIHRvIGJpbmRhdC1wYWNrIHRoYXQgd2Fzbid0IHpl cm9lZCBmaXJzdC4KLSAgICAoYXNldCBiaW5kYXQtcmF3ICgrIGJpbmRhdC1pZHggbGVuKSAw KQotICAgIChzZXRxIGJpbmRhdC1pZHggKCsgYmluZGF0LWlkeCBsZW4gMSkpKSkKKyAgICAg ICAgICh2bGVuIChsZW5ndGggdikpKQorICAgIChpZiBsZW4KKyAgICAgICAgOzsgV2hlbiBs ZW4gaXMgc3BlY2lmaWVkLCBiZWhhdmUgdGhlIHNhbWUgYXMgdGhlIHN0ciB0eXBlCisgICAg ICAgIDs7IHNpbmNlIHdlIGRvbid0IGFjdHVhbGx5IGFkZCB0aGUgdGVybWluYXRpbmcgemVy byBhbnl3YXkKKyAgICAgICAgOzsgKGJlY2F1c2Ugd2UgcmVseSBvbiB0aGUgZmFjdCB0aGF0 IGBiaW5kYXQtcmF3JyB3YXMKKyAgICAgICAgOzsgcHJlc3VtYWJseSBpbml0aWFsaXplZCB3 aXRoIGFsbC16ZXJvZXMgYmVmb3JlIHdlIHN0YXJ0ZWQpLgorICAgICAgICAoYmluZGF0LS1w YWNrLXN0ciBsZW4gdikKKyAgICAgIChkb3RpbWVzIChpIHZsZW4pCisgICAgICAgICh3aGVu ICg9IChhcmVmIHYgaSkgMCkKKyAgICAgICAgICA7OyBBbHRlcm5hdGl2ZWx5IHdlIGNvdWxk IHByZXRlbmQgdGhhdCB0aGlzIHdhcyB0aGUgZW5kIG9mCisgICAgICAgICAgOzsgdGhlIHN0 cmluZyBhbmQgc3RvcCBwYWNraW5nLCBidXQgdGhlbiBiaW5kYXQtbGVuZ3RoIHdvdWxkCisg ICAgICAgICAgOzsgbmVlZCB0byBzY2FuIHRoZSBpbnB1dCBzdHJpbmcgbG9va2luZyBmb3Ig YSBudWxsIGJ5dGUuCisgICAgICAgICAgKGVycm9yICJOdWxsIGJ5dGUgZW5jb3VudGVyZWQg aW4gaW5wdXQgc3RyeiBzdHJpbmciKSkKKyAgICAgICAgKGFzZXQgYmluZGF0LXJhdyAoKyBi aW5kYXQtaWR4IGkpIChhcmVmIHYgaSkpKQorICAgICAgOzsgRXhwbGljaXRseSB3cml0ZSBh IG51bGwgdGVybWluYXRvciBpbiBjYXNlIHRoZSB1c2VyIHByb3ZpZGVkCisgICAgICA7OyBh IHByZS1hbGxvY2F0ZWQgc3RyaW5nIHRvIGBiaW5kYXQtcGFjaycgdGhhdCB3YXNuJ3QgYWxy ZWFkeQorICAgICAgOzsgemVyb2VkLgorICAgICAgKGFzZXQgYmluZGF0LXJhdyAoKyBiaW5k YXQtaWR4IHZsZW4pIDApCisgICAgICAoc2V0cSBiaW5kYXQtaWR4ICgrIGJpbmRhdC1pZHgg dmxlbiAxKSkpKSkKIAogKGRlZnVuIGJpbmRhdC0tcGFjay1iaXRzIChsZW4gdikKICAgKGxl dCAoKGJudW0gKDEtICgqIDggbGVuKSkpIGogbSkKQEAgLTQ4Miw3ICs0ODksOCBAQCBiaW5k YXQtLXBhY2staXRlbQogICAgKCd1MjRyIChiaW5kYXQtLXBhY2stdTI0ciB2KSkKICAgICgn dTMyciAoYmluZGF0LS1wYWNrLXUzMnIgdikpCiAgICAoJ2JpdHMgKGJpbmRhdC0tcGFjay1i aXRzIGxlbiB2KSkKLSAgICgob3IgJ3N0ciAnc3RyeikgKGJpbmRhdC0tcGFjay1zdHIgbGVu IHYpKQorICAgKCdzdHIgKGJpbmRhdC0tcGFjay1zdHIgbGVuIHYpKQorICAgKCdzdHJ6IChi aW5kYXQtLXBhY2stc3RyeiBsZW4gdikpCiAgICAoJ3ZlYwogICAgIChsZXQgKChsIChsZW5n dGggdikpICh2bGVuIDEpKQogICAgICAgKGlmIChjb25zcCB2ZWN0eXBlKQpAQCAtNjk5LDE4 ICs3MDcsNyBAQCBiaW5kYXQtLXR5cGUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo KG51bWJlcnAgbGVuKSBsZW4pCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOzsgR2Vu ZXJhbCBleHByZXNzaW9uIHN1cHBvcnQuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg KHQgYChvciAsbGVuICgxKyAobGVuZ3RoICx2YWwpKSkpKSkpCi0gICAgKGAocGFjayAuICxh cmdzKQotICAgICA7OyBXaGVuIGxlbiBpcyBzcGVjaWZpZWQsIGJlaGF2ZSB0aGUgc2FtZSBh cyB0aGUgc3RyIHR5cGUgc2luY2Ugd2UgZG9uJ3QKLSAgICAgOzsgYWN0dWFsbHkgYWRkIHRo ZSB0ZXJtaW5hdGluZyB6ZXJvIGFueXdheSAoYmVjYXVzZSB3ZSByZWx5IG9uIHRoZSBmYWN0 Ci0gICAgIDs7IHRoYXQgYGJpbmRhdC1yYXcnIHdhcyBwcmVzdW1hYmx5IGluaXRpYWxpemVk IHdpdGggYWxsLXplcm9lcyBiZWZvcmUgd2UKLSAgICAgOzsgc3RhcnRlZCkuCi0gICAgIChj b25kIDsgU2FtZSBvcHRpbWl6YXRpb25zIGFzICdsZW5ndGggYWJvdmUuCi0gICAgICAoKG51 bGwgbGVuKSBgKGJpbmRhdC0tcGFjay1zdHJ6IC4gLGFyZ3MpKQotICAgICAgKChudW1iZXJw IGxlbikgYChiaW5kYXQtLXBhY2stc3RyICxsZW4gLiAsYXJncykpCi0gICAgICAodCAobWFj cm9leHAtbGV0MiBuaWwgbGVuIGxlbgotICAgICAgICAgICBgKGlmICxsZW4KLSAgICAgICAg ICAgICAgICAoYmluZGF0LS1wYWNrLXN0ciAsbGVuIC4gLGFyZ3MpCi0gICAgICAgICAgICAg IChiaW5kYXQtLXBhY2stc3RyeiAuICxhcmdzKSkpKSkpKSkKKyAgICAoYChwYWNrIC4gLGFy Z3MpIGAoYmluZGF0LS1wYWNrLXN0cnogLGxlbiAuICxhcmdzKSkpKQogCiAoY2wtZGVmbWV0 aG9kIGJpbmRhdC0tdHlwZSAob3AgKF8gKGVxbCAnYml0cykpICBsZW4pCiAgIChiaW5kYXQt LXBjYXNlIG9wCi0tIAoyLjM2LjEKCg== --------------BnM1JU0lYe9cEWBhXeqtXSp4 Content-Type: text/x-patch; charset=UTF-8; name="v2-0002-bindat-strz-Null-terminate-fixed-length-strings-i.patch" Content-Disposition: attachment; filename*0="v2-0002-bindat-strz-Null-terminate-fixed-length-strings-i.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA5ZWJkYTY4MjY0YWRjYTZmNjBmNzgwZDQ0OTk1YzQyMTNkMmMxMmMyIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBSaWNoYXJkIEhhbnNlbiA8cmhhbnNlbkByaGFuc2Vu Lm9yZz4KRGF0ZTogVGh1LCAxNiBKdW4gMjAyMiAxNToyMTo1NyAtMDQwMApTdWJqZWN0OiBb UEFUQ0ggdjIgMi8yXSBiaW5kYXQgKHN0cnopOiBOdWxsIHRlcm1pbmF0ZSBmaXhlZC1sZW5n dGggc3RyaW5ncyBpZgogdGhlcmUgaXMgcm9vbQoKKiBsaXNwL2VtYWNzLWxpc3AvYmluZGF0 LmVsIChiaW5kYXQtLXBhY2stc3Ryeik6IEZvciBmaXhlZC1sZW5ndGggc3RyegpmaWVsZHMs IGV4cGxpY2l0bHkgd3JpdGUgYSBudWxsIHRlcm1pbmF0b3IgYWZ0ZXIgdGhlIHBhY2tlZCBz dHJpbmcgaWYKdGhlcmUgaXMgcm9vbSAoYnVnIzU2MDQ4KS4KKiBkb2MvbGlzcHJlZi9wcm9j ZXNzZXMudGV4aSAoQmluZGF0IFR5cGVzKTogVXBkYXRlIGRvY3VtZW50YXRpb24uCiogdGVz dC9saXNwL2VtYWNzLWxpc3AvYmluZGF0LXRlc3RzLmVsIChiaW5kYXQtdGVzdC0tc3RyLXN0 cnotcHJlYWxsb2MpOgpVcGRhdGUgdGVzdHMuCi0tLQogZG9jL2xpc3ByZWYvcHJvY2Vzc2Vz LnRleGkgICAgICAgICAgIHwgMzAgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQogbGlz cC9lbWFjcy1saXNwL2JpbmRhdC5lbCAgICAgICAgICAgIHwgMTMgKysrKysrLS0tLS0tCiB0 ZXN0L2xpc3AvZW1hY3MtbGlzcC9iaW5kYXQtdGVzdHMuZWwgfCAxMiArKysrKy0tLS0tLQog MyBmaWxlcyBjaGFuZ2VkLCAyNyBpbnNlcnRpb25zKCspLCAyOCBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9kb2MvbGlzcHJlZi9wcm9jZXNzZXMudGV4aSBiL2RvYy9saXNwcmVmL3By b2Nlc3Nlcy50ZXhpCmluZGV4IGI5MjAwYWVkZGUuLmQwMzhkNTJkNDQgMTAwNjQ0Ci0tLSBh L2RvYy9saXNwcmVmL3Byb2Nlc3Nlcy50ZXhpCisrKyBiL2RvYy9saXNwcmVmL3Byb2Nlc3Nl cy50ZXhpCkBAIC0zNTA5LDIzICszNTA5LDIzIEBAIEJpbmRhdCBUeXBlcwogKGJ1dCBleGNs dWRpbmcpIHRoZSBudWxsIGJ5dGUgdGhhdCB0ZXJtaW5hdGVkIHRoZSBpbnB1dCBzdHJpbmcu CiAKIElmIEB2YXJ7bGVufSBpcyBwcm92aWRlZCwgQGNvZGV7c3Ryen0gYmVoYXZlcyB0aGUg c2FtZSBhcyBAY29kZXtzdHJ9LAotYnV0IHdpdGggb25lIGRpZmZlcmVuY2U6IHdoZW4gdW5w YWNraW5nLCB0aGUgZmlyc3QgbnVsbCBieXRlCi1lbmNvdW50ZXJlZCBpbiB0aGUgcGFja2Vk IHN0cmluZyBpcyBpbnRlcnByZXRlZCBhcyB0aGUgdGVybWluYXRpbmcKLWJ5dGUsIGFuZCBp dCBhbmQgYWxsIHN1YnNlcXVlbnQgYnl0ZXMgYXJlIGV4Y2x1ZGVkIGZyb20gdGhlIHJlc3Vs dCBvZgotdGhlIHVucGFja2luZy4KK2J1dCB3aXRoIGEgY291cGxlIG9mIGRpZmZlcmVuY2Vz OgorCitAaXRlbWl6ZSBAYnVsbGV0CitAaXRlbQorV2hlbiBwYWNraW5nLCBhIG51bGwgdGVy bWluYXRvciBpcyB3cml0dGVuIGFmdGVyIHRoZSBwYWNrZWQgc3RyaW5nIGlmCit0aGUgbGVu Z3RoIG9mIHRoZSBpbnB1dCBzdHJpbmcgaXMgbGVzcyB0aGFuIEB2YXJ7bGVufS4KKworQGl0 ZW0KK1doZW4gdW5wYWNraW5nLCB0aGUgZmlyc3QgbnVsbCBieXRlIGVuY291bnRlcmVkIGlu IHRoZSBwYWNrZWQgc3RyaW5nCitpcyBpbnRlcnByZXRlZCBhcyB0aGUgdGVybWluYXRpbmcg Ynl0ZSwgYW5kIGl0IGFuZCBhbGwgc3Vic2VxdWVudAorYnl0ZXMgYXJlIGV4Y2x1ZGVkIGZy b20gdGhlIHJlc3VsdCBvZiB0aGUgdW5wYWNraW5nLgorQGVuZCBpdGVtaXplCiAKIEBxdW90 YXRpb24gQ2F1dGlvbgotVGhlIHBhY2tlZCBvdXRwdXQgd2lsbCBub3QgYmUgbnVsbC10ZXJt aW5hdGVkIHVubGVzcyBvbmUgb2YgdGhlCi1mb2xsb3dpbmcgaXMgdHJ1ZToKLUBpdGVtaXpl Ci1AaXRlbQotVGhlIGlucHV0IHN0cmluZyBpcyBzaG9ydGVyIHRoYW4gQHZhcntsZW59IGJ5 dGVzIGFuZCBlaXRoZXIgbm8gcHJlLWFsbG9jYXRlZAotc3RyaW5nIHdhcyBwcm92aWRlZCB0 byBAY29kZXtiaW5kYXQtcGFja30gb3IgdGhlIGFwcHJvcHJpYXRlIGJ5dGUgaW4KLXRoZSBw cmUtYWxsb2NhdGVkIHN0cmluZyB3YXMgYWxyZWFkeSBudWxsLgotQGl0ZW0KLVRoZSBpbnB1 dCBzdHJpbmcgY29udGFpbnMgYSBudWxsIGJ5dGUgd2l0aGluIHRoZSBmaXJzdCBAdmFye2xl bn0KLWJ5dGVzLgotQGVuZCBpdGVtaXplCitUaGUgcGFja2VkIG91dHB1dCB3aWxsIG5vdCBi ZSBudWxsLXRlcm1pbmF0ZWQgdW5sZXNzIHRoZSBpbnB1dCBzdHJpbmcKK2lzIHNob3J0ZXIg dGhhbiBAdmFye2xlbn0gYnl0ZXMgb3IgaXQgY29udGFpbnMgYSBudWxsIGJ5dGUgd2l0aGlu IHRoZQorZmlyc3QgQHZhcntsZW59IGJ5dGVzLgogQGVuZCBxdW90YXRpb24KIAogQGl0ZW0g dmVjIEB2YXJ7bGVufSBbQHZhcnt0eXBlfV0KZGlmZiAtLWdpdCBhL2xpc3AvZW1hY3MtbGlz cC9iaW5kYXQuZWwgYi9saXNwL2VtYWNzLWxpc3AvYmluZGF0LmVsCmluZGV4IDRhNjQyYmI5 YzUuLjBlY2FjM2Q1MmEgMTAwNjQ0Ci0tLSBhL2xpc3AvZW1hY3MtbGlzcC9iaW5kYXQuZWwK KysrIGIvbGlzcC9lbWFjcy1saXNwL2JpbmRhdC5lbApAQCAtNDQzLDExICs0NDMsMTQgQEAg YmluZGF0LS1wYWNrLXN0cgogKGRlZnVuIGJpbmRhdC0tcGFjay1zdHJ6IChsZW4gdikKICAg KGxldCogKCh2IChzdHJpbmctdG8tdW5pYnl0ZSB2KSkKICAgICAgICAgICh2bGVuIChsZW5n dGggdikpKQorICAgIDs7IEV4cGxpY2l0bHkgd3JpdGUgYSBudWxsIHRlcm1pbmF0b3IgKGlm IHRoZXJlJ3Mgcm9vbSkgaW4gY2FzZQorICAgIDs7IHRoZSB1c2VyIHByb3ZpZGVkIGEgcHJl LWFsbG9jYXRlZCBzdHJpbmcgdG8gYGJpbmRhdC1wYWNrJyB0aGF0CisgICAgOzsgd2Fzbid0 IGFscmVhZHkgemVyb2VkLgorICAgICh3aGVuIChvciAobnVsbCBsZW4pICg8IHZsZW4gbGVu KSkKKyAgICAgIChhc2V0IGJpbmRhdC1yYXcgKCsgYmluZGF0LWlkeCB2bGVuKSAwKSkKICAg ICAoaWYgbGVuCiAgICAgICAgIDs7IFdoZW4gbGVuIGlzIHNwZWNpZmllZCwgYmVoYXZlIHRo ZSBzYW1lIGFzIHRoZSBzdHIgdHlwZQotICAgICAgICA7OyBzaW5jZSB3ZSBkb24ndCBhY3R1 YWxseSBhZGQgdGhlIHRlcm1pbmF0aW5nIHplcm8gYW55d2F5Ci0gICAgICAgIDs7IChiZWNh dXNlIHdlIHJlbHkgb24gdGhlIGZhY3QgdGhhdCBgYmluZGF0LXJhdycgd2FzCi0gICAgICAg IDs7IHByZXN1bWFibHkgaW5pdGlhbGl6ZWQgd2l0aCBhbGwtemVyb2VzIGJlZm9yZSB3ZSBz dGFydGVkKS4KKyAgICAgICAgOzsgKGV4Y2VwdCBmb3IgdGhlIG51bGwgdGVybWluYXRvciBw b3NzaWJseSB3cml0dGVuIGFib3ZlKS4KICAgICAgICAgKGJpbmRhdC0tcGFjay1zdHIgbGVu IHYpCiAgICAgICAoZG90aW1lcyAoaSB2bGVuKQogICAgICAgICAod2hlbiAoPSAoYXJlZiB2 IGkpIDApCkBAIC00NTYsMTAgKzQ1OSw2IEBAIGJpbmRhdC0tcGFjay1zdHJ6CiAgICAgICAg ICAgOzsgbmVlZCB0byBzY2FuIHRoZSBpbnB1dCBzdHJpbmcgbG9va2luZyBmb3IgYSBudWxs IGJ5dGUuCiAgICAgICAgICAgKGVycm9yICJOdWxsIGJ5dGUgZW5jb3VudGVyZWQgaW4gaW5w dXQgc3RyeiBzdHJpbmciKSkKICAgICAgICAgKGFzZXQgYmluZGF0LXJhdyAoKyBiaW5kYXQt aWR4IGkpIChhcmVmIHYgaSkpKQotICAgICAgOzsgRXhwbGljaXRseSB3cml0ZSBhIG51bGwg dGVybWluYXRvciBpbiBjYXNlIHRoZSB1c2VyIHByb3ZpZGVkCi0gICAgICA7OyBhIHByZS1h bGxvY2F0ZWQgc3RyaW5nIHRvIGBiaW5kYXQtcGFjaycgdGhhdCB3YXNuJ3QgYWxyZWFkeQot ICAgICAgOzsgemVyb2VkLgotICAgICAgKGFzZXQgYmluZGF0LXJhdyAoKyBiaW5kYXQtaWR4 IHZsZW4pIDApCiAgICAgICAoc2V0cSBiaW5kYXQtaWR4ICgrIGJpbmRhdC1pZHggdmxlbiAx KSkpKSkKIAogKGRlZnVuIGJpbmRhdC0tcGFjay1iaXRzIChsZW4gdikKZGlmZiAtLWdpdCBh L3Rlc3QvbGlzcC9lbWFjcy1saXNwL2JpbmRhdC10ZXN0cy5lbCBiL3Rlc3QvbGlzcC9lbWFj cy1saXNwL2JpbmRhdC10ZXN0cy5lbAppbmRleCBjYzIyM2FkMTRlLi4wYzAzYzUxZTJlIDEw MDY0NAotLS0gYS90ZXN0L2xpc3AvZW1hY3MtbGlzcC9iaW5kYXQtdGVzdHMuZWwKKysrIGIv dGVzdC9saXNwL2VtYWNzLWxpc3AvYmluZGF0LXRlc3RzLmVsCkBAIC0xNzIsMTQgKzE3Miwx NCBAQCBiaW5kYXQtdGVzdC0tc3RyLXN0cnotcHJlYWxsb2MKICAgICAgICAgICAgICAgICAo KCgoeCBzdHIgMikpICgoeCAuICJhIikpKSAuICJheCIpCiAgICAgICAgICAgICAgICAgKCgo KHggc3RyIDIpKSAoKHggLiAiYWIiKSkpIC4gImFiIikKICAgICAgICAgICAgICAgICAoKCgo eCBzdHIgMikpICgoeCAuICJhYmMiKSkpIC4gImFiIikKLSAgICAgICAgICAgICAgICAoKCwo YmluZGF0LXR5cGUgc3RyeiAxKSAiIikgLiAieHgiKQotICAgICAgICAgICAgICAgICgoLChi aW5kYXQtdHlwZSBzdHJ6IDIpICIiKSAuICJ4eCIpCi0gICAgICAgICAgICAgICAgKCgsKGJp bmRhdC10eXBlIHN0cnogMikgImEiKSAuICJheCIpCisgICAgICAgICAgICAgICAgKCgsKGJp bmRhdC10eXBlIHN0cnogMSkgIiIpIC4gIlwweCIpCisgICAgICAgICAgICAgICAgKCgsKGJp bmRhdC10eXBlIHN0cnogMikgIiIpIC4gIlwweCIpCisgICAgICAgICAgICAgICAgKCgsKGJp bmRhdC10eXBlIHN0cnogMikgImEiKSAuICJhXDAiKQogICAgICAgICAgICAgICAgICgoLChi aW5kYXQtdHlwZSBzdHJ6IDIpICJhYiIpIC4gImFiIikKICAgICAgICAgICAgICAgICAoKCwo YmluZGF0LXR5cGUgc3RyeiAyKSAiYWJjIikgLiAiYWIiKQotICAgICAgICAgICAgICAgICgo KCh4IHN0cnogMSkpICgoeCAuICIiKSkpIC4gInh4IikKLSAgICAgICAgICAgICAgICAoKCgo eCBzdHJ6IDIpKSAoKHggLiAiIikpKSAuICJ4eCIpCi0gICAgICAgICAgICAgICAgKCgoKHgg c3RyeiAyKSkgKCh4IC4gImEiKSkpIC4gImF4IikKKyAgICAgICAgICAgICAgICAoKCgoeCBz dHJ6IDEpKSAoKHggLiAiIikpKSAuICJcMHgiKQorICAgICAgICAgICAgICAgICgoKCh4IHN0 cnogMikpICgoeCAuICIiKSkpIC4gIlwweCIpCisgICAgICAgICAgICAgICAgKCgoKHggc3Ry eiAyKSkgKCh4IC4gImEiKSkpIC4gImFcMCIpCiAgICAgICAgICAgICAgICAgKCgoKHggc3Ry eiAyKSkgKCh4IC4gImFiIikpKSAuICJhYiIpCiAgICAgICAgICAgICAgICAgKCgoKHggc3Ry eiAyKSkgKCh4IC4gImFiYyIpKSkgLiAiYWIiKQogICAgICAgICAgICAgICAgICgoLChiaW5k YXQtdHlwZSBzdHJ6KSAiIikgLiAiXDB4IikKLS0gCjIuMzYuMQoK --------------BnM1JU0lYe9cEWBhXeqtXSp4-- --------------MVj6CU0xKkj55kOvp4UZ0xeB-- --------------0cGwk6IiMMMcX1LeGIXhodm0 Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEfoCctB7fyOzE09bW0GvrRa1X4hQFAmKtQGIACgkQ0GvrRa1X 4hRvYw/+Ifk81RlwurN3gIQlPV8IdD/BROARjqIZBst0xUB7xyZocG/jLHnoB3nT 0aWgObh4U1adddRxzbaY7X7AmiHplTkQeLmklpLGRuFtavq0+CIK+YSUvH4IX92R 9MGVGzhddaxLnXW8iIXZ0hIpVazFAPKTRGI7yvfC5ykTe8+SzjuXg4FaDA83Na1S NXCz4pp+CBf7oDMN5SjHN+3xe4UScVUbp+s0iGXhcXJ4MHa6FCXazKFKCH5ETCFA /CcW/eBJ1yL/2/lgk81NSsyqXtTlM4UpBfRtCVuMnvD4KxoiDWzr/d8BbPCUXRrB WDUv5JPMOcOBZ1z7ZBS7jPardE5pQBBObyWugcXYktiZHimNtbrwnzjZoQtrWVtV QS/T0cFiSQQV7KftFSBhPImKVa5ZW8eFa7+haW5mRGocFGhORIMcYuNc7ERMoFAg hdjOZPfCqUsIJuiL3zREhMccvvpMJJdtZs0OTc5dtBwCtfUT5AymbyajHv7IOGfk v8MUdmIHKI+tcMN1lG/ICZlwngALFv33EqT6+GYJdXpEviDFDlpeLVlpto62JTW6 PaBoXlW085iiiqLDMATl568Nqw4g+FjnHjqlBAQFD8Wp/KylAMKlw57iQcJ1SF5+ NKxzOduO6KL2lL7KFXn9JZvniLZhh+DhA0sq95HoinmIK0RkWmY= =Jdl4 -----END PGP SIGNATURE----- --------------0cGwk6IiMMMcX1LeGIXhodm0--