From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christian Hesse Subject: [PATCH 3/3] replace binary keyrings with armored keys Date: Fri, 12 Dec 2014 09:50:14 +0100 Message-ID: <1418374214-8241-3-git-send-email-mail@eworm.de> References: <20141212094753.160a0fb5@leda.localdomain> <1418374214-8241-1-git-send-email-mail@eworm.de> Cc: git@vger.kernel.org, Christian Hesse To: Junio C Hamano X-From: git-owner@vger.kernel.org Fri Dec 12 09:51:13 2014 Return-path: Envelope-to: gcvg-git-2@plane.gmane.org Received: from vger.kernel.org ([209.132.180.67]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XzLwN-0003LF-7m for gcvg-git-2@plane.gmane.org; Fri, 12 Dec 2014 09:51:12 +0100 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933852AbaLLIvG (ORCPT ); Fri, 12 Dec 2014 03:51:06 -0500 Received: from mx.mylinuxtime.de ([148.251.109.235]:34991 "EHLO mx.mylinuxtime.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758094AbaLLIvE (ORCPT ); Fri, 12 Dec 2014 03:51:04 -0500 Received: from leda.eworm.de (unknown [10.10.1.2]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx.mylinuxtime.de (Postfix) with ESMTPSA id 808E624312; Fri, 12 Dec 2014 09:51:02 +0100 (CET) DKIM-Filter: OpenDKIM Filter v2.9.2 mx.mylinuxtime.de 808E624312 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=eworm.de; s=mail; t=1418374262; bh=aX4BiOR8KkLZnqUD5GI4RiXtQyn1KDbovoqQAd6eTQg=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=tN8Ie6HMkAkwjK5DMYmh6sjeFtAO3UI6HYfA3Jd8tZPRgjAgBaCcE36n8xyI6dYu1 pAx8gSDS+3XIKOFnA8xhJqnQeet3WvO5m1oMCxHOKDhKXHh2VxDX+uXtN6q4zA0B1u 9JKLPFGWEmyUXLKe2saUUbp/95NC482BML48Bu8I= Received: by leda.eworm.de (Postfix, from userid 1000) id 58FC0100CAB; Fri, 12 Dec 2014 09:50:57 +0100 (CET) X-Mailer: git-send-email 2.2.0 In-Reply-To: <1418374214-8241-1-git-send-email-mail@eworm.de> Sender: git-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org Archived-At: Signed-off-by: Christian Hesse --- t/lib-gpg.sh | 3 +- t/lib-gpg/keyring.gpg | 88 ++++++++++++++++++++++++++++++++++++++++++++++++++ t/lib-gpg/pubring.gpg | Bin 2359 -> 0 bytes t/lib-gpg/secring.gpg | Bin 3734 -> 0 bytes 4 files changed, 89 insertions(+), 2 deletions(-) create mode 100644 t/lib-gpg/keyring.gpg delete mode 100644 t/lib-gpg/pubring.gpg delete mode 100644 t/lib-gpg/secring.gpg diff --git a/t/lib-gpg.sh b/t/lib-gpg.sh index b0138ad..03c2dd3 100755 --- a/t/lib-gpg.sh +++ b/t/lib-gpg.sh @@ -21,8 +21,7 @@ else GNUPGHOME="$(pwd)/gpghome" export GNUPGHOME gpg --homedir "${GNUPGHOME}" --import \ - "$TEST_DIRECTORY"/lib-gpg/pubring.gpg \ - "$TEST_DIRECTORY"/lib-gpg/secring.gpg + "$TEST_DIRECTORY"/lib-gpg/keyring.gpg gpg --homedir "${GNUPGHOME}" --import-ownertrust \ "$TEST_DIRECTORY"/lib-gpg/ownertrust test_set_prereq GPG diff --git a/t/lib-gpg/keyring.gpg b/t/lib-gpg/keyring.gpg new file mode 100644 index 0000000..fb1f048 --- /dev/null +++ b/t/lib-gpg/keyring.gpg @@ -0,0 +1,88 @@ +-----BEGIN PGP PRIVATE KEY BLOCK----- +Version: GnuPG v1 + +lQG7BEZnyykRBACzCPjIpTYNL7Y2tQqlEGTTDlvZcWNLjF5f7ZzuyOqNOidLUgFD +36qch1LZLSZkShdR3Gae+bsolyjxrlFuFP0eXRPMtqK20aLw7WZvPFpEV1ThMne+ +PRJjYrvghWw3L0VVIAIZ8GXwrVBuU99uEjHEI0ojYloOvFc2jVPgSaoBvwCg48Tj +fol2foSoJa7XUu9yAL8szg8D/RUsTzNF+I9hSRHl7MYKFMYoKEY9BDgrgAujp7YY +8qdGsiUb0Ggyzp2kRjZFt4lpcvKhGfHn5GEjmtk+fRbD5qPfMqKFW+T0NPfYlYmL +JJ4fs4qZ8Lx7x6iG6X51u+YNwsQuIGjMCC3CeNi3F7or651kkNYASbaQ1NROkCIN +NudyA/0aasvoZUoNJAc2cP5Ifs6WhXMWLfMR2p2XbfKwKNYneec60usnSComcKqh +sJVk0Gytvr3FOYVhRkXnKAbx+0W2urFP8OFVBTEKO6Ts2VygWGgneQYoHnqzwlUE +yjOjlr+lyf7u2s/KAxpKA6jnttEdRZAmzWkhuox1wwAUkr27/QAAn3TEzKR1pxxR ++R3dHuFpnnfatMIDC5O0IkMgTyBNaXR0ZXIgPGNvbW1pdHRlckBleGFtcGxlLmNv +bT6IXgQTEQIAHgUCRmfLKQIbAwYLCQgHAwIDFQIDAxYCAQIeAQIXgAAKCRATtvUe +zd5DDXQdAKC92f+wOrTkbmPEf+u+qA/Gv6BxQwCfQ128JXCi3MpMB8tI2Kmo15tY +gnmdAj0ERmfLThAIAM65eT9T6+gg0fJn+Qxhs3FFDPjxK6AOBS3SieWWmXO6stZZ +plvb7r2+sXYp8HMHntnOX3TRPolIx1dsdkv3W3w8yUzf9Lmo2XMPsZ3/isWdEbOI +A0rO3B1xwbQO7vEoWHeB7uyYIF6YsIH0pMqxkImciwB1tnJPB9OxqPHlD/HyyHr2 +voj6nmEGaPQWj8/dkfyenXm6XmNZUZL/slk6tRhNwv4cW3QQLh39nbiz9rqvZMKF +XX8wkY4FdQkJjCGwqzG+7yJcyHvem29/iq//jRLZgdiN8BwV3MCTJyDp8/Wb/d9y +jZcUm1RdtwRiwfhfQ+zmpyspm7OxINfH65rf7f8ABA0IALRiMRs/eOD59jrYXmPS +ZQUbiALlbJJtuP2c9N3WZ5OgrhDiAW+SDIN+hgDynJ9b7C2dE3xNaud4zaXAAF44 +J4J0bAo2ZtZoJajw+GXwaZfh4Z7nPNHwEcbFD4/uXPCj9jPkcLOJqGmUY1aXdygo +t3Hn5U/zo8JxPQ83YbJQhkzAOZ/HGowLNqKgGkLLHn1X9qay0CxlfTQeEN5RZyl3 +b4qRzGgGALFvoheyZIUw1TbjRpbn3kqlJooEQY02VwXFXfLI/LwzglilH6sSckvs +0WHKLZ+0L6b3CgJHN2RsZ7QxwCBi1aemsvr65FeEXp/AYxaG5duUbsugG8PgoJ06 +bsEAAVQNQO3cXWpuiJ/nNLLnWuPunBKJUlurkBdf2GD+m+muF0VpwDchhqqbTO4e +FqOISQQYEQIACQUCRmfLTgIbDAAKCRATtvUezd5DDcHsAKDQcoAtDWJFupVRqleB +Cezx4Q2khACcCs+/LtE8Lb9hC+2cvr3uH5p82AI= +=aEiU +-----END PGP PRIVATE KEY BLOCK----- +-----BEGIN PGP PRIVATE KEY BLOCK----- +Version: GnuPG v1 + +lQOYBFFMlkcBCADJi/xnAF8yI34PHilSCbM7VtOFO17oFMkpu4cgN2QpPuM5MVjy +cvrzKSguZFvPCDLzeAFJW1uPxL4SHaHSkisCrFhijH7OJWcOPNPSFCwu+inAoAsv +Hm4ns6pfDZyRjVTHSY4rdMISqKFRozaXu8vHeBRzIhFnubBCepKZW07oKPnrnELV +TVUSUVI+6el8JFmJIWxxLNLhfRRSPF0v4MDXPF//iCWiZDI+J1pLvQ5V/f7YtfsD +GV0oPY66J72BFJG555eKBttnNY901LmI3ocn5P5iVnXDaqMElw7FKpnANXucgY3H +4kLyNkI3s3J0CGbXI7b3MBWtjctuhWv1q2G5ABEBAAEAB/wLiuza/qEfv1Cfj7FQ +ytAXpz1YoAcrcM/53TeRQhrbvIee5ZNGhLdCkyot81QeuJrSaXO0E9CxRynrjQQ7 +ibYqN7Hy0uu1kAbQQJjmVdQXTKnKJ7Wm7oM4hYhNsVCKNXc+1+5AfDYGg4nZob36 +qqgHtc+Ardl5VfUg7uF+eZrnSMynjZANgikKbPtE09DKVtVOtUE4xTD9ijkpgn65 +glsZDqb7J4QVgTeEiCDKJsQvin3SwrPBqBxBRULF2TIaMbOwe6dHiiaI85rsvAWS +VGzonUB3IU1470P2SDIVczbXYUK/nDSGx6ZZ0wLu9ZcCyUPvxVEykuh2P4UWHla+ +nHLRBADMLavcfjsCI5CRUsdurYpgE8Y3bEbcDpvzAu5jT5D25p3YPDODOXD3AKTt +PzVMARVtv8twkbgAyWaoDevJz8OtmoSwsWjdFo4YvsYw9jV7Yf3GwzD3Ya1ZnW32 +JWQr6cX8qcK0AukAD7UZkVyhU2KBvB02t8lKHLbScHXTYVqrywQA/LNUXwmHji+6 +osnSQAC8X9ggMOEs9dGo7Qlk4JgfGAH17CFI3S3ubsaVEdxz3YwzOkD8SNmEbLyW +a7CZ/RnpdAZU0nB7kSfbfZl7ajhPbgKBMsaV2yvaDdJeor4m5eKdXffRk0SksxjL +Z/4P1tTIuL8WzetGB/aDcWDFgseSAAsEALzmf579ptlSmDyGRAKQqub+mj4V3EUZ +1GVGcfBY86w3BZVDsaRiCtcNjk/lcP4AZ1Vbb42RM6jk8nLsENRc7rf2xa7ZPf0T +6n5F6W+vk7EG76RoFhKVtGZngGKiDGVavxk3FT/yf8lKrT3wYiT03SZDuZ0pWvku +FiJGEyesAC8WRz60JEVyaXMgRGlzY29yZGlhIDxkaXNjb3JkQGV4YW1wbGUubmV0 +PokBOAQTAQIAIgUCUUyWRwIbAwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQ +YQkuhbcicYlYowf7B+f+FDcLVfw8XzGlKku1F6PI1yGCt7AMO2/JkmO4LlgHuIgF +pqe5b/XjKl0IsRcbVLitqiIokc8u+7H8yYU67DDliq7t1gqBy+qThSHcgn6WMKTa +qCqOE2jzHyqulIAzQsJQ+c5SRofEZAKT4Qa2Dy+nsqWDpIE78aJd0Vnkk9U6H2Vu +ABvUeN/IMgvxPr525o+rBD7LU4J3CtOzfV+sO6+33da+Bm9UhkR4tC4H/n1dDN1J +YuxBQbgxTq/h8mKe4/7/Yvy+5WsYd96ZRLE2ZFWeWXtKkwmYbQ42G3SZUXaZ8R8O +tbTyUrjbFKipO4wvXwhyju1l9cxAsrca6xbSCJ0DmARRTJZHAQgAqTtPFcTXqM+U +o7bOoo+dcHi8XDf/8XSEmZfMKc/U5pSTBk7h1gSKuGzjF2n3wQm6A8+101vTLaQ6 +PoFDFW8uQB00mjymGrRDYFgz8bjhnaekZnA4XThr1ROjffgMhs3uTpCebdV+lL8K +0oJTHc39TPLTg23DFcRSDN+3ARJJS7+CRBIbt9L5gObpgA4HUap/o6N7O04rQOPU +83MAqnwo2JTO/Ded0zoad0Vo31Nmk4F+KvEE52ftGHbd7yqIUGKBt2SeTAh850ac +LeNZP+V1Y7atBCr7/zm+JpHWq9OH7/NomlEIkxL8WDt8GfAKoqZgqefL+ACEnLbA +t1du3f0FswARAQABAAf8DclaIQDfPM5kYo3y+YVPoykC11RskmQWpVibdlCLHJm/ +/ISSm1fVYT7lpTOpzl0XfVX/jw9s/cviPtNS/r0G/Iwki+gi9Av5bTDiUm/oWWqd +1waPYPDGwB4QdKOviY/fOSFI9tOsszt5Czs4wDXWy90AZDWd7fkHYisbgofV1sjK +Q8bYQPabcepcZ2JyET+EpZBEmUHHqQ76bTiqjN+Vz6k1OFlsEBzGkE+WIakAhkQ2 +57oUrRgFe+h6Ch7meB/v6vVfIRSsLpZe183uc4SigqtfsgjbG9PqOcAJOqovDncB +Scg3qvpWFOAkTA3Re+yBPUd2HHl9WF/TPa2kBDCT2QQAxcJZeUCuUgDgCizqEgfs +Kzm6dy4G/OJdW0q9m9psHqD1XWLd7ZLE4+eTS1cxktJiGcGNdGoZD0EtgxkV09uM +12QYCOBErFJzv4/4oledHeEhTaRR/mFFGRp+kWTz2Ai/zNqUd3D++DYUe8g4mVQJ +6JP014XhvoRnaCfT8cH9Zd0EANsSL70WGdifcVoWKA9jFJhahc0sSG6IZvMOc7bs +cSbhBqLEnheObkarBP+A+zgllqIf+sbCassMXjcV52mnl9th3J5RWr7scrQLJ9ZX +Ivz3uoP85vwlUI98dI9roYK0OpKmG4hNFppAcgiCVNVjnQlhuQ/HoexRHxRmnmcb +38jPA/sEHPCFbLCGOSB+HQNKx/5Wf6VpFX/4oBNbIUiYoxcRl0jpYT7Lc0zbc8So +HthjPfWhXhKzYvEDC5YgASEy1cNbGMUJcGyuAInwIQjq44FSwRMkI3ISSHnbv1iH +0wBVJUzpluMebEAesdZUz1DcZWVf6eVJD0dhZxD6DoG7Xj1m9ThUiQEfBBgBAgAJ +BQJRTJZHAhsMAAoJEGEJLoW3InGJ7HEIAMXkMf4cOWmnAuvvcSm3KpLghuWik9dy +fn1sY/IG5atoKK+ypmV/TlBlMZqFQzuPIJQT8VLbmxtLlDhJG04LbI6c8axIZxOO +ZKLy5nTTSy16ztqEeS7eifHLPZg1UFFyEEIQ1XW0CNDAeuWKh90ERjyl4Cg7PnWS +Z9Ei+zj6JD5Pcdi3BJhQo9WOLOVEJ0NHmewTYqk9QVXH/0v1Hdl4LMJtgcbdbDWk +4UTkXbg9pn3umCgkNJ3Vs8fWnIWO9Izdr2/wrFY2JvUT7Yvl+wsNIWatvOEzGy7n +BOW78WUxzhu0YJTLKy+iKCjg5HS5dx6OC+e4aEEgfhNPCMkbvDsJjtQ= +=hieJ +-----END PGP PRIVATE KEY BLOCK----- diff --git a/t/lib-gpg/pubring.gpg b/t/lib-gpg/pubring.gpg deleted file mode 100644 index 1a3c2d487c2fda9169751a3068fa51e853a1e519..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2359 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 b1#l&j<67Nr^MulyK!({nR7ex2{s`<}t0L{v -- 2.2.0