git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 1/1] create gpg homedir on the fly and skip RFC1991 tests for gnupg 2.1
@ 2014-12-11 13:16 Christian Hesse
  2014-12-11 22:41 ` Junio C Hamano
  0 siblings, 1 reply; 16+ messages in thread
From: Christian Hesse @ 2014-12-11 13:16 UTC (permalink / raw)
  To: git; +Cc: Christian Hesse

GnuPG 2.1 homedir looks different, so just creat it on the fly by
importing needed private and public keys and ownertrust.
This solves an issue with gnupg 2.1 running interactive pinentry when
old secret key is present.

Additionally GnuPG 2.1 does not longer support RFC1991, so skip these
tests.
---
 t/lib-gpg.sh          |  13 ++++++++++---
 t/lib-gpg/ownertrust  |   4 ++++
 t/lib-gpg/random_seed | Bin 600 -> 0 bytes
 t/lib-gpg/trustdb.gpg | Bin 1360 -> 0 bytes
 t/t7004-tag.sh        |  14 +++++++-------
 5 files changed, 21 insertions(+), 10 deletions(-)
 create mode 100644 t/lib-gpg/ownertrust
 delete mode 100644 t/lib-gpg/random_seed
 delete mode 100644 t/lib-gpg/trustdb.gpg

diff --git a/t/lib-gpg.sh b/t/lib-gpg.sh
index cd2baef..17c45ad 100755
--- a/t/lib-gpg.sh
+++ b/t/lib-gpg.sh
@@ -16,12 +16,19 @@ else
 		# Type DSA and Elgamal, size 2048 bits, no expiration date.
 		# Name and email: C O Mitter <committer@example.com>
 		# No password given, to enable non-interactive operation.
-		cp -R "$TEST_DIRECTORY"/lib-gpg ./gpghome
-		chmod 0700 gpghome
-		chmod 0600 gpghome/*
+		mkdir ./gpghome
+		chmod 0700 ./gpghome
 		GNUPGHOME="$(pwd)/gpghome"
 		export GNUPGHOME
+		gpg --homedir "${GNUPGHOME}" --import \
+			"$TEST_DIRECTORY"/lib-gpg/pubring.gpg \
+			"$TEST_DIRECTORY"/lib-gpg/secring.gpg
+		gpg --homedir "${GNUPGHOME}" --import-ownertrust \
+			"$TEST_DIRECTORY"/lib-gpg/ownertrust
 		test_set_prereq GPG
+		if [ -e "${GNUPGHOME}"/pubring.kbx ]; then
+			test_set_prereq GNUPG21
+		fi
 		;;
 	esac
 fi
diff --git a/t/lib-gpg/ownertrust b/t/lib-gpg/ownertrust
new file mode 100644
index 0000000..b3e3c4f
--- /dev/null
+++ b/t/lib-gpg/ownertrust
@@ -0,0 +1,4 @@
+# List of assigned trustvalues, created Thu 11 Dec 2014 01:26:28 PM CET
+# (Use "gpg --import-ownertrust" to restore them)
+73D758744BE721698EC54E8713B6F51ECDDE430D:6:
+D4BE22311AD3131E5EDA29A461092E85B7227189:3:
diff --git a/t/lib-gpg/random_seed b/t/lib-gpg/random_seed
deleted file mode 100644
index 95d249f15fce980f0e8c1a8a18b085b3885708aa..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 600
zcmV-e0;m1ccZd+x>>TST*Lrq1x^ggx^+ymwieO!6X=U~ZH@{avIgxdn#ai{)Ou@Qw
za}Z!boffEq^fn)n?c=IEnDpt59Lnc)aR*;8Z;k>gh_NW;ka;7Mt@v#sG(!Y9SSXWv
zQxd3WlyBr#4ltW6uKOoa6(r3df1VX$cG4`Om6hD-ckaX+Hb_yI?{f`hJQY&k!1cM-
zoGeY~(Z7aYn$W06djh?W|CMs>W=k@jgf=P2D1UA1T%vz0oE|<O<lIacG0xioPtS&U
zNd#}P%YpJr-H65~J^RdqA!YV9BEvh7Gw^CdXg+Hp?kj=KGW|+|&g$4?`trWWGuy$9
zv-|;8Y4(NRHWPyJ{epd{4%FHQKk5j}?0FFDAJ;0kIItZ4y<JS?DIG4~0!#x~;X`!P
zO%+va?@`?yQnhjrP@&#yjY$YO_0yk|1ddhc8V&ru7d%ytet)mF<ZIUbPB3bvhHQ41
zNmnYeFxUMu=m$K5&s=5_F&JSR#oU3Y#X{(q7HTp-VYJ)%JjihbZ@R#GeqmU{>0C4Q
zc}hUG+ighB{7XSaNw_h;=YtqacQ<B(Cg$e)^NTDD-oMD+T`O#-^|-ib>j!<pxHg+(
zlC$%zE836|E*F*((=>O{Nn@K$taZO}!>$t>GMgsw?!=n_#(%X9Ha|$b=H@VstWYe;
zPUQ<L$$#9HTcOLoyEd6*A4TOEe3}c}GiW*^P1Lt{nHYUEAB`Qx7*wizaEyM$?AjVN
mb-6m)4=6PVqdR>h+D!{<c#q1!T9b(}OW7hrrT@nJcBO(OGA4ll

diff --git a/t/lib-gpg/trustdb.gpg b/t/lib-gpg/trustdb.gpg
deleted file mode 100644
index 4879ae9a84650a93a4d15bd6560c5d1b89eb4c2f..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1360
zcmZQfFGy!*W@Ke#VqggLnYN69fq@Z-(E%eDx(E*bs5<NcGvvcX4&tvN?+<A7410el
zpr*s&;$I$y;_DG5-p>^?`;Pjx3vc@>clMq$FB`<O@(4fkGH5;5W#Id_>(K1CUIi|N
zsvi2g;@3gdA(S!jFkIQEWGHo6ST63C=8{BCz1HnYg`Lb06^aOjybMdTjEeXLLrOJU
RgG}yTes6vJW7bzp^8ko~DZ2mw

diff --git a/t/t7004-tag.sh b/t/t7004-tag.sh
index 796e9f7..1c40967 100755
--- a/t/t7004-tag.sh
+++ b/t/t7004-tag.sh
@@ -1081,7 +1081,7 @@ test_expect_success GPG \
 get_tag_header rfc1991-signed-tag $commit commit $time >expect
 echo "RFC1991 signed tag" >>expect
 echo '-----BEGIN PGP MESSAGE-----' >>expect
-test_expect_success GPG \
+test_expect_success GPG,!GNUPG21 \
 	'creating a signed tag with rfc1991' '
 	echo "rfc1991" >gpghome/gpg.conf &&
 	git tag -s -m "RFC1991 signed tag" rfc1991-signed-tag $commit &&
@@ -1095,7 +1095,7 @@ cp "$1" actual
 EOF
 chmod +x fakeeditor
 
-test_expect_success GPG \
+test_expect_success GPG,!GNUPG21 \
 	'reediting a signed tag body omits signature' '
 	echo "rfc1991" >gpghome/gpg.conf &&
 	echo "RFC1991 signed tag" >expect &&
@@ -1103,13 +1103,13 @@ test_expect_success GPG \
 	test_cmp expect actual
 '
 
-test_expect_success GPG \
+test_expect_success GPG,!GNUPG21 \
 	'verifying rfc1991 signature' '
 	echo "rfc1991" >gpghome/gpg.conf &&
 	git tag -v rfc1991-signed-tag
 '
 
-test_expect_success GPG \
+test_expect_success GPG,!GNUPG21 \
 	'list tag with rfc1991 signature' '
 	echo "rfc1991" >gpghome/gpg.conf &&
 	echo "rfc1991-signed-tag RFC1991 signed tag" >expect &&
@@ -1123,12 +1123,12 @@ test_expect_success GPG \
 
 rm -f gpghome/gpg.conf
 
-test_expect_success GPG \
+test_expect_success GPG,!GNUPG21 \
 	'verifying rfc1991 signature without --rfc1991' '
 	git tag -v rfc1991-signed-tag
 '
 
-test_expect_success GPG \
+test_expect_success GPG,!GNUPG21 \
 	'list tag with rfc1991 signature without --rfc1991' '
 	echo "rfc1991-signed-tag RFC1991 signed tag" >expect &&
 	git tag -l -n1 rfc1991-signed-tag >actual &&
@@ -1139,7 +1139,7 @@ test_expect_success GPG \
 	test_cmp expect actual
 '
 
-test_expect_success GPG \
+test_expect_success GPG,!GNUPG21 \
 	'reediting a signed tag body omits signature' '
 	echo "RFC1991 signed tag" >expect &&
 	GIT_EDITOR=./fakeeditor git tag -f -s rfc1991-signed-tag $commit &&
-- 
2.2.0

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [PATCH v2 1/1] create gpg homedir on the fly and skip RFC1991 tests for gnupg 2.1
  2014-12-11 13:16 [PATCH v2 1/1] create gpg homedir on the fly and skip RFC1991 tests for gnupg 2.1 Christian Hesse
@ 2014-12-11 22:41 ` Junio C Hamano
  2014-12-12  8:47   ` Christian Hesse
  0 siblings, 1 reply; 16+ messages in thread
From: Junio C Hamano @ 2014-12-11 22:41 UTC (permalink / raw)
  To: Christian Hesse; +Cc: git

Christian Hesse <mail@eworm.de> writes:

> GnuPG 2.1 homedir looks different, so just creat it on the fly by
> importing needed private and public keys and ownertrust.
> This solves an issue with gnupg 2.1 running interactive pinentry when
> old secret key is present.
>
> Additionally GnuPG 2.1 does not longer support RFC1991, so skip these
> tests.
> ---

Needs a sign-off.

Are older GPG implementations still happy with this new way to
initialize their gpghome?  

>  t/lib-gpg.sh          |  13 ++++++++++---
>  t/lib-gpg/ownertrust  |   4 ++++
>  t/lib-gpg/random_seed | Bin 600 -> 0 bytes
>  t/lib-gpg/trustdb.gpg | Bin 1360 -> 0 bytes
>  t/t7004-tag.sh        |  14 +++++++-------
>  5 files changed, 21 insertions(+), 10 deletions(-)
>  create mode 100644 t/lib-gpg/ownertrust
>  delete mode 100644 t/lib-gpg/random_seed
>  delete mode 100644 t/lib-gpg/trustdb.gpg

Do these trust files need to be shipped?  In other words, would it
be insufficient to just import private-public keyrings?  I know we
have been shipping trustdb.gpg, and I do not think it is a problem
to ship export-ownertrust output, but as long as we are cleaning
things up to make us compatible with both older and newer GPG,
I thought I'd ask ;-)

> diff --git a/t/lib-gpg.sh b/t/lib-gpg.sh
> index cd2baef..17c45ad 100755
> --- a/t/lib-gpg.sh
> +++ b/t/lib-gpg.sh
> @@ -16,12 +16,19 @@ else
>  		# Type DSA and Elgamal, size 2048 bits, no expiration date.
>  		# Name and email: C O Mitter <committer@example.com>
>  		# No password given, to enable non-interactive operation.
> -		cp -R "$TEST_DIRECTORY"/lib-gpg ./gpghome
> -		chmod 0700 gpghome
> -		chmod 0600 gpghome/*
> +		mkdir ./gpghome
> +		chmod 0700 ./gpghome
>  		GNUPGHOME="$(pwd)/gpghome"
>  		export GNUPGHOME
> +		gpg --homedir "${GNUPGHOME}" --import \
> +			"$TEST_DIRECTORY"/lib-gpg/pubring.gpg \
> +			"$TEST_DIRECTORY"/lib-gpg/secring.gpg
> +		gpg --homedir "${GNUPGHOME}" --import-ownertrust \
> +			"$TEST_DIRECTORY"/lib-gpg/ownertrust
>  		test_set_prereq GPG
> +		if [ -e "${GNUPGHOME}"/pubring.kbx ]; then
> +			test_set_prereq GNUPG21
> +		fi

Instead of !GNUPG21 prerequisite, how about using a RFC1991
prerequisite, which is satisfied by older GPG but not by the ones
that lack support?  That is,

	...
        test_set_prereq GPG
	if ! test "${GNUPGHOME}"/pubring.kbx
        then
		test_set_prereq GPG_RFC1991
	fi

or something.  That way, we do not have to be in a funny situation
where we say a version of GPG satisfies GNUPG21 prereq but it in
fact is GPG version 4.3 in the future.

Thanks.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH v2 1/1] create gpg homedir on the fly and skip RFC1991 tests for gnupg 2.1
  2014-12-11 22:41 ` Junio C Hamano
@ 2014-12-12  8:47   ` Christian Hesse
  2014-12-12  8:50     ` [PATCH 1/3] create gpg homedir on the fly Christian Hesse
  0 siblings, 1 reply; 16+ messages in thread
From: Christian Hesse @ 2014-12-12  8:47 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git

[-- Attachment #1: Type: text/plain, Size: 3279 bytes --]

Junio C Hamano <gitster@pobox.com> on Thu, 2014/12/11 14:41:
> Christian Hesse <mail@eworm.de> writes:
> 
> > GnuPG 2.1 homedir looks different, so just creat it on the fly by
> > importing needed private and public keys and ownertrust.
> > This solves an issue with gnupg 2.1 running interactive pinentry when
> > old secret key is present.
> >
> > Additionally GnuPG 2.1 does not longer support RFC1991, so skip these
> > tests.
> > ---
> 
> Needs a sign-off.

Damn... But yes, you are right. ;)

> Are older GPG implementations still happy with this new way to
> initialize their gpghome?  

Yes, tested with gnupg 1.4.10 from Debian squeeze (6.x).
Everybody is welcome to test on her/his distribution, though. ;)

> >  t/lib-gpg.sh          |  13 ++++++++++---
> >  t/lib-gpg/ownertrust  |   4 ++++
> >  t/lib-gpg/random_seed | Bin 600 -> 0 bytes
> >  t/lib-gpg/trustdb.gpg | Bin 1360 -> 0 bytes
> >  t/t7004-tag.sh        |  14 +++++++-------
> >  5 files changed, 21 insertions(+), 10 deletions(-)
> >  create mode 100644 t/lib-gpg/ownertrust
> >  delete mode 100644 t/lib-gpg/random_seed
> >  delete mode 100644 t/lib-gpg/trustdb.gpg
> 
> Do these trust files need to be shipped?  In other words, would it
> be insufficient to just import private-public keyrings?  I know we
> have been shipping trustdb.gpg, and I do not think it is a problem
> to ship export-ownertrust output, but as long as we are cleaning
> things up to make us compatible with both older and newer GPG,
> I thought I'd ask ;-)

Yes, we need this.
Some tests check for the trust level, e.g t7510-signed-commit.sh being one of
these.

> > diff --git a/t/lib-gpg.sh b/t/lib-gpg.sh
> > index cd2baef..17c45ad 100755
> > --- a/t/lib-gpg.sh
> > +++ b/t/lib-gpg.sh
> > @@ -16,12 +16,19 @@ else
> >  		# Type DSA and Elgamal, size 2048 bits, no expiration
> > date. # Name and email: C O Mitter <committer@example.com>
> >  		# No password given, to enable non-interactive operation.
> > -		cp -R "$TEST_DIRECTORY"/lib-gpg ./gpghome
> > -		chmod 0700 gpghome
> > -		chmod 0600 gpghome/*
> > +		mkdir ./gpghome
> > +		chmod 0700 ./gpghome
> >  		GNUPGHOME="$(pwd)/gpghome"
> >  		export GNUPGHOME
> > +		gpg --homedir "${GNUPGHOME}" --import \
> > +			"$TEST_DIRECTORY"/lib-gpg/pubring.gpg \
> > +			"$TEST_DIRECTORY"/lib-gpg/secring.gpg
> > +		gpg --homedir "${GNUPGHOME}" --import-ownertrust \
> > +			"$TEST_DIRECTORY"/lib-gpg/ownertrust
> >  		test_set_prereq GPG
> > +		if [ -e "${GNUPGHOME}"/pubring.kbx ]; then
> > +			test_set_prereq GNUPG21
> > +		fi
> 
> Instead of !GNUPG21 prerequisite, how about using a RFC1991
> prerequisite, which is satisfied by older GPG but not by the ones
> that lack support?  That is,
> 
> 	...
>         test_set_prereq GPG
> 	if ! test "${GNUPGHOME}"/pubring.kbx
>         then
> 		test_set_prereq GPG_RFC1991
> 	fi
> 
> or something.  That way, we do not have to be in a funny situation
> where we say a version of GPG satisfies GNUPG21 prereq but it in
> fact is GPG version 4.3 in the future.

Makes sense.
In addition I do check if gpg does work if --rfc1991 is given, no more
checking for keyring file.

I will reply with a new series of patches.
-- 
Best regards,
Chris

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH 1/3] create gpg homedir on the fly
  2014-12-12  8:47   ` Christian Hesse
@ 2014-12-12  8:50     ` Christian Hesse
  2014-12-12  8:50       ` [PATCH 2/3] skip RFC1991 tests for gnupg 2.1 Christian Hesse
                         ` (5 more replies)
  0 siblings, 6 replies; 16+ messages in thread
From: Christian Hesse @ 2014-12-12  8:50 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git, Christian Hesse

GnuPG 2.1 homedir looks different, so just creat it on the fly by
importing needed private and public keys and ownertrust.
This solves an issue with gnupg 2.1 running interactive pinentry when
old secret key is present.

Signed-off-by: Christian Hesse <mail@eworm.de>
---
 t/lib-gpg.sh          |  10 +++++++---
 t/lib-gpg/ownertrust  |   4 ++++
 t/lib-gpg/random_seed | Bin 600 -> 0 bytes
 t/lib-gpg/trustdb.gpg | Bin 1360 -> 0 bytes
 4 files changed, 11 insertions(+), 3 deletions(-)
 create mode 100644 t/lib-gpg/ownertrust
 delete mode 100644 t/lib-gpg/random_seed
 delete mode 100644 t/lib-gpg/trustdb.gpg

diff --git a/t/lib-gpg.sh b/t/lib-gpg.sh
index cd2baef..4e57942 100755
--- a/t/lib-gpg.sh
+++ b/t/lib-gpg.sh
@@ -16,11 +16,15 @@ else
 		# Type DSA and Elgamal, size 2048 bits, no expiration date.
 		# Name and email: C O Mitter <committer@example.com>
 		# No password given, to enable non-interactive operation.
-		cp -R "$TEST_DIRECTORY"/lib-gpg ./gpghome
-		chmod 0700 gpghome
-		chmod 0600 gpghome/*
+		mkdir ./gpghome
+		chmod 0700 ./gpghome
 		GNUPGHOME="$(pwd)/gpghome"
 		export GNUPGHOME
+		gpg --homedir "${GNUPGHOME}" --import \
+			"$TEST_DIRECTORY"/lib-gpg/pubring.gpg \
+			"$TEST_DIRECTORY"/lib-gpg/secring.gpg
+		gpg --homedir "${GNUPGHOME}" --import-ownertrust \
+			"$TEST_DIRECTORY"/lib-gpg/ownertrust
 		test_set_prereq GPG
 		;;
 	esac
diff --git a/t/lib-gpg/ownertrust b/t/lib-gpg/ownertrust
new file mode 100644
index 0000000..b3e3c4f
--- /dev/null
+++ b/t/lib-gpg/ownertrust
@@ -0,0 +1,4 @@
+# List of assigned trustvalues, created Thu 11 Dec 2014 01:26:28 PM CET
+# (Use "gpg --import-ownertrust" to restore them)
+73D758744BE721698EC54E8713B6F51ECDDE430D:6:
+D4BE22311AD3131E5EDA29A461092E85B7227189:3:
diff --git a/t/lib-gpg/random_seed b/t/lib-gpg/random_seed
deleted file mode 100644
index 95d249f15fce980f0e8c1a8a18b085b3885708aa..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 600
zcmV-e0;m1ccZd+x>>TST*Lrq1x^ggx^+ymwieO!6X=U~ZH@{avIgxdn#ai{)Ou@Qw
za}Z!boffEq^fn)n?c=IEnDpt59Lnc)aR*;8Z;k>gh_NW;ka;7Mt@v#sG(!Y9SSXWv
zQxd3WlyBr#4ltW6uKOoa6(r3df1VX$cG4`Om6hD-ckaX+Hb_yI?{f`hJQY&k!1cM-
zoGeY~(Z7aYn$W06djh?W|CMs>W=k@jgf=P2D1UA1T%vz0oE|<O<lIacG0xioPtS&U
zNd#}P%YpJr-H65~J^RdqA!YV9BEvh7Gw^CdXg+Hp?kj=KGW|+|&g$4?`trWWGuy$9
zv-|;8Y4(NRHWPyJ{epd{4%FHQKk5j}?0FFDAJ;0kIItZ4y<JS?DIG4~0!#x~;X`!P
zO%+va?@`?yQnhjrP@&#yjY$YO_0yk|1ddhc8V&ru7d%ytet)mF<ZIUbPB3bvhHQ41
zNmnYeFxUMu=m$K5&s=5_F&JSR#oU3Y#X{(q7HTp-VYJ)%JjihbZ@R#GeqmU{>0C4Q
zc}hUG+ighB{7XSaNw_h;=YtqacQ<B(Cg$e)^NTDD-oMD+T`O#-^|-ib>j!<pxHg+(
zlC$%zE836|E*F*((=>O{Nn@K$taZO}!>$t>GMgsw?!=n_#(%X9Ha|$b=H@VstWYe;
zPUQ<L$$#9HTcOLoyEd6*A4TOEe3}c}GiW*^P1Lt{nHYUEAB`Qx7*wizaEyM$?AjVN
mb-6m)4=6PVqdR>h+D!{<c#q1!T9b(}OW7hrrT@nJcBO(OGA4ll

diff --git a/t/lib-gpg/trustdb.gpg b/t/lib-gpg/trustdb.gpg
deleted file mode 100644
index 4879ae9a84650a93a4d15bd6560c5d1b89eb4c2f..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1360
zcmZQfFGy!*W@Ke#VqggLnYN69fq@Z-(E%eDx(E*bs5<NcGvvcX4&tvN?+<A7410el
zpr*s&;$I$y;_DG5-p>^?`;Pjx3vc@>clMq$FB`<O@(4fkGH5;5W#Id_>(K1CUIi|N
zsvi2g;@3gdA(S!jFkIQEWGHo6ST63C=8{BCz1HnYg`Lb06^aOjybMdTjEeXLLrOJU
RgG}yTes6vJW7bzp^8ko~DZ2mw

-- 
2.2.0

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH 2/3] skip RFC1991 tests for gnupg 2.1
  2014-12-12  8:50     ` [PATCH 1/3] create gpg homedir on the fly Christian Hesse
@ 2014-12-12  8:50       ` Christian Hesse
  2014-12-12  8:50       ` [PATCH 3/3] replace binary keyrings with armored keys Christian Hesse
                         ` (4 subsequent siblings)
  5 siblings, 0 replies; 16+ messages in thread
From: Christian Hesse @ 2014-12-12  8:50 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git, Christian Hesse

GnuPG >= 2.1.0 does not longer support RFC1991, so skip these
tests.

Signed-off-by: Christian Hesse <mail@eworm.de>
---
 t/lib-gpg.sh   |  3 +++
 t/t7004-tag.sh | 14 +++++++-------
 2 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/t/lib-gpg.sh b/t/lib-gpg.sh
index 4e57942..b0138ad 100755
--- a/t/lib-gpg.sh
+++ b/t/lib-gpg.sh
@@ -26,6 +26,9 @@ else
 		gpg --homedir "${GNUPGHOME}" --import-ownertrust \
 			"$TEST_DIRECTORY"/lib-gpg/ownertrust
 		test_set_prereq GPG
+		if echo | gpg --homedir "${GNUPGHOME}" -b --rfc1991 >/dev/null 2>/dev/null; then
+			test_set_prereq RFC1991
+		fi
 		;;
 	esac
 fi
diff --git a/t/t7004-tag.sh b/t/t7004-tag.sh
index 796e9f7..35c805a 100755
--- a/t/t7004-tag.sh
+++ b/t/t7004-tag.sh
@@ -1081,7 +1081,7 @@ test_expect_success GPG \
 get_tag_header rfc1991-signed-tag $commit commit $time >expect
 echo "RFC1991 signed tag" >>expect
 echo '-----BEGIN PGP MESSAGE-----' >>expect
-test_expect_success GPG \
+test_expect_success GPG,RFC1991 \
 	'creating a signed tag with rfc1991' '
 	echo "rfc1991" >gpghome/gpg.conf &&
 	git tag -s -m "RFC1991 signed tag" rfc1991-signed-tag $commit &&
@@ -1095,7 +1095,7 @@ cp "$1" actual
 EOF
 chmod +x fakeeditor
 
-test_expect_success GPG \
+test_expect_success GPG,RFC1991 \
 	'reediting a signed tag body omits signature' '
 	echo "rfc1991" >gpghome/gpg.conf &&
 	echo "RFC1991 signed tag" >expect &&
@@ -1103,13 +1103,13 @@ test_expect_success GPG \
 	test_cmp expect actual
 '
 
-test_expect_success GPG \
+test_expect_success GPG,RFC1991 \
 	'verifying rfc1991 signature' '
 	echo "rfc1991" >gpghome/gpg.conf &&
 	git tag -v rfc1991-signed-tag
 '
 
-test_expect_success GPG \
+test_expect_success GPG,RFC1991 \
 	'list tag with rfc1991 signature' '
 	echo "rfc1991" >gpghome/gpg.conf &&
 	echo "rfc1991-signed-tag RFC1991 signed tag" >expect &&
@@ -1123,12 +1123,12 @@ test_expect_success GPG \
 
 rm -f gpghome/gpg.conf
 
-test_expect_success GPG \
+test_expect_success GPG,RFC1991 \
 	'verifying rfc1991 signature without --rfc1991' '
 	git tag -v rfc1991-signed-tag
 '
 
-test_expect_success GPG \
+test_expect_success GPG,RFC1991 \
 	'list tag with rfc1991 signature without --rfc1991' '
 	echo "rfc1991-signed-tag RFC1991 signed tag" >expect &&
 	git tag -l -n1 rfc1991-signed-tag >actual &&
@@ -1139,7 +1139,7 @@ test_expect_success GPG \
 	test_cmp expect actual
 '
 
-test_expect_success GPG \
+test_expect_success GPG,RFC1991 \
 	'reediting a signed tag body omits signature' '
 	echo "RFC1991 signed tag" >expect &&
 	GIT_EDITOR=./fakeeditor git tag -f -s rfc1991-signed-tag $commit &&
-- 
2.2.0

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH 3/3] replace binary keyrings with armored keys
  2014-12-12  8:50     ` [PATCH 1/3] create gpg homedir on the fly Christian Hesse
  2014-12-12  8:50       ` [PATCH 2/3] skip RFC1991 tests for gnupg 2.1 Christian Hesse
@ 2014-12-12  8:50       ` Christian Hesse
  2014-12-12 18:36         ` Junio C Hamano
  2014-12-12  8:52       ` [PATCH 1/3] create gpg homedir on the fly Eric Sunshine
                         ` (3 subsequent siblings)
  5 siblings, 1 reply; 16+ messages in thread
From: Christian Hesse @ 2014-12-12  8:50 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git, Christian Hesse

Signed-off-by: Christian Hesse <mail@eworm.de>
---
 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
+
+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
+=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
zcmYk+dpy(oAHebNE||IBWzo{b+(V5FmD>sBRzgB-b2$ggOmwlLCX+jdlu4Ugy0}c6
zOCb?b<WA)lvmBSUNy+t8=kfcU^WXdN`SbmGzTUYYI@C6>Q&R>CFkvh0MQ90q7WxUi
zNE+8C=`|9Lbx88@UC3K(|0~&4!@(6~HC~o?!*xV=FV0@c<wHRJ_j*(givQRpOnyVn
zTkbWB&g!A_76J%nr>)&jP8vovn9E}Q>nA87#`-pHNboiup7+Q(?8JDOtU=2z`(6I0
zC7-&ZlTS?8m4O<8f~l4%GW9(9dg-3WL$05RK%-8V6l6m|$H~ZMCDqSPhBN;XF8>mR
zvNeaAXkQg$l(3WqCAL+25O0GFyJ&^BXd5;)m?*fnjnAF-+jV=yB1ZAW3}f7oPVt)l
zvj5xgpVXVX^LH>4b9qlMwUx%tk|XP9B$`|FkU_6uy3NtUY^6HwIT|i)5U^vV_4hlb
zsY{@_M97B9@139U_7b~A(C0RflDo1g5sJD?GVf?Pp@It3pvDERY44oIQLVk_%I;PC
ziF+IJsNq@bL5iQP4HqTMU$bG=RXXt|-GmI_n8NvyGX)+&8W)67Y8RQ!ZqQdojO@mu
zj?Kk)-LD`j_K;F8t4Gx)ZSR}lopni(F97+BXZ0J^>Q+c6<ndq<2~R|tVF{t3zsAG(
zXur^NA$YwXFBS<tP&pYepe6+V`JG?{L|9A|CISIN6u=OOA{Yc#1A&#U0&r1jIo7h;
zn=va1k}7c5ZkFm<TjKJ`((uoT)i(3GS%U37prG+X_RD5(0@H?;pYj>|F&2f+I$Hq-
zAhlqLpI98FVL(^yg+nLiJ|TMqf#1dbnBg|!D}3z&Ng>@{DknQPqONMtv)JqX;<JXz
z^P0Q}k^GS^Us8_+^=O-W$a#lvUYE@}j*Wk*EggxFs-$ftw$fyn2@w0P531qMt0fot
zD37Sv#ra!EpIa5NUkYDUrcv{50+B4DlSp4>DW4<77qnme+K{lC?<XAeMKQH|G<`jv
zcA?G(>*<oQRpn{=MEQ90=5{ZVw4Uk)t%muvt{m4)@xHPzJw+%|R5WR4#RG$e&+2E|
zFOA(HTuCh7N|qgo9Zu$LSNPDBseznbTE4R}PE5{`zjM-?4fTJ%;%hZOQ=+YThgpdn
zYMZ+~zOV&AC160czX9S<^u+hCro%qiUc3+@0n7=>2(8)3`!YHhm|5^x`Xh*tA%2Y<
z4+!$^dd=(7<Srloog4k8s0r{f(TF33z|jGNL3>JhD|lXT&g5i1*Q|#p^RiVcb@2?3
z@zrSh9FtlaoP|A=6NN&t!?_%%B}Q|&xs<VAm2>>Drh|9eRFcHd^a2&jPPG{Kuf<hw
zb?`C!)uhK<0yU!uiRrI{gn>!|U8xF3**Acmvd!j>*%$3igdRyoy9>2?3)<J88pU}O
z?RX$dbeQk)d!>7~TEF-k9Q>OxE+nwppb6<eP*PmAx;pKC-REu-RxzIQJ}a!V0P$j?
zfMy!@Ji!jC{KK5+FLRDyg!q4XJ)Z{(Zg1OCKV@H$<Ld-$mc#AH+sId~0Ge{^r$%w&
zvpc!&5m>3TSMa#gN40<Q$^}V4U5;h{27&<{H`fCJU&CEwDK$-3Q6}b89|hy{Nxnm~
z{sz(*r)e>D(7;1LTwT&c>EXP(VTMc5AUiLw)RqQW)qA}e+Te#C{z>GnJ%N&DeZBHJ
zdaIgE1!DSYVH(UbUx~c*<dbc7DcYoF+0uJ140KL?XIr#<gt|;%ZH48<j9f3rPpI#6
zd6omm-DF){EoNsg@Ajnb3<=lios5xpHS^Y=Xc{u}-AdR)#~E5^oOXC7>9(;s{A3NX
z%^PK&Qm64ORzAI!o0BN~KJY*)slPU1?1sklrvItP7r!&0Ig+hfxlIQy<;5nqeY6yy
zEsdE(5-eb77wg+Tg-6MqVU$0XANbV*G9Um{z1xNu9D%eBj=&O#xL`k|8SbC)|KW$>
zNfuO)2~-XQ2GoVXKbQA!`N9e?uqa#%stAVsr+z<CJqlYroa(_4Srg%I${UNht(*B8
z6lpm;QDU?Y?Tlkrh+_yH8Q2;<50RP#q2iKS!t#`sH>^?#akA!7nK~-HTW_s$y@O&p
zzmJpncwrD8+xb@}W#@-Da`wK$ccoe>azRTwv>s<&HL`4W{@&$kd!q#h&YToxN$HnV
z6<sTg#qjCgJ)YB<1ExFhVF02(dc56GjBn9!ekSz+)S~l5Tok;I8RPp9Q_db8Y!D`#
zjJJ-i))U!`@fIJo^PfL*q{hIpd{W?_Kef5#zuv(4Lpf?J*SZpobIbR<WS=Q|D^wDV
zAmzH8&*krsd{QlNt$8nBdLNUd?+YWQEZ~=4AFg7n%qjN5e%-Wx(cQ;5DYOigc4skI
zUG!Aix#*{7jJNot>$y3vHM{#~vNDAoCkLU4H6c?<!QY;X)<L?T^m+B^7MfbbS}73p
z4y*3JZC0#OZFSbeh+i{FD=7>(XX0)0$ABCoW<@;y&7xyke&_%>s}bHCcS7~e#xX(P
zwa^y|Ew19@Y>=#-Lt~t^EP~zp{p!r@RY?(-vMUV6C5)r?;i>+m2%zjTYB;NF-I&&A
zsuE=rG=3r=GnTByhjIfKl+TZT)=F^pk7eWXkHIc;ZS!=eJP&aqv8+c>t+lO#4SUlE
zAN1Y$ycBfX1(qqh?t!_yjR&U}pS{oRTmi1<v6|TKVWS&D%wOoJpdC=<ADn(f{ST*K
zQU6cPd^ikfoi^CqelWNMJoh<VldY985znD#4iU*QAy|Ph=Rpvvys8*~#nBmWaGPR<
zNkwMK@m=5FK{#ZY*dZLnLQ?Yh503`QrQqm-8B(8v?!~Tm*DvUeQTd(bw+=YF5Tz}p
z2O_IsZ<{W15^sz`ZOw`%P#BBIjKCiCHIvod7Ea;AZ0Id##z2Y=$6CYcx7>L-|NG`g
z+}gGrmQ_chb(%wCUyg<xD4evO_O3B6j#<2g+P$APz-$}LqojOE8Z9UA9-cz)U6xz8
z$ypPV*ctHX>7)@tj|=70^YI2<i0ZRho!a_z6l!9cR2!w1BF3!=I)Wt2Il(#*Pcfn?
I{Xf<G4artTjQ{`u

diff --git a/t/lib-gpg/secring.gpg b/t/lib-gpg/secring.gpg
deleted file mode 100644
index 82dca8f80bf170fde5705862c3eeb9d994725042..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 3734
zcmYk8cRbXOAICq=;q1M)jI&qvNLE%>WQFdW)%UDJNEF%Gd!0C&l)bW&t%x&2$T)Ij
zMA^S@-{0dm{(C>(|GuB^=j)Y0@D8l&Ix0*H1{xs0hf3usC7b1&$VzDtSSq`DA1A|j
z2glv~y`k?3%0h<b1X{~g`O)U{;(`bRX0t_?g41`<Ea<@-Gf##~E_?cq&6ws1%>J&6
zm#VF{mBp$|K$jYw6a3vuBvL_A$C3xcy6?PSW9oTt*^^GX?}ot*xGhzOm3+dz75yrL
zZlG|jZ!I+TacD$^z?)g~A1I((Y>b-ll2Ob=R_AvTOrLfGKS0JX0EOzRffYrclNXma
zvmBP|)(fzIc9R)Hm*~ptw8Xlj4vSb1aO<!ex%28FOdmFjmt`=KcI!WH{+i2(eaT<I
z-4K_v-w`}m5w#ua|8A4Aw@-q{?IT3IH*l_nxm|PzjYysW^qZ5Xri_#MDCKb|!b`SC
zqg&1fl>8*}-dB2|W0{e@OyWnhU(i_|hqcfdp&*>{<c^S@h@f{>QEdj|GqR?uvtKC^
zrmKU45+9uFG`H88?5|o9Nt3CR;O8F{TDu7a5ktA2H1t}6M`VjLyGw_!_P&gd5V9E%
zR^XZ^ICYW*Ke_X^$NPT(7*admT>`)>zrK$p{^cBIr<_Y%tL_B>UmAM}$<rG7w0KN-
z?z;Q=Iiq+~oxD6e{uwo#17RNCNN0(^H|jACV0u~*z(oZ5b7v4cAu%~AgoF@8$Os}N
zWC9U@xClVZ&jB)08v5pAu1{aJDE&Br!p`~YTII%dPp7_TJ6#pj1Kou_TEHtU`wjtb
z%;Ja<$*A63WyNfsb$C!M2msI^wLcUY(?Ec+wxC=0cD8sX4qZ<vU=2Px6u%Ed3#o|2
zCu27<b9~$DXKc#s7WO*3>K+U4`;rvQk2(5HsK@FJS|J}B{<3?jI&8H3v#ny@m%0vp
z9oLVhZHOT>7+d7@dEZF2cL22x2;0MF^EhPJhW#uVsY{N{e+l?EqfAJ!brlC2)CY${
zPfogG&I(|}Za<ll#+Onq3eZ9A4o)^^sn_*3%1tbHd#^a`{AeUNFVU?HC+%+$y^;3M
zq*4-z{7FgUd26esyMFLJ7z+NH=k+Y^?R5g(eAryVJ_qAsPnr<V_R(?P<uWQEiy_a#
zz6A__|JzXuzgaFSoYzptGdsAGyS#f1fGHtBBV3yOR^ZC%iSnF-)1)&Idkkm;nd;Gc
zng4TX#x<?*4b3+KuT+W`p;5qL{wq7YIGX<H-AA~<Po+J8gQ8HlACgSoWyVdQV*j`E
zzI)c{Y5`7lVxM-PpE_yp!G7_H?7DYDY=wKe)BUUfD73`~w_$Qr-0P!8tpKYxjWX&{
zdNs%vPcDxsWYZkw3b8sVtN$$K9CDM3=Bt^jaDZ1_%11Y1pw0`!T#ty9nwDSF&BT2*
zC>4wY-%gOXBI>t49J=U`4Yw}kuBJm7;wNAu;;$Md%YKo8?kFITu8q<?Jn-rAvih^L
zb*l)6S3OQlQ5y^Co}-2AA65#{%AW550t-rw-9`IHo-wa*H|ue>YkT>0vF3Kw$;^&(
z53lmJ-!SXA_bBj2RplA&aWNIg=!04QW|Z_FMvX!26#tLodpuD18TDM860XypVOC`o
zMv6aJr7Vd6^2x@#B_>qGyJ6(J`CXlR+__KZK!0$|Aj}4v8D-uffB?fUFI)jfnH!<h
zT*Bt04J!Asktz;b48y|jqInb$!s=^E($<Hlvm;@s1j23{B6Ac-pl@fF)YnDFSu~j{
z3VLk~j}ILaaHUekPBMr|oC)_7l1p-V3N=(YQs$>5SPbeXiu(1^RTP;O%V)hC9Smgf
z<)d|NtJQpxnqz0Y1wGx#*POm<NoQuRzP<gF-zJt9=_59|8p2?%YA?CcGpp)&9V382
z$fyh18g^1yUS7>LofER!L)8-7g*w9+Qrd7?al{L*a!GzuZ82Y?h1Rd&_x(RSDh6j!
z^^4^6$OY$zB@BMkJe1c|Xh8WvTxM@H|B_;?Nf`Bv{Oh<H)&|fL00aQZ1$i9)%T*C~
zx9O{-I@6KQ%;jp<g(RZh<EKjsDVl5x9nl3FX}S?DnrR~9M;2VIxs&d`jr5=E?g;NB
zfK_6fMHK1|CwH2Xi9c&(Z(2?<8&!@7HI?nXP>hVZTW1<47oa}7r}0#t_(kk|QRi7z
z1xeHR^P2e}%VVCs)zF|^oZiRsgk;KaVKU^oHum$#{b}Q-+lu{CmvKtM;h}BecC1uo
z=Ry&TVG0p3JR^dAl5ruEy$$axIBx4`_Rq_(NjKC6m*0sKj5*51cMzpoAh*yO0laqu
ze`uZP$uRoL&%!jj^KV8Cmf2uId&gOzVXYtiW-_T;k8edXaoz9AM@@i%kK)yfp(>yo
z$tmW8o;7g~=?4^$x{FkKN1#0?ljM_4^qi{f3nlMgK*{bcIU@o_kM2?LlvZHarGj#2
zc>F_6ZbWUJ+Y(bEOV@zZiCi%3a^Qp1FIbHY+T%n3A-dgvQQ6xF+6JhbSW_Mp-Ghg9
zaLTs~8*nsFdi!Hxw$-Cx;G)68ku*9{vK=!#sR492&hbdCiXBf>?2;l@vbk9Zj`6&D
zOX7Q;0~xf7zDx14${H7X^AX67%)e@LE?Kwzh%F|)gHwbSLUMv1DVlhK!ej<A7DT^L
zPC8(^1UJ5+?SD<AX_qvxjJjS?&rA)qb~An2(Iq)~;q$ORd@vOt2Lm0O&k8Qf=FPKJ
zqqITERhw72>WqsztW(aqKKs^3uN8<gwCYOWWV4isCL7*YfUBjQS3-(x#rh!%Pc!vk
zujQow&Ai$r{r6CvZLha!b;LhP+?ePx8eLqU!!Z=jw%x1>jJFP-4I9*`?Zf$hE(vP2
zp@nTvC7Aeh>4jbcl1z8h8~Jrm?!G+Q?!Hc5D1<wVM-}n!@xPhn>FlQ-OP~m*CjbF_
zM4&%^{J+p5W`ux9$;iP>Aj1C(E*PmqWDB29taUNTISKBHL4n-zLe){aRK&1}xp-)n
zH@u~mLd9!1)u~m&nxr*`sI0ur>v&DX9#Y55ZqZs(#Rp9pmpHGx7>-oNOKrrx*_|N^
z8~vUZ$-5XHnkiNCr9vc;-tCB6<W2f>S<PP4(=l`1=spA}ZI!s0TC%*p^hHUS$^piH
z!e%{fTAAC~6JVbTTpp4kKTz*_yqQ!DRv*0=9zcd|2yuL^^0sAZri<9iB1${3QG(<u
z#GYbFACA9$yH(ow?dl=CVD0J}e$ln@7fZm`9PK)Jgk^zEut6GWwg;6wyI+pk<D3I-
zs;0(6^VS81ib|DuNk<4Oao73yqeguT+YZwt<exbHpZ_XVOc?uSE5_4{o5wIoXz##|
z2MX5*ei1oYABD%KHq+CHjaO&DajnQTX7^w3N!tm>o3M6R@e*bAFfB$e2@TGhxvFJs
zjam<_We-|c(d8vB-ir2$e@)XDhy139`m|@9T;MSsn%+$|8GeuR)1}cN_Jzj>#y)e3
z<rV@ueZ%f>Z94Xr$<ybX+s~;;%&MLh7YC~ti)yS*9r*%PPoZ<^V;2f&tTJ1Gj@$A*
zm$a}@kpnQ!b(iJw(hrdsQ+QYlqQD696sManzGic4!{4d71}t)Zt<)u$GE<F>{&D1%
zYX(W9yRcSy%DPX6DSKFn8~qJL<Tv-USa~j85;gqCf0V<vyuh;R7y_Pfcp7O^EDV~p
zK&B#?O0DxAo4(}8>Ar|a&9j<@sc)3ZR*u;-hge=GQ6n!$zo}!*uR4h@;`v{0@%<z}
z^^p2z?zLs}2t7-j^l*Qmhl|Fq_-$;`vJ$V}3HEh^N)Wk<VvpR+=n{aCL+_rFz(v`^
zqo-$vMzjXzG*0q-zCUn<qiAnMlqPHE+#al?I`dGhieJtcuar}?LDFyxB%5UNRsvDl
z^0;<}8Wy79ttVt$n}OUvz8^dCGQ5_^beR3L=No|uuXe15EU;t0EA@~nS4mO@5a<sn
zRGr;tSm8IKoCwB;soi<Z5fozWh*hg80ZXOLgMt2Dn;?xh=D-S>*mpV-yr@!pfCTZy
zH+wsS&b%*3uEJw`_|k4_-x@B>&`LUW63+TQ!S4|(^=<JNtc=)&_*n!CWJUY6xo>yU
zZ;Tb1bCvgQiP;rQhm|cf1#vV7>Hhd7J;3|ww>(4ekYbJn=~mj$*~rzd2v;{D?7{m>
z=Or+(KquMB#5(uN$Ce37?Zl968~I60&ojp5h|0Ga?<2TMjOi<2PW05R246ovR}{#^
zaGwqIJ{qNPP+-KlmuD@&77NU5yYQ$+a-kV3zKdV&FD^DO1Wc2j`X&8U6yB(uTE-r8
zmnl~R1qrv9c0!ZF+NcMM@Mhc$E(Naa%R}RY=U|TgNMvo45>F^6p~2wQ{b!}_jL&`-
z(%bRsWfwEkX6bFi)JJ`d7JU0ExaOSHj*A@V8sG<n<e5AKyfV`t>{$9qy^(K#*nM8e
z_q8zd_w@WXP;`1h3*FYySin-iXghO_3#q|XH)Anwy6EiexV@oIeFx@Bb4C^R&Oy!P
zSkWSufE&#6x7q%#I{!A?KUL>H0>k@2fc|yqD-I?1a?s8XAK?~})Rm|WOxi3eGz95%
zNW4+)27Oy!=KRdq)LA+=QcER?C!PMld?AnBFkMlf-IyGin1AqE&y_wAfjQjt!y1Y|
z8T%3uB=I%&U{ozz&eRM=qe(OE-w65K^JF6~dI_wnTDk&NQTI=Eo!~oHJmXh4@tJD@
zXPXvJCyH%o3u)cS!PCPl)oxo3UK<{B&IgM1dV~!uA>~R|wb$)i)yhKlvZ4Gp(bEls
zGx?E;KjW9)dhNfyFE4mZzx#6IoSc%^rKV$5mR$k|-gtN5EIr2F_%MA`R1yP)uB`jD
b1#l&j<67Nr^MulyK!({nR7ex2{s`<}t0L{v

-- 
2.2.0

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [PATCH 1/3] create gpg homedir on the fly
  2014-12-12  8:50     ` [PATCH 1/3] create gpg homedir on the fly Christian Hesse
  2014-12-12  8:50       ` [PATCH 2/3] skip RFC1991 tests for gnupg 2.1 Christian Hesse
  2014-12-12  8:50       ` [PATCH 3/3] replace binary keyrings with armored keys Christian Hesse
@ 2014-12-12  8:52       ` Eric Sunshine
  2014-12-12  8:55         ` Christian Hesse
  2014-12-12 18:26       ` Junio C Hamano
                         ` (2 subsequent siblings)
  5 siblings, 1 reply; 16+ messages in thread
From: Eric Sunshine @ 2014-12-12  8:52 UTC (permalink / raw)
  To: Christian Hesse; +Cc: Junio C Hamano, Git List

On Fri, Dec 12, 2014 at 3:50 AM, Christian Hesse <mail@eworm.de> wrote:
> GnuPG 2.1 homedir looks different, so just creat it on the fly by

s/creat/create/

> importing needed private and public keys and ownertrust.
> This solves an issue with gnupg 2.1 running interactive pinentry when
> old secret key is present.
>
> Signed-off-by: Christian Hesse <mail@eworm.de>

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH 1/3] create gpg homedir on the fly
  2014-12-12  8:52       ` [PATCH 1/3] create gpg homedir on the fly Eric Sunshine
@ 2014-12-12  8:55         ` Christian Hesse
  0 siblings, 0 replies; 16+ messages in thread
From: Christian Hesse @ 2014-12-12  8:55 UTC (permalink / raw)
  To: Eric Sunshine; +Cc: git, Junio C Hamano, Christian Hesse

GnuPG 2.1 homedir looks different, so just create it on the fly by
importing needed private and public keys and ownertrust.
This solves an issue with gnupg 2.1 running interactive pinentry when
old secret key is present.

Signed-off-by: Christian Hesse <mail@eworm.de>
---
 t/lib-gpg.sh          |  10 +++++++---
 t/lib-gpg/ownertrust  |   4 ++++
 t/lib-gpg/random_seed | Bin 600 -> 0 bytes
 t/lib-gpg/trustdb.gpg | Bin 1360 -> 0 bytes
 4 files changed, 11 insertions(+), 3 deletions(-)
 create mode 100644 t/lib-gpg/ownertrust
 delete mode 100644 t/lib-gpg/random_seed
 delete mode 100644 t/lib-gpg/trustdb.gpg

diff --git a/t/lib-gpg.sh b/t/lib-gpg.sh
index cd2baef..4e57942 100755
--- a/t/lib-gpg.sh
+++ b/t/lib-gpg.sh
@@ -16,11 +16,15 @@ else
 		# Type DSA and Elgamal, size 2048 bits, no expiration date.
 		# Name and email: C O Mitter <committer@example.com>
 		# No password given, to enable non-interactive operation.
-		cp -R "$TEST_DIRECTORY"/lib-gpg ./gpghome
-		chmod 0700 gpghome
-		chmod 0600 gpghome/*
+		mkdir ./gpghome
+		chmod 0700 ./gpghome
 		GNUPGHOME="$(pwd)/gpghome"
 		export GNUPGHOME
+		gpg --homedir "${GNUPGHOME}" --import \
+			"$TEST_DIRECTORY"/lib-gpg/pubring.gpg \
+			"$TEST_DIRECTORY"/lib-gpg/secring.gpg
+		gpg --homedir "${GNUPGHOME}" --import-ownertrust \
+			"$TEST_DIRECTORY"/lib-gpg/ownertrust
 		test_set_prereq GPG
 		;;
 	esac
diff --git a/t/lib-gpg/ownertrust b/t/lib-gpg/ownertrust
new file mode 100644
index 0000000..b3e3c4f
--- /dev/null
+++ b/t/lib-gpg/ownertrust
@@ -0,0 +1,4 @@
+# List of assigned trustvalues, created Thu 11 Dec 2014 01:26:28 PM CET
+# (Use "gpg --import-ownertrust" to restore them)
+73D758744BE721698EC54E8713B6F51ECDDE430D:6:
+D4BE22311AD3131E5EDA29A461092E85B7227189:3:
diff --git a/t/lib-gpg/random_seed b/t/lib-gpg/random_seed
deleted file mode 100644
index 95d249f15fce980f0e8c1a8a18b085b3885708aa..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 600
zcmV-e0;m1ccZd+x>>TST*Lrq1x^ggx^+ymwieO!6X=U~ZH@{avIgxdn#ai{)Ou@Qw
za}Z!boffEq^fn)n?c=IEnDpt59Lnc)aR*;8Z;k>gh_NW;ka;7Mt@v#sG(!Y9SSXWv
zQxd3WlyBr#4ltW6uKOoa6(r3df1VX$cG4`Om6hD-ckaX+Hb_yI?{f`hJQY&k!1cM-
zoGeY~(Z7aYn$W06djh?W|CMs>W=k@jgf=P2D1UA1T%vz0oE|<O<lIacG0xioPtS&U
zNd#}P%YpJr-H65~J^RdqA!YV9BEvh7Gw^CdXg+Hp?kj=KGW|+|&g$4?`trWWGuy$9
zv-|;8Y4(NRHWPyJ{epd{4%FHQKk5j}?0FFDAJ;0kIItZ4y<JS?DIG4~0!#x~;X`!P
zO%+va?@`?yQnhjrP@&#yjY$YO_0yk|1ddhc8V&ru7d%ytet)mF<ZIUbPB3bvhHQ41
zNmnYeFxUMu=m$K5&s=5_F&JSR#oU3Y#X{(q7HTp-VYJ)%JjihbZ@R#GeqmU{>0C4Q
zc}hUG+ighB{7XSaNw_h;=YtqacQ<B(Cg$e)^NTDD-oMD+T`O#-^|-ib>j!<pxHg+(
zlC$%zE836|E*F*((=>O{Nn@K$taZO}!>$t>GMgsw?!=n_#(%X9Ha|$b=H@VstWYe;
zPUQ<L$$#9HTcOLoyEd6*A4TOEe3}c}GiW*^P1Lt{nHYUEAB`Qx7*wizaEyM$?AjVN
mb-6m)4=6PVqdR>h+D!{<c#q1!T9b(}OW7hrrT@nJcBO(OGA4ll

diff --git a/t/lib-gpg/trustdb.gpg b/t/lib-gpg/trustdb.gpg
deleted file mode 100644
index 4879ae9a84650a93a4d15bd6560c5d1b89eb4c2f..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1360
zcmZQfFGy!*W@Ke#VqggLnYN69fq@Z-(E%eDx(E*bs5<NcGvvcX4&tvN?+<A7410el
zpr*s&;$I$y;_DG5-p>^?`;Pjx3vc@>clMq$FB`<O@(4fkGH5;5W#Id_>(K1CUIi|N
zsvi2g;@3gdA(S!jFkIQEWGHo6ST63C=8{BCz1HnYg`Lb06^aOjybMdTjEeXLLrOJU
RgG}yTes6vJW7bzp^8ko~DZ2mw

-- 
2.2.0

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [PATCH 1/3] create gpg homedir on the fly
  2014-12-12  8:50     ` [PATCH 1/3] create gpg homedir on the fly Christian Hesse
                         ` (2 preceding siblings ...)
  2014-12-12  8:52       ` [PATCH 1/3] create gpg homedir on the fly Eric Sunshine
@ 2014-12-12 18:26       ` Junio C Hamano
  2014-12-12 20:33       ` Junio C Hamano
  2014-12-12 20:33       ` Junio C Hamano
  5 siblings, 0 replies; 16+ messages in thread
From: Junio C Hamano @ 2014-12-12 18:26 UTC (permalink / raw)
  To: Christian Hesse; +Cc: git

Christian Hesse <mail@eworm.de> writes:

> GnuPG 2.1 homedir looks different, so just creat it on the fly by
> importing needed private and public keys and ownertrust.
> This solves an issue with gnupg 2.1 running interactive pinentry when
> old secret key is present.
>
> Signed-off-by: Christian Hesse <mail@eworm.de>
> ---

Thanks; will queue with s/just creat/&e/;

>  t/lib-gpg.sh          |  10 +++++++---
>  t/lib-gpg/ownertrust  |   4 ++++
>  t/lib-gpg/random_seed | Bin 600 -> 0 bytes
>  t/lib-gpg/trustdb.gpg | Bin 1360 -> 0 bytes
>  4 files changed, 11 insertions(+), 3 deletions(-)
>  create mode 100644 t/lib-gpg/ownertrust
>  delete mode 100644 t/lib-gpg/random_seed
>  delete mode 100644 t/lib-gpg/trustdb.gpg
>
> diff --git a/t/lib-gpg.sh b/t/lib-gpg.sh
> index cd2baef..4e57942 100755
> --- a/t/lib-gpg.sh
> +++ b/t/lib-gpg.sh
> @@ -16,11 +16,15 @@ else
>  		# Type DSA and Elgamal, size 2048 bits, no expiration date.
>  		# Name and email: C O Mitter <committer@example.com>
>  		# No password given, to enable non-interactive operation.
> -		cp -R "$TEST_DIRECTORY"/lib-gpg ./gpghome
> -		chmod 0700 gpghome
> -		chmod 0600 gpghome/*
> +		mkdir ./gpghome
> +		chmod 0700 ./gpghome
>  		GNUPGHOME="$(pwd)/gpghome"
>  		export GNUPGHOME
> +		gpg --homedir "${GNUPGHOME}" --import \
> +			"$TEST_DIRECTORY"/lib-gpg/pubring.gpg \
> +			"$TEST_DIRECTORY"/lib-gpg/secring.gpg
> +		gpg --homedir "${GNUPGHOME}" --import-ownertrust \
> +			"$TEST_DIRECTORY"/lib-gpg/ownertrust
>  		test_set_prereq GPG
>  		;;
>  	esac
> diff --git a/t/lib-gpg/ownertrust b/t/lib-gpg/ownertrust
> new file mode 100644
> index 0000000..b3e3c4f
> --- /dev/null
> +++ b/t/lib-gpg/ownertrust
> @@ -0,0 +1,4 @@
> +# List of assigned trustvalues, created Thu 11 Dec 2014 01:26:28 PM CET
> +# (Use "gpg --import-ownertrust" to restore them)
> +73D758744BE721698EC54E8713B6F51ECDDE430D:6:
> +D4BE22311AD3131E5EDA29A461092E85B7227189:3:
> diff --git a/t/lib-gpg/random_seed b/t/lib-gpg/random_seed
> deleted file mode 100644
> index 95d249f15fce980f0e8c1a8a18b085b3885708aa..0000000000000000000000000000000000000000
> GIT binary patch
> literal 0
> HcmV?d00001
>
> literal 600
> zcmV-e0;m1ccZd+x>>TST*Lrq1x^ggx^+ymwieO!6X=U~ZH@{avIgxdn#ai{)Ou@Qw
> za}Z!boffEq^fn)n?c=IEnDpt59Lnc)aR*;8Z;k>gh_NW;ka;7Mt@v#sG(!Y9SSXWv
> zQxd3WlyBr#4ltW6uKOoa6(r3df1VX$cG4`Om6hD-ckaX+Hb_yI?{f`hJQY&k!1cM-
> zoGeY~(Z7aYn$W06djh?W|CMs>W=k@jgf=P2D1UA1T%vz0oE|<O<lIacG0xioPtS&U
> zNd#}P%YpJr-H65~J^RdqA!YV9BEvh7Gw^CdXg+Hp?kj=KGW|+|&g$4?`trWWGuy$9
> zv-|;8Y4(NRHWPyJ{epd{4%FHQKk5j}?0FFDAJ;0kIItZ4y<JS?DIG4~0!#x~;X`!P
> zO%+va?@`?yQnhjrP@&#yjY$YO_0yk|1ddhc8V&ru7d%ytet)mF<ZIUbPB3bvhHQ41
> zNmnYeFxUMu=m$K5&s=5_F&JSR#oU3Y#X{(q7HTp-VYJ)%JjihbZ@R#GeqmU{>0C4Q
> zc}hUG+ighB{7XSaNw_h;=YtqacQ<B(Cg$e)^NTDD-oMD+T`O#-^|-ib>j!<pxHg+(
> zlC$%zE836|E*F*((=>O{Nn@K$taZO}!>$t>GMgsw?!=n_#(%X9Ha|$b=H@VstWYe;
> zPUQ<L$$#9HTcOLoyEd6*A4TOEe3}c}GiW*^P1Lt{nHYUEAB`Qx7*wizaEyM$?AjVN
> mb-6m)4=6PVqdR>h+D!{<c#q1!T9b(}OW7hrrT@nJcBO(OGA4ll
>
> diff --git a/t/lib-gpg/trustdb.gpg b/t/lib-gpg/trustdb.gpg
> deleted file mode 100644
> index 4879ae9a84650a93a4d15bd6560c5d1b89eb4c2f..0000000000000000000000000000000000000000
> GIT binary patch
> literal 0
> HcmV?d00001
>
> literal 1360
> zcmZQfFGy!*W@Ke#VqggLnYN69fq@Z-(E%eDx(E*bs5<NcGvvcX4&tvN?+<A7410el
> zpr*s&;$I$y;_DG5-p>^?`;Pjx3vc@>clMq$FB`<O@(4fkGH5;5W#Id_>(K1CUIi|N
> zsvi2g;@3gdA(S!jFkIQEWGHo6ST63C=8{BCz1HnYg`Lb06^aOjybMdTjEeXLLrOJU
> RgG}yTes6vJW7bzp^8ko~DZ2mw

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 3/3] replace binary keyrings with armored keys
  2014-12-12  8:50       ` [PATCH 3/3] replace binary keyrings with armored keys Christian Hesse
@ 2014-12-12 18:36         ` Junio C Hamano
  2014-12-12 20:42           ` Christian Hesse
  0 siblings, 1 reply; 16+ messages in thread
From: Junio C Hamano @ 2014-12-12 18:36 UTC (permalink / raw)
  To: Christian Hesse; +Cc: git

Christian Hesse <mail@eworm.de> writes:

> Signed-off-by: Christian Hesse <mail@eworm.de>
> ---

Could you explain why it is a good idea to do this to the future
readers of "git log" who encounter this change?

Note that I do not have a particular objection to this change.  If
the original were using a single file as an import source and that
happened to be ascii-armored, I wouldn't have suggested a patch that
is a reverse of this patch to split it into two binary keyrings.

It's just that I do not want to see "replace X with Y" without any
mention of "because Y is better than X in such and such way",
especially when X and Y would equally work well.  The reason does
not have to be particularly strong, and something like "a single
unreadable ASCII-armored blob is sufficient for the purpose of our
test set-up, instead of two unreadable binary blobs" is sufficient.

And there is more reason than that, then we would definitely want to
know about it (e.g. there is a plan in the future to drop importing
binary on the GPG side; importing pubring and then secring may not
work and the order may have to be swapped, or any random reason that
makes "X and Y would equally work well" untrue).

Thanks.

>  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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
> I{Xf<G4artTjQ{`u
>
> diff --git a/t/lib-gpg/secring.gpg b/t/lib-gpg/secring.gpg
> deleted file mode 100644
> index 82dca8f80bf170fde5705862c3eeb9d994725042..0000000000000000000000000000000000000000
> GIT binary patch
> literal 0
> HcmV?d00001
>
> literal 3734
> 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
> b1#l&j<67Nr^MulyK!({nR7ex2{s`<}t0L{v

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 1/3] create gpg homedir on the fly
  2014-12-12  8:50     ` [PATCH 1/3] create gpg homedir on the fly Christian Hesse
                         ` (3 preceding siblings ...)
  2014-12-12 18:26       ` Junio C Hamano
@ 2014-12-12 20:33       ` Junio C Hamano
  2014-12-12 20:45         ` Christian Hesse
  2014-12-12 20:33       ` Junio C Hamano
  5 siblings, 1 reply; 16+ messages in thread
From: Junio C Hamano @ 2014-12-12 20:33 UTC (permalink / raw)
  To: Christian Hesse; +Cc: git

After queuing these three, I _think_ it is better to have something
like this patch on top, as it is distracting to let the GPG message
while setting up the test gpghome leak into the test output,
especially without running these tests with "-v" option.

The splitting of RFC1991 prerequiste part is about future-proofing.
When we want to define other kinds of specific prerequisites in the
future, I'd prefer to see it done separately from the basic set-up
code.

 t/lib-gpg.sh | 26 ++++++++++++++------------
 1 file changed, 14 insertions(+), 12 deletions(-)

diff --git a/t/lib-gpg.sh b/t/lib-gpg.sh
index b611b78..33de402 100755
--- a/t/lib-gpg.sh
+++ b/t/lib-gpg.sh
@@ -16,23 +16,25 @@ else
 		# Type DSA and Elgamal, size 2048 bits, no expiration date.
 		# Name and email: C O Mitter <committer@example.com>
 		# No password given, to enable non-interactive operation.
-		mkdir ./gpghome
-		chmod 0700 ./gpghome
-		GNUPGHOME="$(pwd)/gpghome"
-		export GNUPGHOME
-		gpg --homedir "${GNUPGHOME}" --import \
-			"$TEST_DIRECTORY"/lib-gpg/keyring.gpg
-		gpg --homedir "${GNUPGHOME}" --import-ownertrust \
-			"$TEST_DIRECTORY"/lib-gpg/ownertrust
+		mkdir ./gpghome &&
+		chmod 0700 ./gpghome &&
+		GNUPGHOME="$(pwd)/gpghome" &&
+		export GNUPGHOME &&
+		gpg --homedir "${GNUPGHOME}" 2>/dev/null --import \
+			"$TEST_DIRECTORY"/lib-gpg/keyring.gpg &&
+		gpg --homedir "${GNUPGHOME}" 2>/dev/null --import-ownertrust \
+			"$TEST_DIRECTORY"/lib-gpg/ownertrust &&
 		test_set_prereq GPG
-		if echo | gpg --homedir "${GNUPGHOME}" -b --rfc1991 >/dev/null 2>&1
-		then
-			test_set_prereq RFC1991
-		fi
 		;;
 	esac
 fi
 
+if test_have_prereq GPG &&
+    echo | gpg --homedir "${GNUPGHOME}" -b --rfc1991 >/dev/null 2>&1
+then
+	test_set_prereq RFC1991
+fi
+
 sanitize_pgp() {
 	perl -ne '
 		/^-----END PGP/ and $in_pgp = 0;

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [PATCH 1/3] create gpg homedir on the fly
  2014-12-12  8:50     ` [PATCH 1/3] create gpg homedir on the fly Christian Hesse
                         ` (4 preceding siblings ...)
  2014-12-12 20:33       ` Junio C Hamano
@ 2014-12-12 20:33       ` Junio C Hamano
  5 siblings, 0 replies; 16+ messages in thread
From: Junio C Hamano @ 2014-12-12 20:33 UTC (permalink / raw)
  To: Christian Hesse; +Cc: git

After queuing these three, I _think_ it is better to have something
like this patch on top, as it is distracting to let the GPG message
while setting up the test gpghome leak into the test output,
especially without running these tests with "-v" option.

The splitting of RFC1991 prerequiste part is about future-proofing.
When we want to define other kinds of specific prerequisites in the
future, I'd prefer to see it done separately from the basic set-up
code.

Thanks.

 t/lib-gpg.sh | 26 ++++++++++++++------------
 1 file changed, 14 insertions(+), 12 deletions(-)

diff --git a/t/lib-gpg.sh b/t/lib-gpg.sh
index b611b78..33de402 100755
--- a/t/lib-gpg.sh
+++ b/t/lib-gpg.sh
@@ -16,23 +16,25 @@ else
 		# Type DSA and Elgamal, size 2048 bits, no expiration date.
 		# Name and email: C O Mitter <committer@example.com>
 		# No password given, to enable non-interactive operation.
-		mkdir ./gpghome
-		chmod 0700 ./gpghome
-		GNUPGHOME="$(pwd)/gpghome"
-		export GNUPGHOME
-		gpg --homedir "${GNUPGHOME}" --import \
-			"$TEST_DIRECTORY"/lib-gpg/keyring.gpg
-		gpg --homedir "${GNUPGHOME}" --import-ownertrust \
-			"$TEST_DIRECTORY"/lib-gpg/ownertrust
+		mkdir ./gpghome &&
+		chmod 0700 ./gpghome &&
+		GNUPGHOME="$(pwd)/gpghome" &&
+		export GNUPGHOME &&
+		gpg --homedir "${GNUPGHOME}" 2>/dev/null --import \
+			"$TEST_DIRECTORY"/lib-gpg/keyring.gpg &&
+		gpg --homedir "${GNUPGHOME}" 2>/dev/null --import-ownertrust \
+			"$TEST_DIRECTORY"/lib-gpg/ownertrust &&
 		test_set_prereq GPG
-		if echo | gpg --homedir "${GNUPGHOME}" -b --rfc1991 >/dev/null 2>&1
-		then
-			test_set_prereq RFC1991
-		fi
 		;;
 	esac
 fi
 
+if test_have_prereq GPG &&
+    echo | gpg --homedir "${GNUPGHOME}" -b --rfc1991 >/dev/null 2>&1
+then
+	test_set_prereq RFC1991
+fi
+
 sanitize_pgp() {
 	perl -ne '
 		/^-----END PGP/ and $in_pgp = 0;

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH 3/3] replace binary keyrings with armored keys
  2014-12-12 18:36         ` Junio C Hamano
@ 2014-12-12 20:42           ` Christian Hesse
  2014-12-12 21:50             ` Junio C Hamano
  0 siblings, 1 reply; 16+ messages in thread
From: Christian Hesse @ 2014-12-12 20:42 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git, Christian Hesse

Importing PGP key public and security ring works, but this is supposed
for runtime. As name suggests we prefer exported format for import.

The extra benefit is that we do not have all secret keys in one binary
blob and all public keys in another. Instead public and secret keys for
one key pair are bundled.

By using armored format (which is plain ASCII) we can just concatenate
the key pairs in one file. (First block is 0xCDDE430D, second block is
0xB7227189.) The individual key pairs can be added and/or removed with
simple text editor. Last but not least git and patch can handle this a
lot better.

Signed-off-by: Christian Hesse <mail@eworm.de>
---
 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
+
+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
+=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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
I{Xf<G4artTjQ{`u

diff --git a/t/lib-gpg/secring.gpg b/t/lib-gpg/secring.gpg
deleted file mode 100644
index 82dca8f80bf170fde5705862c3eeb9d994725042..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 3734
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
b1#l&j<67Nr^MulyK!({nR7ex2{s`<}t0L{v

-- 
2.2.0

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [PATCH 1/3] create gpg homedir on the fly
  2014-12-12 20:33       ` Junio C Hamano
@ 2014-12-12 20:45         ` Christian Hesse
  0 siblings, 0 replies; 16+ messages in thread
From: Christian Hesse @ 2014-12-12 20:45 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git

[-- Attachment #1: Type: text/plain, Size: 2191 bytes --]

Junio C Hamano <gitster@pobox.com> on Fri, 2014/12/12 12:33:
> After queuing these three, I _think_ it is better to have something
> like this patch on top, as it is distracting to let the GPG message
> while setting up the test gpghome leak into the test output,
> especially without running these tests with "-v" option.
> 
> The splitting of RFC1991 prerequiste part is about future-proofing.
> When we want to define other kinds of specific prerequisites in the
> future, I'd prefer to see it done separately from the basic set-up
> code.

Sounds reasonable and looks good to me. So...

Signed-off-by: Christian Hesse <mail@eworm.de>

Thanks!

>  t/lib-gpg.sh | 26 ++++++++++++++------------
>  1 file changed, 14 insertions(+), 12 deletions(-)
> 
> diff --git a/t/lib-gpg.sh b/t/lib-gpg.sh
> index b611b78..33de402 100755
> --- a/t/lib-gpg.sh
> +++ b/t/lib-gpg.sh
> @@ -16,23 +16,25 @@ else
>  		# Type DSA and Elgamal, size 2048 bits, no expiration date.
>  		# Name and email: C O Mitter <committer@example.com>
>  		# No password given, to enable non-interactive operation.
> -		mkdir ./gpghome
> -		chmod 0700 ./gpghome
> -		GNUPGHOME="$(pwd)/gpghome"
> -		export GNUPGHOME
> -		gpg --homedir "${GNUPGHOME}" --import \
> -			"$TEST_DIRECTORY"/lib-gpg/keyring.gpg
> -		gpg --homedir "${GNUPGHOME}" --import-ownertrust \
> -			"$TEST_DIRECTORY"/lib-gpg/ownertrust
> +		mkdir ./gpghome &&
> +		chmod 0700 ./gpghome &&
> +		GNUPGHOME="$(pwd)/gpghome" &&
> +		export GNUPGHOME &&
> +		gpg --homedir "${GNUPGHOME}" 2>/dev/null --import \
> +			"$TEST_DIRECTORY"/lib-gpg/keyring.gpg &&
> +		gpg --homedir "${GNUPGHOME}" 2>/dev/null
> --import-ownertrust \
> +			"$TEST_DIRECTORY"/lib-gpg/ownertrust &&
>  		test_set_prereq GPG
> -		if echo | gpg --homedir "${GNUPGHOME}" -b --rfc1991
> >/dev/null 2>&1
> -		then
> -			test_set_prereq RFC1991
> -		fi
>  		;;
>  	esac
>  fi
>  
> +if test_have_prereq GPG &&
> +    echo | gpg --homedir "${GNUPGHOME}" -b --rfc1991 >/dev/null 2>&1
> +then
> +	test_set_prereq RFC1991
> +fi
> +
>  sanitize_pgp() {
>  	perl -ne '
>  		/^-----END PGP/ and $in_pgp = 0;
-- 
Best regards,
Chris

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 3/3] replace binary keyrings with armored keys
  2014-12-12 20:42           ` Christian Hesse
@ 2014-12-12 21:50             ` Junio C Hamano
  2014-12-13 19:30               ` Christian Hesse
  0 siblings, 1 reply; 16+ messages in thread
From: Junio C Hamano @ 2014-12-12 21:50 UTC (permalink / raw)
  To: Christian Hesse; +Cc: git

Christian Hesse <mail@eworm.de> writes:

> Importing PGP key public and security ring works, but this is supposed
> for runtime. As name suggests we prefer exported format for import.
>
> The extra benefit is that we do not have all secret keys in one binary
> blob and all public keys in another. Instead public and secret keys for
> one key pair are bundled.
>
> By using armored format (which is plain ASCII) we can just concatenate
> the key pairs in one file. (First block is 0xCDDE430D, second block is
> 0xB7227189.) The individual key pairs can be added and/or removed with
> simple text editor. Last but not least git and patch can handle this a
> lot better.

Actually we can handle binary patch just fine ;-)

Will replace what I queued earlier with this one.  Thanks.


>
> Signed-off-by: Christian Hesse <mail@eworm.de>
> ---
>  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
> +
> +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
> +=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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
> I{Xf<G4artTjQ{`u
>
> diff --git a/t/lib-gpg/secring.gpg b/t/lib-gpg/secring.gpg
> deleted file mode 100644
> index 82dca8f80bf170fde5705862c3eeb9d994725042..0000000000000000000000000000000000000000
> GIT binary patch
> literal 0
> HcmV?d00001
>
> literal 3734
> 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
> b1#l&j<67Nr^MulyK!({nR7ex2{s`<}t0L{v

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 3/3] replace binary keyrings with armored keys
  2014-12-12 21:50             ` Junio C Hamano
@ 2014-12-13 19:30               ` Christian Hesse
  0 siblings, 0 replies; 16+ messages in thread
From: Christian Hesse @ 2014-12-13 19:30 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

Junio C Hamano <gitster@pobox.com> on Fri, 2014/12/12 13:50:
> Christian Hesse <mail@eworm.de> writes:
> > Last but not least git and patch can handle this a
> > lot better.
> 
> Actually we can handle binary patch just fine ;-)

Ah, that was kind of misleading. :-p
Generating a patch with git including binary data and trying to apply with
patch results in something like "git binary diffs are not supported".

Anyway... Thanks for applying!
-- 
Best regards,
Chris

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2014-12-13 19:30 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-12-11 13:16 [PATCH v2 1/1] create gpg homedir on the fly and skip RFC1991 tests for gnupg 2.1 Christian Hesse
2014-12-11 22:41 ` Junio C Hamano
2014-12-12  8:47   ` Christian Hesse
2014-12-12  8:50     ` [PATCH 1/3] create gpg homedir on the fly Christian Hesse
2014-12-12  8:50       ` [PATCH 2/3] skip RFC1991 tests for gnupg 2.1 Christian Hesse
2014-12-12  8:50       ` [PATCH 3/3] replace binary keyrings with armored keys Christian Hesse
2014-12-12 18:36         ` Junio C Hamano
2014-12-12 20:42           ` Christian Hesse
2014-12-12 21:50             ` Junio C Hamano
2014-12-13 19:30               ` Christian Hesse
2014-12-12  8:52       ` [PATCH 1/3] create gpg homedir on the fly Eric Sunshine
2014-12-12  8:55         ` Christian Hesse
2014-12-12 18:26       ` Junio C Hamano
2014-12-12 20:33       ` Junio C Hamano
2014-12-12 20:45         ` Christian Hesse
2014-12-12 20:33       ` Junio C Hamano

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).