From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Stefan Kangas Newsgroups: gmane.emacs.bugs Subject: bug#50752: 28.0.50; easy-menu-define lowers the menu-bar key Date: Tue, 19 Oct 2021 14:54:59 -0700 Message-ID: References: <87bl4jvudm.fsf@gnus.org> <837dehp248.fsf@gnu.org> <87czo96shw.fsf@gnus.org> <87wnmh5bes.fsf@gnus.org> <87wnmh3p9k.fsf@gnus.org> <83sfwxck9r.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="000000000000959d7305cebbb642" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="5671"; mail-complaints-to="usenet@ciao.gmane.io" Cc: shuguang79@qq.com, larsi@gnus.org, 50752@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Oct 19 23:56:48 2021 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 1mcx6F-0001FE-O4 for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 19 Oct 2021 23:56:47 +0200 Original-Received: from localhost ([::1]:51348 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mcx6D-0003MN-J6 for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 19 Oct 2021 17:56:45 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:55718) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mcx5W-0003MB-92 for bug-gnu-emacs@gnu.org; Tue, 19 Oct 2021 17:56:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:40635) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mcx5V-0003zP-Uh for bug-gnu-emacs@gnu.org; Tue, 19 Oct 2021 17:56:01 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1mcx5V-0005hW-S6 for bug-gnu-emacs@gnu.org; Tue, 19 Oct 2021 17:56:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Stefan Kangas Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 19 Oct 2021 21:56:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 50752 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 50752-submit@debbugs.gnu.org id=B50752.163468051321857 (code B ref 50752); Tue, 19 Oct 2021 21:56:01 +0000 Original-Received: (at 50752) by debbugs.gnu.org; 19 Oct 2021 21:55:13 +0000 Original-Received: from localhost ([127.0.0.1]:52181 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mcx4i-0005gT-7E for submit@debbugs.gnu.org; Tue, 19 Oct 2021 17:55:12 -0400 Original-Received: from mail-pg1-f182.google.com ([209.85.215.182]:35791) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mcx4c-0005fY-V6 for 50752@debbugs.gnu.org; Tue, 19 Oct 2021 17:55:11 -0400 Original-Received: by mail-pg1-f182.google.com with SMTP id 136so853567pgc.2 for <50752@debbugs.gnu.org>; Tue, 19 Oct 2021 14:55:06 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:in-reply-to:references:mime-version:date :message-id:subject:to:cc; bh=ZaiCQyIZ4Ob/yJuPS1MB+Sju0pij+9srjAVpHgXkY9o=; b=aOqhmt1Z+G3dgbM3tyqN1LqtUQjw7MjuJqluTvSvUgocTiUIBwPg8fZ4XAMlPDhRo0 c2N6/SfqY7+9B+s4a+0UjOb7i3DrQ6Ncl9PrS7cJuGOVfakG8aXR1loXPkncWyDMMrZz OHCcXA2QkTCiCs8rlAA6XpiJnOEbC+4VkxIYAJKIqVcPM1ZY0KgzjtCGi5eqN4caHNEC kRFarnO3dX0BTMfwB4kMCYxhVwj7s6mTO+nKCY/MphkP0HreAVo9X1oAe+SmkwnvPtrc 0ZlHgfv97AW80HqUdOQrdPrsWzv6FoXbdtzUoMLOlm/kvMI4pUzBDDd6zGIq4IRLXSfa XdEA== X-Gm-Message-State: AOAM533OpzacqvY0wxr8OY8bAB3m3LyHUTkkgbl54nYfWP0ebj5X5tQk CCEawQM+TMEkUCJH4g5gGWK2TJq4XKTn/W9K0MI= X-Google-Smtp-Source: ABdhPJzNOtkFNa3Z0vhhOHH3zyzg/iSjZYaAwNBiwxn7gFBgA7RUpaJl9xQxy4syXDvOzP6SBE5mHx6p+hIxG566EvA= X-Received: by 2002:a05:6a00:244d:b0:44d:c279:5155 with SMTP id d13-20020a056a00244d00b0044dc2795155mr2414758pfj.0.1634680501002; Tue, 19 Oct 2021 14:55:01 -0700 (PDT) Original-Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Tue, 19 Oct 2021 14:54:59 -0700 In-Reply-To: <83sfwxck9r.fsf@gnu.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:217610 Archived-At: --000000000000959d7305cebbb642 Content-Type: text/plain; charset="UTF-8" Eli Zaretskii writes: > Don't give up, you are close. Thank you! Your feedback so far has been extremely useful and much appreciated. Based on your comments, I have been able to come up with the attached patch. It bootstraps and all tests pass. Please let me know what you think. --000000000000959d7305cebbb642 Content-Type: text/x-diff; charset="utf-8"; name="0001-Be-more-allowing-when-looking-for-menu-bar-items.patch" Content-Disposition: attachment; filename="0001-Be-more-allowing-when-looking-for-menu-bar-items.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: e43fee9b7f5895b5_0.1 RnJvbSA2N2QwODQ3MGI5YTA3ZGEyMDUzYTU2Mjg3OWUyMjJhNDU2MDk4ZTJiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBTdGVmYW4gS2FuZ2FzIDxzdGVmYW5AbWFyeGlzdC5zZT4KRGF0 ZTogV2VkLCAxMyBPY3QgMjAyMSAwMDowNDoyMyArMDIwMApTdWJqZWN0OiBbUEFUQ0hdIEJlIG1v cmUgYWxsb3dpbmcgd2hlbiBsb29raW5nIGZvciBtZW51LWJhciBpdGVtcwoKKiBzcmMva2V5bWFw LmMgKGxvb2t1cF9rZXlfMSk6IEZhY3RvciBvdXQgZnVuY3Rpb24gZnJvbQpGbG9va3VwX2tleS4K KEZsb29rdXBfa2V5KTogQmUgY2FzZSBpbnNlbnNpdGl2ZSwgYW5kIHRyZWF0IHNwYWNlcyBhcyBk YXNoZXMsCndoZW4gbG9va2luZyBmb3IgUW1lbnVfYmFyIGl0ZW1zLiAgKEJ1ZyM1MDc1MikKCiog dGVzdC9zcmMva2V5bWFwLXRlc3RzLmVsCihrZXltYXAtbG9va3VwLWtleS9taXhlZC1jYXNlKQoo a2V5bWFwLWxvb2t1cC1rZXkvbWl4ZWQtY2FzZS1tdWx0aWJ5dGUpCihrZXltYXAtbG9va3VwLWtl eW1hcC93aXRoLXNwYWNlcykKKGtleW1hcC1sb29rdXAta2V5bWFwL3dpdGgtc3BhY2VzLW11bHRp Ynl0ZSkKKGtleW1hcC1sb29rdXAta2V5bWFwL3dpdGgtc3BhY2VzLW11bHRpYnl0ZS1sYW5nLWVu dik6IE5ldyB0ZXN0cy4KLS0tCiBldGMvTkVXUyAgICAgICAgICAgICAgICAgfCAgIDggKysKIHNy Yy9rZXltYXAuYyAgICAgICAgICAgICB8IDE2MiArKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrLS0tLS0KIHRlc3Qvc3JjL2tleW1hcC10ZXN0cy5lbCB8ICA0MyArKysrKysrKysrKwog MyBmaWxlcyBjaGFuZ2VkLCAxOTIgaW5zZXJ0aW9ucygrKSwgMjEgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvZXRjL05FV1MgYi9ldGMvTkVXUwppbmRleCA3MDMxYmUzMTFlLi5iNDc5MzkzMDVm IDEwMDY0NAotLS0gYS9ldGMvTkVXUworKysgYi9ldGMvTkVXUwpAQCAtNDMyMCw2ICs0MzIwLDE0 IEBAIFRoZSBuZXcgb3B0aW9uYWwgIiwiIHBhcmFtZXRlciBoYXMgYmVlbiBhZGRlZCwgYW5kCiAq KiAncGFyc2UtdGltZS1zdHJpbmcnIGNhbiBub3cgcGFyc2UgSVNPIDg2MDEgZm9ybWF0IHN0cmlu Z3MuCiBUaGVzZSBoYXZlIGEgZm9ybWF0IGxpa2UgIjIwMjAtMDEtMTVUMTY6MTI6MjEtMDg6MDAi LgogCistLS0KKyoqICdsb29rdXAta2V5JyBpcyBtb3JlIGFsbG93aW5nIHdoZW4gc2VhcmNoaW5n IGZvciBleHRlbmRlZCBtZW51IGl0ZW1zLgorV2hlbiBsb29raW5nIGZvciBhIG1lbnUgaXRlbSAn W21lbnUtYmFyIEZvby1CYXJdJywgZmlyc3QgdHJ5IHRvIGZpbmQKK2FuIGV4YWN0IG1hdGNoLCB0 aGVuIGxvb2sgZm9yIHRoZSBsb3dlcmNhc2VkICdbbWVudS1iYXIgZm9vLWJhcl0nLgorV2hlbiBs b29raW5nIGZvciBhIG1lbnUgaXRlbSB3aXRoIGEgc3ltYm9sIGNvbnRhaW5pbmcgc3BhY2VzLCBh cyBpbgorJ1ttZW51LWJhciBGb29cIEJhcl0nLCBsb29rIGZvciBhbiBleGFjdCBtYXRjaCAsIHRo ZW4gbG9vayBmb3IgYm90aAorJ1ttZW51LWJhciBmb29cIGJhcl0nIGFuZCAnW21lbnUtYmFyIGZv by1iYXJdJy4KKwogLS0tCiAqKiAnbWFrZS1uZXR3b3JrLXByb2Nlc3MnLCAnbWFrZS1zZXJpYWwt cHJvY2VzcycgJzpjb2RpbmcnIGJlaGF2aW9yIGNoYW5nZS4KIFByZXZpb3VzbHksIHBhc3Npbmcg Jzpjb2RpbmcgbmlsJyB0byBlaXRoZXIgb2YgdGhlc2UgZnVuY3Rpb25zIHdvdWxkCmRpZmYgLS1n aXQgYS9zcmMva2V5bWFwLmMgYi9zcmMva2V5bWFwLmMKaW5kZXggYmU0NWQyYmUxZS4uNzU0MjJj YWY0OCAxMDA2NDQKLS0tIGEvc3JjL2tleW1hcC5jCisrKyBiL3NyYy9rZXltYXAuYwpAQCAtNjUs NiArNjUsOSBAQAogLyogUHJlLWFsbG9jYXRlZCAyLWVsZW1lbnQgdmVjdG9yIGZvciBGY29tbWFu ZF9yZW1hcHBpbmcgdG8gdXNlLiAgKi8KIHN0YXRpYyBMaXNwX09iamVjdCBjb21tYW5kX3JlbWFw cGluZ192ZWN0b3I7CiAKKy8qIENoYXIgdGFibGUgZm9yIHRoZSBiYWNrd2FyZHMtY29tcGF0aWJp bGl0eSBwYXJ0IGluIEZsb29rdXBfa2V5LiAgKi8KK0xpc3BfT2JqZWN0IHVuaWNvZGVfY2FzZV90 YWJsZTsKKwogLyogSGFzaCB0YWJsZSB1c2VkIHRvIGNhY2hlIGEgcmV2ZXJzZS1tYXAgdG8gc3Bl ZWQgdXAgY2FsbHMgdG8gd2hlcmUtaXMuICAqLwogc3RhdGljIExpc3BfT2JqZWN0IHdoZXJlX2lz X2NhY2hlOwogLyogV2hpY2gga2V5bWFwcyBhcmUgcmV2ZXJzZS1zdG9yZWQgaW4gdGhlIGNhY2hl LiAgKi8KQEAgLTExODAsMjcgKzExODMsOCBAQCBERUZVTiAoImNvbW1hbmQtcmVtYXBwaW5nIiwg RmNvbW1hbmRfcmVtYXBwaW5nLCBTY29tbWFuZF9yZW1hcHBpbmcsIDEsIDMsIDAsCiAgIHJldHVy biBGSVhOVU1QIChjb21tYW5kKSA/IFFuaWwgOiBjb21tYW5kOwogfQogCi0vKiBWYWx1ZSBpcyBu dW1iZXIgaWYgS0VZIGlzIHRvbyBsb25nOyBuaWwgaWYgdmFsaWQgYnV0IGhhcyBubyBkZWZpbml0 aW9uLiAgKi8KLS8qIEdDIGlzIHBvc3NpYmxlIGluIHRoaXMgZnVuY3Rpb24uICAqLwotCi1ERUZV TiAoImxvb2t1cC1rZXkiLCBGbG9va3VwX2tleSwgU2xvb2t1cF9rZXksIDIsIDMsIDAsCi0gICAg ICAgZG9jOiAvKiBMb29rIHVwIGtleSBzZXF1ZW5jZSBLRVkgaW4gS0VZTUFQLiAgUmV0dXJuIHRo ZSBkZWZpbml0aW9uLgotQSB2YWx1ZSBvZiBuaWwgbWVhbnMgdW5kZWZpbmVkLiAgU2VlIGRvYyBv ZiBgZGVmaW5lLWtleScKLWZvciBraW5kcyBvZiBkZWZpbml0aW9ucy4KLQotQSBudW1iZXIgYXMg dmFsdWUgbWVhbnMgS0VZIGlzICJ0b28gbG9uZyI7Ci10aGF0IGlzLCBjaGFyYWN0ZXJzIG9yIHN5 bWJvbHMgaW4gaXQgZXhjZXB0IGZvciB0aGUgbGFzdCBvbmUKLWZhaWwgdG8gYmUgYSB2YWxpZCBz ZXF1ZW5jZSBvZiBwcmVmaXggY2hhcmFjdGVycyBpbiBLRVlNQVAuCi1UaGUgbnVtYmVyIGlzIGhv dyBtYW55IGNoYXJhY3RlcnMgYXQgdGhlIGZyb250IG9mIEtFWQotaXQgdGFrZXMgdG8gcmVhY2gg YSBub24tcHJlZml4IGtleS4KLUtFWU1BUCBjYW4gYWxzbyBiZSBhIGxpc3Qgb2Yga2V5bWFwcy4K LQotTm9ybWFsbHksIGBsb29rdXAta2V5JyBpZ25vcmVzIGJpbmRpbmdzIGZvciB0LCB3aGljaCBh Y3QgYXMgZGVmYXVsdAotYmluZGluZ3MsIHVzZWQgd2hlbiBub3RoaW5nIGVsc2UgaW4gdGhlIGtl eW1hcCBhcHBsaWVzOyB0aGlzIG1ha2VzIGl0Ci11c2FibGUgYXMgYSBnZW5lcmFsIGZ1bmN0aW9u IGZvciBwcm9iaW5nIGtleW1hcHMuICBIb3dldmVyLCBpZiB0aGUKLXRoaXJkIG9wdGlvbmFsIGFy Z3VtZW50IEFDQ0VQVC1ERUZBVUxUIGlzIG5vbi1uaWwsIGBsb29rdXAta2V5JyB3aWxsCi1yZWNv Z25pemUgdGhlIGRlZmF1bHQgYmluZGluZ3MsIGp1c3QgYXMgYHJlYWQta2V5LXNlcXVlbmNlJyBk b2VzLiAgKi8pCi0gIChMaXNwX09iamVjdCBrZXltYXAsIExpc3BfT2JqZWN0IGtleSwgTGlzcF9P YmplY3QgYWNjZXB0X2RlZmF1bHQpCitzdGF0aWMgTGlzcF9PYmplY3QKK2xvb2t1cF9rZXlfMSAo TGlzcF9PYmplY3Qga2V5bWFwLCBMaXNwX09iamVjdCBrZXksIExpc3BfT2JqZWN0IGFjY2VwdF9k ZWZhdWx0KQogewogICBib29sIHRfb2sgPSAhTklMUCAoYWNjZXB0X2RlZmF1bHQpOwogCkBAIC0x MjQwLDYgKzEyMjQsMTQwIEBAIERFRlVOICgibG9va3VwLWtleSIsIEZsb29rdXBfa2V5LCBTbG9v a3VwX2tleSwgMiwgMywgMCwKICAgICB9CiB9CiAKKy8qIFZhbHVlIGlzIG51bWJlciBpZiBLRVkg aXMgdG9vIGxvbmc7IG5pbCBpZiB2YWxpZCBidXQgaGFzIG5vIGRlZmluaXRpb24uICAqLworLyog R0MgaXMgcG9zc2libGUgaW4gdGhpcyBmdW5jdGlvbi4gICovCisKK0RFRlVOICgibG9va3VwLWtl eSIsIEZsb29rdXBfa2V5LCBTbG9va3VwX2tleSwgMiwgMywgMCwKKyAgICAgICBkb2M6IC8qIExv b2sgdXAga2V5IHNlcXVlbmNlIEtFWSBpbiBLRVlNQVAuICBSZXR1cm4gdGhlIGRlZmluaXRpb24u CitBIHZhbHVlIG9mIG5pbCBtZWFucyB1bmRlZmluZWQuICBTZWUgZG9jIG9mIGBkZWZpbmUta2V5 JworZm9yIGtpbmRzIG9mIGRlZmluaXRpb25zLgorCitBIG51bWJlciBhcyB2YWx1ZSBtZWFucyBL RVkgaXMgInRvbyBsb25nIjsKK3RoYXQgaXMsIGNoYXJhY3RlcnMgb3Igc3ltYm9scyBpbiBpdCBl eGNlcHQgZm9yIHRoZSBsYXN0IG9uZQorZmFpbCB0byBiZSBhIHZhbGlkIHNlcXVlbmNlIG9mIHBy ZWZpeCBjaGFyYWN0ZXJzIGluIEtFWU1BUC4KK1RoZSBudW1iZXIgaXMgaG93IG1hbnkgY2hhcmFj dGVycyBhdCB0aGUgZnJvbnQgb2YgS0VZCitpdCB0YWtlcyB0byByZWFjaCBhIG5vbi1wcmVmaXgg a2V5LgorS0VZTUFQIGNhbiBhbHNvIGJlIGEgbGlzdCBvZiBrZXltYXBzLgorCitOb3JtYWxseSwg YGxvb2t1cC1rZXknIGlnbm9yZXMgYmluZGluZ3MgZm9yIHQsIHdoaWNoIGFjdCBhcyBkZWZhdWx0 CitiaW5kaW5ncywgdXNlZCB3aGVuIG5vdGhpbmcgZWxzZSBpbiB0aGUga2V5bWFwIGFwcGxpZXM7 IHRoaXMgbWFrZXMgaXQKK3VzYWJsZSBhcyBhIGdlbmVyYWwgZnVuY3Rpb24gZm9yIHByb2Jpbmcg a2V5bWFwcy4gIEhvd2V2ZXIsIGlmIHRoZQordGhpcmQgb3B0aW9uYWwgYXJndW1lbnQgQUNDRVBU LURFRkFVTFQgaXMgbm9uLW5pbCwgYGxvb2t1cC1rZXknIHdpbGwKK3JlY29nbml6ZSB0aGUgZGVm YXVsdCBiaW5kaW5ncywganVzdCBhcyBgcmVhZC1rZXktc2VxdWVuY2UnIGRvZXMuICAqLykKKyAg KExpc3BfT2JqZWN0IGtleW1hcCwgTGlzcF9PYmplY3Qga2V5LCBMaXNwX09iamVjdCBhY2NlcHRf ZGVmYXVsdCkKK3sKKyAgTGlzcF9PYmplY3QgZm91bmQgPSBsb29rdXBfa2V5XzEgKGtleW1hcCwg a2V5LCBhY2NlcHRfZGVmYXVsdCk7CisgIGlmICghTklMUCAoZm91bmQpICYmICFOVU1CRVJQIChm b3VuZCkpCisgICAgcmV0dXJuIGZvdW5kOworCisgIC8qIE1lbnUgZGVmaW5pdGlvbnMgbWlnaHQg dXNlIG1peGVkIGNhc2Ugc3ltYm9scyAobm90YWJseSBpbiBvbGQKKyAgICAgdmVyc2lvbnMgb2Yg YGVhc3ktbWVudS1kZWZpbmUnKSwgb3IgdXNlICIgIiBpbnN0ZWFkIG9mICItIi4KKyAgICAgVGhl IHJlc3Qgb2YgdGhpcyBmdW5jdGlvbiBpcyBhYm91dCBhY2NlcHRpbmcgdGhlc2UgdmFyaWF0aW9u cyBmb3IKKyAgICAgYmFja3dhcmRzLWNvbXBhdGliaWxpdHkuICAoQnVnIzUwNzUyKSAqLworCisg IC8qIEp1c3Qgc2tpcCBldmVyeXRoaW5nIGJlbG93IHVubGVzcyB0aGlzIGlzIGEgbWVudSBpdGVt LiAgKi8KKyAgaWYgKCFWRUNUT1JQIChrZXkpIHx8ICEoQVNJWkUgKGtleSkgPiAwKQorICAgICAg fHwgIUVRIChBUkVGIChrZXksIDApLCBRbWVudV9iYXIpKQorICAgIHJldHVybiBmb3VuZDsKKwor ICAvKiBJbml0aWFsaXplIHRoZSB1bmljb2RlIGNhc2UgdGFibGUsIGlmIGl0IHdhc24ndCBhbHJl YWR5LiAgKi8KKyAgaWYgKE5JTFAgKHVuaWNvZGVfY2FzZV90YWJsZSkpCisgICAgdW5pY29kZV9j YXNlX3RhYmxlID0gdW5pcHJvcF90YWJsZSAoaW50ZXJuICgibG93ZXJjYXNlIikpOworCisgIHB0 cmRpZmZfdCBrZXlfbGVuID0gQVNJWkUgKGtleSk7CisgIExpc3BfT2JqZWN0IG5ld19rZXkgPSBt YWtlX3ZlY3RvciAoa2V5X2xlbiwgUW5pbCk7CisKKyAgLyogVHJ5IGJvdGggdGhlIFVuaWNvZGUg Y2FzZSB0YWJsZSwgYW5kIHRoZSBidWZmZXIgbG9jYWwgb25lLgorICAgICBPdGhlcndpc2UsIHdl IHdpbGwgZmFpbCBmb3IgZS5nLiB0aGUgIlR1cmtpc2giIGxhbmd1YWdlCisgICAgIGVudmlyb25t ZW50IHdoZXJlICdJJyBkb2VzIG5vdCBkb3duY2FzZSB0byAnaScuICAqLworICBMaXNwX09iamVj dCB0YWJsZXNbMl0gPSB7dW5pY29kZV9jYXNlX3RhYmxlLCBGY3VycmVudF9jYXNlX3RhYmxlICgp fTsKKyAgZm9yIChpbnQgdGJsX251bSA9IDA7IHRibF9udW0gPCAyOyB0YmxfbnVtKyspCisgICAg eworICAgICAgLyogRmlyc3QsIGxldCdzIHRyeSBjb252ZXJ0aW5nIGFsbCBzeW1ib2xzIGxpa2Ug IkZvby1CYXItQmF6IiB0bworCSAiZm9vLWJhci1iYXoiLiAgKi8KKyAgICAgIGZvciAoaW50IGkg PSAwOyBpIDwga2V5X2xlbjsgaSsrKQorCXsKKwkgIExpc3BfT2JqZWN0IGtleV9pdGVtID0gRnN5 bWJvbF9uYW1lIChBUkVGIChrZXksIGkpKTsKKwkgIExpc3BfT2JqZWN0IG5ld19pdGVtOworCSAg aWYgKCFTVFJJTkdfTVVMVElCWVRFIChrZXlfaXRlbSkpCisJICAgIHsKKwkgICAgICBuZXdfaXRl bSA9IEZkb3duY2FzZSAoa2V5X2l0ZW0pOworCSAgICB9CisJICBlbHNlCisJICAgIHsKKwkgICAg ICBVU0VfU0FGRV9BTExPQ0E7CisJICAgICAgcHRyZGlmZl90IHNpemUgPSBTQ0hBUlMgKGtleV9p dGVtKSwgbjsKKwkgICAgICBpZiAoSU5UX01VTFRJUExZX1dSQVBWIChzaXplLCBNQVhfTVVMVElC WVRFX0xFTkdUSCwgJm4pKQorCQluID0gUFRSRElGRl9NQVg7CisJICAgICAgdW5zaWduZWQgY2hh ciAqZHN0ID0gU0FGRV9BTExPQ0EgKG4pOworCSAgICAgIHVuc2lnbmVkIGNoYXIgKnAgPSBkc3Q7 CisJICAgICAgcHRyZGlmZl90IGpfY2hhciA9IDAsIGpfYnl0ZSA9IDA7CisKKwkgICAgICB3aGls ZSAoal9jaGFyIDwgc2l6ZSkKKwkJeworCQkgIGludCBjaCA9IGZldGNoX3N0cmluZ19jaGFyX2Fk dmFuY2UgKGtleV9pdGVtLCAmal9jaGFyLCAmal9ieXRlKTsKKwkJICBMaXNwX09iamVjdCBjaF9j b252ID0gQ0hBUl9UQUJMRV9SRUYgKHRhYmxlc1t0YmxfbnVtXSwgY2gpOworCQkgIGlmICghTklM UCAoY2hfY29udikpCisJCSAgICBDSEFSX1NUUklORyAoWEZJWE5VTSAoY2hfY29udiksIHApOwor CQkgIGVsc2UKKwkJICAgIENIQVJfU1RSSU5HIChjaCwgcCk7CisJCSAgcCA9IGRzdCArIGpfYnl0 ZTsKKwkJfQorCSAgICAgIG5ld19pdGVtID0gbWFrZV9tdWx0aWJ5dGVfc3RyaW5nICgoY2hhciAq KSBkc3QsCisJCQkJCQlTQ0hBUlMgKGtleV9pdGVtKSwKKwkJCQkJCVNCWVRFUyAoa2V5X2l0ZW0p KTsKKwkgICAgICBTQUZFX0ZSRUUgKCk7CisJICAgIH0KKwkgIEFTRVQgKG5ld19rZXksIGksIEZp bnRlcm4gKG5ld19pdGVtLCBRbmlsKSk7CisJfQorCisgICAgICAvKiBDaGVjayBmb3IgbWF0Y2gu ICAqLworICAgICAgZm91bmQgPSBsb29rdXBfa2V5XzEgKGtleW1hcCwgbmV3X2tleSwgYWNjZXB0 X2RlZmF1bHQpOworICAgICAgaWYgKCFOSUxQIChmb3VuZCkgJiYgIU5VTUJFUlAgKGZvdW5kKSkK KwlicmVhazsKKworICAgICAgLyogSWYgd2Ugc3RpbGwgZG9uJ3QgaGF2ZSBhIG1hdGNoLCBsZXQn cyBjb252ZXJ0IGFueSBzcGFjZXMgaW4KKwkgb3VyIGxvd2VyY2FzZWQgc3RyaW5nIGludG8gZGFz aGVzLCBlLmcuICJmb28gYmFyIGJheiIgdG8KKwkgImZvby1iYXItYmF6Ii4gICovCisgICAgICBm b3IgKGludCBpID0gMDsgaSA8IGtleV9sZW47IGkrKykKKwl7CisJICBMaXNwX09iamVjdCBsY19r ZXkgPSBGc3ltYm9sX25hbWUgKEFSRUYgKG5ld19rZXksIGkpKTsKKworCSAgLyogSWYgdGhlcmUg YXJlIG5vIHNwYWNlcyBpbiB0aGlzIHN5bWJvbCwganVzdCBza2lwIGl0LiAgKi8KKwkgIGlmICgh c3Ryc3RyIChTU0RBVEEgKGxjX2tleSksICIgIikpCisJICAgIGNvbnRpbnVlOworCisJICBVU0Vf U0FGRV9BTExPQ0E7CisJICBwdHJkaWZmX3Qgc2l6ZSA9IFNDSEFSUyAobGNfa2V5KSwgbjsKKwkg IGlmIChJTlRfTVVMVElQTFlfV1JBUFYgKHNpemUsIE1BWF9NVUxUSUJZVEVfTEVOR1RILCAmbikp CisJICAgIG4gPSBQVFJESUZGX01BWDsKKwkgIHVuc2lnbmVkIGNoYXIgKmRzdCA9IFNBRkVfQUxM T0NBIChuKTsKKworCSAgLyogV2UgY2FuIHdhbGsgdGhlIHN0cmluZyBkYXRhIGJ5dGUgYnkgYnl0 ZSwgYmVjYXVzZSBVVEYtOAorCSAgICAgZW5jb2RpbmcgZW5zdXJlcyB0aGF0IG5vIG90aGVyIGJ5 dGUgb2YgYW55IG11bHRpYnl0ZQorCSAgICAgc2VxdWVuY2Ugd2lsbCBldmVyIGluY2x1ZGUgYSA3 LWJpdCBieXRlIGVxdWFsIHRvIGFuIEFTQ0lJCisJICAgICBzaW5nbGUtYnl0ZSBjaGFyYWN0ZXIu ICAqLworCSAgbWVtY3B5IChkc3QsIFNTREFUQSAobGNfa2V5KSwgU0JZVEVTIChsY19rZXkpKTsK KwkgIGZvciAoaW50IGkgPSAwOyBpIDwgU0JZVEVTIChsY19rZXkpOyArK2kpCisJICAgIHsKKwkg ICAgICBpZiAoZHN0W2ldID09ICcgJykKKwkJZHN0W2ldID0gJy0nOworCSAgICB9CisJICBMaXNw X09iamVjdAorCSAgICBuZXdfaXQgPSBtYWtlX211bHRpYnl0ZV9zdHJpbmcgKChjaGFyICopIGRz dCwgU0NIQVJTIChsY19rZXkpLCBTQllURVMgKGxjX2tleSkpOworCSAgQVNFVCAobmV3X2tleSwg aSwgRmludGVybiAobmV3X2l0LCBRbmlsKSk7CisJICBTQUZFX0ZSRUUgKCk7CisJfQorCisgICAg ICAvKiBDaGVjayBmb3IgbWF0Y2guICAqLworICAgICAgZm91bmQgPSBsb29rdXBfa2V5XzEgKGtl eW1hcCwgbmV3X2tleSwgYWNjZXB0X2RlZmF1bHQpOworICAgICAgaWYgKCFOSUxQIChmb3VuZCkg JiYgIU5VTUJFUlAgKGZvdW5kKSkKKwlicmVhazsKKyAgICB9CisKKyAgcmV0dXJuIGZvdW5kOwor fQorCiAvKiBNYWtlIEtFWU1BUCBkZWZpbmUgZXZlbnQgQyBhcyBhIGtleW1hcCAoaS5lLiwgYXMg YSBwcmVmaXgpLgogICAgQXNzdW1lIHRoYXQgY3VycmVudGx5IGl0IGRvZXMgbm90IGRlZmluZSBD IGF0IGFsbC4KICAgIFJldHVybiB0aGUga2V5bWFwLiAgKi8KQEAgLTMyMTAsNiArMzMyOCw4IEBA IHN5bXNfb2Zfa2V5bWFwICh2b2lkKQogCQkJICAgICBpbnRlcm5fY19zdHJpbmcgKCJtb3VzZS00 IiksCiAJCQkgICAgIGludGVybl9jX3N0cmluZyAoIm1vdXNlLTUiKSk7CiAKKyAgc3RhdGljcHJv ICgmdW5pY29kZV9jYXNlX3RhYmxlKTsKKwogICAvKiBLZXltYXAgdXNlZCBmb3IgbWluaWJ1ZmZl cnMgd2hlbiBkb2luZyBjb21wbGV0aW9uLiAgKi8KICAgLyogS2V5bWFwIHVzZWQgZm9yIG1pbmli dWZmZXJzIHdoZW4gZG9pbmcgY29tcGxldGlvbiBhbmQgcmVxdWlyZSBhIG1hdGNoLiAgKi8KICAg REVGU1lNIChRa2V5bWFwcCwgImtleW1hcHAiKTsKZGlmZiAtLWdpdCBhL3Rlc3Qvc3JjL2tleW1h cC10ZXN0cy5lbCBiL3Rlc3Qvc3JjL2tleW1hcC10ZXN0cy5lbAppbmRleCA2OGI0MmMzNDZjLi5h NzQ4MGZlNWNjIDEwMDY0NAotLS0gYS90ZXN0L3NyYy9rZXltYXAtdGVzdHMuZWwKKysrIGIvdGVz dC9zcmMva2V5bWFwLXRlc3RzLmVsCkBAIC0xMjQsNiArMTI0LDQ5IEBAIGtleW1hcC1sb29rdXAt a2V5L3Rvby1sb25nCiA7OyAoZXJ0LWRlZnRlc3Qga2V5bWFwLWxvb2t1cC1rZXkvYWNjZXB0LWRl ZmF1bHQgKCkKIDs7ICAgLi4uKQogCisoZXJ0LWRlZnRlc3Qga2V5bWFwLWxvb2t1cC1rZXkvbWl4 ZWQtY2FzZSAoKQorICAiQmFja3dhcmRzIGNvbXBhdGliaWxpdHkgYmVoYXZpb3VyIChCdWcjNTA3 NTIpLiIKKyAgKGxldCAoKG1hcCAobWFrZS1rZXltYXApKSkKKyAgICAoZGVmaW5lLWtleSBtYXAg W21lbnUtYmFyIGZvbyBiYXJdICdmb28pCisgICAgKHNob3VsZCAoZXEgKGxvb2t1cC1rZXkgbWFw IFttZW51LWJhciBmb28gYmFyXSkgJ2ZvbykpCisgICAgKHNob3VsZCAoZXEgKGxvb2t1cC1rZXkg bWFwIFttZW51LWJhciBGb28gQmFyXSkgJ2ZvbykpKQorICAobGV0ICgobWFwIChtYWtlLWtleW1h cCkpKQorICAgIChkZWZpbmUta2V5IG1hcCBbbWVudS1iYXIgaS1iYXJdICdmb28pCisgICAgKHNo b3VsZCAoZXEgKGxvb2t1cC1rZXkgbWFwIFttZW51LWJhciBJLWJhcl0pICdmb28pKSkpCisKKyhl cnQtZGVmdGVzdCBrZXltYXAtbG9va3VwLWtleS9taXhlZC1jYXNlLW11bHRpYnl0ZSAoKQorICAi QmFja3dhcmRzIGNvbXBhdGliaWxpdHkgYmVoYXZpb3VyIChCdWcjNTA3NTIpLiIKKyAgKGxldCAo KG1hcCAobWFrZS1rZXltYXApKSkKKyAgICA7OyAoZG93bmNhc2UgIsOFw6TDtiIpID0+ICLDpcOk w7YiCisgICAgKGRlZmluZS1rZXkgbWFwIFttZW51LWJhciDDpcOkw7YgYmFyXSAnZm9vKQorICAg IChzaG91bGQgKGVxIChsb29rdXAta2V5IG1hcCBbbWVudS1iYXIgw6XDpMO2IGJhcl0pICdmb28p KQorICAgIChzaG91bGQgKGVxIChsb29rdXAta2V5IG1hcCBbbWVudS1iYXIgw4XDpMO2IEJhcl0p ICdmb28pKQorICAgIDs7IChkb3duY2FzZSAizpMiKSA9PiAizrMiCisgICAgKGRlZmluZS1rZXkg bWFwIFttZW51LWJhciDOsyBiYXJdICdiYXopCisgICAgKHNob3VsZCAoZXEgKGxvb2t1cC1rZXkg bWFwIFttZW51LWJhciDOsyBiYXJdKSAnYmF6KSkKKyAgICAoc2hvdWxkIChlcSAobG9va3VwLWtl eSBtYXAgW21lbnUtYmFyIM6TIEJhcl0pICdiYXopKSkpCisKKyhlcnQtZGVmdGVzdCBrZXltYXAt bG9va3VwLWtleW1hcC93aXRoLXNwYWNlcyAoKQorICAiQmFja3dhcmRzIGNvbXBhdGliaWxpdHkg YmVoYXZpb3VyIChCdWcjNTA3NTIpLiIKKyAgKGxldCAoKG1hcCAobWFrZS1rZXltYXApKSkKKyAg ICAoZGVmaW5lLWtleSBtYXAgW21lbnUtYmFyIGZvby1iYXJdICdmb28pCisgICAgKHNob3VsZCAo ZXEgKGxvb2t1cC1rZXkgbWFwIFttZW51LWJhciBGb29cIEJhcl0pICdmb28pKSkpCisKKyhlcnQt ZGVmdGVzdCBrZXltYXAtbG9va3VwLWtleW1hcC93aXRoLXNwYWNlcy1tdWx0aWJ5dGUgKCkKKyAg IkJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IGJlaGF2aW91ciAoQnVnIzUwNzUyKS4iCisgIChsZXQg KChtYXAgKG1ha2Uta2V5bWFwKSkpCisgICAgKGRlZmluZS1rZXkgbWFwIFttZW51LWJhciDDpcOk w7YtYmFyXSAnZm9vKQorICAgIChzaG91bGQgKGVxIChsb29rdXAta2V5IG1hcCBbbWVudS1iYXIg w4XDpMO2XCBCYXJdKSAnZm9vKSkpKQorCisoZXJ0LWRlZnRlc3Qga2V5bWFwLWxvb2t1cC1rZXlt YXAvd2l0aC1zcGFjZXMtbXVsdGlieXRlLWxhbmctZW52ICgpCisgICJCYWNrd2FyZHMgY29tcGF0 aWJpbGl0eSBiZWhhdmlvdXIgKEJ1ZyM1MDc1MikuIgorICAobGV0ICgobGFuZy1lbnYgY3VycmVu dC1sYW5ndWFnZS1lbnZpcm9ubWVudCkpCisgICAgKHNldC1sYW5ndWFnZS1lbnZpcm9ubWVudCAi VHVya2lzaCIpCisgICAgKGxldCAoKG1hcCAobWFrZS1rZXltYXApKSkKKyAgICAgIChkZWZpbmUt a2V5IG1hcCBbbWVudS1iYXIgaS1iYXJdICdmb28pCisgICAgICAoc2hvdWxkIChlcSAobG9va3Vw LWtleSBtYXAgW21lbnUtYmFyIEktYmFyXSkgJ2ZvbykpKQorICAgIChzZXQtbGFuZ3VhZ2UtZW52 aXJvbm1lbnQgbGFuZy1lbnYpKSkKKwogKGVydC1kZWZ0ZXN0IGRlc2NyaWJlLWJ1ZmZlci1iaW5k aW5ncy9oZWFkZXItaW4tY3VycmVudC1idWZmZXIgKCkKICAgIkhlYWRlciBzaG91bGQgYmUgaW5z ZXJ0ZWQgaW50byB0aGUgY3VycmVudCBidWZmZXIuCiBodHRwczovL2RlYmJ1Z3MuZ251Lm9yZy8z OTE0OSMzMSIKLS0gCjIuMzAuMgoK --000000000000959d7305cebbb642--