Closed Bug 503369 Opened 15 years ago Closed 14 years ago

$LD_PRELOAD = /usr/lib/libesddsp.so.0 problem

Categories

(Firefox :: General, defect)

x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED INCOMPLETE

People

(Reporter: webdesign, Unassigned)

Details

(Whiteboard: [CLOSEME 2011-1-1])

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 6.0; pl; rv:1.9.1) Gecko/20090624 Firefox/3.5 (.NET CLR 3.5.30729)
Build Identifier: Mozilla/5.0 (X11; U; Linux i686; pl-PL; rv:1.9.1.0) Gecko/20090617 SUSE/3.5.0-7.1 Firefox/3.5

firefox will not run if LD_PRELOAD = /usr/lib/libesddsp.so.0, problem on: OpenSuse 10.2 (as terminal server with LTSP)

Reproducible: Always

Steps to Reproduce:
1. export LD_PRELOAD="/usr/lib/libesddsp.so.0 /usr/lib/libesd.so.0"
2. firefox
3.
Actual Results:  
firefox hangs without open any window..

Expected Results:  
normal runing;)
The same happens with any library that uses dlsym, 
*this worked with earlier firefox releases!*

Example:
--------------
#define _GNU_SOURCE
#include <stdio.h>
#include <unistd.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <string.h>
#include <stdlib.h>
#include <dlfcn.h>
#include <signal.h>
#include <stdarg.h>
#include <dirent.h>

int open(const char *filename, int flags, ...)
{
        static int (*open_orig)(const char *, int, mode_t);
        int ret;
        va_list ap;
        mode_t mode;

        if (!open_orig) {
                open_orig = dlsym(RTLD_NEXT, "open");
        }

        va_start(ap, flags);
        mode = va_arg(ap, mode_t);
        va_end(ap);

        if (strncmp("/dev/snd", filename, 8)==0) {
                return -1;
        }

        ret = open_orig(filename, flags, mode);

        return ret;
}
-----------

gcc file.c -shared -g -O1 -o libopen.so

LD_PRELOAD=`pwd`/libopen.so gdb /path/to/firefox-bin

Starting program: /firefox/firefox-bin 
(no debugging symbols found)
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
^C[New Thread 0xf617e710 (LWP 23288)]

Program received signal SIGINT, Interrupt.
[Switching to Thread 0xf617e710 (LWP 23288)]
0xf7ff1430 in __kernel_vsyscall ()
(gdb) bt
#0  0xf7fa8430 in __kernel_vsyscall ()
#1  0xf7f5bd09 in __lll_lock_wait () from /lib/tls/i686/cmov/libpthread.so.0
#2  0xf7f57154 in _L_lock_936 () from /lib/tls/i686/cmov/libpthread.so.0
#3  0xf7f5707e in pthread_mutex_lock () from /lib/tls/i686/cmov/libpthread.so.0
#4  0x0804f79b in ?? ()
#5  0x08051de5 in calloc ()
#6  0xf70c1086 in ?? () from /lib/tls/i686/cmov/libdl.so.2
#7  0xf70c0d43 in dlsym () from /lib/tls/i686/cmov/libdl.so.2
#8  0xf7f89458 in open (filename=0x80553ef "/proc/cpuinfo", flags=0) at libopen.c:28
#9  0x0804f7d5 in ?? ()
#10 0x08051de5 in calloc ()
#11 0xf71b0bec in ?? () from /firefox/libmozjs.so
#12 0xf71b0c77 in ?? () from /firefox/libmozjs.so
#13 0xf719ec2e in ?? () from /firefox/libmozjs.so
#14 0xf719ec88 in ?? () from /firefox/libmozjs.so
#15 0xf71c0d36 in ?? () from /firefox/libmozjs.so
#16 0xf710e42d in _init () from /firefox/libmozjs.so
#17 0xf7f9bae4 in ?? () from /lib/ld-linux.so.2
#18 0xf7f9bc14 in ?? () from /lib/ld-linux.so.2
#19 0xf7f8e82f in ?? () from /lib/ld-linux.so.2

frame 8
#8  0xf7f89458 in open (filename=0x80553ef "/proc/cpuinfo", flags=0) at libopen.c:28
28			open_orig = dlsym(RTLD_NEXT, "open");
Reporter, are you still seeing this issue with Firefox 3.6.12 or later in safe mode? If not, please close. These links can help you in your testing.
http://support.mozilla.com/kb/Safe+Mode
http://support.mozilla.com/kb/Managing+profiles
Also, please consider using the most recent Firefox 4 beta build, your bug may be resolved there.
Whiteboard: [CLOSEME 2011-1-1]
No reply, INCOMPLETE. Please retest with Firefox 3.6.13 or later and a new profile (http://support.mozilla.com/kb/Managing+profiles). If you continue to see this issue with the newest firefox and a new profile, then please comment on this bug.
Status: UNCONFIRMED → RESOLVED
Closed: 14 years ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.