Package: emboss
Version: 6.6.0-1
Usertags: goto-cc

During a rebuild of all packages in a clean sid chroot (and cowbuilder+pbuilder)
the build failed with the following error. Please note that we use our research
compiler tool-chain (using tools from the cbmc package), which permits extended
reporting on type inconsistencies at link time.

[...]
libtool: link: gcc -shared  -fPIC -DPIC  .libs/pdfutils.o .libs/plargs.o 
.libs/plbox.o .libs/plcont.o .libs/plcore.o .libs/plctrl.o .libs/plcvt.o 
.libs/pldtik.o .libs/plfill.o .libs/plhist.o .libs/plline.o .libs/plmap.o 
.libs/plot3d.o .libs/plpage.o .libs/plsdef.o .libs/plshade.o .libs/plsym.o 
.libs/pltick.o .libs/plvpor.o .libs/plwind.o .libs/plstripc.o .libs/hpgl.o 
.libs/impress.o .libs/ljiip.o .libs/ljii.o .libs/null.o .libs/data.o 
.libs/pbm.o .libs/plbuf.o .libs/plmeta.o .libs/ps.o .libs/tek.o .libs/xfig.o 
.libs/xwin.o .libs/gd.o .libs/pdf.o .libs/svg.o .libs/plimage.o .libs/plstdio.o 
.libs/plvect.o   /usr/lib/x86_64-linux-gnu/libexpat.so 
-L/usr/lib/x86_64-linux-gnu -lmysqlclient -lpthread -ldl -lpq -lhpdf -lgd -lpng 
-lz -lm  -O2 -Wl,-z -Wl,relro   -Wl,-soname -Wl,libeplplot.so.3 -o 
.libs/libeplplot.so.3.2.7

error: conflicting types for variable "hershey_to_unicode_lookup_table"
old definition in module plcore file plplotP.h line 385
struct Hershey_to_Unicode_table []
new definition in module plsym file plhershey-unicode.h line 50
const Hershey_to_Unicode_table [980l]

reason for conflict at padding in types listed below (array/array):

char [3l]
char [7l]
make[4]: *** [libeplplot.la] Error 64
make[4]: Leaving directory 
`/srv/jenkins-slave/workspace/sid-goto-cc-emboss/emboss-6.6.0/plplot'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory 
`/srv/jenkins-slave/workspace/sid-goto-cc-emboss/emboss-6.6.0/plplot'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory 
`/srv/jenkins-slave/workspace/sid-goto-cc-emboss/emboss-6.6.0'
dh_auto_build: make -j1 AJAX_FIXED_ROOT=\"/usr/share/EMBOSS\" 
CPPFLAGS=-D_FORTIFY_SOURCE=2 CFLAGS=-g -O2 -fstack-protector 
--param=ssp-buffer-size=4 -Wformat -Werror=format-security LDFLAGS=-lexpat 
-L/usr/lib/x86_64-linux-gnu -lmysqlclient -lpthread -lz -lm -ldl -lpq 
-Wl,-z,relro returned exit code 2
make[1]: *** [override_dh_auto_build] Error 2
make[1]: Leaving directory 
`/srv/jenkins-slave/workspace/sid-goto-cc-emboss/emboss-6.6.0'
make: *** [build] Error 2

Review the full (conflicting) declarations here:

http://sources.debian.net/src/emboss/6.6.0-1/plplot/plplotP.h?hl=381#L377
http://sources.debian.net/src/emboss/6.6.0-1/plplot/plhershey-unicode.h?hl=46#L42

As plcore.c (via plcore.h) solely includes plplotP.h, all accesses in this code
will be misaligned with arbitrary consequences.

Best,
Michael

PS.: As this bug appears to be entirely within an embedded code copy of plplot,
maybe it's about time to get rid of that.

Attachment: pgpVn45vj9kqV.pgp
Description: PGP signature

Reply via email to