From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id yB/mMcGwYGCadAEAgWs5BA (envelope-from ) for ; Sun, 28 Mar 2021 18:37:21 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id 5Lq2LMGwYGB4GAAA1q6Kng (envelope-from ) for ; Sun, 28 Mar 2021 16:37:21 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 7E722100A8 for ; Sun, 28 Mar 2021 18:37:20 +0200 (CEST) Received: from localhost ([::1]:36316 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lQYPf-00030F-NL for larch@yhetil.org; Sun, 28 Mar 2021 12:37:19 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:33734) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lQYPN-0002zq-Vq for guix-patches@gnu.org; Sun, 28 Mar 2021 12:37:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:35354) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lQYPN-0003YB-Os for guix-patches@gnu.org; Sun, 28 Mar 2021 12:37:01 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1lQYPN-00019V-Ks for guix-patches@gnu.org; Sun, 28 Mar 2021 12:37:01 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#45905] [PATCH] IPFS service definition Resent-From: Maxime Devos Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 28 Mar 2021 16:37:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45905 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 45905@debbugs.gnu.org Received: via spool by 45905-submit@debbugs.gnu.org id=B45905.16169493954382 (code B ref 45905); Sun, 28 Mar 2021 16:37:01 +0000 Received: (at 45905) by debbugs.gnu.org; 28 Mar 2021 16:36:35 +0000 Received: from localhost ([127.0.0.1]:46897 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lQYOo-00018U-Pr for submit@debbugs.gnu.org; Sun, 28 Mar 2021 12:36:35 -0400 Received: from albert.telenet-ops.be ([195.130.137.90]:43000) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lQYOl-00018J-Jz for 45905@debbugs.gnu.org; Sun, 28 Mar 2021 12:36:25 -0400 Received: from ptr-bvsjgyjmffd7q9timvx.18120a2.ip6.access.telenet.be ([IPv6:2a02:1811:8c09:9d00:aaf1:9810:a0b8:a55d]) by albert.telenet-ops.be with bizsmtp id lscM2400G0mfAB406scMxl; Sun, 28 Mar 2021 18:36:22 +0200 Message-ID: <4e1df2f011f5766d48c44d7231e562a889239e7a.camel@telenet.be> From: Maxime Devos Date: Sun, 28 Mar 2021 18:36:13 +0200 In-Reply-To: <871rc6koew.fsf@gnu.org> References: <874kh3w1j6.fsf@gnu.org> <36af87b3ec48ed159cc237dcac93320817c74f58.camel@telenet.be> <871rc6koew.fsf@gnu.org> Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-onZ0Vh88Nt1TPN6CIFpc" User-Agent: Evolution 3.34.2 MIME-Version: 1.0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telenet.be; s=r21; t=1616949382; bh=aK98yxaD7fKTwRBZCOcsh/Ir94vsR/UFt1lz5C7MpM4=; h=Subject:From:To:Cc:Date:In-Reply-To:References; b=Zb9DfX+xlPVqyfPCjKHGcRUGVyFZpFBEYt/HzZ2ZYxv8nS2MGfSAPJnFV3tYx3TnQ iG4M7QwwrCsxlyHXuvkSjgFcy1hcoqLFMYBlc4/VLm33/JSx/2CJ+piIMMJDD7chdm EV8x5FA8/fZU9mFZPkHg3oaOdOGZvLi1rslcRsMaEt7qWXt0Jl7z0ctr5cDyy2pd+8 NoY2U6RwYY+pZ6loizAWyrg+H9/H81empiSikIN8maS0XXUH10ixP8704UiatwZJaN ivthXydeHs5wLNnyEFZnW+r0f2pJEKQ89ZPpVYebJB60CBLpCxTLoO8GG2IfNebXma cQ4sRg7vdE1Jw== X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1616949441; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:resent-cc:resent-from:resent-sender: resent-message-id:in-reply-to:in-reply-to:references:references: list-id:list-help:list-unsubscribe:list-subscribe:list-post: dkim-signature; bh=aK98yxaD7fKTwRBZCOcsh/Ir94vsR/UFt1lz5C7MpM4=; b=OremSzHWJlvx3GEwY6YVQUzskGxgmFTelybccit3yjU2JXHbETOTnFgXcOu37mvu5svwR5 zho1Kx3sMgVVYGI7gQRz3nKZBhsfDheo5jrG+NQzaoX7oP1aJg6+iDxhuURyOKHnAnPzxj JnXoW0p+u0lRAAIUomFCahkhtmggUzAGg4DnLcOX8usEwX4EbPh7fpTwZGddEzEPc8yfcD YK7pVugH9yrisHhoOn7LAPneL6gDkpmDWO2fW8sOiAANXkC6rqusJcKSjgzsQDtrL2hrUQ ZW5f6hbfYk4crNM3UVFYztGOsdmgvrKBJM+vIBwG//r6wxqtcKbaPwndrs9hGw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1616949441; a=rsa-sha256; cv=none; b=AurYlAjxhMX7m3Dk9Qd1mFNWMwmo+EQogZlaKNSjZl0G3RfwBsoNLXjCmgR+THsIcXDio1 QVeTsY1oiNNkcQP6oEuLj4GhG6kivStbdO2ZadoViHXYRxFFGEklhcdd8bBp7DKVjvJEUc szBX8MXyONwewKbXyLhqV16gJag7MD4wHkTpOXfEXIY0idqqRDksmUfgDHjLXbxnisVnrt 0qEl3ic5DwMKUgAV/C9UCvW9goyMt3RUpe0QKlZSwypJLPkFhoPduIzB7tCFjPAhmqtsJl t3BGbp7u5AhsMWHjRpRXKH0c+UTKkM/M+W5+AJODgZ649/AGz5g+jMRm9guXwQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=telenet.be header.s=r21 header.b=Zb9DfX+x; dmarc=fail reason="SPF not aligned (relaxed)" header.from=telenet.be (policy=none); spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Spam-Score: -1.72 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=telenet.be header.s=r21 header.b=Zb9DfX+x; dmarc=fail reason="SPF not aligned (relaxed)" header.from=telenet.be (policy=none); spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Queue-Id: 7E722100A8 X-Spam-Score: -1.72 X-Migadu-Scanner: scn0.migadu.com X-TUID: lnsAAIOe6HIm --=-onZ0Vh88Nt1TPN6CIFpc Content-Type: multipart/mixed; boundary="=-4fQ/b2+OM9ALP4I5bmy3" --=-4fQ/b2+OM9ALP4I5bmy3 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, 2021-03-23 at 14:08 +0100, Ludovic Court=C3=A8s wrote: > [...] > Yes, I think so. We =E2=80=9Cjust=E2=80=9D need to package =E2=80=98fs-r= epo-migrations=E2=80=99 first. >=20 > Perhaps it=E2=80=99d be okay, as a first step, to provide an IPFS service= that > doesn=E2=80=99t handle migrations automatically. >=20 > [...] Punt for later. > > > The patch LGTM. However, we usually commit services along with a sys= tem > > > test under (gnu tests =E2=80=A6). The manual has info on how to run = individual > > > system tests: > > >=20 > > > https://guix.gnu.org/manual/en/html_node/Running-the-Test-Suite.htm= l > > >=20 > > > Could you write a test that ensures that basic functionality works? = It > > > could be as simple as waiting for the service to be up, then invoking > > > =E2=80=98ipfs add=E2=80=99 and =E2=80=98ipfs get=E2=80=99. WDYT? > >=20 > > [...] I have attached a revised patch series testing such basic functionality. However, I tested the functionality with the HTTP interface instead of with the command line, as the CLI tools assume the IPFS daemon is run as the same user as the CLI tools. (IIRC there is an implementation of the CLI tools somewhere that uses the API endpoint instead of reading/writing to ~/.ipfs, but I don't recall where.) I have a problem: I can't run the test I wrote. $ make && make check-system TESTS=3D"ipfs" > [compilation bla bla] > Compiling Scheme modules... > Selected 1 system tests... > (end of output) For some reason, the test I wrote seems to be ignored. (Also available from my public git repo: ) Greetings, Maxime. --=-4fQ/b2+OM9ALP4I5bmy3 Content-Disposition: attachment; filename="0001-services-Add-ipfs-service-type.patch" Content-Type: text/x-patch; name="0001-services-Add-ipfs-service-type.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 RnJvbSAxYzMxODJkYWIxOTM5NDc0OGEwOTI2NGI1NDM4NzRkZTFiNzc3ZWM1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXhpbWUgRGV2b3MgPG1heGltZWRldm9zQHRlbGVuZXQuYmU+ CkRhdGU6IEZyaSwgMTUgSmFuIDIwMjEgMjE6NDY6NDIgKzAxMDAKU3ViamVjdDogW1BBVENIIDEv M10gc2VydmljZXM6IEFkZCBpcGZzLXNlcnZpY2UtdHlwZQoKKiBnbnUvc2VydmljZXMvbmV0d29y a2luZy5zY20gKGlwZnMtc2VydmljZS10eXBlKQogICglaXBmcy1ob21lLW1hcHBpbmcsICVpcGZz LWVudmlyb25tZW50KQogICglaXBmcy1hY2NvdW50cywgJWlwZnMtaG9tZSk6IE5ldyB2YXJpYWJs ZXMuCiAgKGlwZnMtY29uZmlndXJhdGlvbiwgaXBmcy1jb25maWd1cmF0aW9uPykKICAoaXBmcy1j b25maWd1cmF0aW9uLXBhY2thZ2UsIGlwZnMtY29uZmlndXJhdGlvbi1nYXRld2F5KQogIChpcGZz LWNvbmZpZ3VyYXRpb24tYXBpLCBpcGZzLXNoZXBoZXJkLXNlcnZpY2UpCiAgKGlwZnMtYmluYXJ5 LCAlaXBmcy1hY3RpdmF0aW9uKTogTmV3IHByb2NlZHVyZXMuCiogZG9jL2d1aXgudGV4aSAoTmV0 d29ya2luZyBTZXJ2aWNlcyk6IERvY3VtZW50IGl0LgotLS0KIGRvYy9ndWl4LnRleGkgICAgICAg ICAgICAgICB8ICAzMyArKysrKysrKysKIGdudS9zZXJ2aWNlcy9uZXR3b3JraW5nLnNjbSB8IDE0 MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwg MTc0IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kb2MvZ3VpeC50ZXhpIGIvZG9jL2d1aXgu dGV4aQppbmRleCA3NGYzZmJkMjk5Li45MzE0MzI3MDM5IDEwMDY0NAotLS0gYS9kb2MvZ3VpeC50 ZXhpCisrKyBiL2RvYy9ndWl4LnRleGkKQEAgLTg3LDYgKzg3LDcgQEAgQ29weXJpZ2h0IEBjb3B5 cmlnaHR7fSAyMDIwIERhbmllbCBCcm9va3NAKgogQ29weXJpZ2h0IEBjb3B5cmlnaHR7fSAyMDIw IEpvaG4gU29vQCoKIENvcHlyaWdodCBAY29weXJpZ2h0e30gMjAyMCBKb25hdGhhbiBCcmllbG1h aWVyQCoKIENvcHlyaWdodCBAY29weXJpZ2h0e30gMjAyMCBFZGdhciBWaW5jZW50QCoKK0NvcHly aWdodCBAY29weXJpZ2h0e30gMjAyMSBNYXhpbWUgRGV2b3NAKgogCiBQZXJtaXNzaW9uIGlzIGdy YW50ZWQgdG8gY29weSwgZGlzdHJpYnV0ZSBhbmQvb3IgbW9kaWZ5IHRoaXMgZG9jdW1lbnQKIHVu ZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEZyZWUgRG9jdW1lbnRhdGlvbiBMaWNlbnNlLCBWZXJz aW9uIDEuMyBvcgpAQCAtMTc0NjIsNiArMTc0NjMsMzggQEAgYWRkcmVzcywgZGVsZXRlIGV2ZXJ5 dGhpbmcgZXhjZXB0IHRoZXNlIG9wdGlvbnM6CiBAZW5kIHRhYmxlCiBAZW5kIGRlZnRwCiAKK0Bj aW5kZXggSVBGUworQGRlZnZyIHtTY2hlbWUgVmFyaWFibGV9IGlwZnMtc2VydmljZS10eXBlCitU aGUgc2VydmljZSB0eXBlIGZvciBjb25uZWN0aW5nIHRvIHRoZSBAdXJlZntodHRwczovL2lwZnMu aW8sSVBGUyBuZXR3b3JrfSwKK2EgZ2xvYmFsLCB2ZXJzaW9uZWQsIHBlZXItdG8tcGVlciBmaWxl IHN5c3RlbS4gUGFzcyBpdCBhCitAY29kZXtpcGZzLWNvbmZpZ3VyYXRpb259IHRvIGNoYW5nZSB0 aGUgcG9ydHMgdXNlZCBmb3IgdGhlIGdhdGV3YXkgYW5kIEFQSS4KKworSGVyZSdzIGFuIGV4YW1w bGUgY29uZmlndXJhdGlvbiwgdXNpbmcgc29tZSBub24tc3RhbmRhcmQgcG9ydHM6CisKK0BsaXNw Cis7OyBwYXJ0IG9mIHRoZSBvcGVyYXRpbmctc3lzdGVtIGRlY2xhcmF0aW9uCisoc2VydmljZSBp cGZzLXNlcnZpY2UtdHlwZQorICAgICAgICAgICAgICAoaXBmcy1jb25maWd1cmF0aW9uCisgICAg ICAgICAgICAgICAoZ2F0ZXdheSAiL2lwNC8xMjcuMC4wLjEvdGNwLzg4ODAiKQorICAgICAgICAg ICAgICAgKGFwaSAiL2lwNC8xMjcuMC4wLjEvdGNwLzg4ODEiKSkpCitAZW5kIGxpc3AKK0BlbmQg ZGVmdnIKKworQGRlZnRwIHtEYXRhIFR5cGV9IGlwZnMtY29uZmlndXJhdGlvbgorRGF0YSB0eXBl IHJlcHJlc2VudGluZyB0aGUgY29uZmlndXJhdGlvbiBvZiBJUEZTLgorCitAdGFibGUgQGFzaXMK K0BpdGVtIEBjb2Rle3BhY2thZ2V9IChkZWZhdWx0OiBAY29kZXtnby1pcGZzfSkKK1BhY2thZ2Ug b2JqZWN0IG9mIElQRlMuCisKK0BpdGVtIEBjb2Rle2dhdGV3YXl9IChkZWZhdWx0OiBAY29kZXsi L2lwNC8xMjcuMC4wLjEvdGNwLzgwODIifSkKK0FkZHJlc3Mgb2YgdGhlIGdhdGV3YXksIGluIOKA mG11bHRpYWRkcmVzc+KAmSBmb3JtYXQuCisKK0BpdGVtIEBjb2Rle2FwaX0gKGRlZmF1bHQ6IEBj b2RleyIvaXA0LzEyNy4wLjAuMS90Y3AvNTAwMSJ9KQorQWRkcmVzcyBvZiB0aGUgQVBJIGVuZHBv aW50LCBpbiDigJhtdWx0aWFkZHJlc3PigJkgZm9ybWF0LgorQGVuZCB0YWJsZQorQGVuZCBkZWZ0 cAorCiBAY2luZGV4IGtlZXBhbGl2ZWQKIEBkZWZmbiB7U2NoZW1lIFZhcmlhYmxlfSBrZWVwYWxp dmVkLXNlcnZpY2UtdHlwZQogVGhpcyBpcyB0aGUgdHlwZSBmb3IgdGhlIEB1cmVme2h0dHBzOi8v d3d3LmtlZXBhbGl2ZWQub3JnLywgS2VlcGFsaXZlZH0KZGlmZiAtLWdpdCBhL2dudS9zZXJ2aWNl cy9uZXR3b3JraW5nLnNjbSBiL2dudS9zZXJ2aWNlcy9uZXR3b3JraW5nLnNjbQppbmRleCAyMzFh OWY2NmM3Li42ZTkzYjU2NzE3IDEwMDY0NAotLS0gYS9nbnUvc2VydmljZXMvbmV0d29ya2luZy5z Y20KKysrIGIvZ251L3NlcnZpY2VzL25ldHdvcmtpbmcuc2NtCkBAIC0xNiw2ICsxNiw3IEBACiA7 OzsgQ29weXJpZ2h0IMKpIDIwMjAgQnJpY2UgV2FlZ2VuZWlyZSA8YnJpY2VAd2FlZ2VuZWkucmU+ CiA7OzsgQ29weXJpZ2h0IMKpIDIwMjEgT2xlZyBQeWtoYWxvdiA8Z28ud2lndXN0QGdtYWlsLmNv bT4KIDs7OyBDb3B5cmlnaHQgwqkgMjAyMSBDaHJpc3RvcGhlciBMZW1tZXIgV2ViYmVyIDxjd2Vi YmVyQGR1c3R5Y2xvdWQub3JnPgorOzs7IENvcHlyaWdodCDCqSAyMDIxIE1heGltZSBEZXZvcyA8 bWF4aW1lZGV2b3NAdGVsZW5ldC5iZT4KIDs7OwogOzs7IFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdO VSBHdWl4LgogOzs7CkBAIC01NSw2ICs1Niw4IEBACiAgICM6dXNlLW1vZHVsZSAoZ251IHBhY2th Z2VzIG50cCkKICAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgd2ljZCkKICAgIzp1c2UtbW9k dWxlIChnbnUgcGFja2FnZXMgZ25vbWUpCisgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGlw ZnMpCisgICM6dXNlLW1vZHVsZSAoZ251IGJ1aWxkIGxpbnV4LWNvbnRhaW5lcikKICAgIzp1c2Ut bW9kdWxlIChndWl4IGdleHApCiAgICM6dXNlLW1vZHVsZSAoZ3VpeCByZWNvcmRzKQogICAjOnVz ZS1tb2R1bGUgKGd1aXggbW9kdWxlcykKQEAgLTE5Nyw2ICsyMDAsMTMgQEAKICAgICAgICAgICAg IHlnZ2RyYXNpbC1jb25maWd1cmF0aW9uLWpzb24tY29uZmlnCiAgICAgICAgICAgICB5Z2dkcmFz aWwtY29uZmlndXJhdGlvbi1wYWNrYWdlCiAKKyAgICAgICAgICAgIGlwZnMtc2VydmljZS10eXBl CisgICAgICAgICAgICBpcGZzLWNvbmZpZ3VyYXRpb24KKyAgICAgICAgICAgIGlwZnMtY29uZmln dXJhdGlvbj8KKyAgICAgICAgICAgIGlwZnMtY29uZmlndXJhdGlvbi1wYWNrYWdlCisgICAgICAg ICAgICBpcGZzLWNvbmZpZ3VyYXRpb24tZ2F0ZXdheQorICAgICAgICAgICAgaXBmcy1jb25maWd1 cmF0aW9uLWFwaQorCiAgICAgICAgICAgICBrZWVwYWxpdmVkLWNvbmZpZ3VyYXRpb24KICAgICAg ICAgICAgIGtlZXBhbGl2ZWQtY29uZmlndXJhdGlvbj8KICAgICAgICAgICAgIGtlZXBhbGl2ZWQt c2VydmljZS10eXBlKSkKQEAgLTE4NzYsNiArMTg4NiwxMzcgQEAgU2VlIHlnZ2RyYXNpbCAtZ2Vu Y29uZiBmb3IgY29uZmlnIG9wdGlvbnMuIikKICAgICAgICAgICAoc2VydmljZS1leHRlbnNpb24g cHJvZmlsZS1zZXJ2aWNlLXR5cGUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNvbXBv c2UgbGlzdCB5Z2dkcmFzaWwtY29uZmlndXJhdGlvbi1wYWNrYWdlKSkpKSkpCiAKKwwKKzs7Owor Ozs7IElQRlMKKzs7OworCisoZGVmaW5lLXJlY29yZC10eXBlKiA8aXBmcy1jb25maWd1cmF0aW9u PgorICBpcGZzLWNvbmZpZ3VyYXRpb24KKyAgbWFrZS1pcGZzLWNvbmZpZ3VyYXRpb24KKyAgaXBm cy1jb25maWd1cmF0aW9uPworICAocGFja2FnZSBpcGZzLWNvbmZpZ3VyYXRpb24tcGFja2FnZQor ICAgICAgICAgICAoZGVmYXVsdCBnby1pcGZzKSkKKyAgKGdhdGV3YXkgaXBmcy1jb25maWd1cmF0 aW9uLWdhdGV3YXkKKyAgICAgICAgICAgKGRlZmF1bHQgIi9pcDQvMTI3LjAuMC4xL3RjcC84MDgy IikpCisgIChhcGkgICAgIGlwZnMtY29uZmlndXJhdGlvbi1hcGkKKyAgICAgICAgICAgKGRlZmF1 bHQgIi9pcDQvMTI3LjAuMC4xL3RjcC81MDAxIikpKQorCisoZGVmaW5lICVpcGZzLWhvbWUgIi92 YXIvbGliL2lwZnMiKQorCisoZGVmaW5lICVpcGZzLWFjY291bnRzCisgIChsaXN0ICh1c2VyLWFj Y291bnQKKyAgICAgICAgIChuYW1lICJpcGZzIikKKyAgICAgICAgIChncm91cCAiaXBmcyIpCisg ICAgICAgICAoc3lzdGVtPyAjdCkKKyAgICAgICAgIChjb21tZW50ICJJUEZTIGRhZW1vbiB1c2Vy IikKKyAgICAgICAgIChob21lLWRpcmVjdG9yeSAiL3Zhci9saWIvaXBmcyIpCisgICAgICAgICAo c2hlbGwgKGZpbGUtYXBwZW5kIHNoYWRvdyAiL3NiaW4vbm9sb2dpbiIpKSkKKyAgICAgICAgKHVz ZXItZ3JvdXAKKyAgICAgICAgIChuYW1lICJpcGZzIikKKyAgICAgICAgIChzeXN0ZW0/ICN0KSkp KQorCisoZGVmaW5lIChpcGZzLWJpbmFyeSBjb25maWcpCisgIChmaWxlLWFwcGVuZCAoaXBmcy1j b25maWd1cmF0aW9uLXBhY2thZ2UgY29uZmlnKSAiL2Jpbi9pcGZzIikpCisKKyhkZWZpbmUgJWlw ZnMtaG9tZS1tYXBwaW5nCisgICN+KGZpbGUtc3lzdGVtLW1hcHBpbmcKKyAgICAgKHNvdXJjZSAj JCVpcGZzLWhvbWUpCisgICAgICh0YXJnZXQgIyQlaXBmcy1ob21lKQorICAgICAod3JpdGFibGU/ ICN0KSkpCisKKyhkZWZpbmUgJWlwZnMtZW52aXJvbm1lbnQKKyAgI34obGlzdCAjJChzdHJpbmct YXBwZW5kICJIT01FPSIgJWlwZnMtaG9tZSkpKQorCisoZGVmaW5lIChpcGZzLXNoZXBoZXJkLXNl cnZpY2UgY29uZmlnKQorICAiUmV0dXJuIGEgPHNoZXBoZXJkLXNlcnZpY2U+IGZvciBJUEZTIHdp dGggQ09ORklHLiIKKyAgKGRlZmluZSBpcGZzLWRhZW1vbi1jb21tYW5kCisgICAgI34obGlzdCAj JChpcGZzLWJpbmFyeSBjb25maWcpICJkYWVtb24iKSkKKyAgKGxpc3QKKyAgICh3aXRoLWltcG9y dGVkLW1vZHVsZXMgKHNvdXJjZS1tb2R1bGUtY2xvc3VyZQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgJygoZ251IGJ1aWxkIHNoZXBoZXJkKQorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAoZ251IHN5c3RlbSBmaWxlLXN5c3RlbXMpKSkKKyAgICAgKHNoZXBoZXJkLXNlcnZpY2UKKyAg ICAgIChwcm92aXNpb24gJyhpcGZzKSkKKyAgICAgIDs7IFdoaWxlIElQRlMgaXMgbW9zdCB1c2Vm dWwgd2hlbiB0aGUgbWFjaGluZSBpcyBjb25uZWN0ZWQKKyAgICAgIDs7IHRvIHRoZSBuZXR3b3Jr LCBvbmx5IGxvb3BiYWNrIGlzIHJlcXVpcmVkIGZvciBzdGFydGluZworICAgICAgOzsgdGhlIHNl cnZpY2UuCisgICAgICAocmVxdWlyZW1lbnQgJyhsb29wYmFjaykpCisgICAgICAoZG9jdW1lbnRh dGlvbiAiQ29ubmVjdCB0byB0aGUgSVBGUyBuZXR3b3JrIikKKyAgICAgIChtb2R1bGVzICcoKGdu dSBidWlsZCBzaGVwaGVyZCkKKyAgICAgICAgICAgICAgICAgKGdudSBzeXN0ZW0gZmlsZS1zeXN0 ZW1zKSkpCisgICAgICAoc3RhcnQgI34obWFrZS1mb3JrZXhlYy1jb25zdHJ1Y3Rvci9jb250YWlu ZXIKKyAgICAgICAgICAgICAgICAjJGlwZnMtZGFlbW9uLWNvbW1hbmQKKyAgICAgICAgICAgICAg ICAjOm5hbWVzcGFjZXMgJyMkKGZvbGQgZGVscSAlbmFtZXNwYWNlcyAnKHVzZXIgbmV0KSkKKyAg ICAgICAgICAgICAgICAjOm1hcHBpbmdzIChsaXN0ICMkJWlwZnMtaG9tZS1tYXBwaW5nKQorICAg ICAgICAgICAgICAgICM6bG9nLWZpbGUgIi92YXIvbG9nL2lwZnMubG9nIgorICAgICAgICAgICAg ICAgICM6dXNlciAiaXBmcyIKKyAgICAgICAgICAgICAgICAjOmdyb3VwICJpcGZzIgorICAgICAg ICAgICAgICAgICM6ZW52aXJvbm1lbnQtdmFyaWFibGVzICMkJWlwZnMtZW52aXJvbm1lbnQpKQor ICAgICAgKHN0b3AgI34obWFrZS1raWxsLWRlc3RydWN0b3IpKSkpKSkKKworKGRlZmluZSAoJWlw ZnMtYWN0aXZhdGlvbiBjb25maWcpCisgICJSZXR1cm4gYW4gYWN0aXZhdGlvbiBnZXhwIGZvciBJ UEZTIHdpdGggQ09ORklHIgorICAoZGVmaW5lIChpcGZzLWNvbmZpZy1jb21tYW5kIHNldHRpbmcg dmFsdWUpCisgICAgI34oIyQoaXBmcy1iaW5hcnkgY29uZmlnKSAiY29uZmlnIiAjJHNldHRpbmcg IyR2YWx1ZSkpCisgIChkZWZpbmUgKHNldC1jb25maWchLWdleHAgc2V0dGluZyB2YWx1ZSkKKyAg ICAjfihzeXN0ZW0qICMkQChpcGZzLWNvbmZpZy1jb21tYW5kIHNldHRpbmcgdmFsdWUpKSkKKyAg KGRlZmluZSBzZXR0aW5ncworICAgIGAoKCJBZGRyZXNzZXMuQVBJIiAsKGlwZnMtY29uZmlndXJh dGlvbi1hcGkgY29uZmlnKSkKKyAgICAgICgiQWRkcmVzc2VzLkdhdGV3YXkiICwoaXBmcy1jb25m aWd1cmF0aW9uLWdhdGV3YXkgY29uZmlnKSkpKQorICAoZGVmaW5lIGlubmVyLWdleHAKKyAgICAj fihiZWdpbgorICAgICAgICAodW1hc2sgI28wNzcpCisgICAgICAgIDs7IENyZWF0ZSAkSE9NRS8u aXBmcyBzdHJ1Y3R1cmUKKyAgICAgICAgKHN5c3RlbSogIyQoaXBmcy1iaW5hcnkgY29uZmlnKSAi aW5pdCIpCisgICAgICAgIDs7IEFwcGx5IHNldHRpbmdzCisgICAgICAgICMkQChtYXAgKGN1dGUg YXBwbHkgc2V0LWNvbmZpZyEtZ2V4cCA8Pikgc2V0dGluZ3MpKSkKKyAgKGRlZmluZSBpbm5lci1z Y3JpcHQKKyAgICAocHJvZ3JhbS1maWxlICJpcGZzLWFjdGl2YXRpb24taW5uZXIiIGlubmVyLWdl eHApKQorICA7OyBSdW4gaXBmcyBpbml0IGFuZCBpcGZzIGNvbmZpZyBmcm9tIGEgY29udGFpbmVy LAorICA7OyBpbiBjYXNlIHRoZSBJUEZTIGRhZW1vbiB3YXMgY29tcHJvbWlzZWQgYXQgc29tZSBw b2ludAorICA7OyBhbmQgfi8uaXBmcyBpcyBub3cgYSBzeW1saW5rIHRvIHNvbWV3aGVyZSBvdXRz aWRlCisgIDs7ICVpcGZzLWhvbWUuCisgIChkZWZpbmUgY29udGFpbmVyLWdleHAKKyAgICAod2l0 aC1leHRlbnNpb25zIChsaXN0IHNoZXBoZXJkKQorICAgICAgKHdpdGgtaW1wb3J0ZWQtbW9kdWxl cyAoc291cmNlLW1vZHVsZS1jbG9zdXJlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAn KChnbnUgYnVpbGQgc2hlcGhlcmQpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChn bnUgc3lzdGVtIGZpbGUtc3lzdGVtcykpKQorICAgICAgICAjfihiZWdpbgorICAgICAgICAgICAg KHVzZS1tb2R1bGVzIChnbnUgYnVpbGQgc2hlcGhlcmQpCisgICAgICAgICAgICAgICAgICAgICAg ICAgKGdudSBzeXN0ZW0gZmlsZS1zeXN0ZW1zKSkKKyAgICAgICAgICAgIChsZXQqICgoY29uc3Ry dWN0b3IKKyAgICAgICAgICAgICAgICAgICAgKG1ha2UtZm9ya2V4ZWMtY29uc3RydWN0b3IvY29u dGFpbmVyCisgICAgICAgICAgICAgICAgICAgICAobGlzdCAjJGlubmVyLXNjcmlwdCkKKyAgICAg ICAgICAgICAgICAgICAgICM6bmFtZXNwYWNlcyAnIyQoZm9sZCBkZWxxICVuYW1lc3BhY2VzICco dXNlcikpCisgICAgICAgICAgICAgICAgICAgICAjOm1hcHBpbmdzIChsaXN0ICMkJWlwZnMtaG9t ZS1tYXBwaW5nKQorICAgICAgICAgICAgICAgICAgICAgIzp1c2VyICJpcGZzIgorICAgICAgICAg ICAgICAgICAgICAgIzpncm91cCAiaXBmcyIKKyAgICAgICAgICAgICAgICAgICAgICM6ZW52aXJv bm1lbnQtdmFyaWFibGVzICMkJWlwZnMtZW52aXJvbm1lbnQpKQorICAgICAgICAgICAgICAgICAg IChwaWQgKGNvbnN0cnVjdG9yKSkpCisgICAgICAgICAgICAgICh3YWl0cGlkIHBpZCkpKSkpKQor ICA7OyBUaGUgYWN0aXZhdGlvbiBtYXkgaGFwcGVuIGZyb20gdGhlIGluaXRyZCwgd2hpY2ggdXNl cworICA7OyBhIHN0YXRpY2FsbHktbGlua2VkIGd1aWxlLCB3aGlsZSB0aGUgZ3VpeCBjb250YWlu ZXIKKyAgOzsgcHJvY2VkdXJlcyByZXF1aXJlIGEgd29ya2luZyBkeW5hbWljLWxpbmsuCisgIChk ZWZpbmUgY29udGFpbmVyLXNjcmlwdAorICAgIChwcm9ncmFtLWZpbGUgImlwZnMtYWN0aXZhdGlv bi1jb250YWluZXIiIGNvbnRhaW5lci1nZXhwKSkKKyAgI34oc3lzdGVtKiAjJGNvbnRhaW5lci1z Y3JpcHQpKQorCisoZGVmaW5lIGlwZnMtc2VydmljZS10eXBlCisgIChzZXJ2aWNlLXR5cGUKKyAg IChuYW1lICdpcGZzKQorICAgKGV4dGVuc2lvbnMKKyAgICAobGlzdCAoc2VydmljZS1leHRlbnNp b24gYWNjb3VudC1zZXJ2aWNlLXR5cGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNv bnN0ICVpcGZzLWFjY291bnRzKSkKKyAgICAgICAgICAoc2VydmljZS1leHRlbnNpb24gYWN0aXZh dGlvbi1zZXJ2aWNlLXR5cGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJWlwZnMtYWN0 aXZhdGlvbikKKyAgICAgICAgICAoc2VydmljZS1leHRlbnNpb24gc2hlcGhlcmQtcm9vdC1zZXJ2 aWNlLXR5cGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXBmcy1zaGVwaGVyZC1zZXJ2 aWNlKSkpCisgICAoZGVmYXVsdC12YWx1ZSAoaXBmcy1jb25maWd1cmF0aW9uKSkKKyAgIChkZXNj cmlwdGlvbgorICAgICJSdW4gQGNvbW1hbmR7aXBmcyBkYWVtb259LCB0aGUgcmVmZXJlbmNlIGlt cGxlbWVudGF0aW9uCitvZiB0aGUgSVBGUyBwMnAgc3RvcmFnZSBuZXR3b3JrLiIpKSkKKwogDAog Ozs7CiA7OzsgS2VlcGFsaXZlZAotLSAKMi4zMS4wCgo= --=-4fQ/b2+OM9ALP4I5bmy3 Content-Disposition: attachment; filename="0002-Add-guix-ipfs.patch" Content-Type: text/x-patch; name="0002-Add-guix-ipfs.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 RnJvbSBjMDAwYWRjMWRhNDBhNDYwOTQzZGFiY2FiNjE0Mjk4MWFkZmFkOWU5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/THVkb3ZpYz0yMENvdXJ0PUMzPUE4cz89IDxs dWRvQGdudS5vcmc+CkRhdGU6IEZyaSwgMjggRGVjIDIwMTggMDE6MDc6NTggKzAxMDAKU3ViamVj dDogW1BBVENIIDIvM10gQWRkIChndWl4IGlwZnMpLgoKVGhpcyBtb2R1bGUgYWxsb3dzIGZvciBj b21tdW5pY2F0aW5nIHdpdGggdGhlIElQRlMKZ2F0ZXdheSBvdmVyIHRoZSBIVFRQIGludGVyZmFj ZS4gIFRoZSBjb21taXQgaGFzIGJlZW4KY2hlcnJ5LXBpY2tlZCBmcm9tIDxodHRwczovL2lzc3Vl cy5ndWl4LmdudS5vcmcvMzM4OTk+LgoKVGhlIHByb2NlZHVyZXMgZm9yIGFkZGluZyBhbmQgcmVz dG9yaW5nIGZpbGUgdHJlZXMgaGF2ZQpiZWVuIHJlbW92ZWQgYXMgYWNjb3JkaW5nIHRvIGEgcmVw bHkgaXNzdWUgMzM4OTksIGEgZGlmZmVyZW50CmZvcm1hdCB3aWxsIGJlIHVzZWQuICBUaGUgcHJv Y2VkdXJlICdhZGQtZGF0YScgaGFzIGJlZW4KZXhwb3J0ZWQgYXMgaXQgd2lsbCBiZSB1c2VkIGlu IHRoZSBzeXN0ZW0gdGVzdCBmb3IgSVBGUy4KCiogZ3VpeC9pcGZzLnNjbTogTmV3IGZpbGUuCiog TWFrZWZpbGUuYW0gKE1PRFVMRVMpOiBBZGQgaXQuCi0tLQogTWFrZWZpbGUuYW0gICAgfCAgIDEg KwogZ3VpeC9pcGZzLnNjbSAgfCAxODMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKwogdGVzdHMvaXBmcy5zY20gfCAgNTUgKysrKysrKysrKysrKysrCiAz IGZpbGVzIGNoYW5nZWQsIDIzOSBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ3Vp eC9pcGZzLnNjbQogY3JlYXRlIG1vZGUgMTAwNjQ0IHRlc3RzL2lwZnMuc2NtCgpkaWZmIC0tZ2l0 IGEvTWFrZWZpbGUuYW0gYi9NYWtlZmlsZS5hbQppbmRleCAxYzJkNDU1MjdjLi4xN2FkMjM2NjU1 IDEwMDY0NAotLS0gYS9NYWtlZmlsZS5hbQorKysgYi9NYWtlZmlsZS5hbQpAQCAtMTI2LDYgKzEy Niw3IEBAIE1PRFVMRVMgPQkJCQkJXAogICBndWl4L2NhY2hlLnNjbQkJCQlcCiAgIGd1aXgvY3Zl LnNjbQkJCQkJXAogICBndWl4L3dvcmtlcnMuc2NtCQkJCVwKKyAgZ3VpeC9pcGZzLnNjbQkJCQkJ XAogICBndWl4L2J1aWxkLXN5c3RlbS5zY20JCQkJXAogICBndWl4L2J1aWxkLXN5c3RlbS9hbmRy b2lkLW5kay5zY20JCVwKICAgZ3VpeC9idWlsZC1zeXN0ZW0vYW50LnNjbQkJCVwKZGlmZiAtLWdp dCBhL2d1aXgvaXBmcy5zY20gYi9ndWl4L2lwZnMuc2NtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAuLjMxYTg5ODg4YTcKLS0tIC9kZXYvbnVsbAorKysgYi9ndWl4L2lwZnMu c2NtCkBAIC0wLDAgKzEsMTgzIEBACis7OzsgR05VIEd1aXggLS0tIEZ1bmN0aW9uYWwgcGFja2Fn ZSBtYW5hZ2VtZW50IGZvciBHTlUKKzs7OyBDb3B5cmlnaHQgwqkgMjAxOCBMdWRvdmljIENvdXJ0 w6hzIDxsdWRvQGdudS5vcmc+Cis7OzsKKzs7OyBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgR3Vp eC4KKzs7OworOzs7IEdOVSBHdWl4IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmli dXRlIGl0IGFuZC9vciBtb2RpZnkgaXQKKzs7OyB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBH ZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorOzs7IHRoZSBGcmVlIFNvZnR3 YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAor Ozs7IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKzs7OworOzs7IEdOVSBHdWl4IGlz IGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dAorOzs7 IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkg b2YKKzs7OyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP U0UuICBTZWUgdGhlCis7OzsgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0 YWlscy4KKzs7OworOzs7IFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdO VSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCis7OzsgYWxvbmcgd2l0aCBHTlUgR3VpeC4gIElmIG5v dCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworKGRlZmluZS1tb2R1bGUg KGd1aXggaXBmcykKKyAgIzp1c2UtbW9kdWxlIChqc29uKQorICAjOnVzZS1tb2R1bGUgKGd1aXgg YmFzZTY0KQorICAjOnVzZS1tb2R1bGUgKChndWl4IGJ1aWxkIHV0aWxzKSAjOnNlbGVjdCAoZHVt cC1wb3J0KSkKKyAgIzp1c2UtbW9kdWxlIChzcmZpIHNyZmktMSkKKyAgIzp1c2UtbW9kdWxlIChz cmZpIHNyZmktMTEpCisgICM6dXNlLW1vZHVsZSAoc3JmaSBzcmZpLTI2KQorICAjOnVzZS1tb2R1 bGUgKHJucnMgaW8gcG9ydHMpCisgICM6dXNlLW1vZHVsZSAocm5ycyBieXRldmVjdG9ycykKKyAg Izp1c2UtbW9kdWxlIChpY2UtOSBtYXRjaCkKKyAgIzp1c2UtbW9kdWxlIChpY2UtOSBmdHcpCisg ICM6dXNlLW1vZHVsZSAod2ViIHVyaSkKKyAgIzp1c2UtbW9kdWxlICh3ZWIgY2xpZW50KQorICAj OnVzZS1tb2R1bGUgKHdlYiByZXNwb25zZSkKKyAgIzpleHBvcnQgKCVpcGZzLWJhc2UtdXJsCisg ICAgICAgICAgICBhZGQtZGF0YQorICAgICAgICAgICAgYWRkLWZpbGUKKworICAgICAgICAgICAg Y29udGVudD8KKyAgICAgICAgICAgIGNvbnRlbnQtbmFtZQorICAgICAgICAgICAgY29udGVudC1o YXNoCisgICAgICAgICAgICBjb250ZW50LXNpemUKKworICAgICAgICAgICAgYWRkLWVtcHR5LWRp cmVjdG9yeQorICAgICAgICAgICAgYWRkLXRvLWRpcmVjdG9yeQorICAgICAgICAgICAgcmVhZC1j b250ZW50cworICAgICAgICAgICAgcHVibGlzaC1uYW1lKSkKKworOzs7IENvbW1lbnRhcnk6Cis7 OzsKKzs7OyBUaGlzIG1vZHVsZSBpbXBsZW1lbnRzIGJpbmRpbmdzIGZvciB0aGUgSFRUUCBpbnRl cmZhY2Ugb2YgdGhlIElQRlMKKzs7OyBnYXRld2F5LCBkb2N1bWVudGVkIGhlcmU6IDxodHRwczov L2RvY3MuaXBmcy5pby9yZWZlcmVuY2UvYXBpL2h0dHAvPi4gIEl0Cis7OzsgYWxsb3dzIHlvdSB0 byBhZGQgYW5kIHJldHJpZXZlIGZpbGVzIG92ZXIgSVBGUywgYW5kIGEgZmV3IG90aGVyIHRoaW5n cy4KKzs7OworOzs7IENvZGU6CisKKyhkZWZpbmUgJWlwZnMtYmFzZS11cmwKKyAgOzsgVVJMIG9m IHRoZSBJUEZTIGdhdGV3YXkuCisgIChtYWtlLXBhcmFtZXRlciAiaHR0cDovL2xvY2FsaG9zdDo1 MDAxIikpCisKKyhkZWZpbmUqIChjYWxsIHVybCBkZWNvZGUgIzpvcHRpb25hbCAobWV0aG9kIGh0 dHAtcG9zdCkKKyAgICAgICAgICAgICAgICM6a2V5IGJvZHkgKGZhbHNlLWlmLTQwND8gI3QpICho ZWFkZXJzICcoKSkpCisgICJJbnZva2UgdGhlIGVuZHBvaW50IGF0IFVSTCB1c2luZyBNRVRIT0Qu ICBEZWNvZGUgdGhlIHJlc3VsdGluZyBKU09OIGJvZHkKK3VzaW5nIERFQ09ERSwgYSBvbmUtYXJn dW1lbnQgcHJvY2VkdXJlIHRoYXQgdGFrZXMgYW4gaW5wdXQgcG9ydDsgd2hlbiBERUNPREUKK2lz IGZhbHNlLCByZXR1cm4gdGhlIGlucHV0IHBvcnQuICBXaGVuIEZBTFNFLUlGLTQwND8gaXMgdHJ1 ZSwgcmV0dXJuICNmIHVwb24KKzQwNCByZXNwb25zZXMuIgorICAobGV0Ki12YWx1ZXMgKCgocmVz cG9uc2UgcG9ydCkKKyAgICAgICAgICAgICAgICAgKG1ldGhvZCB1cmwgIzpzdHJlYW1pbmc/ICN0 CisgICAgICAgICAgICAgICAgICAgICAgICAgIzpib2R5IGJvZHkKKworICAgICAgICAgICAgICAg ICAgICAgICAgIDs7IEFsd2F5cyBwYXNzICJDb25uZWN0aW9uOiBjbG9zZSIuCisgICAgICAgICAg ICAgICAgICAgICAgICAgIzprZWVwLWFsaXZlPyAjZgorICAgICAgICAgICAgICAgICAgICAgICAg ICM6aGVhZGVycyBgKChjb25uZWN0aW9uIGNsb3NlKQorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICxAaGVhZGVycykpKSkKKyAgICAoY29uZCAoKD0gMjAwIChyZXNwb25zZS1j b2RlIHJlc3BvbnNlKSkKKyAgICAgICAgICAgKGlmIGRlY29kZQorICAgICAgICAgICAgICAgKGxl dCAoKHJlc3VsdCAoZGVjb2RlIHBvcnQpKSkKKyAgICAgICAgICAgICAgICAgKGNsb3NlLXBvcnQg cG9ydCkKKyAgICAgICAgICAgICAgICAgcmVzdWx0KQorICAgICAgICAgICAgICAgcG9ydCkpCisg ICAgICAgICAgKChhbmQgZmFsc2UtaWYtNDA0PworICAgICAgICAgICAgICAgICg9IDQwNCAocmVz cG9uc2UtY29kZSByZXNwb25zZSkpKQorICAgICAgICAgICAoY2xvc2UtcG9ydCBwb3J0KQorICAg ICAgICAgICAjZikKKyAgICAgICAgICAoZWxzZQorICAgICAgICAgICAoY2xvc2UtcG9ydCBwb3J0 KQorICAgICAgICAgICAodGhyb3cgJ2lwZnMtZXJyb3IgdXJsIHJlc3BvbnNlKSkpKSkKKworOzsg UmVzdWx0IG9mIGEgZmlsZSBhZGRpdGlvbi4KKyhkZWZpbmUtanNvbi1tYXBwaW5nIDxjb250ZW50 PiBtYWtlLWNvbnRlbnQgY29udGVudD8KKyAganNvbi0+Y29udGVudAorICAobmFtZSAgIGNvbnRl bnQtbmFtZSAiTmFtZSIpCisgIChoYXNoICAgY29udGVudC1oYXNoICJIYXNoIikKKyAgKGJ5dGVz ICBjb250ZW50LWJ5dGVzICJCeXRlcyIpCisgIChzaXplICAgY29udGVudC1zaXplICJTaXplIiBz dHJpbmctPm51bWJlcikpCisKKzs7IFJlc3VsdCBvZiBhICdwYXRjaC9hZGQtbGluaycgb3BlcmF0 aW9uLgorKGRlZmluZS1qc29uLW1hcHBpbmcgPGRpcmVjdG9yeT4gbWFrZS1kaXJlY3RvcnkgZGly ZWN0b3J5PworICBqc29uLT5kaXJlY3RvcnkKKyAgKGhhc2ggICBkaXJlY3RvcnktaGFzaCAiSGFz aCIpCisgIChsaW5rcyAgZGlyZWN0b3J5LWxpbmtzICJMaW5rcyIganNvbi0+bGlua3MpKQorCis7 OyBBICJsaW5rIi4KKyhkZWZpbmUtanNvbi1tYXBwaW5nIDxsaW5rPiBtYWtlLWxpbmsgbGluaz8K KyAganNvbi0+bGluaworICAobmFtZSAgIGxpbmstbmFtZSAiTmFtZSIpCisgIChoYXNoICAgbGlu ay1oYXNoICJIYXNoIikKKyAgKHNpemUgICBsaW5rLXNpemUgIlNpemUiIHN0cmluZy0+bnVtYmVy KSkKKworOzsgQSAiYmluZGluZyIsIGFsc28ga25vd24gYXMgYSAibmFtZSIuCisoZGVmaW5lLWpz b24tbWFwcGluZyA8YmluZGluZz4gbWFrZS1iaW5kaW5nIGJpbmRpbmc/CisgIGpzb24tPmJpbmRp bmcKKyAgKG5hbWUgICBiaW5kaW5nLW5hbWUgIk5hbWUiKQorICAodmFsdWUgIGJpbmRpbmctdmFs dWUgIlZhbHVlIikpCisKKyhkZWZpbmUgKGpzb24tPmxpbmtzIGpzb24pCisgIChtYXRjaCBqc29u CisgICAgKCNmICAgICcoKSkKKyAgICAobGlua3MgKG1hcCBqc29uLT5saW5rIGxpbmtzKSkpKQor CisoZGVmaW5lICVtdWx0aXBhcnQtYm91bmRhcnkKKyAgOzsgWFhYOiBXZSBtaWdodCB3YW50IHRv IGZpbmQgYSBtb3JlIHJlbGlhYmxlIGJvdW5kYXJ5LgorICAoc3RyaW5nLWFwcGVuZCAobWFrZS1z dHJpbmcgMjQgI1wtKSAiMjY5ODEyN2FmZDc0MjVhNiIpKQorCisoZGVmaW5lIChieXRldmVjdG9y LT5mb3JtLWRhdGEgYnYgcG9ydCkKKyAgIldyaXRlIHRvIFBPUlQgYSAnbXVsdGlwYXJ0L2Zvcm0t ZGF0YScgcmVwcmVzZW50YXRpb24gb2YgQlYuIgorICAoZGlzcGxheSAoc3RyaW5nLWFwcGVuZCAi LS0iICVtdWx0aXBhcnQtYm91bmRhcnkgIlxyXG4iCisgICAgICAgICAgICAgICAgICAgICAgICAg ICJDb250ZW50LURpc3Bvc2l0aW9uOiBmb3JtLWRhdGFcclxuIgorICAgICAgICAgICAgICAgICAg ICAgICAgICAiQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW1cclxuXHJcbiIp CisgICAgICAgICAgIHBvcnQpCisgIChwdXQtYnl0ZXZlY3RvciBwb3J0IGJ2KQorICAoZGlzcGxh eSAoc3RyaW5nLWFwcGVuZCAiXHJcbi0tIiAlbXVsdGlwYXJ0LWJvdW5kYXJ5ICItLVxyXG4iKQor ICAgICAgICAgICBwb3J0KSkKKworKGRlZmluZSogKGFkZC1kYXRhIGRhdGEgIzprZXkgKG5hbWUg ImZpbGUudHh0IikgcmVjdXJzaXZlPykKKyAgIkFkZCBEQVRBLCBhIGJ5dGV2ZWN0b3IsIHRvIElQ RlMuICBSZXR1cm4gYSBjb250ZW50IG9iamVjdCByZXByZXNlbnRpbmcgaXQuIgorICAoY2FsbCAo c3RyaW5nLWFwcGVuZCAoJWlwZnMtYmFzZS11cmwpCisgICAgICAgICAgICAgICAgICAgICAgICIv YXBpL3YwL2FkZD9hcmc9IiAodXJpLWVuY29kZSBuYW1lKQorICAgICAgICAgICAgICAgICAgICAg ICAiJnJlY3Vyc2l2ZT0iCisgICAgICAgICAgICAgICAgICAgICAgIChpZiByZWN1cnNpdmU/ICJ0 cnVlIiAiZmFsc2UiKSkKKyAgICAgICAganNvbi0+Y29udGVudAorICAgICAgICAjOmhlYWRlcnMK KyAgICAgICAgYCgoY29udGVudC10eXBlCisgICAgICAgICAgIC4gKG11bHRpcGFydC9mb3JtLWRh dGEKKyAgICAgICAgICAgICAgKGJvdW5kYXJ5IC4gLCVtdWx0aXBhcnQtYm91bmRhcnkpKSkpCisg ICAgICAgICM6Ym9keQorICAgICAgICAoY2FsbC13aXRoLWJ5dGV2ZWN0b3Itb3V0cHV0LXBvcnQK KyAgICAgICAgIChsYW1iZGEgKHBvcnQpCisgICAgICAgICAgIChieXRldmVjdG9yLT5mb3JtLWRh dGEgZGF0YSBwb3J0KSkpKSkKKworKGRlZmluZSAobm90LWRvdD8gZW50cnkpCisgIChub3QgKG1l bWJlciBlbnRyeSAnKCIuIiAiLi4iKSkpKQorCisoZGVmaW5lKiAoYWRkLWZpbGUgZmlsZSAjOmtl eSAobmFtZSAoYmFzZW5hbWUgZmlsZSkpKQorICAiQWRkIEZJTEUgdW5kZXIgTkFNRSB0byB0aGUg SVBGUyBhbmQgcmV0dXJuIGEgY29udGVudCBvYmplY3QgZm9yIGl0LiIKKyAgKGFkZC1kYXRhICht YXRjaCAoY2FsbC13aXRoLWlucHV0LWZpbGUgZmlsZSBnZXQtYnl0ZXZlY3Rvci1hbGwpCisgICAg ICAgICAgICAgICgoPyBlb2Ytb2JqZWN0PykgI3Z1OCgpKQorICAgICAgICAgICAgICAoYnYgYnYp KQorICAgICAgICAgICAgIzpuYW1lIG5hbWUpKQorCisoZGVmaW5lKiAoYWRkLWVtcHR5LWRpcmVj dG9yeSAjOmtleSAobmFtZSAiZGlyZWN0b3J5IikpCisgICJSZXR1cm4gYSBjb250ZW50IG9iamVj dCBmb3IgYW4gZW1wdHkgZGlyZWN0b3J5LiIKKyAgKGFkZC1kYXRhICN2dTgoKSAjOnJlY3Vyc2l2 ZT8gI3QgIzpuYW1lIG5hbWUpKQorCisoZGVmaW5lKiAoYWRkLXRvLWRpcmVjdG9yeSBkaXJlY3Rv cnkgZmlsZSBuYW1lKQorICAiQWRkIEZJTEUgdG8gRElSRUNUT1JZIHVuZGVyIE5BTUUsIGFuZCBy ZXR1cm4gdGhlIHJlc3VsdGluZyBkaXJlY3RvcnkuCitESVJFQ1RPUlkgYW5kIEZJTEUgbXVzdCBi ZSBoYXNoZXMgaWRlbnRpZnlpbmcgb2JqZWN0cyBpbiB0aGUgSVBGUyBzdG9yZS4iCisgIChjYWxs IChzdHJpbmctYXBwZW5kICglaXBmcy1iYXNlLXVybCkKKyAgICAgICAgICAgICAgICAgICAgICAg Ii9hcGkvdjAvb2JqZWN0L3BhdGNoL2FkZC1saW5rP2FyZz0iCisgICAgICAgICAgICAgICAgICAg ICAgICh1cmktZW5jb2RlIGRpcmVjdG9yeSkKKyAgICAgICAgICAgICAgICAgICAgICAgIiZhcmc9 IiAodXJpLWVuY29kZSBuYW1lKSAiJmFyZz0iICh1cmktZW5jb2RlIGZpbGUpCisgICAgICAgICAg ICAgICAgICAgICAgICImY3JlYXRlPXRydWUiKQorICAgICAgICBqc29uLT5kaXJlY3RvcnkpKQor CisoZGVmaW5lKiAocmVhZC1jb250ZW50cyBvYmplY3QgIzprZXkgb2Zmc2V0IGxlbmd0aCkKKyAg IlJldHVybiBhbiBpbnB1dCBwb3J0IHRvIHJlYWQgdGhlIGNvbnRlbnQgb2YgT0JKRUNUIGZyb20u IgorICAoY2FsbCAoc3RyaW5nLWFwcGVuZCAoJWlwZnMtYmFzZS11cmwpCisgICAgICAgICAgICAg ICAgICAgICAgICIvYXBpL3YwL2NhdD9hcmc9IiBvYmplY3QpCisgICAgICAgICNmKSkKKworKGRl ZmluZSogKHB1Ymxpc2gtbmFtZSBvYmplY3QpCisgICJQdWJsaXNoIE9CSkVDVCB1bmRlciB0aGUg Y3VycmVudCBwZWVyIElELiIKKyAgKGNhbGwgKHN0cmluZy1hcHBlbmQgKCVpcGZzLWJhc2UtdXJs KQorICAgICAgICAgICAgICAgICAgICAgICAiL2FwaS92MC9uYW1lL3B1Ymxpc2g/YXJnPSIgb2Jq ZWN0KQorICAgICAgICBqc29uLT5iaW5kaW5nKSkKZGlmZiAtLWdpdCBhL3Rlc3RzL2lwZnMuc2Nt IGIvdGVzdHMvaXBmcy5zY20KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMC4u M2I2NjJiMjJiZAotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL2lwZnMuc2NtCkBAIC0wLDAgKzEs NTUgQEAKKzs7OyBHTlUgR3VpeCAtLS0gRnVuY3Rpb25hbCBwYWNrYWdlIG1hbmFnZW1lbnQgZm9y IEdOVQorOzs7IENvcHlyaWdodCDCqSAyMDE4IEx1ZG92aWMgQ291cnTDqHMgPGx1ZG9AZ251Lm9y Zz4KKzs7OworOzs7IFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBHdWl4LgorOzs7Cis7OzsgR05V IEd1aXggaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1v ZGlmeSBpdAorOzs7IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExp Y2Vuc2UgYXMgcHVibGlzaGVkIGJ5Cis7OzsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsg ZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cis7OzsgeW91ciBvcHRpb24p IGFueSBsYXRlciB2ZXJzaW9uLgorOzs7Cis7OzsgR05VIEd1aXggaXMgZGlzdHJpYnV0ZWQgaW4g dGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwgYnV0Cis7OzsgV0lUSE9VVCBBTlkgV0FS UkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorOzs7IE1FUkNIQU5U QUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKzs7 OyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorOzs7Cis7Ozsg WW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGlj IExpY2Vuc2UKKzs7OyBhbG9uZyB3aXRoIEdOVSBHdWl4LiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93 d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCisoZGVmaW5lLW1vZHVsZSAodGVzdC1pcGZzKQorICAj OnVzZS1tb2R1bGUgKGd1aXggaXBmcykKKyAgIzp1c2UtbW9kdWxlICgoZ3VpeCB1dGlscykgIzpz ZWxlY3QgKGNhbGwtd2l0aC10ZW1wb3JhcnktZGlyZWN0b3J5KSkKKyAgIzp1c2UtbW9kdWxlIChn dWl4IHRlc3RzKQorICAjOnVzZS1tb2R1bGUgKHdlYiB1cmkpCisgICM6dXNlLW1vZHVsZSAoc3Jm aSBzcmZpLTY0KSkKKworOzsgVGVzdCB0aGUgKGd1aXggaXBmcykgbW9kdWxlLgorCisoZGVmaW5l IChpcGZzLWdhdGV3YXktcnVubmluZz8pCisgICJSZXR1cm4gdHJ1ZSBpZiB0aGUgSVBGUyBnYXRl d2F5IGlzIHJ1bm5pbmcgYXQgJUlQRlMtQkFTRS1VUkwuIgorICAobGV0KiAoKHVyaSAgICAoc3Ry aW5nLT51cmkgKCVpcGZzLWJhc2UtdXJsKSkpCisgICAgICAgICAoc29ja2V0IChzb2NrZXQgQUZf SU5FVCBTT0NLX1NUUkVBTSAwKSkpCisgICAgKGRlZmluZSBjb25uZWN0ZWQ/CisgICAgICAoY2F0 Y2ggJ3N5c3RlbS1lcnJvcgorICAgICAgICAobGFtYmRhICgpCisgICAgICAgICAgKGZvcm1hdCAo Y3VycmVudC1lcnJvci1wb3J0KQorICAgICAgICAgICAgICAgICAgInByb2JpbmcgSVBGUyBnYXRl d2F5IGF0IGxvY2FsaG9zdDp+YS4uLn4lIgorICAgICAgICAgICAgICAgICAgKHVyaS1wb3J0IHVy aSkpCisgICAgICAgICAgKGNvbm5lY3Qgc29ja2V0IEFGX0lORVQgSU5BRERSX0xPT1BCQUNLICh1 cmktcG9ydCB1cmkpKQorICAgICAgICAgICN0KQorICAgICAgICAoY29uc3QgI2YpKSkKKworICAg IChjbG9zZS1wb3J0IHNvY2tldCkKKyAgICBjb25uZWN0ZWQ/KSkKKworKHVubGVzcyAoaXBmcy1n YXRld2F5LXJ1bm5pbmc/KQorICAodGVzdC1za2lwIDEpKQorCisodGVzdC1hc3NlcnQgImFkZC1m aWxlLXRyZWUgKyByZXN0b3JlLWZpbGUtdHJlZSIKKyAgKGNhbGwtd2l0aC10ZW1wb3JhcnktZGly ZWN0b3J5CisgICAobGFtYmRhIChkaXJlY3RvcnkpCisgICAgIChsZXQqICgoc291cmNlICAoZGly bmFtZSAoc2VhcmNoLXBhdGggJWxvYWQtcGF0aCAiZ3VpeC9iYXNlMzIuc2NtIikpKQorICAgICAg ICAgICAgKHRhcmdldCAgKHN0cmluZy1hcHBlbmQgZGlyZWN0b3J5ICIvciIpKQorICAgICAgICAg ICAgKGNvbnRlbnQgKHBrICdjb250ZW50IChhZGQtZmlsZS10cmVlIHNvdXJjZSkpKSkKKyAgICAg ICAocmVzdG9yZS1maWxlLXRyZWUgKGNvbnRlbnQtbmFtZSBjb250ZW50KSB0YXJnZXQpCisgICAg ICAgKGZpbGU9PyBzb3VyY2UgdGFyZ2V0KSkpKSkKLS0gCjIuMzEuMAoK --=-4fQ/b2+OM9ALP4I5bmy3 Content-Disposition: attachment; filename*0=0003-gnu-tests-Test-basic-funtionality-of-the-IPFS-servic.pat; filename*1=ch Content-Type: text/x-patch; name="0003-gnu-tests-Test-basic-funtionality-of-the-IPFS-servic.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 RnJvbSA3MzJjMDE4YjlkMjRmMGYzNjcwMGM2Zjg3MTVlOTg5ZWUzZDk0NjYzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXhpbWUgRGV2b3MgPG1heGltZWRldm9zQHRlbGVuZXQuYmU+ CkRhdGU6IFN1biwgMjggTWFyIDIwMjEgMTc6MDE6NDkgKzAyMDAKU3ViamVjdDogW1BBVENIIDMv M10gZ251OiB0ZXN0czogVGVzdCBiYXNpYyBmdW50aW9uYWxpdHkgb2YgdGhlIElQRlMgc2Vydmlj ZS4KCkl0IGlzIHRlc3RlZCB3aGV0aGVyIHRoZSBJUEZTIHNlcnZpY2UgbGlzdGVucwphdCB0aGUg Z2F0ZXdheSBhbmQgQVBJIHBvcnRzIGFuZCB3aGV0aGVyIGl0CmlzIHBvc3NpYmxlIHRvIHVwbG9h ZCBhbmQgZG93bmxvYWQgYSBieXRldmVjdG9yLgoKVE9ETzogdGhpcyB0ZXN0IGlzbid0IHJ1biBm b3Igc29tZSByZWFzb246CgokIG1ha2UgJiYgbWFrZSBjaGVjay1zeXN0ZW0gVEVTVFM9ImlwZnMi Cj4gW2NvbXBpbGF0aW9uIGJsYSBibGFdCj4gQ29tcGlsaW5nIFNjaGVtZSBtb2R1bGVzLi4uCj4g U2VsZWN0ZWQgMSBzeXN0ZW0gdGVzdHMuLi4KPiAoZW5kIG9mIG91dHB1dCkKCj8/PyB3aHkgaXNu J3QgdGhlIElQRlMgdGVzdCBleGVjdXRlZD8KCiogZ251L3Rlc3RzL25ldHdvcmtpbmcuc2NtCiAg KCVpcGZzLW9zKTogTmV3IHZhcmlhYmxlLgogIChydW4taXBmcy10ZXN0KTogTmV3IHByb2NlZHVy ZS4KICAoJXRlc3QtaXBmcyk6IE5ldyBzeXN0ZW0gdGVzdC4KLS0tCiBnbnUvdGVzdHMvbmV0d29y a2luZy5zY20gfCA4MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCiAx IGZpbGUgY2hhbmdlZCwgODAgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdp dCBhL2dudS90ZXN0cy9uZXR3b3JraW5nLnNjbSBiL2dudS90ZXN0cy9uZXR3b3JraW5nLnNjbQpp bmRleCAwMjI2NjNhYTY3Li5mODg2ZWFjODgxIDEwMDY0NAotLS0gYS9nbnUvdGVzdHMvbmV0d29y a2luZy5zY20KKysrIGIvZ251L3Rlc3RzL25ldHdvcmtpbmcuc2NtCkBAIC0zLDYgKzMsNyBAQAog Ozs7IENvcHlyaWdodCDCqSAyMDE3LCAyMDIwIE1hcml1cyBCYWtrZSA8bWFyaXVzQGdudS5vcmc+ CiA7OzsgQ29weXJpZ2h0IMKpIDIwMTggQ2hyaXMgTWFydXNpY2ggPGNtbWFydXNpY2hAZ21haWwu Y29tPgogOzs7IENvcHlyaWdodCDCqSAyMDE4IEFydW4gSXNhYWMgPGFydW5pc2FhY0BzeXN0ZW1y ZWJvb3QubmV0PgorOzs7IENvcHlyaWdodCDCqSAyMDIxIE1heGltZSBEZXZvcyA8bWF4aW1lZGV2 b3NAdGVsZW5ldC5iZT4KIDs7OwogOzs7IFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBHdWl4Lgog Ozs7CkBAIC0zNCw3ICszNSw4IEBACiAgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIG5ldHdv cmtpbmcpCiAgICM6dXNlLW1vZHVsZSAoZ251IHNlcnZpY2VzIHNoZXBoZXJkKQogICAjOnVzZS1t b2R1bGUgKGljZS05IG1hdGNoKQotICAjOmV4cG9ydCAoJXRlc3QtaW5ldGQgJXRlc3Qtb3BlbnZz d2l0Y2ggJXRlc3QtZGhjcGQgJXRlc3QtdG9yICV0ZXN0LWlwdGFibGVzKSkKKyAgIzpleHBvcnQg KCV0ZXN0LWluZXRkICV0ZXN0LW9wZW52c3dpdGNoICV0ZXN0LWRoY3BkICV0ZXN0LXRvciAldGVz dC1pcHRhYmxlcworICAgICAgICAgICAgICAgICAgICAgICAgJXRlc3QtaXBmcykpCiAKIChkZWZp bmUgJWluZXRkLW9zCiAgIDs7IE9wZXJhdGluZyBzeXN0ZW0gd2l0aCAyIGluZXRkIHNlcnZpY2Vz LgpAQCAtNTYzLDMgKzU2NSw4MCBAQCBDT01NSVQKICAgIChuYW1lICJpcHRhYmxlcyIpCiAgICAo ZGVzY3JpcHRpb24gIlRlc3QgYSBydW5uaW5nIGlwdGFibGVzIGRhZW1vbi4iKQogICAgKHZhbHVl IChydW4taXB0YWJsZXMtdGVzdCkpKSkKKworDAorOzs7Cis7OzsgSVBGUyBzZXJ2aWNlCis7OzsK KworKGRlZmluZSAlaXBmcy1vcworICAoc2ltcGxlLW9wZXJhdGluZy1zeXN0ZW0KKyAgIChzZXJ2 aWNlIGlwZnMtc2VydmljZS10eXBlKSkpCisKKyhkZWZpbmUgKHJ1bi1pcGZzLXRlc3QpCisgIChk ZWZpbmUgb3MKKyAgICAobWFyaW9uZXR0ZS1vcGVyYXRpbmctc3lzdGVtICVpcGZzLW9zCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjOmltcG9ydGVkLW1vZHVsZXMgJygoZ251IHNl cnZpY2VzIGhlcmQpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAoZ3VpeCBpcGZzKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICM6cmVxdWlyZW1lbnRzICcoaXBmcykpKQorCisgIChkZWZpbmUgdGVzdAorICAgICh3aXRoLWlt cG9ydGVkLW1vZHVsZXMgJygoZ251IGJ1aWxkIG1hcmlvbmV0dGUpKQorICAgICAgI34oYmVnaW4K KyAgICAgICAgICAodXNlLW1vZHVsZXMgKGdudSBidWlsZCBtYXJpb25ldHRlKQorICAgICAgICAg ICAgICAgICAgICAgICAoc3JmaSBzcmZpLTY0KSkKKworICAgICAgICAgIChkZWZpbmUgbWFyaW9u ZXR0ZQorICAgICAgICAgICAgKG1ha2UtbWFyaW9uZXR0ZSAobGlzdCAjJCh2aXJ0dWFsLW1hY2hp bmUgb3MpKSkpCisKKyAgICAgICAgICAoZGVmaW5lIChpcGZzLWlzLWFsaXZlPykKKyAgICAgICAg ICAgIChtYXJpb25ldHRlLWV2YWwKKyAgICAgICAgICAgICAnKGJlZ2luCisgICAgICAgICAgICAg ICAgKHVzZS1tb2R1bGVzIChnbnUgc2VydmljZXMgaGVyZCkKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKHNyZmkgc3JmaS0xKSkKKyAgICAgICAgICAgICAgICAobGl2ZS1zZXJ2aWNlLXJ1 bm5pbmcKKyAgICAgICAgICAgICAgICAgKGZpbmQgKGxhbWJkYSAobGl2ZSkKKyAgICAgICAgICAg ICAgICAgICAgICAgICAobWVtcSAnaXBmcworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IChsaXZlLXNlcnZpY2UtcHJvdmlzaW9uIGxpdmUpKSkKKyAgICAgICAgICAgICAgICAgICAgICAg KGN1cnJlbnQtc2VydmljZXMpKSkpCisgICAgICAgICAgICAgbWFyaW9uZXR0ZSkpCisKKyAgICAg ICAgICA7OyBUaGUgZGVmYXVsdCBBUEkgZW5kcG9pbnQgcG9ydCA1MDAxIGlzIHVzZWQsCisgICAg ICAgICAgOzsgc28gdGhlcmUgaXMgbm8gbmVlZCB0byBwYXJhbWV0ZXJpemUgJWlwZnMtYmFzZS11 cmwuCisgICAgICAgICAgOzsgQnkgcnVubmluZyB0aGlzIHdpdGhpbiB0aGUgVk0gaW5zdGVhZCBv ZiBvdXRzaWRlIHRoZSBWTQorICAgICAgICAgIDs7IHRoaXMgc3lzdGVtIHRlc3QgZG9lcyBub3Qg aGF2ZSB0byBmb3J3YXJkIGFueSBwb3J0cy4gCisgICAgICAgICAgKGRlZmluZSAoYWRkLWRhdGEg ZGF0YSkKKyAgICAgICAgICAgIChtYXJpb25ldHRlLWV2YWwKKyAgICAgICAgICAgICBgKChAIChn dWl4IGlwZnMpIGFkZC1jb250ZW50cykgLGRhdGEpKSkKKyAgICAgICAgICAoZGVmaW5lIChyZWFk LWNvbnRlbnRzIG9iamVjdCkKKyAgICAgICAgICAgIChtYXJpb25ldHRlLWV2YWwKKyAgICAgICAg ICAgICBgKChAIChndWl4IGlwZnMpIHJlYWQtY29udGVudHMpICxvYmplY3QpKSkKKworICAgICAg ICAgICh0ZXN0LWJlZ2luICJpcGZzIikKKworICAgICAgICAgIDs7IFRlc3QgdGhlIElQRlMgc2Vy dmljZS4KKworICAgICAgICAgICh0ZXN0LWFzc2VydCAiaXBmcyBpcyBhbGl2ZSIgKGlwZnMtaXMt YWxpdmU/KSkKKworICAgICAgICAgICh0ZXN0LWFzc2VydCAiaXBmcyBpcyBsaXN0ZW5pbmcgb24g dGhlIGdhdGV3YXkiCisgICAgICAgICAgICAobGV0ICgoZGVmYXVsdC1wb3J0IDgwODIpKQorICAg ICAgICAgICAgICAod2FpdC1mb3ItdGNwLXBvcnQgZGVmYXVsdC1wb3J0IG1hcmlvbmV0dGUpKSkK KworICAgICAgICAgICh0ZXN0LWFzc2VydCAiaXBmcyBpcyBsaXN0ZW5pbmcgb24gdGhlIEFQSSBl bmRwb2ludCIKKyAgICAgICAgICAgIChsZXQgKChkZWZhdWx0LXBvcnQgNTAwMSkpCisgICAgICAg ICAgICAgICh3YWl0LWZvci10Y3AtcG9ydCBkZWZhdWx0LXBvcnQgbWFyaW9uZXR0ZSkpKQorCisg ICAgICAgICAgKGRlZmluZSB0ZXN0LWJ2IChzdHJpbmctPnV0ZjggImhlbGxvIGlwZnMhIikpCisg ICAgICAgICAgKHRlc3QtZXF1YWwgImNhbiB1cGxvYWQgYW5kIGRvd25sb2FkIGEgZmlsZSB0by9m cm9tIGlwZnMiCisgICAgICAgICAgICB0ZXN0LWJ2CisgICAgICAgICAgICAocmVhZC1jb250ZW50 cyAoYWRkLWRhdGEgdGVzdC1idikpKQorCisgICAgICAgICAgKHRlc3QtZW5kKQorICAgICAgICAg IChleGl0ICg9ICh0ZXN0LXJ1bm5lci1mYWlsLWNvdW50ICh0ZXN0LXJ1bm5lci1jdXJyZW50KSkg MCkpKSkpCisgIChnZXhwLT5kZXJpdmF0aW9uICJpcGZzLXRlc3QiIHRlc3QpKQorCisoZGVmaW5l ICV0ZXN0LWlwZnMKKyAgKHN5c3RlbS10ZXN0CisgICAobmFtZSAiaXBmcyIpCisgICAoZGVzY3Jp cHRpb24gIlRlc3QgYSBydW5uaW5nIElQRlMgZGFlbW9uIGNvbmZpZ3VyYXRpb24uIikKKyAgICh2 YWx1ZSAocnVuLWlwZnMtdGVzdCkpKSkKLS0gCjIuMzEuMAoK --=-4fQ/b2+OM9ALP4I5bmy3-- --=-onZ0Vh88Nt1TPN6CIFpc Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iI0EABYIADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYGCwfhccbWF4aW1lZGV2 b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7uXNAP918P4ZU2oJNrfzEN6M7uMhHzCn 8ehL24WfkJX/lXOKwAD6A+rtWQ1HNlYKp0Eld0MZwM45FPBnjtoV0k+6T100BQs= =ac5P -----END PGP SIGNATURE----- --=-onZ0Vh88Nt1TPN6CIFpc--