From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jim Porter Newsgroups: gmane.emacs.bugs Subject: bug#59545: 29.0.50; Eshell fails to redirect output of sourced eshell file Date: Wed, 21 Dec 2022 10:48:18 -0800 Message-ID: References: <9f56f995-c03d-a10e-ac18-b873af8589dc@gmail.com> <87o7rx5bfk.fsf@gmx.de> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------2jUo4nbiBSC7enuNY8qzB0V8" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="13477"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 59545@debbugs.gnu.org, eliz@gnu.org, Milan Zimmermann To: Michael Albinus Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Wed Dec 21 19:49:21 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 1p849Y-0003L3-M3 for geb-bug-gnu-emacs@m.gmane-mx.org; Wed, 21 Dec 2022 19:49:20 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1p849I-0007Zc-4Q; Wed, 21 Dec 2022 13:49:04 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1p849G-0007Yj-NI for bug-gnu-emacs@gnu.org; Wed, 21 Dec 2022 13:49:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1p849G-0003YY-FB for bug-gnu-emacs@gnu.org; Wed, 21 Dec 2022 13:49:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1p849F-00019j-Ur for bug-gnu-emacs@gnu.org; Wed, 21 Dec 2022 13:49:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Jim Porter Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 21 Dec 2022 18:49:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 59545 X-GNU-PR-Package: emacs Original-Received: via spool by 59545-submit@debbugs.gnu.org id=B59545.16716485094435 (code B ref 59545); Wed, 21 Dec 2022 18:49:01 +0000 Original-Received: (at 59545) by debbugs.gnu.org; 21 Dec 2022 18:48:29 +0000 Original-Received: from localhost ([127.0.0.1]:53362 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p848j-00019T-3H for submit@debbugs.gnu.org; Wed, 21 Dec 2022 13:48:29 -0500 Original-Received: from mail-pj1-f43.google.com ([209.85.216.43]:37540) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p848h-00019L-8i for 59545@debbugs.gnu.org; Wed, 21 Dec 2022 13:48:28 -0500 Original-Received: by mail-pj1-f43.google.com with SMTP id o1-20020a17090a678100b00219cf69e5f0so3275934pjj.2 for <59545@debbugs.gnu.org>; Wed, 21 Dec 2022 10:48:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=in-reply-to:from:references:cc:to:content-language:subject :mime-version:date:message-id:from:to:cc:subject:date:message-id :reply-to; bh=o6nx2lmgrlSPD+CcSfNDETelz62SM2Altsqv3wAr0nI=; b=DFa+V3AJ/QnX7fiGCEg1/6RzJYKlyw7Q4fu3P4ayEalsdZR9eKhgcbxxWWJybA2V0R jHzPbRn0Oq3KNT/6zNQiKmgp03Sf6TfFyon3cITrBTHg6QsBp0pEkXQQ3FBOcAPgqZTk fQqr3dP1jjY6tSPz/sRsiPn++usrgp1yA52cIGvmB5bwIEYXokhC91Uvv2riQbQmg6na +D3o0sdlFhLwKctvOA8SigPXMKdSs1WwKDPiQ2nDwsWg8MUTMjKrIvTMszAqlYHeUEyF VwRpjBYNvQMQ1nj+dxWyP15fmIuP8qR+04IdA1MMPzUQMVroeb5qbYgHuTAQIwsrVY1b p16Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:from:references:cc:to:content-language:subject :mime-version:date:message-id:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=o6nx2lmgrlSPD+CcSfNDETelz62SM2Altsqv3wAr0nI=; b=hB56ysIRWxWTZPFZ90uggbCvdQBE6+9hB5uhI4sBtUMuPuROFxuBBh2xnG0WuAfRkv nzB76fbqukH1R+hVr+zkeWo56hVC7wVB3WQqFm1Ps+7+WxMIKV2WxdH9x4g+w1uNqw43 dFY1QomW2XvPvzdSmK/C5WZ24tVjTeh3vSwtiPHwTyZ2Aff01rfFyL+75Pfb+bEhVOIT er/v3ALtX/WU+4z1CdYFM+dS2ZfvSW/xyZTKNZ9GuaSBzLWPj6Q4MoxoszgGc9Jc/XYg tRlmJaq+FQP2YU5WI6WtxNI0pqtJAvXLrcY8aLFQZGjgFZj7VWVpJaeBd9OuSWSPvY8X XKDg== X-Gm-Message-State: AFqh2kpqVW0VYrNAb5uns0/mbG4D2Bk+ncv2Lx0xGE3VAx66upSwkbG4 y5rAJ1syaFAsc3wpIfKQbtA= X-Google-Smtp-Source: AMrXdXtavef4ztkAa8lTU40JH0o8fGgqhzV7KndmeQ2huiV4+c2/5tUw43za0smX0DwxVTbqU8zJAQ== X-Received: by 2002:a05:6a20:9391:b0:ad:2f8b:ed7c with SMTP id x17-20020a056a20939100b000ad2f8bed7cmr21854762pzh.56.1671648500253; Wed, 21 Dec 2022 10:48:20 -0800 (PST) Original-Received: from [192.168.1.2] (cpe-76-168-148-233.socal.res.rr.com. [76.168.148.233]) by smtp.googlemail.com with ESMTPSA id c205-20020a624ed6000000b005765013d327sm10923463pfb.182.2022.12.21.10.48.19 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 21 Dec 2022 10:48:19 -0800 (PST) Content-Language: en-US In-Reply-To: <87o7rx5bfk.fsf@gmx.de> 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-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:251614 Archived-At: This is a multi-part message in MIME format. --------------2jUo4nbiBSC7enuNY8qzB0V8 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 12/21/2022 1:54 AM, Michael Albinus wrote: > And when they want to use another value? (null-device) returns > "/dev/null" for local default-directory's if you're not on MS > Windows. On MS Windows, it returns "NUL". Right. The intent is for the virtual name for the null device to be the same in Eshell no matter what the system really calls it. On non-MS systems, this shouldn't actually be necessary, since you could just write to the *real* /dev/null. The virtual target in Eshell is just so that /dev/null also works on MS Windows/DOS. However, I would have thought that you could write to NUL on MS Windows without any special handling. The Emacs manual has this to say: "[On MS Windows,] referencing any file whose name matches a DOS character device, such as NUL or LPT1 or PRN or CON, with or without any file-name extension, will always resolve to those character devices, in any directory. Therefore, only use such file names when you want to use the corresponding character device." I'd expect that to mean that if you opened a buffer and tried to save it as "NUL", it would just work, but instead I get: Write error: Bad file descriptor, c:/NUL With that in mind, here are two patches (one for 29 and one for master) to let Eshell handle both "/dev/null" and (on MS systems) "NUL". That way, users get the best of both worlds. --------------2jUo4nbiBSC7enuNY8qzB0V8 Content-Type: text/plain; charset=UTF-8; name="29--0001-When-redirecting-to-the-null-device-in-Eshell-allow-.patch" Content-Disposition: attachment; filename*0="29--0001-When-redirecting-to-the-null-device-in-Eshell-allow"; filename*1="-.patch" Content-Transfer-Encoding: base64 RnJvbSAzNjY0ZjJiZGZiNjRhZTdkNjhiNmJlMTJlNGVkNmIwMjdiZGMyOTUxIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IFR1ZSwgMjAgRGVjIDIwMjIgMTY6MjA6NTAgLTA4MDAKU3ViamVjdDogW1BB VENIXSBXaGVuIHJlZGlyZWN0aW5nIHRvIHRoZSBudWxsIGRldmljZSBpbiBFc2hlbGwsIGFs bG93CiAiL2Rldi9udWxsIgoKVGhpcyBpcyBzbyB0aGF0IHVzZXJzIGNhbiB0eXBlICJjbWQg Li4uID4gL2Rldi9udWxsIiBpbiBFc2hlbGwgbm8KbWF0dGVyIHdoYXQgdGhlaXIgc3lzdGVt J3MgbnVsbCBkZXZpY2UgaXMgY2FsbGVkLiAgVGhpcyBmaXhlcyBhCnJlZ3Jlc3Npb24gZnJv bSA2N2E4YmRiOTBjOWI1ODY1YjdmMTcyOTBjNzEzNWIxYTU0NThjMzZkLgoKRG8gbm90IG1l cmdlIHRvIG1hc3Rlci4KCiogbGlzcC9lc2hlbGwvZXNoLWlvLmVsIChlc2hlbGwtc2V0LW91 dHB1dC1oYW5kbGUpOiBIYW5kbGUgYm90aAonbnVsbC1kZXZpY2UnIGFuZCB0aGUgbGl0ZXJh bCAiL2Rldi9udWxsIi4KLS0tCiBsaXNwL2VzaGVsbC9lc2gtaW8uZWwgfCA1ICsrKystCiAx IGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0t Z2l0IGEvbGlzcC9lc2hlbGwvZXNoLWlvLmVsIGIvbGlzcC9lc2hlbGwvZXNoLWlvLmVsCmlu ZGV4IDQ2MjA1NjVmODU3Li5iNDI4ZjA2ODQ3MiAxMDA2NDQKLS0tIGEvbGlzcC9lc2hlbGwv ZXNoLWlvLmVsCisrKyBiL2xpc3AvZXNoZWxsL2VzaC1pby5lbApAQCAtMzQyLDcgKzM0Miwx MCBAQCBlc2hlbGwtc2V0LW91dHB1dC1oYW5kbGUKICAgKHdoZW4gdGFyZ2V0CiAgICAgKGxl dCAoKGhhbmRsZXMgKG9yIGhhbmRsZXMgZXNoZWxsLWN1cnJlbnQtaGFuZGxlcykpKQogICAg ICAgKGlmIChhbmQgKHN0cmluZ3AgdGFyZ2V0KQotICAgICAgICAgICAgICAgKHN0cmluZz0g dGFyZ2V0IChudWxsLWRldmljZSkpKQorICAgICAgICAgICAgICAgOzsgQWx3YXlzIHRyZWF0 ICIvZGV2L251bGwiIGFzIHRoZSBudWxsIGRldmljZSBmb3IKKyAgICAgICAgICAgICAgIDs7 IGNvbXBhdGliaWxpdHksIGV2ZW4gaWYgdGhlIHN5c3RlbSBjYWxscyBpdCBzb21ldGhpbmcK KyAgICAgICAgICAgICAgIDs7IGVsc2UuCisgICAgICAgICAgICAgICAobWVtYmVyIHRhcmdl dCAobGlzdCAiL2Rldi9udWxsIiAobnVsbC1kZXZpY2UpKSkpCiAgICAgICAgICAgKGFzZXQg aGFuZGxlcyBpbmRleCBuaWwpCiAgICAgICAgIChsZXQgKCh3aGVyZSAoZXNoZWxsLWdldC10 YXJnZXQgdGFyZ2V0IG1vZGUpKQogICAgICAgICAgICAgICAoY3VycmVudCAoY2FyIChhcmVm IGhhbmRsZXMgaW5kZXgpKSkpCi0tIAoyLjI1LjEKCg== --------------2jUo4nbiBSC7enuNY8qzB0V8 Content-Type: text/plain; charset=UTF-8; name="master--0003-Simplify-handling-of-dev-null-redirection-in-Eshell.patch" Content-Disposition: attachment; filename*0="master--0003-Simplify-handling-of-dev-null-redirection-in-Es"; filename*1="hell.patch" Content-Transfer-Encoding: base64 RnJvbSBhZmU4MWRjNjA5ODAyYzlhM2QzZDY0MDM3ZDlkOWRmOWExMDBjZDBmIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IFR1ZSwgMjAgRGVjIDIwMjIgMTM6NDc6MjAgLTA4MDAKU3ViamVjdDogW1BB VENIIDMvM10gU2ltcGxpZnkgaGFuZGxpbmcgb2YgL2Rldi9udWxsIHJlZGlyZWN0aW9uIGlu IEVzaGVsbAoKVGhpcyBhbHNvIGZpeGVzIGFuIGlzc3VlIHdoZXJlICJlY2hvIGhpID4gZm9v ID4gL2Rldi9udWxsIiBkaWRuJ3QKd3JpdGUgdG8gdGhlIGZpbGUgImZvbyIuCgoqIGxpc3Av ZXNoZWxsL2VzaC1pby5lbCAoZXNoZWxsLXZpcnR1YWwtdGFyZ2V0cyk6IEFkZCAiL2Rldi9u dWxsIi4KKGVzaGVsbC1zZXQtb3V0cHV0LWhhbmRsZSk6IEhhbmRsZSAnZXNoZWxsLW51bGwt ZGV2aWNlJy4KKGVzaGVsbC1nZXQtdGFyZ2V0KTogTWFwICdudWxsLWRldmljZScgdG8gIi9k ZXYvbnVsbCIuCgoqIHRlc3QvbGlzcC9lc2hlbGwvZXNoLWlvLXRlc3RzLmVsCihlc2gtaW8t dGVzdC9yZWRpcmVjdC1zdWJjb21tYW5kcy9kZXYtbnVsbCkKKGVzaC1pby10ZXN0L3ZpcnR1 YWwvZGV2LW51bGwsIGVzaC1pby10ZXN0L3ZpcnR1YWwvZGV2LW51bGwvbXVsdGlwbGUpOgpO ZXcgdGVzdHMuCi0tLQogbGlzcC9lc2hlbGwvZXNoLWlvLmVsICAgICAgICAgICAgfCA1NiAr KysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLQogdGVzdC9saXNwL2VzaGVsbC9lc2gt aW8tdGVzdHMuZWwgfCAzMyArKysrKysrKysrKysrKysrKy0tCiAyIGZpbGVzIGNoYW5nZWQs IDYwIGluc2VydGlvbnMoKyksIDI5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpc3Av ZXNoZWxsL2VzaC1pby5lbCBiL2xpc3AvZXNoZWxsL2VzaC1pby5lbAppbmRleCA1ODA4NGRi MjhhOC4uYTFkZmVmMDc0NTggMTAwNjQ0Ci0tLSBhL2xpc3AvZXNoZWxsL2VzaC1pby5lbAor KysgYi9saXNwL2VzaGVsbC9lc2gtaW8uZWwKQEAgLTExNiwxNiArMTE2LDIwIEBAIGVzaGVs bC1wcmludC1xdWV1ZS1zaXplCiAgIDpncm91cCAnZXNoZWxsLWlvKQogCiAoZGVmY3VzdG9t IGVzaGVsbC12aXJ0dWFsLXRhcmdldHMKLSAgJygoIi9kZXYvZXNoZWxsIiBlc2hlbGwtaW50 ZXJhY3RpdmUtcHJpbnQgbmlsKQorICAnKDs7IFRoaXMgc2hvdWxkIGJlIHRoZSBsaXRlcmFs IHN0cmluZyAiL2Rldi9udWxsIiwgbm90IGBudWxsLWRldmljZScuCisgICAgKCIvZGV2L251 bGwiIChsYW1iZGEgKG1vZGUpICh0aHJvdyAnZXNoZWxsLW51bGwtZGV2aWNlIHQpKSB0KQor ICAgICgiL2Rldi9lc2hlbGwiIGVzaGVsbC1pbnRlcmFjdGl2ZS1wcmludCBuaWwpCiAgICAg KCIvZGV2L2tpbGwiIChsYW1iZGEgKG1vZGUpCi0JCSAgIChpZiAoZXEgbW9kZSAnb3Zlcndy aXRlKQotCQkgICAgICAgKGtpbGwtbmV3ICIiKSkKLQkJICAgJ2VzaGVsbC1raWxsLWFwcGVu ZCkgdCkKKyAgICAgICAgICAgICAgICAgICAod2hlbiAoZXEgbW9kZSAnb3ZlcndyaXRlKQor ICAgICAgICAgICAgICAgICAgICAgKGtpbGwtbmV3ICIiKSkKKyAgICAgICAgICAgICAgICAg ICAjJ2VzaGVsbC1raWxsLWFwcGVuZCkKKyAgICAgdCkKICAgICAoIi9kZXYvY2xpcCIgKGxh bWJkYSAobW9kZSkKLQkJICAgKGlmIChlcSBtb2RlICdvdmVyd3JpdGUpCi0JCSAgICAgICAo bGV0ICgoc2VsZWN0LWVuYWJsZS1jbGlwYm9hcmQgdCkpCi0JCQkgKGtpbGwtbmV3ICIiKSkp Ci0JCSAgICdlc2hlbGwtY2xpcGJvYXJkLWFwcGVuZCkgdCkpCisgICAgICAgICAgICAgICAg ICAgKHdoZW4gKGVxIG1vZGUgJ292ZXJ3cml0ZSkKKyAgICAgICAgICAgICAgICAgICAgIChs ZXQgKChzZWxlY3QtZW5hYmxlLWNsaXBib2FyZCB0KSkKKyAgICAgICAgICAgICAgICAgICAg ICAgKGtpbGwtbmV3ICIiKSkpCisgICAgICAgICAgICAgICAgICAgIydlc2hlbGwtY2xpcGJv YXJkLWFwcGVuZCkKKyAgICAgdCkpCiAgICJNYXAgdmlydHVhbCBkZXZpY2VzIG5hbWUgdG8g RW1hY3MgTGlzcCBmdW5jdGlvbnMuCiBJZiB0aGUgdXNlciBzcGVjaWZpZXMgYW55IG9mIHRo ZSBmaWxlbmFtZXMgYWJvdmUgYXMgYSByZWRpcmVjdGlvbgogdGFyZ2V0LCB0aGUgZnVuY3Rp b24gaW4gdGhlIHNlY29uZCBlbGVtZW50IHdpbGwgYmUgY2FsbGVkLgpAQCAtMTM4LDEwICsx NDIsNyBAQCBlc2hlbGwtdmlydHVhbC10YXJnZXRzCiAKIFRoZSBvdXRwdXQgZnVuY3Rpb24g aXMgdGhlbiBjYWxsZWQgcmVwZWF0ZWRseSB3aXRoIHNpbmdsZSBzdHJpbmdzLAogd2hpY2gg cmVwcmVzZW50cyBzdWNjZXNzaXZlIHBpZWNlcyBvZiB0aGUgb3V0cHV0IG9mIHRoZSBjb21t YW5kLCB1bnRpbCBuaWwKLWlzIHBhc3NlZCwgbWVhbmluZyBFT0YuCi0KLU5PVEU6IC9kZXYv bnVsbCBpcyBoYW5kbGVkIHNwZWNpYWxseSBhcyBhIHZpcnR1YWwgdGFyZ2V0LCBhbmQgc2hv dWxkCi1ub3QgYmUgYWRkZWQgdG8gdGhpcyB2YXJpYWJsZS4iCitpcyBwYXNzZWQsIG1lYW5p bmcgRU9GLiIKICAgOnR5cGUgJyhyZXBlYXQKIAkgIChsaXN0IChzdHJpbmcgOnRhZyAiVGFy Z2V0IikKIAkJZnVuY3Rpb24KQEAgLTM1NywyMSArMzU4LDE3IEBAIGVzaGVsbC1zZXQtb3V0 cHV0LWhhbmRsZQogICAiU2V0IGhhbmRsZSBJTkRFWCBmb3IgdGhlIGN1cnJlbnQgSEFORExF UyB0byBwb2ludCB0byBUQVJHRVQgdXNpbmcgTU9ERS4KIElmIEhBTkRMRVMgaXMgbmlsLCB1 c2UgYGVzaGVsbC1jdXJyZW50LWhhbmRsZXMnLiIKICAgKHdoZW4gdGFyZ2V0Ci0gICAgKGxl dCAoKGhhbmRsZXMgKG9yIGhhbmRsZXMgZXNoZWxsLWN1cnJlbnQtaGFuZGxlcykpKQotICAg ICAgKGlmIChhbmQgKHN0cmluZ3AgdGFyZ2V0KQotICAgICAgICAgICAgICAgKHN0cmluZz0g dGFyZ2V0IChudWxsLWRldmljZSkpKQotICAgICAgICAgIChhc2V0IGhhbmRsZXMgaW5kZXgg bmlsKQotICAgICAgICAobGV0KiAoKHdoZXJlIChlc2hlbGwtZ2V0LXRhcmdldCB0YXJnZXQg bW9kZSkpCi0gICAgICAgICAgICAgICAoaGFuZGxlIChvciAoYXJlZiBoYW5kbGVzIGluZGV4 KQotICAgICAgICAgICAgICAgICAgICAgICAgICAgKGFzZXQgaGFuZGxlcyBpbmRleCAobGlz dCBuaWwgbmlsIDEpKSkpCi0gICAgICAgICAgICAgICAoY3VycmVudCAoY2FyIGhhbmRsZSkp Ci0gICAgICAgICAgICAgICAoZGVmYXVsdHAgKGNhZHIgaGFuZGxlKSkpCi0gICAgICAgICAg KGlmIChub3QgZGVmYXVsdHApCi0gICAgICAgICAgICAgICh1bmxlc3MgKG1lbWJlciB3aGVy ZSBjdXJyZW50KQotICAgICAgICAgICAgICAgIChzZXRxIGN1cnJlbnQgKGFwcGVuZCBjdXJy ZW50IChsaXN0IHdoZXJlKSkpKQotICAgICAgICAgICAgKHNldHEgY3VycmVudCAobGlzdCB3 aGVyZSkpKQotICAgICAgICAgIChzZXRjYXIgaGFuZGxlIGN1cnJlbnQpCi0gICAgICAgICAg KHNldGNhciAoY2RyIGhhbmRsZSkgbmlsKSkpKSkpCisgICAgKGxldCogKChoYW5kbGVzIChv ciBoYW5kbGVzIGVzaGVsbC1jdXJyZW50LWhhbmRsZXMpKQorICAgICAgICAgICAoaGFuZGxl IChvciAoYXJlZiBoYW5kbGVzIGluZGV4KQorICAgICAgICAgICAgICAgICAgICAgICAoYXNl dCBoYW5kbGVzIGluZGV4IChsaXN0IG5pbCBuaWwgMSkpKSkKKyAgICAgICAgICAgKGRlZmF1 bHRwIChjYWRyIGhhbmRsZSkpCisgICAgICAgICAgIChjdXJyZW50ICh1bmxlc3MgZGVmYXVs dHAgKGNhciBoYW5kbGUpKSkpCisgICAgICAoY2F0Y2ggJ2VzaGVsbC1udWxsLWRldmljZQor ICAgICAgICAobGV0ICgod2hlcmUgKGVzaGVsbC1nZXQtdGFyZ2V0IHRhcmdldCBtb2RlKSkp CisgICAgICAgICAgKHVubGVzcyAobWVtYmVyIHdoZXJlIGN1cnJlbnQpCisgICAgICAgICAg ICAoc2V0cSBjdXJyZW50IChhcHBlbmQgY3VycmVudCAobGlzdCB3aGVyZSkpKSkpKQorICAg ICAgKHNldGNhciBoYW5kbGUgY3VycmVudCkKKyAgICAgIChzZXRjYXIgKGNkciBoYW5kbGUp IG5pbCkpKSkKIAogKGRlZnVuIGVzaGVsbC1jb3B5LW91dHB1dC1oYW5kbGUgKGluZGV4IGlu ZGV4LXRvLWNvcHkgJm9wdGlvbmFsIGhhbmRsZXMpCiAgICJDb3B5IHRoZSBoYW5kbGUgSU5E RVgtVE8tQ09QWSB0byBJTkRFWCBmb3IgdGhlIGN1cnJlbnQgSEFORExFUy4KQEAgLTQ1OCw2 ICs0NTUsMTEgQEAgZXNoZWxsLWdldC10YXJnZXQKICAgKHNldHEgbW9kZSAob3IgbW9kZSAn aW5zZXJ0KSkKICAgKGNvbmQKICAgICgoc3RyaW5ncCB0YXJnZXQpCisgICAgOzsgQWx3YXlz IHRyZWF0IHRoZSBgbnVsbC1kZXZpY2UnIGFzIHRoZSB2aXJ0dWFsIHRhcmdldAorICAgIDs7 ICIvZGV2L251bGwiLiAgVGhpcyB3YXksIHN5c3RlbXMgdGhhdCBjYWxsIHRoZWlyIG51bGwg ZGV2aWNlCisgICAgOzsgc29tZXRoaW5nIGVsc2UgY2FuIHVzZSBlaXRoZXIgZm9ybS4KKyAg ICAod2hlbiAoc3RyaW5nPSB0YXJnZXQgKG51bGwtZGV2aWNlKSkKKyAgICAgIChzZXRxIHRh cmdldCAiL2Rldi9udWxsIikpCiAgICAgKGxldCAoKHJlZGlyIChhc3NvYyB0YXJnZXQgZXNo ZWxsLXZpcnR1YWwtdGFyZ2V0cykpKQogICAgICAgKGlmIHJlZGlyCiAJICAoaWYgKG50aCAy IHJlZGlyKQpkaWZmIC0tZ2l0IGEvdGVzdC9saXNwL2VzaGVsbC9lc2gtaW8tdGVzdHMuZWwg Yi90ZXN0L2xpc3AvZXNoZWxsL2VzaC1pby10ZXN0cy5lbAppbmRleCBjY2Y4YWMxYjlhMS4u OWEzYzE0ZjM2NWYgMTAwNjQ0Ci0tLSBhL3Rlc3QvbGlzcC9lc2hlbGwvZXNoLWlvLXRlc3Rz LmVsCisrKyBiL3Rlc3QvbGlzcC9lc2hlbGwvZXNoLWlvLXRlc3RzLmVsCkBAIC0xNjYsNiAr MTY2LDE3IEBAIGVzaC1pby10ZXN0L3JlZGlyZWN0LXN1YmNvbW1hbmRzL292ZXJyaWRlCiAg ICAgICAoc2hvdWxkIChlcXVhbCAoYnVmZmVyLXN0cmluZykgImJhciIpKSkKICAgICAoc2hv dWxkIChlcXVhbCAoYnVmZmVyLXN0cmluZykgImZvb2JheiIpKSkpCiAKKyhlcnQtZGVmdGVz dCBlc2gtaW8tdGVzdC9yZWRpcmVjdC1zdWJjb21tYW5kcy9kZXYtbnVsbCAoKQorICAiQ2hl Y2sgdGhhdCByZWRpcmVjdGluZyBzdWJjb21tYW5kcyBhcHBsaWVzIHRvIGFsbCBzdWJjb21t YW5kcy4KK0luY2x1ZGUgYSByZWRpcmVjdCB0byAvZGV2L251bGwgdG8gZW5zdXJlIGl0IG9u bHkgYXBwbGllcyB0byBpdHMKK3N0YXRlbWVudC4iCisgIChlc2hlbGwtd2l0aC10ZW1wLWJ1 ZmZlciBidWZuYW1lICJvbGQiCisgICAgKHdpdGgtdGVtcC1lc2hlbGwKKyAgICAgKGVzaGVs bC1pbnNlcnQtY29tbWFuZAorICAgICAgKGZvcm1hdCAie2VjaG8gZm9vOyBlY2hvIGJhciA+ IC9kZXYvbnVsbDsgZWNobyBiYXp9ID4gIzwlcz4iCisgICAgICAgICAgICAgIGJ1Zm5hbWUp KSkKKyAgICAoc2hvdWxkIChlcXVhbCAoYnVmZmVyLXN0cmluZykgImZvb2JheiIpKSkpCisK IChlcnQtZGVmdGVzdCBlc2gtaW8tdGVzdC9yZWRpcmVjdC1zdWJjb21tYW5kcy9pbnRlcnBv bGF0ZWQgKCkKICAgIkNoZWNrIHRoYXQgcmVkaXJlY3RpbmcgaW50ZXJwb2xhdGVkIHN1YmNv bW1hbmRzIGFwcGxpZXMgdG8gYWxsIHN1YmNvbW1hbmRzLiIKICAgKGVzaGVsbC13aXRoLXRl bXAtYnVmZmVyIGJ1Zm5hbWUgIm9sZCIKQEAgLTMwMiwxMiArMzEzLDMwIEBAIGVzaC1pby10 ZXN0L3JlZGlyZWN0LXBpcGUKIAwKIDs7IFZpcnR1YWwgdGFyZ2V0cwogCi0oZXJ0LWRlZnRl c3QgZXNoLWlvLXRlc3QvdmlydHVhbC1kZXYtZXNoZWxsICgpCisoZXJ0LWRlZnRlc3QgZXNo LWlvLXRlc3QvdmlydHVhbC9kZXYtbnVsbCAoKQorICAiQ2hlY2sgdGhhdCByZWRpcmVjdGlu ZyB0byAvZGV2L251bGwgd29ya3MuIgorICAod2l0aC10ZW1wLWVzaGVsbAorICAgKGVzaGVs bC1tYXRjaC1jb21tYW5kLW91dHB1dCAiZWNobyBoaSA+IC9kZXYvbnVsbCIgIlxcYFxcJyIp KSkKKworKGVydC1kZWZ0ZXN0IGVzaC1pby10ZXN0L3ZpcnR1YWwvZGV2LW51bGwvbXVsdGlw bGUgKCkKKyAgIkNoZWNrIHRoYXQgcmVkaXJlY3RpbmcgdG8gL2Rldi9udWxsIHdvcmtzIGFs b25nc2lkZSBvdGhlciByZWRpcmVjdGlvbnMuIgorICAoZXNoZWxsLXdpdGgtdGVtcC1idWZm ZXIgYnVmbmFtZSAib2xkIgorICAgICh3aXRoLXRlbXAtZXNoZWxsCisgICAgIChlc2hlbGwt bWF0Y2gtY29tbWFuZC1vdXRwdXQKKyAgICAgIChmb3JtYXQgImVjaG8gbmV3ID4gL2Rldi9u dWxsID4gIzwlcz4iIGJ1Zm5hbWUpICJcXGBcXCciKSkKKyAgICAoc2hvdWxkIChlcXVhbCAo YnVmZmVyLXN0cmluZykgIm5ldyIpKSkKKyAgKGVzaGVsbC13aXRoLXRlbXAtYnVmZmVyIGJ1 Zm5hbWUgIm9sZCIKKyAgICAod2l0aC10ZW1wLWVzaGVsbAorICAgICAoZXNoZWxsLW1hdGNo LWNvbW1hbmQtb3V0cHV0CisgICAgICAoZm9ybWF0ICJlY2hvIG5ldyA+ICM8JXM+ID4gL2Rl di9udWxsIiBidWZuYW1lKSAiXFxgXFwnIikpCisgICAgKHNob3VsZCAoZXF1YWwgKGJ1ZmZl ci1zdHJpbmcpICJuZXciKSkpKQorCisoZXJ0LWRlZnRlc3QgZXNoLWlvLXRlc3QvdmlydHVh bC9kZXYtZXNoZWxsICgpCiAgICJDaGVjayB0aGF0IHJlZGlyZWN0aW5nIHRvIC9kZXYvZXNo ZWxsIHdvcmtzLiIKICAgKHdpdGgtdGVtcC1lc2hlbGwKICAgIChlc2hlbGwtbWF0Y2gtY29t bWFuZC1vdXRwdXQgImVjaG8gaGkgPiAvZGV2L2VzaGVsbCIgImhpIikpKQogCi0oZXJ0LWRl ZnRlc3QgZXNoLWlvLXRlc3QvdmlydHVhbC1kZXYta2lsbCAoKQorKGVydC1kZWZ0ZXN0IGVz aC1pby10ZXN0L3ZpcnR1YWwvZGV2LWtpbGwgKCkKICAgIkNoZWNrIHRoYXQgcmVkaXJlY3Rp bmcgdG8gL2Rldi9raWxsIHdvcmtzLiIKICAgKHdpdGgtdGVtcC1lc2hlbGwKICAgIChlc2hl bGwtaW5zZXJ0LWNvbW1hbmQgImVjaG8gb25lID4gL2Rldi9raWxsIikKLS0gCjIuMjUuMQoK --------------2jUo4nbiBSC7enuNY8qzB0V8--