reopen 736498
thanks

On Sun, Jan 26, 2014 at 09:37:36PM +0100, Markus Koschany wrote:
> Hi Jose!
> 
> (I'm not subscribed to this bug report, please CC me or use
> 736498-submit...@bugs.debian.org)
> 
> > Before
> > split and conversion to format version 3 the source didn't build the
> > simple test suite (dh_auto_test) as it does now. Moreover, it never
> > built successfully on s390x and hurd-i386[0].
> 
> The reason why Osmo can't migrate to testing is that libgringotts2 built
> successfully in src:gringotts for all architectures before the package
> split. Now the system assumes that the new package introduces a
> regression and blocks all reverse dependencies from reentering testing.
> 
> In my opinion the best way forward is to contact the developers of
> libgringotts and fix the test suite upstream.
> 
> You can also choose to revert your change to enable the test suite or
> you can choose to disable it only on s390x.
> 
> Something like that in debian/rules:
> 
> DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
> 
> override_dh_auto_test:
> ifneq (s390x,$(DEB_HOST_ARCH))
>       dh_auto_test
> endif
> 
> You might possibly want to contact your sponsor and ask him, if he can
> test your patch/fixes on a s390x porter box.
> 
> I would probably disable the test suite on s390x, if that's the only
> reason for the current FTBFS, upload a new and fixed revision and close
> this bug report. Then I would open a new bug report with a lower
> severity and look into the issue again and try to fix it permanently.
> 
> As far as we know there were never complains about libgringotts on s390x
> thus I think just disabling the suite on s390x should suffice for the
> moment.

The problem reported by the testsuite is real, and ignoring it means
that bzip2 compression support is broken on s390x (and other 64-bit 
big-endian architectures).

The problem is that some pointers are casted from long to unsigned int,
while they do not have the same size. The patch below fixes that using
a temporary variable as the pointer. There might be better solutions
like changing the variable type, but I leave that for the upstream.

--- libgringotts-1.2.1.orig/src/libgrg_crypt.c
+++ libgringotts-1.2.1/src/libgrg_crypt.c
@@ -347,10 +347,14 @@ decrypt_mem (const GRG_CTX gctx, const G
                }
                
                if (gctx->comp_algo)    //bz2
+               {
+                       unsigned int uint_oDim = oDim;
                        err = BZ2_bzBuffToBuffDecompress ((unsigned char *)
-                                                         tmpData, (unsigned 
int *) &oDim,
+                                                         tmpData, &uint_oDim,
                                                          (unsigned char *) 
curdata, curlen,
                                                          USE_BZ2_SMALL_MEM, 0);
+                       oDim = uint_oDim;
+               }
                else            //zlib
                        err = uncompress (tmpData, &oDim, curdata, curlen);
 
@@ -411,13 +415,16 @@ grg_encrypt_mem (const GRG_CTX gctx, con
 
                //compress the data
                if (gctx->comp_algo)    //bz2
+               {
+                       unsigned int uint_compDim = &compDim;
                        err = BZ2_bzBuffToBuffCompress (compData,
-                                                       (unsigned int *)
-                                                       &compDim,
+                                                       &uint_compDim,
                                                        (unsigned char *)
                                                        origData, uncDim,
                                                        gctx->comp_lvl * 3, 0,
                                                        0);
+                       compDim = uint_compDim;
+               }
                else
                        err = compress2 (compData, &compDim, origData, uncDim,
                                         gctx->comp_lvl * 3);

-- 
Aurelien Jarno                          GPG: 1024D/F1BCDB73
aurel...@aurel32.net                 http://www.aurel32.net


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to