From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: divoplade Newsgroups: gmane.lisp.guile.bugs Subject: bug#44186: Recursive mkdir Date: Sun, 25 Oct 2020 10:07:17 +0100 Message-ID: <21ba80c2c90d76f475128290a469d3be48c329a4.camel@divoplade.fr> References: <6ff632f5c1e378647cecc7177b7018fb8a0ee6d4.camel@divoplade.fr> <86sga420pw.fsf@gmail.com> <21802e695ea4472c8aba0a686e6bf025890c64d6.camel@divoplade.fr> <20201023233214.GA13637@LionPure> <1a7ae91ae083eecc3ab1043e8ed571bfe972c3a4.camel@divoplade.fr> <20201025041350.GA14747@LionPure> <87h7qi3g1a.fsf@elephly.net> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-IOAqfLlpdrCkrFRNzdsX" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="35407"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Evolution 3.34.2 Cc: 44186@debbugs.gnu.org, zimoun To: Ricardo Wurmus , Bengt Richter Original-X-From: bug-guile-bounces+guile-bugs=m.gmane-mx.org@gnu.org Sun Oct 25 10:08:16 2020 Return-path: Envelope-to: guile-bugs@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 1kWc0e-00094S-9F for guile-bugs@m.gmane-mx.org; Sun, 25 Oct 2020 10:08:16 +0100 Original-Received: from localhost ([::1]:41706 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kWc0c-0000Rb-L6 for guile-bugs@m.gmane-mx.org; Sun, 25 Oct 2020 05:08:14 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:37130) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kWc0Q-0000RD-Uk for bug-guile@gnu.org; Sun, 25 Oct 2020 05:08:04 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:52442) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kWc0Q-0007RA-Ir for bug-guile@gnu.org; Sun, 25 Oct 2020 05:08:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kWc0Q-0007ZF-Dm for bug-guile@gnu.org; Sun, 25 Oct 2020 05:08:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: divoplade Original-Sender: "Debbugs-submit" Resent-CC: bug-guile@gnu.org Resent-Date: Sun, 25 Oct 2020 09:08:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 44186 X-GNU-PR-Package: guile Original-Received: via spool by 44186-submit@debbugs.gnu.org id=B44186.160361684929037 (code B ref 44186); Sun, 25 Oct 2020 09:08:02 +0000 Original-Received: (at 44186) by debbugs.gnu.org; 25 Oct 2020 09:07:29 +0000 Original-Received: from localhost ([127.0.0.1]:35751 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kWbzs-0007YG-PO for submit@debbugs.gnu.org; Sun, 25 Oct 2020 05:07:29 -0400 Original-Received: from relay1-d.mail.gandi.net ([217.70.183.193]:38605) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kWbzp-0007Xy-9o for 44186@debbugs.gnu.org; Sun, 25 Oct 2020 05:07:26 -0400 X-Originating-IP: 86.202.110.111 Original-Received: from divoplade.home (lfbn-lyo-1-15-111.w86-202.abo.wanadoo.fr [86.202.110.111]) (Authenticated sender: d@divoplade.fr) by relay1-d.mail.gandi.net (Postfix) with ESMTPSA id C7750240009; Sun, 25 Oct 2020 09:07:17 +0000 (UTC) In-Reply-To: <87h7qi3g1a.fsf@elephly.net> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-guile@gnu.org List-Id: "Bug reports for GUILE, GNU's Ubiquitous Extension Language" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guile-bounces+guile-bugs=m.gmane-mx.org@gnu.org Original-Sender: "bug-guile" Xref: news.gmane.io gmane.lisp.guile.bugs:9910 Archived-At: --=-IOAqfLlpdrCkrFRNzdsX Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Hello! Le dimanche 25 octobre 2020 à 08:45 +0100, Ricardo Wurmus a écrit : > > > To be clear, you would rather have that function as guile code > > > rather > > > than extending the C function? I'm OK with that, but in which > > > file > > > should I put that function? My instinct was to put the code near > > > the > > > mkdir function, and that happened to be in a C file, so I went C. > > We should all be writing fewer lines of C code and more Scheme :) OK, but where do I put the function? There is a posix.scm, but this function is not posix, and posix.scm does not seem to export functions. By default I will put it in ports.scm, because it is useful for open- output-directory. Also, I still cannot run the ports tests! How do I do it? Also test- out-of-memory fails, but it also fails on master. Attached, the new version for you to read! Best regards, divoplade --=-IOAqfLlpdrCkrFRNzdsX Content-Disposition: attachment; filename*0=0002-Use-the-recursive-mkdir-function-in-file-output-proc.pat; filename*1=ch Content-Type: text/x-patch; name="0002-Use-the-recursive-mkdir-function-in-file-output-proc.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 RnJvbSAyOWM5OGU4MzcxYTMyYjExYzBjMTNmOGZhOTE2MjhhZWVkYzExN2JmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBkaXZvcGxhZGUgPGRAZGl2b3BsYWRlLmZyPgpEYXRlOiBTYXQs IDI0IE9jdCAyMDIwIDAwOjM1OjAxICswMjAwClN1YmplY3Q6IFtQQVRDSCAyLzJdIFVzZSB0aGUg cmVjdXJzaXZlIG1rZGlyIGZ1bmN0aW9uIGluIGZpbGUgb3V0cHV0CiBwcm9jZWR1cmVzCgoyMDIw LTEwLTI1IGRpdm9wbGFkZSA8ZEBkaXZvcGxhZGUuZnI+CgkqIG1vZHVsZS9pY2UtOS9wb3J0cy5z Y20gKG9wZW4tb3V0cHV0LWZpbGUpOiBhZGQgYSBta2RpciBrZXl3b3JkCgl0byB0cnkgdG8gcmVj dXJzaXZlbHkgY3JlYXRlIHRoZSBkaXJlY3Rvcnkgb2YgdGhlIG91dHB1dCBmaWxlLgoJKiBtb2R1 bGUvaWNlLTkvcG9ydHMuc2NtIChjYWxsLXdpdGgtb3V0cHV0LWZpbGUpOiBzYW1lLgoJKiBtb2R1 bGUvaWNlLTkvcG9ydHMuc2NtICh3aXRoLW91dHB1dC10by1maWxlKTogc2FtZS4KCSogbW9kdWxl L2ljZS05L3BvcnRzLnNjbSAod2l0aC1lcnJvci10by1maWxlKTogc2FtZS4KCSogZG9jL3JlZi9h cGktaW8udGV4aTogZG9jdW1lbnQgdGhlIG5ldyBrZXl3b3JkIGFyZ3VtZW50IGZvcgoJb3Blbmlu ZyBvdXRwdXQgZmlsZXMuCgkqIE5FV1M6IGluZGljYXRlIHRoYXQgdGhlIG9wZW4gb3V0cHV0IGZ1 bmN0aW9uIGNhbiBub3cgY3JlYXRlCgl0aGUgZmlsZW5hbWUgZGlyZWN0b3J5IGlmIGl0IGRvZXMg bm90IGV4aXN0LgotLS0KIE5FV1MgICAgICAgICAgICAgICAgICAgfCAgNiArKystCiBkb2MvcmVm L2FwaS1pby50ZXhpICAgIHwgMTYgKysrKysrLS0tCiBtb2R1bGUvaWNlLTkvcG9ydHMuc2NtIHwg NzUgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCiAzIGZpbGVzIGNo YW5nZWQsIDU3IGluc2VydGlvbnMoKyksIDQwIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL05F V1MgYi9ORVdTCmluZGV4IDk0YTNmMzE1NC4uMDllMDZhN2JhIDEwMDY0NAotLS0gYS9ORVdTCisr KyBiL05FV1MKQEAgLTE5LDcgKzE5LDExIEBAIG1hbnkgc2ltaWxhciBjbGF1c2VzIHdob3NlIGZp cnN0IGRpZmZlcmVudGlhdG9yIGFyZSBjb25zdGFudHMuCiAqKiBOZXcgZnVuY3Rpb24gbWtkaXIt cmVjdXJzaXZlCiAKIFRoaXMgZnVuY3Rpb24gd2lsbCB0cnkgYW5kIGNyZWF0ZSB0aGUgZGlyZWN0 b3J5IGFuZCBwYXJlbnQgZGlyZWN0b3JpZXMsCi11cCB0byBhIGRpcmVjdG9yeSB0aGF0IGNhbiBi ZSBvcGVuZWQgb3IgdGhlIHJvb3QuCit1cCB0byBhIGRpcmVjdG9yeSB0aGF0IGNhbiBiZSBvcGVu ZWQgb3IgdGhlIHJvb3QuIFRoaXMgYmVoYXZpb3IgaXMKK2luY2x1ZGVkIGluIG9wZW4tb3V0cHV0 LWZpbGUsIGNhbGwtd2l0aC1vdXRwdXQtZmlsZSwgd2l0aC1vdXRwdXQtdG8tZmlsZQorYW5kIHdp dGgtZXJyb3ItdG8tZmlsZSBieSBhZGRpbmcgYSBrZXl3b3JkIGFyZ3VtZW50IGAjOm1rZGlyJyB3 aGljaCwKK3doZW4gc2V0IHRvIGAjdCcsIGNyZWF0ZXMgdGhlIGRpcmVjdG9yaWVzIGJlZm9yZSB0 cnlpbmcgdG8gb3BlbiB0aGUKK2ZpbGUuCiAKICogSW5jb21wYXRpYmxlIGNoYW5nZXMKIApkaWZm IC0tZ2l0IGEvZG9jL3JlZi9hcGktaW8udGV4aSBiL2RvYy9yZWYvYXBpLWlvLnRleGkKaW5kZXgg ZWNiZDM1NTg1Li5kYWJjZWI2NDYgMTAwNjQ0Ci0tLSBhL2RvYy9yZWYvYXBpLWlvLnRleGkKKysr IGIvZG9jL3JlZi9hcGktaW8udGV4aQpAQCAtMTAzNiwxMyArMTAzNiwxNSBAQCBmb3IgQGNvZGV7 b3Blbi1maWxlfS4gIEVxdWl2YWxlbnQgdG8KIAogQHJuaW5kZXggb3Blbi1vdXRwdXQtZmlsZQog QGRlZmZuIHtTY2hlbWUgUHJvY2VkdXJlfSBvcGVuLW91dHB1dC1maWxlIGZpbGVuYW1lIEAKLSAg ICAgICBbIzplbmNvZGluZz0jZl0gWyM6YmluYXJ5PSNmXQorICAgICAgIFsjOmVuY29kaW5nPSNm XSBbIzpiaW5hcnk9I2ZdIFsjOm1rZGlyPSNmXQogCiBPcGVuIEB2YXJ7ZmlsZW5hbWV9IGZvciBv dXRwdXQuICBJZiBAdmFye2JpbmFyeX0gaXMgdHJ1ZSwgb3BlbiB0aGUgcG9ydAogaW4gYmluYXJ5 IG1vZGUsIG90aGVyd2lzZSB1c2UgdGV4dCBtb2RlLiAgQHZhcntlbmNvZGluZ30gc3BlY2lmaWVz IHRoZQogY2hhcmFjdGVyIGVuY29kaW5nIGFzIGRlc2NyaWJlZCBhYm92ZSBmb3IgQGNvZGV7b3Bl bi1maWxlfS4gIEVxdWl2YWxlbnQKIHRvCiBAbGlzcAorKHdoZW4gQHZhcntta2Rpcn0KKyAgKG1r ZGlyLXJlY3Vyc2l2ZSAoZGlybmFtZSBAdmFye2ZpbGVuYW1lfSkpKQogKG9wZW4tZmlsZSBAdmFy e2ZpbGVuYW1lfQogICAgICAgICAgICAoaWYgQHZhcntiaW5hcnl9ICJ3YiIgInciKQogICAgICAg ICAgICAjOmVuY29kaW5nIEB2YXJ7ZW5jb2Rpbmd9KQpAQCAtMTA1Miw3ICsxMDU0LDcgQEAgdG8K IEBkZWZmbiB7U2NoZW1lIFByb2NlZHVyZX0gY2FsbC13aXRoLWlucHV0LWZpbGUgZmlsZW5hbWUg cHJvYyBACiAgICAgICAgIFsjOmd1ZXNzLWVuY29kaW5nPSNmXSBbIzplbmNvZGluZz0jZl0gWyM6 YmluYXJ5PSNmXQogQGRlZmZueCB7U2NoZW1lIFByb2NlZHVyZX0gY2FsbC13aXRoLW91dHB1dC1m aWxlIGZpbGVuYW1lIHByb2MgQAotICAgICAgICBbIzplbmNvZGluZz0jZl0gWyM6YmluYXJ5PSNm XQorICAgICAgICBbIzplbmNvZGluZz0jZl0gWyM6YmluYXJ5PSNmXSBbIzpta2Rpcj0jZl0KIEBy bmluZGV4IGNhbGwtd2l0aC1pbnB1dC1maWxlCiBAcm5pbmRleCBjYWxsLXdpdGgtb3V0cHV0LWZp bGUKIE9wZW4gQHZhcntmaWxlbmFtZX0gZm9yIGlucHV0IG9yIG91dHB1dCwgYW5kIGNhbGwgQGNv ZGV7KEB2YXJ7cHJvY30KQEAgLTEwNjUsMTQgKzEwNjcsMTcgQEAgV2hlbiBAdmFye3Byb2N9IHJl dHVybnMsIHRoZSBwb3J0IGlzIGNsb3NlZC4gIElmIEB2YXJ7cHJvY30gZG9lcyBub3QKIHJldHVy biAoZS5nLkA6IGlmIGl0IHRocm93cyBhbiBlcnJvciksIHRoZW4gdGhlIHBvcnQgbWlnaHQgbm90 IGJlCiBjbG9zZWQgYXV0b21hdGljYWxseSwgdGhvdWdoIGl0IHdpbGwgYmUgZ2FyYmFnZSBjb2xs ZWN0ZWQgaW4gdGhlIHVzdWFsCiB3YXkgaWYgbm90IG90aGVyd2lzZSByZWZlcmVuY2VkLgorCitJ ZiBAdmFye21rZGlyfSBpcyB0cnVlLCBjcmVhdGUgQHZhcntmaWxlbmFtZX0ncyBkaXJlY3Rvcnkg YW5kIGFsbAoraXRzIHBhcmVudHMuCiBAZW5kIGRlZmZuCiAKIEBkZWZmbiB7U2NoZW1lIFByb2Nl ZHVyZX0gd2l0aC1pbnB1dC1mcm9tLWZpbGUgZmlsZW5hbWUgdGh1bmsgQAogICAgICAgICBbIzpn dWVzcy1lbmNvZGluZz0jZl0gWyM6ZW5jb2Rpbmc9I2ZdIFsjOmJpbmFyeT0jZl0KIEBkZWZmbngg e1NjaGVtZSBQcm9jZWR1cmV9IHdpdGgtb3V0cHV0LXRvLWZpbGUgZmlsZW5hbWUgdGh1bmsgQAot ICAgICAgICBbIzplbmNvZGluZz0jZl0gWyM6YmluYXJ5PSNmXQorICAgICAgICBbIzplbmNvZGlu Zz0jZl0gWyM6YmluYXJ5PSNmXSBbIzpta2Rpcj0jZl0KIEBkZWZmbngge1NjaGVtZSBQcm9jZWR1 cmV9IHdpdGgtZXJyb3ItdG8tZmlsZSBmaWxlbmFtZSB0aHVuayBACi0gICAgICAgIFsjOmVuY29k aW5nPSNmXSBbIzpiaW5hcnk9I2ZdCisgICAgICAgIFsjOmVuY29kaW5nPSNmXSBbIzpiaW5hcnk9 I2ZdIFsjOm1rZGlyPSNmXQogQHJuaW5kZXggd2l0aC1pbnB1dC1mcm9tLWZpbGUKIEBybmluZGV4 IHdpdGgtb3V0cHV0LXRvLWZpbGUKIE9wZW4gQHZhcntmaWxlbmFtZX0gYW5kIGNhbGwgQGNvZGV7 KEB2YXJ7dGh1bmt9KX0gd2l0aCB0aGUgbmV3IHBvcnQKQEAgLTEwOTUsNiArMTEwMCw5IEBAIGV4 aXRlZCB2aWEgYW4gZXhjZXB0aW9uIG9yIG5ldyBjb250aW51YXRpb24uICBUaGlzIGVuc3VyZXMg aXQncyBzdGlsbAogcmVhZHkgZm9yIHVzZSBpZiBAdmFye3RodW5rfSBpcyByZS1lbnRlcmVkIGJ5 IGEgY2FwdHVyZWQgY29udGludWF0aW9uLgogT2YgY291cnNlIHRoZSBwb3J0IGlzIGFsd2F5cyBn YXJiYWdlIGNvbGxlY3RlZCBhbmQgY2xvc2VkIGluIHRoZSB1c3VhbAogd2F5IHdoZW4gbm8gbG9u Z2VyIHJlZmVyZW5jZWQgYW55d2hlcmUuCisKK0lmIEB2YXJ7bWtkaXJ9IGlzIHRydWUsIHRoZW4g QHZhcntmaWxlbmFtZX0ncyBkaXJlY3RvcnkgYW5kIGFsbCBpdHMKK3BhcmVudHMgYXJlIGNyZWF0 ZWQuCiBAZW5kIGRlZmZuCiAKIEBkZWZmbiB7U2NoZW1lIFByb2NlZHVyZX0gcG9ydC1tb2RlIHBv cnQKZGlmZiAtLWdpdCBhL21vZHVsZS9pY2UtOS9wb3J0cy5zY20gYi9tb2R1bGUvaWNlLTkvcG9y dHMuc2NtCmluZGV4IDNlZDI4OWU0My4uNTc5YzUwM2Y2IDEwMDY0NAotLS0gYS9tb2R1bGUvaWNl LTkvcG9ydHMuc2NtCisrKyBiL21vZHVsZS9pY2UtOS9wb3J0cy5zY20KQEAgLTQ0NiwxMSArNDQ2 LDE0IEBAIG9wZW5lZCkgYW5kIHRoYXQgd2lsbCBuZWVkIHRvIGJlIGNyZWF0ZWQuIgogICAgICAg KG1ha2UtZGlycyAoY2RyIGRpcnMpKSkpCiAgIChtYWtlLWRpcnMgKHRyYWNlLWRpcnMgJygpIG5h bWUpKSkKIAotKGRlZmluZSogKG9wZW4tb3V0cHV0LWZpbGUgZmlsZSAjOmtleSAoYmluYXJ5ICNm KSAoZW5jb2RpbmcgI2YpKQorKGRlZmluZSogKG9wZW4tb3V0cHV0LWZpbGUgZmlsZSAjOmtleSAo YmluYXJ5ICNmKSAoZW5jb2RpbmcgI2YpIChta2RpciAjZikpCiAgICJUYWtlcyBhIHN0cmluZyBu YW1pbmcgYW4gb3V0cHV0IGZpbGUgdG8gYmUgY3JlYXRlZCBhbmQgcmV0dXJucyBhbgotb3V0cHV0 IHBvcnQgY2FwYWJsZSBvZiB3cml0aW5nIGNoYXJhY3RlcnMgdG8gYSBuZXcgZmlsZSBieSB0aGF0 Ci1uYW1lLiAgSWYgdGhlIGZpbGUgY2Fubm90IGJlIG9wZW5lZCwgYW4gZXJyb3IgaXMgc2lnbmFs bGVkLiAgSWYgYQotZmlsZSB3aXRoIHRoZSBnaXZlbiBuYW1lIGFscmVhZHkgZXhpc3RzLCB0aGUg ZWZmZWN0IGlzIHVuc3BlY2lmaWVkLiIKK291dHB1dCBwb3J0IGNhcGFibGUgb2Ygd3JpdGluZyBj aGFyYWN0ZXJzIHRvIGEgbmV3IGZpbGUgYnkgdGhhdCBuYW1lLgorSWYgdGhlIGZpbGUgY2Fubm90 IGJlIG9wZW5lZCwgYW4gZXJyb3IgaXMgc2lnbmFsbGVkLiAgSWYgYSBmaWxlIHdpdGggdGhlCitn aXZlbiBuYW1lIGFscmVhZHkgZXhpc3RzLCB0aGUgZWZmZWN0IGlzIHVuc3BlY2lmaWVkLiAgSWYg QHZhcntta2Rpcn0gaXMKK3RydWUsIHJlY3Vyc2l2ZWx5IGNyZWF0ZSB0aGUgZGlyZWN0b3J5IG9m IEB2YXJ7ZmlsZX0uIgorICAod2hlbiBta2RpcgorICAgIChta2Rpci1wIChkaXJuYW1lIGZpbGUp KSkKICAgKG9wZW4tZmlsZSBmaWxlIChpZiBiaW5hcnkgIndiIiAidyIpCiAgICAgICAgICAgICAg IzplbmNvZGluZyBlbmNvZGluZykpCiAKQEAgLTQ4MCwxOCArNDgzLDE4IEBAIG5ldmVyIGFnYWlu IGJlIHVzZWQgZm9yIGEgcmVhZCBvciB3cml0ZSBvcGVyYXRpb24uIgogICAgICAgICAoY2xvc2Ut aW5wdXQtcG9ydCBwKQogICAgICAgICAoYXBwbHkgdmFsdWVzIHZhbHMpKSkpKQogCi0oZGVmaW5l KiAoY2FsbC13aXRoLW91dHB1dC1maWxlIGZpbGUgcHJvYyAjOmtleSAoYmluYXJ5ICNmKSAoZW5j b2RpbmcgI2YpKQorKGRlZmluZSogKGNhbGwtd2l0aC1vdXRwdXQtZmlsZSBmaWxlIHByb2MgIzpr ZXkgKGJpbmFyeSAjZikgKGVuY29kaW5nICNmKSAobWtkaXIgI2YpKQogICAiUFJPQyBzaG91bGQg YmUgYSBwcm9jZWR1cmUgb2Ygb25lIGFyZ3VtZW50LCBhbmQgRklMRSBzaG91bGQgYmUgYQotc3Ry aW5nIG5hbWluZyBhIGZpbGUuICBUaGUgYmVoYXZpb3VyIGlzIHVuc3BlY2lmaWVkIGlmIHRoZSBm aWxlCi1hbHJlYWR5IGV4aXN0cy4gVGhlc2UgcHJvY2VkdXJlcyBjYWxsIFBST0MKLXdpdGggb25l IGFyZ3VtZW50OiB0aGUgcG9ydCBvYnRhaW5lZCBieSBvcGVuaW5nIHRoZSBuYW1lZCBmaWxlIGZv cgotaW5wdXQgb3Igb3V0cHV0LiAgSWYgdGhlIGZpbGUgY2Fubm90IGJlIG9wZW5lZCwgYW4gZXJy b3IgaXMKLXNpZ25hbGxlZC4gIElmIHRoZSBwcm9jZWR1cmUgcmV0dXJucywgdGhlbiB0aGUgcG9y dCBpcyBjbG9zZWQKLWF1dG9tYXRpY2FsbHkgYW5kIHRoZSB2YWx1ZXMgeWllbGRlZCBieSB0aGUg cHJvY2VkdXJlIGFyZSByZXR1cm5lZC4KLUlmIHRoZSBwcm9jZWR1cmUgZG9lcyBub3QgcmV0dXJu LCB0aGVuIHRoZSBwb3J0IHdpbGwgbm90IGJlIGNsb3NlZAotYXV0b21hdGljYWxseSB1bmxlc3Mg aXQgaXMgcG9zc2libGUgdG8gcHJvdmUgdGhhdCB0aGUgcG9ydCB3aWxsCi1uZXZlciBhZ2FpbiBi ZSB1c2VkIGZvciBhIHJlYWQgb3Igd3JpdGUgb3BlcmF0aW9uLiIKLSAgKGxldCAoKHAgKG9wZW4t b3V0cHV0LWZpbGUgZmlsZSAjOmJpbmFyeSBiaW5hcnkgIzplbmNvZGluZyBlbmNvZGluZykpKQor c3RyaW5nIG5hbWluZyBhIGZpbGUuICBUaGUgYmVoYXZpb3VyIGlzIHVuc3BlY2lmaWVkIGlmIHRo ZSBmaWxlIGFscmVhZHkKK2V4aXN0cy4gVGhlc2UgcHJvY2VkdXJlcyBjYWxsIFBST0Mgd2l0aCBv bmUgYXJndW1lbnQ6IHRoZSBwb3J0IG9idGFpbmVkCitieSBvcGVuaW5nIHRoZSBuYW1lZCBmaWxl IGZvciBpbnB1dCBvciBvdXRwdXQuICBJZiB0aGUgZmlsZSBjYW5ub3QgYmUKK29wZW5lZCwgYW4g ZXJyb3IgaXMgc2lnbmFsbGVkLiAgSWYgdGhlIHByb2NlZHVyZSByZXR1cm5zLCB0aGVuIHRoZSBw b3J0CitpcyBjbG9zZWQgYXV0b21hdGljYWxseSBhbmQgdGhlIHZhbHVlcyB5aWVsZGVkIGJ5IHRo ZSBwcm9jZWR1cmUgYXJlCityZXR1cm5lZC4gIElmIHRoZSBwcm9jZWR1cmUgZG9lcyBub3QgcmV0 dXJuLCB0aGVuIHRoZSBwb3J0IHdpbGwgbm90IGJlCitjbG9zZWQgYXV0b21hdGljYWxseSB1bmxl c3MgaXQgaXMgcG9zc2libGUgdG8gcHJvdmUgdGhhdCB0aGUgcG9ydCB3aWxsCituZXZlciBhZ2Fp biBiZSB1c2VkIGZvciBhIHJlYWQgb3Igd3JpdGUgb3BlcmF0aW9uLiBXaGVuIE1LRElSIGlzIHRy dWUsCitjcmVhdGUgRklMRSdzIGRpcmVjdG9yeSBhbmQgYWxsIGl0cyBwYXJlbnRzLiIKKyAgKGxl dCAoKHAgKG9wZW4tb3V0cHV0LWZpbGUgZmlsZSAjOmJpbmFyeSBiaW5hcnkgIzplbmNvZGluZyBl bmNvZGluZyAjOm1rZGlyIG1rZGlyKSkpCiAgICAgKGNhbGwtd2l0aC12YWx1ZXMKICAgICAgIChs YW1iZGEgKCkgKHByb2MgcCkpCiAgICAgICAobGFtYmRhIHZhbHMKQEAgLTUyNywzNSArNTMwLDM3 IEBAIHByb2NlZHVyZXMsIHRoZWlyIGJlaGF2aW9yIGlzIGltcGxlbWVudGF0aW9uIGRlcGVuZGVu dC4iCiAgICAjOmVuY29kaW5nIGVuY29kaW5nCiAgICAjOmd1ZXNzLWVuY29kaW5nIGd1ZXNzLWVu Y29kaW5nKSkKIAotKGRlZmluZSogKHdpdGgtb3V0cHV0LXRvLWZpbGUgZmlsZSB0aHVuayAjOmtl eSAoYmluYXJ5ICNmKSAoZW5jb2RpbmcgI2YpKQotICAiVEhVTksgbXVzdCBiZSBhIHByb2NlZHVy ZSBvZiBubyBhcmd1bWVudHMsIGFuZCBGSUxFIG11c3QgYmUgYQotc3RyaW5nIG5hbWluZyBhIGZp bGUuICBUaGUgZWZmZWN0IGlzIHVuc3BlY2lmaWVkIGlmIHRoZSBmaWxlIGFscmVhZHkgZXhpc3Rz LgorKGRlZmluZSogKHdpdGgtb3V0cHV0LXRvLWZpbGUgZmlsZSB0aHVuayAjOmtleSAoYmluYXJ5 ICNmKSAoZW5jb2RpbmcgI2YpIChta2RpciAjZikpCisgICJUSFVOSyBtdXN0IGJlIGEgcHJvY2Vk dXJlIG9mIG5vIGFyZ3VtZW50cywgYW5kIEZJTEUgbXVzdCBiZSBhIHN0cmluZworbmFtaW5nIGEg ZmlsZS4gIFRoZSBlZmZlY3QgaXMgdW5zcGVjaWZpZWQgaWYgdGhlIGZpbGUgYWxyZWFkeSBleGlz dHMuCiBUaGUgZmlsZSBpcyBvcGVuZWQgZm9yIG91dHB1dCwgYW4gb3V0cHV0IHBvcnQgY29ubmVj dGVkIHRvIGl0IGlzIG1hZGUKLXRoZSBkZWZhdWx0IHZhbHVlIHJldHVybmVkIGJ5IGBjdXJyZW50 LW91dHB1dC1wb3J0JywKLWFuZCB0aGUgVEhVTksgaXMgY2FsbGVkIHdpdGggbm8gYXJndW1lbnRz LgotV2hlbiB0aGUgVEhVTksgcmV0dXJucywgdGhlIHBvcnQgaXMgY2xvc2VkIGFuZCB0aGUgcHJl dmlvdXMKLWRlZmF1bHQgaXMgcmVzdG9yZWQuICBSZXR1cm5zIHRoZSB2YWx1ZXMgeWllbGRlZCBi eSBUSFVOSy4gIElmIGFuCi1lc2NhcGUgcHJvY2VkdXJlIGlzIHVzZWQgdG8gZXNjYXBlIGZyb20g dGhlIGNvbnRpbnVhdGlvbiBvZiB0aGVzZQotcHJvY2VkdXJlcywgdGhlaXIgYmVoYXZpb3IgaXMg aW1wbGVtZW50YXRpb24gZGVwZW5kZW50LiIKK3RoZSBkZWZhdWx0IHZhbHVlIHJldHVybmVkIGJ5 IGBjdXJyZW50LW91dHB1dC1wb3J0JywgYW5kIHRoZSBUSFVOSyBpcworY2FsbGVkIHdpdGggbm8g YXJndW1lbnRzLiAgV2hlbiB0aGUgVEhVTksgcmV0dXJucywgdGhlIHBvcnQgaXMgY2xvc2VkCith bmQgdGhlIHByZXZpb3VzIGRlZmF1bHQgaXMgcmVzdG9yZWQuICBSZXR1cm5zIHRoZSB2YWx1ZXMg eWllbGRlZCBieQorVEhVTksuICBJZiBhbiBlc2NhcGUgcHJvY2VkdXJlIGlzIHVzZWQgdG8gZXNj YXBlIGZyb20gdGhlIGNvbnRpbnVhdGlvbgorb2YgdGhlc2UgcHJvY2VkdXJlcywgdGhlaXIgYmVo YXZpb3IgaXMgaW1wbGVtZW50YXRpb24gZGVwZW5kZW50LiBXaGVuCitNS0RJUiBpcyB0cnVlLCB0 aGUgZGlyZWN0b3J5IG9mIEZJTEUgYW5kIGFsbCBpdHMgcGFyZW50cyBhcmUgY3JlYXRlZC4iCiAg IChjYWxsLXdpdGgtb3V0cHV0LWZpbGUgZmlsZQogICAgKGxhbWJkYSAocCkgKHdpdGgtb3V0cHV0 LXRvLXBvcnQgcCB0aHVuaykpCiAgICAjOmJpbmFyeSBiaW5hcnkKLSAgICM6ZW5jb2RpbmcgZW5j b2RpbmcpKQorICAgIzplbmNvZGluZyBlbmNvZGluZworICAgIzpta2RpciBta2RpcikpCiAKLShk ZWZpbmUqICh3aXRoLWVycm9yLXRvLWZpbGUgZmlsZSB0aHVuayAjOmtleSAoYmluYXJ5ICNmKSAo ZW5jb2RpbmcgI2YpKQotICAiVEhVTksgbXVzdCBiZSBhIHByb2NlZHVyZSBvZiBubyBhcmd1bWVu dHMsIGFuZCBGSUxFIG11c3QgYmUgYQotc3RyaW5nIG5hbWluZyBhIGZpbGUuICBUaGUgZWZmZWN0 IGlzIHVuc3BlY2lmaWVkIGlmIHRoZSBmaWxlIGFscmVhZHkgZXhpc3RzLgorKGRlZmluZSogKHdp dGgtZXJyb3ItdG8tZmlsZSBmaWxlIHRodW5rICM6a2V5IChiaW5hcnkgI2YpIChlbmNvZGluZyAj ZikgKG1rZGlyICNmKSkKKyAgIlRIVU5LIG11c3QgYmUgYSBwcm9jZWR1cmUgb2Ygbm8gYXJndW1l bnRzLCBhbmQgRklMRSBtdXN0IGJlIGEgc3RyaW5nCituYW1pbmcgYSBmaWxlLiAgVGhlIGVmZmVj dCBpcyB1bnNwZWNpZmllZCBpZiB0aGUgZmlsZSBhbHJlYWR5IGV4aXN0cy4KIFRoZSBmaWxlIGlz IG9wZW5lZCBmb3Igb3V0cHV0LCBhbiBvdXRwdXQgcG9ydCBjb25uZWN0ZWQgdG8gaXQgaXMgbWFk ZQotdGhlIGRlZmF1bHQgdmFsdWUgcmV0dXJuZWQgYnkgYGN1cnJlbnQtZXJyb3ItcG9ydCcsCi1h bmQgdGhlIFRIVU5LIGlzIGNhbGxlZCB3aXRoIG5vIGFyZ3VtZW50cy4KLVdoZW4gdGhlIFRIVU5L IHJldHVybnMsIHRoZSBwb3J0IGlzIGNsb3NlZCBhbmQgdGhlIHByZXZpb3VzCi1kZWZhdWx0IGlz IHJlc3RvcmVkLiAgUmV0dXJucyB0aGUgdmFsdWVzIHlpZWxkZWQgYnkgVEhVTksuICBJZiBhbgot ZXNjYXBlIHByb2NlZHVyZSBpcyB1c2VkIHRvIGVzY2FwZSBmcm9tIHRoZSBjb250aW51YXRpb24g b2YgdGhlc2UKLXByb2NlZHVyZXMsIHRoZWlyIGJlaGF2aW9yIGlzIGltcGxlbWVudGF0aW9uIGRl cGVuZGVudC4iCit0aGUgZGVmYXVsdCB2YWx1ZSByZXR1cm5lZCBieSBgY3VycmVudC1lcnJvci1w b3J0JywgYW5kIHRoZSBUSFVOSyBpcworY2FsbGVkIHdpdGggbm8gYXJndW1lbnRzLiAgV2hlbiB0 aGUgVEhVTksgcmV0dXJucywgdGhlIHBvcnQgaXMgY2xvc2VkCithbmQgdGhlIHByZXZpb3VzIGRl ZmF1bHQgaXMgcmVzdG9yZWQuICBSZXR1cm5zIHRoZSB2YWx1ZXMgeWllbGRlZCBieQorVEhVTksu ICBJZiBhbiBlc2NhcGUgcHJvY2VkdXJlIGlzIHVzZWQgdG8gZXNjYXBlIGZyb20gdGhlIGNvbnRp bnVhdGlvbgorb2YgdGhlc2UgcHJvY2VkdXJlcywgdGhlaXIgYmVoYXZpb3IgaXMgaW1wbGVtZW50 YXRpb24gZGVwZW5kZW50LiBXaGVuCitNS0RJUiBpcyB0cnVlLCB0aGUgZGlyZWN0b3J5IG9mIEZJ TEUgYW5kIGFsbCBpdHMgcGFyZW50cyBhcmUgY3JlYXRlZC4iCiAgIChjYWxsLXdpdGgtb3V0cHV0 LWZpbGUgZmlsZQogICAgKGxhbWJkYSAocCkgKHdpdGgtZXJyb3ItdG8tcG9ydCBwIHRodW5rKSkK ICAgICM6YmluYXJ5IGJpbmFyeQotICAgIzplbmNvZGluZyBlbmNvZGluZykpCisgICAjOmVuY29k aW5nIGVuY29kaW5nCisgICAjOm1rZGlyIG1rZGlyKSkKIAogKGRlZmluZSAoY2FsbC13aXRoLWlu cHV0LXN0cmluZyBzdHJpbmcgcHJvYykKICAgIkNhbGxzIHRoZSBvbmUtYXJndW1lbnQgcHJvY2Vk dXJlIEB2YXJ7cHJvY30gd2l0aCBhIG5ld2x5IGNyZWF0ZWQKLS0gCjIuMjguMAoK --=-IOAqfLlpdrCkrFRNzdsX Content-Disposition: attachment; filename="0001-ports-Add-mkdir-recursive.patch" Content-Type: text/x-patch; name="0001-ports-Add-mkdir-recursive.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 RnJvbSBjNzg4NGJlMmM4MWY5NzM5YmVjMzM0ZmJjMjYzMzg0NTg0YTkzMDk2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBkaXZvcGxhZGUgPGRAZGl2b3BsYWRlLmZyPgpEYXRlOiBGcmks IDIzIE9jdCAyMDIwIDIyOjQ0OjM2ICswMjAwClN1YmplY3Q6IFtQQVRDSCAxLzJdIHBvcnRzOiBB ZGQgbWtkaXItcmVjdXJzaXZlCgoyMDIwLTEwLTI1IGRpdm9wbGFkZSA8ZEBkaXZvcGxhZGUuZnI+ CgkqIG1vZHVsZS9pY2UtOS9wb3J0cy5zY206IGFkZCBhIGZ1bmN0aW9uLCBta2Rpci1yZWN1cnNp dmUsIHRvCgljcmVhdGUgdGhlIGNoYWluIG9mIGRpcmVjdG9yaWVzLgoJKiBkb2MvcmVmL3Bvc2l4 LnRleGk6IGRvY3VtZW50IHRoZSBuZXcgZnVuY3Rpb24gbWtkaXItcmVjdXJzaXZlLgoJKiBORVdT OiBtZW50aW9uIHRoZSBuZXcgZnVuY3Rpb24uCgkqIHRlc3Qtc3VpdGUvdGVzdHMvcG9ydHMudGVz dDogYWRkIGEgdGVzdCBzdWl0ZSB0byBjaGVjawoJcmVjdXJzaXZlIG1rZGlyLgotLS0KIE5FV1Mg ICAgICAgICAgICAgICAgICAgICAgICB8ICA1ICsrKysrCiBkb2MvcmVmL3Bvc2l4LnRleGkgICAg ICAgICAgfCAxNSArKysrKysrKysrLS0tLQogbW9kdWxlL2ljZS05L3BvcnRzLnNjbSAgICAgIHwg MzMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiB0ZXN0LXN1aXRlL3Rlc3RzL3BvcnRz LnRlc3QgfCA0MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiA0IGZpbGVz IGNoYW5nZWQsIDg5IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv TkVXUyBiL05FV1MKaW5kZXggNjk0NDQ5MjAyLi45NGEzZjMxNTQgMTAwNjQ0Ci0tLSBhL05FV1MK KysrIGIvTkVXUwpAQCAtMTYsNiArMTYsMTEgQEAgTygxKSBkaXNwYXRjaCB0aW1lLCByZWdhcmRs ZXNzIG9mIHRoZSBsZW5ndGggb2YgdGhlIGNoYWluLiAgVGhpcwogb3B0aW1pemF0aW9uIGlzIGFs c28gdW5sb2NrZWQgaW4gbWFueSBjYXNlcyBmb3IgYG1hdGNoJyBleHByZXNzaW9ucyB3aXRoCiBt YW55IHNpbWlsYXIgY2xhdXNlcyB3aG9zZSBmaXJzdCBkaWZmZXJlbnRpYXRvciBhcmUgY29uc3Rh bnRzLgogCisqKiBOZXcgZnVuY3Rpb24gbWtkaXItcmVjdXJzaXZlCisKK1RoaXMgZnVuY3Rpb24g d2lsbCB0cnkgYW5kIGNyZWF0ZSB0aGUgZGlyZWN0b3J5IGFuZCBwYXJlbnQgZGlyZWN0b3JpZXMs Cit1cCB0byBhIGRpcmVjdG9yeSB0aGF0IGNhbiBiZSBvcGVuZWQgb3IgdGhlIHJvb3QuCisKICog SW5jb21wYXRpYmxlIGNoYW5nZXMKIAogKiogYGNvcHknIHJlYWQtb3B0aW9uIHJlbW92ZWQKZGlm ZiAtLWdpdCBhL2RvYy9yZWYvcG9zaXgudGV4aSBiL2RvYy9yZWYvcG9zaXgudGV4aQppbmRleCBm MzRjNTIyMmQuLmNiOTk0Mzk3NyAxMDA2NDQKLS0tIGEvZG9jL3JlZi9wb3NpeC50ZXhpCisrKyBi L2RvYy9yZWYvcG9zaXgudGV4aQpAQCAtODgxLDEwICs4ODEsMTcgQEAgQ3JlYXRlIGEgc3ltYm9s aWMgbGluayBuYW1lZCBAdmFye25ld3BhdGh9IHdpdGggdGhlIHZhbHVlIChpLmUuLCBwb2ludGlu ZyB0bykKIEBkZWZmbiB7U2NoZW1lIFByb2NlZHVyZX0gbWtkaXIgcGF0aCBbbW9kZV0KIEBkZWZm bngge0MgRnVuY3Rpb259IHNjbV9ta2RpciAocGF0aCwgbW9kZSkKIENyZWF0ZSBhIG5ldyBkaXJl Y3RvcnkgbmFtZWQgYnkgQHZhcntwYXRofS4gIElmIEB2YXJ7bW9kZX0gaXMgb21pdHRlZAotdGhl biB0aGUgcGVybWlzc2lvbnMgb2YgdGhlIGRpcmVjdG9yeSBhcmUgc2V0IHRvIEBjb2RleyNvNzc3 fQotbWFza2VkIHdpdGggdGhlIGN1cnJlbnQgdW1hc2sgKEBweHJlZntQcm9jZXNzZXMsIEBjb2Rl e3VtYXNrfX0pLgotT3RoZXJ3aXNlIHRoZXkgYXJlIHNldCB0byB0aGUgdmFsdWUgc3BlY2lmaWVk IHdpdGggQHZhcnttb2RlfS4KLVRoZSByZXR1cm4gdmFsdWUgaXMgdW5zcGVjaWZpZWQuCit0aGVu IHRoZSBwZXJtaXNzaW9ucyBvZiB0aGUgZGlyZWN0b3J5IGFyZSBzZXQgdG8gQGNvZGV7I283Nzd9 IG1hc2tlZAord2l0aCB0aGUgY3VycmVudCB1bWFzayAoQHB4cmVme1Byb2Nlc3NlcywgQGNvZGV7 dW1hc2t9fSkuICBPdGhlcndpc2UKK3RoZXkgYXJlIHNldCB0byB0aGUgdmFsdWUgc3BlY2lmaWVk IHdpdGggQHZhcnttb2RlfS4gIFRoZSByZXR1cm4gdmFsdWUKK2lzIHVuc3BlY2lmaWVkLgorQGVu ZCBkZWZmbgorCitAZGVmZm4ge1NjaGVtZSBQcm9jZWR1cmV9IG1rZGlyLXJlY3Vyc2l2ZSBAdmFy e3BhdGh9IFttb2RlXQorQ3JlYXRlIHRoZSBkaXJlY3RvcnkgbmFtZWQgQHZhcntwYXRofSwgd2l0 aCB0aGUgb3B0aW9uYWwgZ2l2ZW4KK0B2YXJ7bW9kZX0sIGFzIGZvciBAY29kZXtta2Rpcn0uIENy ZWF0ZSBhbGwgcGFyZW50IGRpcmVjdG9yaWVzIHVwIHRvIGEKK2RpcmVjdG9yeSB0aGF0IGNhbiBi ZSBvcGVuZWQsIG9yIHRoZSByb290LiBUaGUgY2hhaW4gb2YgZGlyZWN0b3JpZXMgaXMKK25vdCBj bGVhbmVkIGluIGNhc2Ugb2YgYW4gZXJyb3IuCiBAZW5kIGRlZmZuCiAKIEBkZWZmbiB7U2NoZW1l IFByb2NlZHVyZX0gcm1kaXIgcGF0aApkaWZmIC0tZ2l0IGEvbW9kdWxlL2ljZS05L3BvcnRzLnNj bSBiL21vZHVsZS9pY2UtOS9wb3J0cy5zY20KaW5kZXggZGJjN2VmN2E3Li4zZWQyODllNDMgMTAw NjQ0Ci0tLSBhL21vZHVsZS9pY2UtOS9wb3J0cy5zY20KKysrIGIvbW9kdWxlL2ljZS05L3BvcnRz LnNjbQpAQCAtMTA1LDYgKzEwNSw3IEBACiAgICAgICAgICAgICBPUEVOX1JFQUQgT1BFTl9XUklU RSBPUEVOX0JPVEgKICAgICAgICAgICAgICpudWxsLWRldmljZSoKICAgICAgICAgICAgIG9wZW4t aW5wdXQtZmlsZQorICAgICAgICAgICAgbWtkaXItcmVjdXJzaXZlCiAgICAgICAgICAgICBvcGVu LW91dHB1dC1maWxlCiAgICAgICAgICAgICBvcGVuLWlvLWZpbGUKICAgICAgICAgICAgIGNhbGwt d2l0aC1pbnB1dC1maWxlCkBAIC00MTMsNiArNDE0LDM4IEBAIGNhbm5vdCBiZSBvcGVuZWQsIGFu IGVycm9yIGlzIHNpZ25hbGxlZC4iCiAgICAgICAgICAgICAgIzplbmNvZGluZyBlbmNvZGluZwog ICAgICAgICAgICAgICM6Z3Vlc3MtZW5jb2RpbmcgZ3Vlc3MtZW5jb2RpbmcpKQogCisoZGVmaW5l IChta2Rpci1yZWN1cnNpdmUgbmFtZSkKKyAgIkNyZWF0ZSB0aGUgcGFyZW50IGRpcmVjdG9yaWVz IG9mIEB2YXJ7bmFtZX0sIHVwIHRvIGEgZGlyZWN0b3J5IHRoYXQKK2NhbiBiZSBvcGVuZWQsIG9y IHVwIHRvIHRoZSByb290LiIKKyAgKGRlZmluZSAodHJhY2UtZGlycyBqb2IgbmFtZSkKKyAgICAi UmVjb3JkIGFsbCB0aGUgZGlyZWN0b3JpZXMgdGhhdCBkbyBub3QgZXhpc3QgKGkuZS4gdGhhdCBj YW5ub3QgYmUKK29wZW5lZCkgYW5kIHRoYXQgd2lsbCBuZWVkIHRvIGJlIGNyZWF0ZWQuIgorICAg IChjYXRjaCAnc3lzdGVtLWVycm9yCisgICAgICAobGFtYmRhICgpCisgICAgICAgIChjbG9zZWRp ciAob3BlbmRpciBuYW1lKSkKKyAgICAgICAgam9iKQorICAgICAgKGxhbWJkYSAoZXJyb3IgLiBh cmdzKQorICAgICAgICAobGV0ICgoZGlyIChkaXJuYW1lIG5hbWUpKSkKKyAgICAgICAgICAoaWYg KHN0cmluZz0/IGRpciBuYW1lKQorICAgICAgICAgICAgICA7OyBUaGlzIGlzIGVpdGhlciB0aGUg cm9vdCBvZiB0aGUgZmlsZSBzeXN0ZW0sIG9yIHRoZQorICAgICAgICAgICAgICA7OyBjdXJyZW50 IHdvcmtpbmcgZGlyZWN0b3J5LiBJZiB0aGUgY3VycmVudCBkaXJlY3RvcnkKKyAgICAgICAgICAg ICAgOzsgZG9lcyBub3QgZXhpc3QsIGNhbGxpbmcgKGdldGN3ZCkgaXMgYW4gZXJyb3IsIHNvIHdl CisgICAgICAgICAgICAgIDs7IGNhbm5vdCBrbm93IHdoZXJlIGl0IGlzIGluIG9yZGVyIHRvIGNy ZWF0ZQorICAgICAgICAgICAgICA7OyBpdC4gT3RoZXJ3aXNlIHdlIHdvdWxkIGNhbGwgKHRyYWNl LWRpcnMgam9iCisgICAgICAgICAgICAgIDs7IChnZXRjd2QpKS4gU28gbm93IHdlIGFzc3VtZSB0 aGF0IGRpciBhbmQgbmFtZSBpcyB0aGUKKyAgICAgICAgICAgICAgOzsgcm9vdCwgYW5kIHRoZXkg ZG8gbm90IG5lZWQgdG8gYmUgY3JlYXRlZC4KKyAgICAgICAgICAgICAgam9iCisgICAgICAgICAg ICAgICh0cmFjZS1kaXJzIChjb25zIG5hbWUgam9iKSBkaXIpKSkpKSkKKyAgKGRlZmluZSAobWFr ZS1kaXJzIGRpcnMpCisgICAgKHVubGVzcyAobnVsbD8gZGlycykKKyAgICAgIChjYXRjaCAnc3lz dGVtLWVycm9yCisgICAgICAgIChsYW1iZGEgKCkKKyAgICAgICAgICAobWtkaXIgKGNhciBkaXJz KSkpCisgICAgICAgIChsYW1iZGEgKGVycm9yIC4gYXJncykKKyAgICAgICAgICAjdCkpCisgICAg ICAobWFrZS1kaXJzIChjZHIgZGlycykpKSkKKyAgKG1ha2UtZGlycyAodHJhY2UtZGlycyAnKCkg bmFtZSkpKQorCiAoZGVmaW5lKiAob3Blbi1vdXRwdXQtZmlsZSBmaWxlICM6a2V5IChiaW5hcnkg I2YpIChlbmNvZGluZyAjZikpCiAgICJUYWtlcyBhIHN0cmluZyBuYW1pbmcgYW4gb3V0cHV0IGZp bGUgdG8gYmUgY3JlYXRlZCBhbmQgcmV0dXJucyBhbgogb3V0cHV0IHBvcnQgY2FwYWJsZSBvZiB3 cml0aW5nIGNoYXJhY3RlcnMgdG8gYSBuZXcgZmlsZSBieSB0aGF0CmRpZmYgLS1naXQgYS90ZXN0 LXN1aXRlL3Rlc3RzL3BvcnRzLnRlc3QgYi90ZXN0LXN1aXRlL3Rlc3RzL3BvcnRzLnRlc3QKaW5k ZXggMzFmYjJiMGE4Li5hYjY5NjE5NWIgMTAwNjQ0Ci0tLSBhL3Rlc3Qtc3VpdGUvdGVzdHMvcG9y dHMudGVzdAorKysgYi90ZXN0LXN1aXRlL3Rlc3RzL3BvcnRzLnRlc3QKQEAgLTIwMjIsNiArMjAy Miw0NiBAQAogCiAoZGVsZXRlLWZpbGUgKHRlc3QtZmlsZSkpCiAKKyh3aXRoLXRlc3QtcHJlZml4 ICJyZWN1cnNpdmUgbWtkaXIiCisKKyAgKHBhc3MtaWYgIlJlbGF0aXZlIHJlY3Vyc2l2ZSBta2Rp ciBjcmVhdGVzIHRoZSBjaGFpbiBvZiBkaXJlY3RvcmllcyIKKyAgICAobGV0ICgoZGlyICIuL25l c3RlZC9yZWxhdGl2ZS9zdWJkaXJlY3RvcnkiKSkKKyAgICAgIChta2Rpci1yZWN1cnNpdmUgZGly KQorICAgICAgKGxldCAoKG9rCisgICAgICAgICAgICAgKGNhdGNoICN0CisgICAgICAgICAgICAg ICAobGFtYmRhICgpCisgICAgICAgICAgICAgICAgICh3aXRoLW91dHB1dC10by1maWxlICIuL25l c3RlZC9yZWxhdGl2ZS9zdWJkaXJlY3RvcnkvZmlsZSIKKyAgICAgICAgICAgICAgICAgICAobGFt YmRhICgpCisgICAgICAgICAgICAgICAgICAgICAoZGlzcGxheSAiVGhlIGRpcmVjdG9yaWVzIGhh dmUgYmVlbiBjcmVhdGVkISIpCisgICAgICAgICAgICAgICAgICAgICAjdCkpKQorICAgICAgICAg ICAgICAgKGxhbWJkYSAoZXJyb3IgLiBhcmdzKQorICAgICAgICAgICAgICAgICAjZikpKSkKKyAg ICAgICAgKHdoZW4gb2sKKyAgICAgICAgICAoZGVsZXRlLWZpbGUgIi4vbmVzdGVkL3JlbGF0aXZl L3N1YmRpcmVjdG9yeS9maWxlIikKKyAgICAgICAgICAocm1kaXIgIi4vbmVzdGVkL3JlbGF0aXZl L3N1YmRpcmVjdG9yeSIpCisgICAgICAgICAgKHJtZGlyICIuL25lc3RlZC9yZWxhdGl2ZSIpCisg ICAgICAgICAgKHJtZGlyICIuL25lc3RlZCIpKQorICAgICAgICBvaykpKQorCisgIChwYXNzLWlm ICJBYnNvbHV0ZSByZWN1cnNpdmUgbWtkaXIgY3JlYXRlcyB0aGUgY2hhaW4gb2YgZGlyZWN0b3Jp ZXMiCisgICAgKGxldCAoKGRpciAoc3RyaW5nLWFwcGVuZCAldGVtcG9yYXJ5LWRpcmVjdG9yeSAi L25lc3RlZC9hYnNvbHV0ZS9zdWJkaXJlY3RvcnkiKSkpCisgICAgICAobWtkaXItcmVjdXJzaXZl IGRpcikKKyAgICAgIChsZXQgKChvaworICAgICAgICAgICAgIChjYXRjaCAjdAorICAgICAgICAg ICAgICAgKGxhbWJkYSAoKQorICAgICAgICAgICAgICAgICAod2l0aC1vdXRwdXQtdG8tZmlsZSAo c3RyaW5nLWFwcGVuZCBkaXIgIi9maWxlIikKKyAgICAgICAgICAgICAgICAgICAobGFtYmRhICgp CisgICAgICAgICAgICAgICAgICAgICAoZGlzcGxheSAiVGhlIGRpcmVjdG9yaWVzIGhhdmUgYmVl biBjcmVhdGVkISIpCisgICAgICAgICAgICAgICAgICAgICAjdCkpKQorICAgICAgICAgICAgICAg KGxhbWJkYSAoZXJyb3IgLiBhcmdzKQorICAgICAgICAgICAgICAgICAjZikpKSkKKyAgICAgICAg KHdoZW4gb2sKKyAgICAgICAgICAoZGVsZXRlLWZpbGUgKHN0cmluZy1hcHBlbmQgZGlyICIvZmls ZSIpKQorICAgICAgICAgIChybWRpciAoc3RyaW5nLWFwcGVuZCAldGVtcG9yYXJ5LWRpcmVjdG9y eSAiL25lc3RlZC9hYnNvbHV0ZS9zdWJkaXJlY3RvcnkiKSkKKyAgICAgICAgICAocm1kaXIgKHN0 cmluZy1hcHBlbmQgJXRlbXBvcmFyeS1kaXJlY3RvcnkgIi9uZXN0ZWQvYWJzb2x1dGUiKSkKKyAg ICAgICAgICAocm1kaXIgKHN0cmluZy1hcHBlbmQgJXRlbXBvcmFyeS1kaXJlY3RvcnkgIi9uZXN0 ZWQiKSkpCisgICAgICAgIG9rKSkpKQorCiA7OzsgTG9jYWwgVmFyaWFibGVzOgogOzs7IGV2YWw6 IChwdXQgJ3Rlc3QtZGVjb2RpbmctZXJyb3IgJ3NjaGVtZS1pbmRlbnQtZnVuY3Rpb24gMykKIDs7 OyBldmFsOiAocHV0ICd3aXRoLWxvYWQtcGF0aCAnc2NoZW1lLWluZGVudC1mdW5jdGlvbiAxKQot LSAKMi4yOC4wCgo= --=-IOAqfLlpdrCkrFRNzdsX--