bug-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug #30131] GSMimeDocument rawMimeData or some memory code broken


From: David Wetzel
Subject: [bug #30131] GSMimeDocument rawMimeData or some memory code broken
Date: Tue, 15 Jun 2010 10:41:10 +0000
User-agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; de-de) AppleWebKit/533.16 (KHTML, like Gecko) Version/5.0 Safari/533.16

URL:
  <http://savannah.gnu.org/bugs/?30131>

                 Summary: GSMimeDocument rawMimeData or some memory code
broken
                 Project: GNUstep
            Submitted by: dwetzel
            Submitted on: Di 15 Jun 2010 12:41:09 CEST
                Category: Base/Foundation
                Severity: 5 - Blocker
              Item Group: None
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any

    _______________________________________________________

Details:

The strange thing is that the same code does not fail on Mac OS

Maybe its FFI or some other things in -base that do only come up if running
on -base.
I will try on linux later and if that fails too I will try to make a small
test program.

dave

Program received signal SIGSEGV, Segmentation fault.
0x00007f7ffc60eb9d in objc_msg_lookup () from /usr/lib/libobjc.so.2
(gdb) bt
#0  0x00007f7ffc60eb9d in objc_msg_lookup () from /usr/lib/libobjc.so.2
#1  0x00007f7ffd735978 in -[GSMutableArray addObject:] (self=0x7f7ff1aeb8a0,
_cmd=0x7f7ffdba1f30, anObject=0x7f7ff1aea850) at GSArray.m:471
#2  0x00007f7ffd9326db in -[GSMimeDocument rawMimeData:]
(self=0x7f7ff1ae4260, _cmd=0x7f7ffdba2160, isOuter=1 '\001') at GSMime.m:5437
#3  0x00007f7ffd9322fc in -[GSMimeDocument rawMimeData] (self=0x7f7ff1ae4260,
_cmd=0x7f7ffcf5fd30) at GSMime.m:5367
#4  0x00007f7ffce2c89b in -[TCEMail _writeToStream:] (self=0x7f7fec8554c0,
_cmd=0x7f7ffcf625d0, stream=0x7f7ffc30dfa0) at TCEMail.m:1116
#5  0x00007f7ffce36257 in -[TCMailbox addEmail:] (self=0x7f7ff1634090,
_cmd=0x534300, theMail=0x7f7fec8554c0) at TCMailbox.m:1074


(gdb) up
#1  0x00007f7ffd735978 in -[GSMutableArray addObject:] (self=0x7f7ff1aeb8a0,
_cmd=0x7f7ffdba1f30, anObject=0x7f7ff1aea850) at GSArray.m:471
471       _contents_array[_count] = RETAIN(anObject);
Current language:  auto; currently objective-c
(gdb) up
#2  0x00007f7ffd9326db in -[GSMimeDocument rawMimeData:]
(self=0x7f7ff1ae4260, _cmd=0x7f7ffdba2160, isOuter=1 '\001') at GSMime.m:5437
5437              [partData addObject: [part rawMimeData: NO]];
(gdb) po [part rawMimeData: NO]
No symbol "NO" in current context.
(gdb) po [part rawMimeData: 0]

Program received signal SIGSEGV, Segmentation fault.
0x00007f7ffc60eb9d in objc_msg_lookup () from /usr/lib/libobjc.so.2
The program being debugged was signaled while in a function called from GDB.
GDB remains in the frame where the signal was received.
To change this behavior use "set unwindonsignal on"
Evaluation of the expression containing the function (_NSPrintForDebugger)
will be abandoned.
(gdb) 



dave>./configure 
checking build system type... x86_64-unknown-netbsd5.0.1
checking host system type... x86_64-unknown-netbsd5.0.1
checking target system type... x86_64-unknown-netbsd5.0.1
checking for GNUstep configuration file to use at runtime...
/etc/GNUstep/GNUstep.conf
checking whether the GNUstep.conf file path can be set in the environment...
yes
checking if we should import an existing configuration file now... yes
checking for default GNUstep configuration file to use...
/etc/GNUstep/GNUstep.conf
trying to import "/etc/GNUstep/GNUstep.conf"
configure: If this fails, please run configure again with the
--disable-importing-config-file option or specifying an alternative file using
the --with-default-config= option
checking for GNUstep-base installation domain... LOCAL
checking if we are hardcoding any relative paths in gnustep-base... no
configure: We store the following filesystem layout into gnustep-base, to be
used when no config file is found
checking for Makefiles directory... /usr/GNUstep/System/Library/Makefiles
checking for user defaults directory... GNUstep/Defaults
checking for user config file... .GNUstep.conf
checking for System Applications directory...
/usr/GNUstep/System/Applications
checking for System Admin Applications directory...
/usr/GNUstep/System/Applications/Admin
checking for System Web Applications directory...
/usr/GNUstep/System/Library/WebApplications
checking for System Tools directory... /usr/GNUstep/System/Tools
checking for System Admin Tools directory... /usr/GNUstep/System/Tools/Admin
checking for System Library directory... /usr/GNUstep/System/Library
checking for System Libraries directory...
/usr/GNUstep/System/Library/Libraries
checking for System Headers directory... /usr/GNUstep/System/Library/Headers
checking for System Documentation directory...
/usr/GNUstep/System/Library/Documentation
checking for System Info Documentation directory...
/usr/GNUstep/System/Library/Documentation/info
checking for System Man Documentation directory...
/usr/GNUstep/System/Library/Documentation/man
checking for Network Applications directory...
/usr/GNUstep/Local/Applications
checking for Network Admin Applications directory...
/usr/GNUstep/Local/Applications/Admin
checking for Network Web Applications directory...
/usr/GNUstep/Local/Library/WebApplications
checking for Network Tools directory... /usr/GNUstep/Local/Tools
checking for Network Admin Tools directory... /usr/GNUstep/Local/Tools/Admin
checking for Network Library directory... /usr/GNUstep/Local/Library
checking for Network Libraries directory...
/usr/GNUstep/Local/Library/Libraries
checking for Network Headers directory... /usr/GNUstep/Local/Library/Headers
checking for Network Documentation directory...
/usr/GNUstep/Local/Library/Documentation
checking for Network Info Documentation directory...
/usr/GNUstep/Local/Library/Documentation/info
checking for Network Man Documentation directory...
/usr/GNUstep/Local/Library/Documentation/man
checking for Local Applications directory... /usr/GNUstep/Local/Applications
checking for Local Admin Applications directory...
/usr/GNUstep/Local/Applications/Admin
checking for Local Web Applications directory...
/usr/GNUstep/Local/Library/WebApplications
checking for Local Tools directory... /usr/GNUstep/Local/Tools
checking for Local Admin Tools directory... /usr/GNUstep/Local/Tools/Admin
checking for Local Library directory... /usr/GNUstep/Local/Library
checking for Local Libraries directory...
/usr/GNUstep/Local/Library/Libraries
checking for Local Headers directory... /usr/GNUstep/Local/Library/Headers
checking for Local Documentation directory...
/usr/GNUstep/Local/Library/Documentation
checking for Local Info Documentation directory...
/usr/GNUstep/Local/Library/Documentation/info
checking for Local Man Documentation directory...
/usr/GNUstep/Local/Library/Documentation/man
checking for User Applications directory... GNUstep/Applications
checking for User Admin Applications directory... GNUstep/Applications/Admin
checking for User Web Applications directory...
GNUstep/Library/WebApplications
checking for User Tools directory... GNUstep/Tools
checking for User Admin Tools directory... GNUstep/Tools/Admin
checking for User Library directory... GNUstep/Library
checking for User Libraries directory... GNUstep/Library/Libraries
checking for User Headers directory... GNUstep/Library/Headers
checking for User Documentation directory... GNUstep/Library/Documentation
checking for User Info Documentation directory...
GNUstep/Library/Documentation/info
checking for User Man Documentation directory...
GNUstep/Library/Documentation/man
checking for System User directory... /home
checking for Network User directory... /home
checking for Local User directory... /home
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking for whoami... /usr/bin/whoami
checking the Objective-C runtime... GNU
checking for custom shared objc library... NONE
checking objc/runtime.h usability... no
checking objc/runtime.h presence... no
checking for objc/runtime.h... no
checking objc/objc.h usability... yes
checking objc/objc.h presence... yes
checking for objc/objc.h... yes
configure: for gdomap network details
checking for variable length socket addresses... found
checking for gcc visibility attribute support... found
checking whether SO_REUSEADDR is broken... no
checking for objc threading flags...   -lpthread
checking whether byte ordering is bigendian... no
checking size of void*... 8
checking size of short... 2
checking size of int... 4
checking size of long... 8
checking size of long long... 8
checking size of float... 4
checking size of double... 8
checking loading of constructor functions... yes
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for dynamic linker type... simple
checking for dladdr in -ldl... no
checking whether objc really works... yes
checking if the compiler supports -fconstant-string-class... yes
checking if +load method is executed before main... yes
checking for objc_thread_add... yes
checking for objc_sync_enter... no
checking for objc_setProperty... no
checking for objc_set_unexpected() in runtime... no
checking for _objc_unexpected_exception in runtime... no
checking for objc_sync_enter... (cached) no
checking for size_t... yes
checking for inline... inline
checking for ANSI C header files... (cached) yes
checking for string.h... (cached) yes
checking for memory.h... (cached) yes
checking alloca.h usability... no
checking alloca.h presence... no
checking for alloca.h... no
checking float.h usability... yes
checking float.h presence... yes
checking for float.h... yes
checking for sys/stat.h... (cached) yes
checking sys/vfs.h usability... no
checking sys/vfs.h presence... no
checking for sys/vfs.h... no
checking sys/statfs.h usability... no
checking sys/statfs.h presence... no
checking for sys/statfs.h... no
checking sys/statvfs.h usability... yes
checking sys/statvfs.h presence... yes
checking for sys/statvfs.h... yes
checking pwd.h usability... yes
checking pwd.h presence... yes
checking for pwd.h... yes
checking grp.h usability... yes
checking grp.h presence... yes
checking for grp.h... yes
checking sys/cdefs.h usability... yes
checking sys/cdefs.h presence... yes
checking for sys/cdefs.h... yes
checking sys/syslimits.h usability... yes
checking sys/syslimits.h presence... yes
checking for sys/syslimits.h... yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking for sys/syslimits.h... (cached) yes
checking for sys/param.h... (cached) yes
checking for sys/mount.h... yes
checking for sys/types.h... (cached) yes
checking windows.h usability... no
checking windows.h presence... no
checking for windows.h... no
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking langinfo.h usability... yes
checking langinfo.h presence... yes
checking for langinfo.h... yes
checking for main in -lm... yes
checking for statvfs... yes
checking for link... yes
checking for symlink... yes
checking for readlink... yes
checking for geteuid... yes
checking for getlogin... yes
checking for getpwnam... yes
checking for getpwnam_r... yes
checking for getpwuid... yes
checking for getpwuid_r... yes
checking for getgrgid... yes
checking for getgrgid_r... yes
checking for getgrnam... yes
checking for getgrnam_r... yes
checking for rint... yes
checking for getopt... yes
checking time.h usability... yes
checking time.h presence... yes
checking for time.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking tzfile.h usability... yes
checking tzfile.h presence... yes
checking for tzfile.h... yes
checking sys/rusage.h usability... no
checking sys/rusage.h presence... no
checking for sys/rusage.h... no
checking ucbinclude/sys/resource.h usability... no
checking ucbinclude/sys/resource.h presence... no
checking for ucbinclude/sys/resource.h... no
checking for time... yes
checking for ctime... yes
checking for tzset... yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking netinet/in.h usability... yes
checking netinet/in.h presence... yes
checking for netinet/in.h... yes
checking for socklen_t... no
checking execinfo.h usability... no
checking execinfo.h presence... no
checking for execinfo.h... no
checking for backtrace... no
checking syslog.h usability... yes
checking syslog.h presence... yes
checking for syslog.h... yes
checking for syslog... yes
checking poll.h usability... yes
checking poll.h presence... yes
checking for poll.h... yes
checking for poll... yes
checking for poll emulation... no
checking if poll supports devices... yes
checking pthread.h usability... yes
checking pthread.h presence... yes
checking for pthread.h... yes
checking size of pthread_mutex_t... 48
checking size of pthread_cond_t... 40
checking for pthread_join in -lpthread... yes
checking for sched_yield in -lrt... yes
checking for vsprintf... yes
checking for vasprintf... yes
checking for getcwd... yes
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking getopt.h usability... yes
checking getopt.h presence... yes
checking for getopt.h... yes
checking for valloc... yes
checking for times... yes
checking for mkstemp... yes
checking for shmctl... yes
checking for mmap... yes
checking for mprotect... yes
checking sys/mman.h usability... yes
checking sys/mman.h presence... yes
checking for sys/mman.h... yes
checking for killpg... yes
checking for setpgrp... yes
checking for setpgid... yes
checking for setsid... yes
checking whether setpgrp takes no argument... no
checking libc.h usability... no
checking libc.h presence... no
checking for libc.h... no
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking malloc.h usability... yes
checking malloc.h presence... yes
checking for malloc.h... yes
checking for memory.h... (cached) yes
checking for string.h... (cached) yes
checking signal.h usability... yes
checking signal.h presence... yes
checking for signal.h... yes
checking for stdlib.h... (cached) yes
checking sys/signal.h usability... yes
checking sys/signal.h presence... yes
checking for sys/signal.h... yes
checking sys/wait.h usability... yes
checking sys/wait.h presence... yes
checking for sys/wait.h... yes
checking sys/file.h usability... yes
checking sys/file.h presence... yes
checking for sys/file.h... yes
checking sys/fcntl.h usability... yes
checking sys/fcntl.h presence... yes
checking for sys/fcntl.h... yes
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking sys/stropts.h usability... no
checking sys/stropts.h presence... no
checking for sys/stropts.h... no
checking for unistd.h... (cached) yes
checking utime.h usability... yes
checking utime.h presence... yes
checking for utime.h... yes
checking for stdint.h... (cached) yes
checking for inttypes.h... (cached) yes
checking sys/inttypes.h usability... yes
checking sys/inttypes.h presence... yes
checking for sys/inttypes.h... yes
checking for inet_ntop in -lnsl... no
checking for gethostbyaddr_r... no
checking for inet_aton... yes
checking for inet_pton... yes
checking for inet_ntop... yes
checking for sigaction... yes
checking zlib.h usability... yes
checking zlib.h presence... yes
checking for zlib.h... yes
checking for gzseek in -lz... yes
checking for nanosleep... yes
checking for usleep... yes
checking sys/resource.h usability... yes
checking sys/resource.h presence... yes
checking for sys/resource.h... yes
checking for setrlimit... yes
checking for strerror_r... yes
checking for strerror... yes
checking for sigsetjmp... no
checking for uintmax_t... yes
checking wchar.h usability... yes
checking wchar.h presence... yes
checking for wchar.h... yes
checking short/int needs to be word aligned... 
no
checking for register_printf_specifier... no
checking for register_printf_function... no
checking for realpath... yes
checking program_invocation_name in C Library... no
checking sys/utsname.h usability... yes
checking sys/utsname.h presence... yes
checking for sys/utsname.h... yes
checking sys/sysctl.h usability... yes
checking sys/sysctl.h presence... yes
checking for sys/sysctl.h... yes
checking for sysctlbyname... yes
checking procfs.h usability... no
checking procfs.h presence... no
checking for procfs.h... no
checking kernel support for /proc filesystem... no
checking support for /proc psinfo struct... no
checking link to exe of process in /proc... no
checking /proc/8164/cmdline terminated by nul... no
checking for kvm_getenvv in -lkvm... yes
checking if we can access kernel memory... yes
checking use of pass-through arguments... no
checking use of fake-main definition... yes
checking ffi.h usability... yes
checking ffi.h presence... yes
checking for ffi.h... yes
checking callback.h usability... no
checking callback.h presence... no
checking for callback.h... no
checking for forwarding callback in runtime... yes
checking FFI library usage... libffi
checking iconv support... yes, -liconv
checking for xml2-config... /usr/pkg/bin/xml2-config
checking for libxml - version >= 2.3.0... yes
checking libxml/SAX2.h usability... yes
checking libxml/SAX2.h presence... yes
checking for libxml/SAX2.h... yes
checking for xsltApplyStylesheet in -lxslt... yes
checking libxslt/xslt.h usability... yes
checking libxslt/xslt.h presence... yes
checking for libxslt/xslt.h... yes
checking for libgnutls-config... no
checking for libgnutls - version >= 1.4.0... no
*** The libgnutls-config script installed by libgnutls could not be found
*** If libtgnuls was installed in PREFIX, make sure PREFIX/bin is in
*** your path.

You may not want to build base without libgnutls.
Doing so will disable SSL support in the NSStream class.
If you really want to build -base without TLS support,
add --disable-tls to the configure arguments.
configure: WARNING: Missing support for TLS functionality.
checking dns_sd.h usability... no
checking dns_sd.h presence... no
checking for dns_sd.h... no
checking gmp.h usability... yes
checking gmp.h presence... yes
checking for gmp.h... yes
checking for mpf_abs in -lgmp... no
checking for __gmpf_abs in -lgmp... yes
checking for nl_langinfo and CODESET... yes
checking whether the compiler supports -Wdeclaration-after-statement... yes
checking if we should install gdomap as setuid... no
checking for the version of gnustep-base we are compiling... 1.21.0
configure: creating ./config.status
config.status: creating config.mak
config.status: creating base.make
config.status: creating Headers/Additions/GNUstepBase/GSConfig.h
config.status: creating Headers/Additions/GNUstepBase/preface.h
config.status: creating Headers/Additions/GNUstepBase/config.h
=== configuring in SSL (/Users/dave/projects/gnustep/base/trunk/SSL)
configure: running /bin/ksh ./configure --disable-option-checking
'--prefix=/usr/local'  --cache-file=/dev/null --srcdir=.
checking build system type... x86_64-unknown-netbsd5.0.1
checking host system type... x86_64-unknown-netbsd5.0.1
checking target system type... x86_64-unknown-netbsd5.0.1
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking how to run the C preprocessor... gcc -E
checking for whoami... /usr/bin/whoami
checking for egrep... grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking libc.h usability... no
checking libc.h presence... no
checking for libc.h... no
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking malloc.h usability... yes
checking malloc.h presence... yes
checking for malloc.h... yes
checking for memory.h... (cached) yes
checking for string.h... (cached) yes
checking signal.h usability... yes
checking signal.h presence... yes
checking for signal.h... yes
checking sys/signal.h usability... yes
checking sys/signal.h presence... yes
checking for sys/signal.h... yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking sys/wait.h usability... yes
checking sys/wait.h presence... yes
checking for sys/wait.h... yes
checking sys/file.h usability... yes
checking sys/file.h presence... yes
checking for sys/file.h... yes
checking sys/fcntl.h usability... yes
checking sys/fcntl.h presence... yes
checking for sys/fcntl.h... yes
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking sys/stropts.h usability... no
checking sys/stropts.h presence... no
checking for sys/stropts.h... no
checking for unistd.h... (cached) yes
checking utime.h usability... yes
checking utime.h presence... yes
checking for utime.h... yes
checking for stdint.h... (cached) yes
checking sys/inttypes.h usability... yes
checking sys/inttypes.h presence... yes
checking for sys/inttypes.h... yes
checking openssl/ssl.h usability... yes
checking openssl/ssl.h presence... yes
checking for openssl/ssl.h... yes
checking for CRYPTO_malloc in -lcrypto... yes
checking for main in -lsocket... no
checking for ssl2_clear in -lssl... yes
checking for des_setkey in -lcipher... no
checking for CRYPTO_THREADID_set_callback... no
configure: creating ./config.status
config.status: creating config.mak
config.status: creating config.h
config.status: config.h is unchanged





    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?30131>

_______________________________________________
  Nachricht geschickt von/durch Savannah
  http://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]