GNU bug report logs -
#17312
‘guix authenticate’ failure in C locale
Previous Next
Reported by: ludo <at> gnu.org (Ludovic Courtès)
Date: Tue, 22 Apr 2014 08:52:01 UTC
Severity: normal
Done: ludo <at> gnu.org (Ludovic Courtès)
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 17312 in the body.
You can then email your comments to 17312 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-guix <at> gnu.org
:
bug#17312
; Package
guix
.
(Tue, 22 Apr 2014 08:52:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
ludo <at> gnu.org (Ludovic Courtès)
:
New bug report received and forwarded. Copy sent to
bug-guix <at> gnu.org
.
(Tue, 22 Apr 2014 08:52:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
As seen in <http://hydra.gnu.org/build/54212>, ‘guix authenticate’ could
fail when running in the C locale (as is the case on hydra.gnu.org):
--8<---------------cut here---------------start------------->8---
@ build-started /gnu/store/639n30wn56fsnvxnp5sv4nxshxdsym32-gmp-6.0.0a.drv - x86_64-linux /nix/var/log/guix/drvs/63//9n30wn56fsnvxnp5sv4nxshxdsym32-gmp-6.0.0a.drv
sending 2 store files to 'hydra.gnunet.org'...
importing path `/gnu/store/hyr8lvpbl2lbbkvr5v1qa25895bpcxls-gmp-6.0.0a-guile-builder'
guix archive: error: build failed: program `guix-authenticate' failed with exit code 1
builder for `/gnu/store/639n30wn56fsnvxnp5sv4nxshxdsym32-gmp-6.0.0a.drv' failed to produce output path `/gnu/store/6va1dygagfrlc1xqy71ckawh4cymrl4h-gmp-6.0.0a-debug'
@ hook-failed /gnu/store/639n30wn56fsnvxnp5sv4nxshxdsym32-gmp-6.0.0a.drv - 0 builder for `/gnu/store/639n30wn56fsnvxnp5sv4nxshxdsym32-gmp-6.0.0a.drv' failed to produce output path `/gnu/store/6va1dygagfrlc1xqy71ckawh4cymrl4h-gmp-6.0.0a-debug'
--8<---------------cut here---------------end--------------->8---
The problem was that it could in some cases produce a signature sexp
with an invalid hash value. For example:
guix archive --export /gnu/store/hyr8lvpbl2lbbkvr5v1qa25895bpcxls-gmp-6.0.0a-guile-builder
would produce an archive with a signature sexp like this (literally):
(signature
(data
(flags pkcs1)
(hash sha256 "^?\vU????{N4?`??eL??x???|1y????{L")
)
[...]
The problem is that the hash value shown here is the result of
substituting non-ASCII characters with question marks and other things.
Obviously signature verification on such a thing would fail, leading to
errors like the one above.
This could happen in some cases, when libgcrypt would choose to use a
byte string representation instead of a hexadecimal string, and is due
to the fact that ‘string->canonical-sexp’ would convert strings passed
to ‘gcry_sexp_new’ to locale encoding.
This is fixed with commit 6030d84 (see that commit for a concrete
example.)
Ludo’.
Reply sent
to
ludo <at> gnu.org (Ludovic Courtès)
:
You have taken responsibility.
(Tue, 22 Apr 2014 11:36:01 GMT)
Full text and
rfc822 format available.
Notification sent
to
ludo <at> gnu.org (Ludovic Courtès)
:
bug acknowledged by developer.
(Tue, 22 Apr 2014 11:36:02 GMT)
Full text and
rfc822 format available.
Message #10 received at 17312-done <at> debbugs.gnu.org (full text, mbox):
ludo <at> gnu.org (Ludovic Courtès) skribis:
> This is fixed with commit 6030d84 (see that commit for a concrete
> example.)
A related issue is the choice of the stdout encoding used by ‘guix
authenticate’, fixed in 6f69588.
This appears to solve this bug.
Ludo’.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Wed, 21 May 2014 11:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 9 years and 314 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.