Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 116084 - metamail-2.7.45.3 - splitmail segfaults due to missing extern declaration for getmyname()
Summary: metamail-2.7.45.3 - splitmail segfaults due to missing extern declaration for...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Net-Mail Packages
URL: http://bugs.debian.org/cgi-bin/bugrep...
Whiteboard:
Keywords: Bug
Depends on:
Blocks:
 
Reported: 2005-12-19 13:05 UTC by Dan Johansson
Modified: 2010-04-04 03:23 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
This is a file that fails (toon.gif,20.89 KB, image/gif)
2006-03-14 11:39 UTC, Dan Johansson
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Dan Johansson 2005-12-19 13:05:45 UTC
When trying to send a binary file with "metasend -b -e base64 -m image/gif -f pic.gif -s 'The Pic' -t dan.johansson@dmj.nu -z" I am getting the following error: /usr/bin/metasend: line 557:  7462 Segmentation fault      splitmail -s "$splitsize" -d $fname

The enviroment variable SPLITSIZE is set to 999999 and the filesize is 15493 bytes.

Here's the output from "emerge --info"
Portage 2.0.51.22-r3 (default-linux/amd64/2005.1, gcc-3.4.4, glibc-2.3.5-r2, 2.6.14-gentoo-r2 x86_64)
=================================================================
System uname: 2.6.14-gentoo-r2 x86_64 AMD Athlon(tm) 64 Processor 3800+
Gentoo Base System version 1.6.13
dev-lang/python:     2.3.5-r2, 2.4.2
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.5.20
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=k8 -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/fax /usr/share/config /var/bind /var/qmail/control /var/spool/fax/etc"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=k8 -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://gentoo.osuosl.org/"
MAKEOPTS="-j2"
PKGDIR="/var/pkgdir"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://prince.dmj.nu/gentoo-portage"
USE="amd64 apache2 avi bash-completion berkdb bitmap-fonts bzip2 crypt cups curl eds emboss encode expat fam fax foomaticdb fortran gdbm gif gmp gstreamer hardened idn imagemagick imlib isdnlog jpeg ldap lzw lzw-tiff mp3 mpeg mysql ncurses nls no-htdocs opengl pdflib perl png ppds python quicktime readline samba scanner sdl ssl tcpd tiff truetype-fonts type1-fonts udev usb userlocales xml2 xpm xv zlib userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS

The installed version of metamail is:
*  net-mail/metamail
      Latest version available: 2.7.45.3
      Latest version installed: 2.7.45.3
      Size of downloaded files: 586 kB
      Homepage:    ftp://thumper.bellcore.com/pub/nsb/
      Description: Metamail (with Debian patches) - Generic MIME package
      License:     GPL-2

Regards,
--Dan
Comment 1 Tuan Van (RETIRED) gentoo-dev 2006-03-14 11:07:39 UTC
(In reply to comment #0)
> When trying to send a binary file with "metasend -b -e base64 -m image/gif -f
> pic.gif -s 'The Pic' -t dan.johansson@dmj.nu -z" I am getting the following
> error: /usr/bin/metasend: line 557:  7462 Segmentation fault      splitmail -s
> "$splitsize" -d $fname
> 
> The enviroment variable SPLITSIZE is set to 999999 and the filesize is 15493
> bytes.
> 

please provide a sample gif image. I cn't repoduce it on my x86 box.
CCing amd64.
Comment 2 Dan Johansson 2006-03-14 11:39:41 UTC
Created attachment 82129 [details]
This is a file that fails

This is a file that makes metamail sigsegv on my AMD64 system (on a x86 it works OK).
Comment 3 Tuan Van (RETIRED) gentoo-dev 2006-03-14 13:46:09 UTC
(In reply to comment #2)

> This is a file that makes metamail sigsegv on my AMD64 system (on a x86 it
> works OK).
> 

OK, let switch role then ;)
Comment 4 Simon Stelling (RETIRED) gentoo-dev 2006-06-23 04:42:22 UTC
i'm afraid i can't reproduce it here. you'll have to provide a gdb backtrace. if you don't know how to do that, please refer to http://www.gentoo.org/doc/en/bugzilla-howto.xml

thanks in advance
Comment 5 Dan Johansson 2006-06-23 05:23:30 UTC
Here's the output of my GDB session for splitmail (the part that fails).
Even it's compiled with -ggdb3 and FEATURES="nostrip" there is no dubug info.

$ gdb --args splitmail -s 100000 -d /tmp/metamRyC4gx
GNU gdb 6.4
Copyright 2005 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu"...Using host libthread_db library "/lib/tls/libthread_db.so.1".

(gdb) run
Starting program: /usr/bin/splitmail -s 100000 -d /tmp/metamRyC4gx

Program received signal SIGSEGV, Segmentation fault.
0x00002b86d5df9310 in ?? ()
(gdb) bt
#0  0x00002b86d5df9310 in ?? ()
#1  0x00002b86d5dcd3c8 in ?? ()
#2  0x00000000000001e0 in ?? ()
#3  0x00007fffffbd2a20 in ?? ()
#4  0x0000000000000008 in ?? ()
#5  0x0000000400000004 in ?? ()
#6  0x00000000000002a8 in ?? ()
#7  0x00000000000002a8 in ?? ()
#8  0x00000000000002a8 in ?? ()
#9  0x0000000000000020 in ?? ()
#10 0x0000000000000020 in ?? ()
#11 0x0000000000000004 in ?? ()
#12 0x0000000400000007 in ?? ()
#13 0x0000000000120eb8 in ?? ()
#14 0x0000000000220eb8 in ?? ()
#15 0x0000000000220eb8 in ?? ()
#16 0x0000000000000010 in ?? ()
#17 0x0000000000000050 in ?? ()
#18 0x0000000000000008 in ?? ()
#19 0x00002b86d5a1685f in ?? ()
#20 0x0000000000107d7c in ?? ()
#21 0x00002b86d5d89000 in ?? ()
#22 0x00002b86d5c85b07 in ?? ()
#23 0x73002b8600000000 in ?? ()
#24 0x0000000000004e20 in ?? ()
#25 0x0000000000000004 in ?? ()
#26 0x000000066474e551 in ?? ()
#27 0x0000000000000000 in ?? ()
(gdb) quit

$ file /usr/bin/splitmail
/usr/bin/splitmail: ELF 64-bit LSB shared object, AMD x86-64, version 1 (SYSV), not stripped

--Dan
Comment 6 Simon Stelling (RETIRED) gentoo-dev 2006-06-23 05:29:58 UTC
hum, that's not of much use :( i have no idea why it doesn't give you a backtrace either, though :/
Comment 7 Dan Johansson 2006-06-23 06:01:45 UTC
I've just found out this this error only occurs when I use the hardened gcc-version.

[1] x86_64-pc-linux-gnu-3.4.6                     KO
[2] x86_64-pc-linux-gnu-3.4.6-hardenednopie       OK
[3] x86_64-pc-linux-gnu-3.4.6-hardenednopiessp    OK
[4] x86_64-pc-linux-gnu-3.4.6-hardenednossp       KO
[5] x86_64-pc-linux-gnu-3.4.6-vanilla             OK

--Dan
Comment 8 Simon Stelling (RETIRED) gentoo-dev 2006-06-23 07:10:21 UTC
reopening
Comment 9 Simon Stelling (RETIRED) gentoo-dev 2006-06-23 07:10:44 UTC
hardened, have fun ;)
Comment 10 Christian Heim (RETIRED) gentoo-dev 2007-04-29 14:03:06 UTC
(In reply to comment #0)
> When trying to send a binary file with "metasend -b -e base64 -m image/gif -f
> pic.gif -s 'The Pic' -t dan.johansson@dmj.nu -z" I am getting the following
> error: /usr/bin/metasend: line 557:  7462 Segmentation fault      splitmail -s
> "$splitsize" -d $fname

Seems to be fixed with metamail-2.7.53.3. Waiting for net-mail for permission to bump it.
Comment 11 Andrej Kacian (RETIRED) gentoo-dev 2007-05-01 22:20:05 UTC
(In reply to comment #10)
> Seems to be fixed with metamail-2.7.53.3. Waiting for net-mail for permission
> to bump it.

Feel free to, thanks.
Comment 12 Christian Heim (RETIRED) gentoo-dev 2007-05-02 18:02:41 UTC
(In reply to comment #0)
> When trying to send a binary file with "metasend -b -e base64 -m image/gif -f
> pic.gif -s 'The Pic' -t dan.johansson@dmj.nu -z" I am getting the following
> error: /usr/bin/metasend: line 557:  7462 Segmentation fault      splitmail -s
> "$splitsize" -d $fname
> 
> The enviroment variable SPLITSIZE is set to 999999 and the filesize is 15493
> bytes.

I've added metamail-2.7.53.3 to the tree, at least that fixed the segfaults in my testing environment.
Comment 13 craven 2007-11-13 20:17:06 UTC
I experience the same problem just sending plain text mails on my x86_64. Also the following bug report seems to describe quite exactly my problems:

http://www.mail-archive.com/debian-qa-packages@lists.debian.org/msg19802.html

because of this I think, net-mail/metamail-2.7.45.3 should NOT be marked stable on amd64! You should probably downgrade it to testing...
Comment 14 Joseph 2008-10-15 01:51:00 UTC
I've just experience the same problem:

mailto joseph
Subject: tesst
test
EOT
mailto: Error writing to splitmail: No such file or directory
Wrote draft to ~/dead.letter

Upgrading to metamail-2.7.53.3 fixed the problem on AMD64
Why packages that are buggy marked as stable in portage? It just creates problems for ordinary users.

metamail-2.7.53.3 should be marked stable, at least on AMD64
Comment 15 kfm 2008-10-15 12:22:02 UTC
Re-opening as this has not actually been resolved. Either:

a) The patch referred to by Debian bug #410466 should be applied to a 2.7.45.3
   revision and keyworded stable (attention net-mail herd!)

b) 2.7.45.3 should be keyworded stable for at least the 64-bit architectures
   (for which permission was apparently granted some time ago in Comment 11)

My preference is for option (a) in the first instance. Please would someone take a lead on resolving the matter.

The patch is straightforward - see the URL field for a link to the Debian bug which contains an explanation - and I've personally verified that it fixes the bug:

--- splitmail.c.orig    2007-03-27 14:26:07.000000000 +0200
+++ splitmail.c 2007-03-27 14:42:16.000000000 +0200
@@ -25,6 +25,7 @@
 #define MINCHUNKSIZE 20000 /* Better be enough to hold the headers, or
we die! */

 extern char *getenv();
+extern char *getmyname();
 #define NORMALDELIVERYCMD "/usr/sbin/sendmail -t -oi"
 #define VERBOSEDELIVERYCMD "/usr/sbin/sendmail -t -v -oi"
Comment 16 kfm 2008-10-15 12:23:27 UTC
> b) 2.7.45.3 should be keyworded stable for at least the 64-bit architectures
>    (for which permission was apparently granted some time ago in Comment 11)

Oops, I obviously meant to say 2.7.53.3 there.
Comment 17 kfm 2010-04-04 03:23:13 UTC
As 2.7.53.3 is stable on all keyworded arches now, I'm closing this.