Bug 25732 - USE=md5sum breaks compilation of ssmtp-2.60.3
|
Bug#:
25732
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: All
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: normal
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: net-mail@gentoo.org
|
Reported By: genone@gentoo.org
|
|
Component: Unspecified
|
|
|
URL:
|
|
Summary: USE=md5sum breaks compilation of ssmtp-2.60.3
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2003-08-01 16:24 0000
|
creating cache ./config.cache
checking for a BSD compatible install... /bin/install -c
checking whether ln -s works... yes
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for limits.h... yes
checking for strings.h... yes
checking for syslog.h... yes
checking for unistd.h... yes
checking for obsolete openlog... no
checking for working const... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking for gethostname in -lnsl... yes
checking for socket in -lsocket... no
checking return type of signal handlers... void
checking for vprintf... yes
checking for gethostname... yes
checking for socket... yes
checking for strdup... yes
checking for strstr... yes
updating cache ./config.cache
creating ./config.status
creating Makefile
rm -f ssmtp *.o core
gcc -Wall -DSTDC_HEADERS=1 -DHAVE_LIMITS_H=1 -DHAVE_STRINGS_H=1
-DHAVE_SYSLOG_H=1 -DHAVE_UNISTD_H=1 -DHAVE_LIBNSL=1 -DRETSIGTYPE=void
-DHAVE_VPRINTF=1 -DHAVE_GETHOSTNAME=1 -DHAVE_SOCKET=1 -DHAVE_STRDUP=1
-DHAVE_STRSTR=1 -DREWRITE_DOMAIN=1 -DHAVE_SSL=1 -DINET6=1 -DMD5AUTH=1
-DSSMTPCONFDIR=\"/etc/ssmtp\" -DCONFIGURATION_FILE=\"/etc/ssmtp/ssmtp.conf\"
-DREVALIASES_FILE=\"/etc/ssmtp/revaliases\" -march=pentium3 -Os -pipe
-ffast-math -fomit-frame-pointer -c -o ssmtp.o ssmtp.c
ssmtp.c: In function `header_parse':
ssmtp.c:720: warning: `q' might be used uninitialized in this function
ssmtp.c: In function `smtp_open':
ssmtp.c:948: warning: `s' might be used uninitialized in this function
ssmtp.c: In function `ssmtp':
ssmtp.c:1305: `authUsername' undeclared (first use in this function)
ssmtp.c:1305: (Each undeclared identifier is reported only once
ssmtp.c:1305: for each function it appears in.)
ssmtp.c:1305: `authPassword' undeclared (first use in this function)
ssmtp.c:1226: warning: unused variable `q'
ssmtp.c:1231: warning: unused variable `i'
ssmtp.c: At top level:
ssmtp.c:1332: parse error before string constant
ssmtp.c:1332: warning: type defaults to `int' in declaration of `smtp_write'
ssmtp.c:1332: conflicting types for `smtp_write'
ssmtp.c:1185: previous declaration of `smtp_write'
ssmtp.c:1332: warning: data definition has no type or storage class
ssmtp.c:1334: parse error before "void"
ssmtp.c:1346: warning: type defaults to `int' in declaration of `rt'
ssmtp.c:1346: conflicting types for `rt'
ssmtp.c:89: previous declaration of `rt'
ssmtp.c:1346: warning: data definition has no type or storage class
ssmtp.c:1348: parse error before "while"
ssmtp.c:1350: parse error before string constant
ssmtp.c:1350: warning: type defaults to `int' in declaration of `smtp_write'
ssmtp.c:1350: warning: data definition has no type or storage class
ssmtp.c:1352: parse error before "void"
ssmtp.c:1358: warning: type defaults to `int' in declaration of `rt'
ssmtp.c:1358: invalid type argument of `->'
ssmtp.c:1358: warning: data definition has no type or storage class
ssmtp.c:1359: parse error before '}' token
ssmtp.c:1362: `i' undeclared here (not in a function)
ssmtp.c:1362: parse error before '!=' token
ssmtp.c:1367: parse error before string constant
ssmtp.c:1367: warning: type defaults to `int' in declaration of `smtp_write'
ssmtp.c:1367: warning: data definition has no type or storage class
ssmtp.c:1369: parse error before "void"
ssmtp.c:1375: warning: type defaults to `int' in declaration of `p'
ssmtp.c:1375: warning: initialization makes integer from pointer without a cast
ssmtp.c:1375: initializer element is not constant
ssmtp.c:1375: warning: data definition has no type or storage class
ssmtp.c:1376: parse error before '}' token
ssmtp.c:1381: parse error before string constant
ssmtp.c:1381: warning: type defaults to `int' in declaration of `smtp_write'
ssmtp.c:1381: warning: data definition has no type or storage class
ssmtp.c:1382: parse error before "void"
ssmtp.c:1390: parse error before string constant
ssmtp.c:1390: warning: type defaults to `int' in declaration of `smtp_write'
ssmtp.c:1390: warning: data definition has no type or storage class
ssmtp.c:1406: warning: type defaults to `int' in declaration of `ht'
ssmtp.c:1406: conflicting types for `ht'
ssmtp.c:75: previous declaration of `ht'
ssmtp.c:1406: warning: data definition has no type or storage class
ssmtp.c:1407: parse error before "while"
ssmtp.c:1409: warning: type defaults to `int' in declaration of `ht'
ssmtp.c:1409: invalid type argument of `->'
ssmtp.c:1409: warning: data definition has no type or storage class
ssmtp.c:1410: parse error before '}' token
ssmtp.c:1415: parse error before string constant
ssmtp.c:1415: warning: type defaults to `int' in declaration of `smtp_write'
ssmtp.c:1415: warning: data definition has no type or storage class
ssmtp.c:1421: parse error before string constant
ssmtp.c:1421: warning: type defaults to `int' in declaration of `smtp_write'
ssmtp.c:1421: warning: data definition has no type or storage class
ssmtp.c:1423: parse error before "void"
ssmtp.c:1427: parse error before string constant
ssmtp.c:1427: warning: type defaults to `int' in declaration of `smtp_write'
ssmtp.c:1427: warning: data definition has no type or storage class
ssmtp.c:1428: parse error before "void"
ssmtp.c:1437: parse error before string constant
ssmtp.c:1437: warning: type defaults to `int' in declaration of `smtp_write'
ssmtp.c:1437: warning: data definition has no type or storage class
ssmtp.c:1438: parse error before "void"
ssmtp.c:1441: parse error before numeric constant
ssmtp.c:1441: warning: type defaults to `int' in declaration of `log_event'
ssmtp.c:1441: conflicting types for `log_event'
ssmtp.c:104: previous declaration of `log_event'
ssmtp.c:1441: warning: type defaults to `int' in declaration of `buf'
ssmtp.c:1441: parse error before ')' token
make: *** [ssmtp.o] Error 1
!!! ERROR: net-mail/ssmtp-2.60.3 failed.
!!! Function src_compile, Line 36, Exitcode 2
!!! (no error message)
It works with USE="-md5sum"
Reproducible: Always
Steps to Reproduce:
1. USE=md5sum emerge ssmtp
Actual Results:
it breaks :(
Expected Results:
it should work :)
Portage 2.0.49_pre16 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r1)
=================================================================
System uname: 2.4.22-pre6-ac1 i686 Intel(R) Celeron(TM) CPU 1133MHz
GENTOO_MIRRORS="http://gentoo.inode.at/
ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/
ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo
ftp://ftp.tu-clausthal.de/pub/linux/gentoo/"
CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config
/usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config
/usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/
/usr/share/config"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
PORTDIR="/usr/portage"
DISTDIR="/usr/portage/distfiles"
PKGDIR="/usr/portage/packages/andy"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR_OVERLAY="/usr/portage/local/"
USE="x86 aalib aavm acl acpi acpi4linux alsa arts avi berkdb bonobo bots crypt
cups curl dga directfb dnd dvd encode esd ethereal evo faad fbcon fbdev gb gd
gdbm ggi gif gnome gnomedb gphoto2 gstreamer gtk gtk2 gtkhtml i8x0 imap imlib
innodb ipv6 java joystick jpeg junit ldap libg libgda libwww lmtp mad maildir
matroska mbox mcal memlimit mmx mng motif mozilla mozinterfaceinfo moznocompose
moznoirc moznomail mozp3p mozsvg mozxmlterm music mysql ncurses odbc offensive
oggvorbis openal opengl pam pda pdflib perl pic plotutils png python qt
quicktime readline samba sasl sdl slang slp snmp spell sse ssl tcltk tcpd tetex
tiff truetype type1 usagi usb v4l wmf wxwindows X Xaw3d xface xinerama xml xml2
xmms xv xvid zlib"
COMPILER="gcc3"
CHOST="i686-pc-linux-gnu"
CFLAGS="-march=pentium3 -Os -pipe -ffast-math -fomit-frame-pointer"
CXXFLAGS="-march=pentium3 -Os -pipe -ffast-math -fomit-frame-pointer"
ACCEPT_KEYWORDS="x86 ~x86"
MAKEOPTS="-j2"
AUTOCLEAN="yes"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
FEATURES="ccache sandbox buildpkg usersandbox userpriv"
Ugg...and dcron depends on ssmtp.
The source code contains a few errors: variable names that haven't
been updated from the old 2.5.x builds and even an incorrect number
of opening parentheses. Furthurmore, the configure script does not
attempt to add the md5auth-specific stuff to the Makefile.
Created an attachment (id=16755) [details]
Typo fix for the ebuild
Well, what caused this bug appears to be just a typo in the ebuild. Brandy's
patch , which looks like it'll fix those annoying compiler errors, is
definately cool though. I'll try to merge them.
Here's the "simple fix" for now...
Carefully tested, it really looks like the "simple fix" is all that is needed.
Unfortunately the "simple fix" is not a fix at all. The ssmtp configure
script contains:
ac_help="$ac_help
--enable-md5suth support for MD5 authentication"
so there's no typo in the ebuild. In fact the configure script will happily
ignore --enable-md5auth and disable md5 authentication.
The purpose of --enable-md5suth is to define the macro MD5AUTH.
With this macro defined the md5-specific code will be built. Since this
code is currently in a non-compilable state, without a patch it will fail.
Since the simple fix did not patch the ssmtp source code, this is furthur
evidence that it didn't have any effect.
I must admit though that my first impression upon seeing this bug was that
there was a typo in the ebuild (who on earth would use md5suth instead of
md5auth to represent md5 authentication?) :)
Okay, thanks for rectifying that.
But yeah, it sure looked like a typo...
Your patch works for me.
Still a problem in 2.60.4
Fortunately the md5auth patch can also be used with ssmtp-2.60.4