#539291 i386 libalut0 segfaults in alutInit()

Package:
libalut0
Source:
freealut
Description:
OpenAL Utility Toolkit
Submitter:
Ben Klein
Date:
2010-01-25 15:03:03 UTC
Severity:
normal
#539291#5
Date:
2009-07-30 12:12:03 UTC
From:
To:
The i386 version of libalut0 (installed in both i386 Sid and via
ia32-apt-get in amd64 Sid) segfaults in alutInit(). This happens in
both valid cases:
- alutInit(&argc,argv), where alut is expected to remove command line
arguments it recognises and
- alutInit(NULL,NULL), where alut expects no command line arguments.
The amd64 version of the same package (libalut0=1.1.0-2) does not segfault.

sid/i386 system:
ii  libalut0       1.1.0-2
ii  libopenal1     1:1.8.466-2

sid/amd64 + ia32-apt-get system:
ii  ia32-libalut0  1.1.0-2~22
ii  ia32-libopenal 1:1.8.466-2~22

Attached is a minimal sample C program that demonstrates the problem.
Compile with flags -m32 -lalut.

#539291#10
Date:
2009-08-12 16:13:39 UTC
From:
To:
Ben,

I am unable to reproduce this with your example.  Could you possible
provide some more details?  Maybe a gdb backtrace or something?

Thanks,

Barry deFreese
Debian Games Team

#539291#13
Date:
2009-08-12 16:13:39 UTC
From:
To:
Ben,

I am unable to reproduce this with your example.  Could you possible
provide some more details?  Maybe a gdb backtrace or something?

Thanks,

Barry deFreese
Debian Games Team

#539291#18
Date:
2009-09-26 13:43:59 UTC
From:
To:
severity 539291 normal

thank you

Hi,

I'm dropping the severity of this bug as I cannot reproduce it and we
haven't heard back from the submitter.

Thank you,

Barry deFreese
Debian Games Team

#539291#23
Date:
2009-09-26 13:43:59 UTC
From:
To:
severity 539291 normal

thank you

Hi,

I'm dropping the severity of this bug as I cannot reproduce it and we
haven't heard back from the submitter.

Thank you,

Barry deFreese
Debian Games Team

#539291#28
Date:
2010-01-25 14:39:11 UTC
From:
To:
I wonder a bit about this list (from the crash report):

Loaded modules:
0x08048000 - 0x08799fff  openlierox  ???  (main)  /usr/games/openlierox
0x97772000 - 0x9b772fff  pulse-shm-1188897389  ???
/dev/shm/pulse-shm-1188897389
0xa0d61000 - 0xa0de0fff  drm mm object (deleted)  ???  /drm mm object
(deleted)
0xa1f5c000 - 0xa1f5ffff  libattr.so.1.1.0  ???  /lib/libattr.so.1.1.0
0xa1f62000 - 0xa1f64fff  libuuid.so.1.2  ???  /lib/libuuid.so.1.2
0xa1f67000 - 0xa1f6bfff  libgdbm.so.3.0.0  ???  /usr/lib/libgdbm.so.3.0.0
0xa1f6e000 - 0xa1f82fff  libICE.so.6.3.0  ???  /usr/lib/libICE.so.6.3.0
0xa1f86000 - 0xa1f8cfff  libSM.so.6.0.0  ???  /usr/lib/libSM.so.6.0.0
0xa1f8f000 - 0xa1febfff  libpulse.so.0.7.1  ???  /usr/lib/libpulse.so.0.7.1
0xa208c000 - 0xa2093fff  libdrm_intel.so.1.0.0  ???
/usr/lib/libdrm_intel.so.1.0.0
0xa2096000 - 0xa22dbfff  i915_dri.so  ???  /usr/lib/dri/i915_dri.so
0xa22ff000 - 0xa2306fff  libdrm.so.2.4.0  ???  /usr/lib/libdrm.so.2.4.0
0xa2309000 - 0xa230cfff  libXxf86vm.so.1.0.0  ???
/usr/lib/libXxf86vm.so.1.0.0
0xa230f000 - 0xa2366fff  libGL.so.1.2  ???  /usr/lib/libGL.so.1.2
0xa2372000 - 0xa237ffff  libXext.so.6.4.0  ???  /usr/lib/libXext.so.6.4.0
0xa2b83000 - 0xa2b8afff  libXrender.so.1.3.0  ???
/usr/lib/libXrender.so.1.3.0
0xa2b8d000 - 0xa2b94fff  libXcursor.so.1.0.2  ???
/usr/lib/libXcursor.so.1.0.2
0xa2b98000 - 0xa2b9afff  libcap.so.2.11  ???  /lib/libcap.so.2.11
0xa2b9d000 - 0xa2ba1fff  libasound_module_pcm_pulse.so  ???
/usr/lib/alsa-lib/libasound_module_pcm_pulse.so
0xa2ba4000 - 0xa2be2fff  LC_CTYPE  ???  /usr/lib/locale/zh_CN.utf8/LC_CTYPE
0xa2be3000 - 0xa2d01fff  LC_COLLATE  ???
/usr/lib/locale/zh_CN.utf8/LC_COLLATE
0xb6d3a000 - 0xb6d43fff  libnss_files-2.9.so  ???
/lib/tls/i686/cmov/libnss_files-2.9.so
0xb6d47000 - 0xb6d48fff  libXdamage.so.1.1.0  ???
/usr/lib/libXdamage.so.1.1.0
0xb6d4a000 - 0xb6d4dfff  libXfixes.so.3.1.0  ???
/usr/lib/libXfixes.so.3.1.0
0xb6d4f000 - 0xb6d4ffff  LC_NUMERIC  ???
/usr/lib/locale/zh_CN.utf8/LC_NUMERIC
0xb6d50000 - 0xb6d50fff  LC_TIME  ???  /usr/lib/locale/zh_CN.utf8/LC_TIME
0xb6d51000 - 0xb6d51fff  LC_MONETARY  ???
/usr/lib/locale/zh_CN.utf8/LC_MONETARY
0xb6d52000 - 0xb6d52fff  SYS_LC_MESSAGES  ???
/usr/lib/locale/zh_CN.utf8/LC_MESSAGES/SYS_LC_MESSAGES
0xb6d53000 - 0xb6d53fff  LC_PAPER  ???  /usr/lib/locale/zh_CN.utf8/LC_PAPER
0xb6d58000 - 0xb6d5afff  libgpg-error.so.0.3.0  ???
/lib/libgpg-error.so.0.3.0
0xb6d5c000 - 0xb6d7ffff  libexpat.so.1.5.2  ???  /usr/lib/libexpat.so.1.5.2
0xb6d83000 - 0xb6d86fff  libXdmcp.so.6.0.0  ???  /usr/lib/libXdmcp.so.6.0.0
0xb6d88000 - 0xb6d89fff  libXau.so.6.0.0  ???  /usr/lib/libXau.so.6.0.0
0xb6d8c000 - 0xb6d8ffff  libogg.so.0.5.3  ???  /usr/lib/libogg.so.0.5.3
0xb6d93000 - 0xb6d94fff  libkeyutils-1.2.so  ???  /lib/libkeyutils-1.2.so
0xb6d97000 - 0xb6d9dfff  libkrb5support.so.0.1  ???
/usr/lib/libkrb5support.so.0.1
0xb6da0000 - 0xb6da1fff  libcom_err.so.2.1  ???  /lib/libcom_err.so.2.1
0xb6da4000 - 0xb6dc5fff  libk5crypto.so.3.1  ???
/usr/lib/libk5crypto.so.3.1
0xb6dc8000 - 0xb6e56fff  libkrb5.so.3.3  ???  /usr/lib/libkrb5.so.3.3
0xb6e5b000 - 0xb6ec0fff  libgcrypt.so.11.4.4  ???  /lib/libgcrypt.so.11.4.4
0xb6ec4000 - 0xb6ed3fff  libtasn1.so.3.0.16  ???
/usr/lib/libtasn1.so.3.0.16
0xb6ed6000 - 0xb6f6cfff  libgnutls.so.26.4.6  ???
/usr/lib/libgnutls.so.26.4.6
0xb6f73000 - 0xb6f88fff  libsasl2.so.2.0.22  ???
/usr/lib/libsasl2.so.2.0.22
0xb6f8b000 - 0xb6f9cfff  libresolv-2.9.so  ???
/lib/tls/i686/cmov/libresolv-2.9.so
0xb6fa2000 - 0xb7013fff  libfreetype.so.6.3.20  ???
/usr/lib/libfreetype.so.6.3.20
0xb7019000 - 0xb7043fff  libfontconfig.so.1.3.0  ???
/usr/lib/libfontconfig.so.1.3.0
0xb7046000 - 0xb7054fff  libXpm.so.4.11.0  ???  /usr/lib/libXpm.so.4.11.0
0xb7056000 - 0xb7090fff  libsmpeg-0.4.so.0.1.4  ???
/usr/lib/libsmpeg-0.4.so.0.1.4
0xb70af000 - 0xb70f5fff  libmikmod.so.2.0.4  ???
/usr/lib/libmikmod.so.2.0.4
0xb70f9000 - 0xb7110fff  libxcb.so.1.1.0  ???  /usr/lib/libxcb.so.1.1.0
0xb7113000 - 0xb7164fff  libtiff.so.4.2.1  ???  /usr/lib/libtiff.so.4.2.1
0xb7169000 - 0xb7187fff  libjpeg.so.62.0.0  ???  /usr/lib/libjpeg.so.62.0.0
0xb7189000 - 0xb71acfff  libpng12.so.0.27.0  ???
/usr/lib/libpng12.so.0.27.0
0xb71af000 - 0xb71c1fff  libdirect-1.0.so.0.1.0  ???
/usr/lib/libdirect-1.0.so.0.1.0
0xb71c5000 - 0xb71cbfff  libfusion-1.0.so.0.1.0  ???
/usr/lib/libfusion-1.0.so.0.1.0
0xb71ce000 - 0xb7231fff  libdirectfb-1.0.so.0.1.0  ???
/usr/lib/libdirectfb-1.0.so.0.1.0
0xb7234000 - 0xb72f6fff  libasound.so.2.0.0  ???
/usr/lib/libasound.so.2.0.0
0xb72fc000 - 0xb7316fff  libvorbis.so.0.4.0  ???
/usr/lib/libvorbis.so.0.4.0
0xb7326000 - 0xb7327fff  libdl-2.9.so  ???  /lib/tls/i686/cmov/libdl-2.9.so
0xb732b000 - 0xb734cfff  libopenal.so.1.4.272  ???
/usr/lib/libopenal.so.1.4.272
0xb766e000 - 0xb77a0fff  libcrypto.so.0.9.8  ???
/lib/i686/cmov/libcrypto.so.0.9.8
0xb77ba000 - 0xb77fbfff  libssl.so.0.9.8  ???
/lib/i686/cmov/libssl.so.0.9.8
0xb7801000 - 0xb7829fff  libgssapi_krb5.so.2.2  ???
/usr/lib/libgssapi_krb5.so.2.2
0xb782c000 - 0xb7832fff  librt-2.9.so  ???  /lib/tls/i686/cmov/librt-2.9.so
0xb7836000 - 0xb7875fff  libldap_r-2.4.so.2.4.1  ???
/usr/lib/libldap_r-2.4.so.2.4.1
0xb787a000 - 0xb7885fff  liblber-2.4.so.2.4.1  ???
/usr/lib/liblber-2.4.so.2.4.1
0xb7888000 - 0xb78b7fff  libidn.so.11.5.39  ???  /usr/lib/libidn.so.11.5.39
0xb78bb000 - 0xb7a16fff  libc-2.9.so  ???  /lib/tls/i686/cmov/libc-2.9.so
0xb7a1e000 - 0xb7a2afff  libgcc_s.so.1  ???  /lib/libgcc_s.so.1
0xb7a2d000 - 0xb7a50fff  libm-2.9.so  ???  /lib/tls/i686/cmov/libm-2.9.so
0xb7a54000 - 0xb7b37fff  libstdc++.so.6.0.10  ???
/usr/lib/libstdc++.so.6.0.10
0xb7b43000 - 0xb7b60fff  libgd.so.2.0.0  ???  /usr/lib/libgd.so.2.0.0
0xb7b85000 - 0xb7ba9fff  libSDL_mixer-1.2.so.0.2.6  ???
/usr/lib/libSDL_mixer-1.2.so.0.2.6
0xb7bde000 - 0xb7bf2fff  libpthread-2.9.so  ???
/lib/tls/i686/cmov/libpthread-2.9.so
0xb7bf7000 - 0xb7c0afff  libz.so.1.2.3.3  ???  /lib/libz.so.1.2.3.3
0xb7c0d000 - 0xb7d41fff  libxml2.so.2.6.32  ???  /usr/lib/libxml2.so.2.6.32
0xb7d4a000 - 0xb7e33fff  libX11.so.6.2.0  ???  /usr/lib/libX11.so.6.2.0
0xb7e39000 - 0xb7e42fff  libSDL_image-1.2.so.0.1.5  ???
/usr/lib/libSDL_image-1.2.so.0.1.5
0xb7e54000 - 0xb7ebafff  libSDL-1.2.so.0.11.2  ???
/usr/lib/libSDL-1.2.so.0.11.2
0xb7ee9000 - 0xb7eeffff  libvorbisfile.so.3.2.0  ???
/usr/lib/libvorbisfile.so.3.2.0
0xb7ef2000 - 0xb7f28fff  libopenal.so.0.0.0  ???
/usr/lib/libopenal.so.0.0.0
0xb7f2f000 - 0xb7f32fff  libalut.so.0.1.0  ???  /usr/lib/libalut.so.0.1.0
0xb7f37000 - 0xb7f72fff  libcurl.so.4.1.0  ???  /usr/lib/libcurl.so.4.1.0
0xb7f75000 - 0xb7f75fff  LC_NAME  ???  /usr/lib/locale/zh_CN.utf8/LC_NAME
0xb7f76000 - 0xb7f76fff  LC_ADDRESS  ???
/usr/lib/locale/zh_CN.utf8/LC_ADDRESS
0xb7f77000 - 0xb7f77fff  LC_TELEPHONE  ???
/usr/lib/locale/zh_CN.utf8/LC_TELEPHONE
0xb7f78000 - 0xb7f78fff  LC_MEASUREMENT  ???
/usr/lib/locale/zh_CN.utf8/LC_MEASUREMENT
0xb7f79000 - 0xb7f7ffff  gconv-modules.cache  ???
/usr/lib/gconv/gconv-modules.cache
0xb7f80000 - 0xb7f80fff  LC_IDENTIFICATION  ???
/usr/lib/locale/zh_CN.utf8/LC_IDENTIFICATION
0xb7f82000 - 0xb7f82fff  zero (deleted)  ???  /dev/zero (deleted)
0xb7f85000 - 0xb7f85fff  linux-gate.so  ???  linux-gate.so
0xb7f86000 - 0xb7fa1fff  ld-2.9.so  ???  /lib/ld-2.9.so



There is:

0xb732b000 - 0xb734cfff  libopenal.so.1.4.272  ???
/usr/lib/libopenal.so.1.4.272
0xb7ef2000 - 0xb7f28fff  libopenal.so.0.0.0  ???
/usr/lib/libopenal.so.0.0.0
0xb7f2f000 - 0xb7f32fff  libalut.so.0.1.0  ???  /usr/lib/libalut.so.0.1.0

OpenAL is twice in this list. Is this normal? Are these different
versions of OpenAL which are loaded both at the same time?

#539291#33
Date:
2010-01-25 14:30:09 UTC
From:
To:
Same problem here.

Date: 2010-01-25 06:10:59 GMT
Operating system: Linux (0.0.0 Linux 2.6.28-11-generic #42-Ubuntu SMP
Fri Apr 17 01:57:59 UTC 2009 i686)
Architecture: x86
Crash reason:  SIGSEGV
Crash address: 0x4

Thread 0 (crashed)
  0 libopenal.so.0.0.0             0xb7f1cfd3 (0x0002afd3) ??
  1 openlierox                     0x0827242d (0x0022a42d)
SfxDriverOpenAL::init() + 0xf (sfxdriver_openal.cpp:32)
  2 openlierox                     0x08271277 (0x00229277) Sfx::init() +
0xa (sfx.cpp:57)
  3 openlierox                     0x08272cc1 (0x0022acc1)
InitSoundSystem(int, int, int) + 0xb (Sounds.cpp:128)
  4 openlierox                     0x0838b4fd (0x003434fd)
InitializeAuxLib(std::string const&, int, int) + 0x1d (AuxLib.cpp:176)


sfxdriver_openal.cpp:32 :

	ALboolean init=alutInit(NULL,NULL);

Crash address 0x4 indicates that it tries to access some
struct-attribute of some NULL-pointer. Or maybe *(argv+1).