Your message dated Tue, 05 Feb 2008 11:17:04 +0000
with message-id <[EMAIL PROTECTED]>
and subject line Bug#460422: fixed in paperkey 0.8-1
has caused the attached Bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Debian bug tracking system administrator
(administrator, Debian Bugs database)

--- Begin Message ---
Package: paperkey
Version: 0.7-1
Severity: serious

Hi David,

As can be seen at [0] paperkey fails to build from source on sparc[1].
The testsuite fails due to unaligned memory access in sha1_read_ctx.

make[3]: Entering directory `/home/weasel/paperkey/paperkey-0.7/checks'
./roundtrip.sh: line 5: 11357 Bus error               ../paperkey --secret-key 
${srcdir}/papertest.sec --output papertest.txt
FAIL: roundtrip.sh
./roundtrip-raw.sh: line 5: 11363 Bus error               ../paperkey 
--secret-key ${srcdir}/papertest.sec --output-type raw --output papertest.bin
FAIL: roundtrip-raw.sh
PASS: bad-crc-base16.sh
PASS: bad-crc-raw.sh
======================================
2 of 4 tests failed


Program terminated with signal 10, Bus error.
#0  0x000125a0 in sha1_read_ctx (ctx=0xffa8368c, resbuf=0xffa837a3) at sha1.c:78
78        ((uint32_t *) resbuf)[0] = SWAP (ctx->A);
(gdb) bt
#0  0x000125a0 in sha1_read_ctx (ctx=0xffa8368c, resbuf=0xffa837a3) at sha1.c:78
#1  0x00011730 in calculate_fingerprint (packet=0x26178, public_len=418, 
fingerprint=0xffa837a3 "Žÿš8Ì÷ü\200") at parse.c:219
#2  0x00011a84 in extract (input=0x26008, outname=0xffa83a13 "papertest.txt", 
output_type=BASE16) at extract.c:51
#3  0xf7e67a3c in __libc_start_main () from /lib/libc.so.6
#4  0x00010a98 in _start ()



This seems to fix the issue:

--- paperkey-0.7.orig/gl/sha1.c
+++ paperkey-0.7/gl/sha1.c
@@ -67,19 +67,28 @@
   ctx->buflen = 0;
 }
 
+/* Copy the 4 byte value in v into the memory location pointed to by *cp,
+   If your architecture allows unaligend access this should be equivalent
+   to *cp = v */
+void
+set_uint32(char *cp, uint32_t v)
+{
+  memcpy(cp,&v,4);
+}
+
 /* Put result from CTX in first 20 bytes following RESBUF.  The result
    must be in little endian byte order.
 
    IMPORTANT: On some systems it is required that RESBUF is correctly
    aligned for a 32-bit value.  */
 void *
-sha1_read_ctx (const struct sha1_ctx *ctx, void *resbuf)
+sha1_read_ctx (const struct sha1_ctx *ctx, char *resbuf)
 {
-  ((uint32_t *) resbuf)[0] = SWAP (ctx->A);
-  ((uint32_t *) resbuf)[1] = SWAP (ctx->B);
-  ((uint32_t *) resbuf)[2] = SWAP (ctx->C);
-  ((uint32_t *) resbuf)[3] = SWAP (ctx->D);
-  ((uint32_t *) resbuf)[4] = SWAP (ctx->E);
+  set_uint32(&resbuf[0*4], SWAP (ctx->A));
+  set_uint32(&resbuf[1*4], SWAP (ctx->B));
+  set_uint32(&resbuf[2*4], SWAP (ctx->C));
+  set_uint32(&resbuf[3*4], SWAP (ctx->D));
+  set_uint32(&resbuf[4*4], SWAP (ctx->E));
 
   return resbuf;
 }


Cheers,
Peter

0. http://buildd.debian.org/paperkey 
1. 
http://buildd.debian.org/fetch.cgi?pkg=paperkey;ver=0.7-1;arch=sparc;stamp=1191826910
-- 
                           |  .''`.  ** Debian GNU/Linux **
      Peter Palfrader      | : :' :      The  universal
 http://www.palfrader.org/ | `. `'      Operating System
                           |   `-    http://www.debian.org/



--- End Message ---
--- Begin Message ---
Source: paperkey
Source-Version: 0.8-1

We believe that the bug you reported is fixed in the latest version of
paperkey, which is due to be installed in the Debian FTP archive:

paperkey_0.8-1.diff.gz
  to pool/main/p/paperkey/paperkey_0.8-1.diff.gz
paperkey_0.8-1.dsc
  to pool/main/p/paperkey/paperkey_0.8-1.dsc
paperkey_0.8-1_i386.deb
  to pool/main/p/paperkey/paperkey_0.8-1_i386.deb
paperkey_0.8.orig.tar.gz
  to pool/main/p/paperkey/paperkey_0.8.orig.tar.gz



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [EMAIL PROTECTED],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Peter Palfrader <[EMAIL PROTECTED]> (supplier of updated paperkey package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [EMAIL PROTECTED])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.7
Date: Tue,  5 Feb 2008 11:59:47 +0100
Source: paperkey
Binary: paperkey
Architecture: source i386
Version: 0.8-1
Distribution: unstable
Urgency: low
Maintainer: Peter Palfrader <[EMAIL PROTECTED]>
Changed-By: Peter Palfrader <[EMAIL PROTECTED]>
Description: 
 paperkey   - extract just the secret information out ouf OpenPGP secret keys
Closes: 460422
Changes: 
 paperkey (0.8-1) unstable; urgency=low
 .
   * New upstream version.
     - Fixes unaligned memory access issue that caused the test suite to
       fail (closes: #460422).
Files: 
 9664d1ed87ce749709a85f07b5929ab3 557 utils optional paperkey_0.8-1.dsc
 e80b54ef333dcb7acf2c98e19b016b24 157181 utils optional paperkey_0.8.orig.tar.gz
 b8071562140d29de9d788086632b0351 2422 utils optional paperkey_0.8-1.diff.gz
 d7e2df33d17222fd4d7bb6b70ad95dfb 23256 utils optional paperkey_0.8-1_i386.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQFHqEKWz/ccs6+kS90RAhwkAJkB7FVgZjuiq+3q60boyovy3BSyNQCgls4j
SVAjTrQxVTx6cyccjoxlhfg=
=IKx6
-----END PGP SIGNATURE-----



--- End Message ---

Reply via email to