From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22417 invoked by alias); 7 Oct 2012 23:47:40 -0000 Received: (qmail 22314 invoked by uid 48); 7 Oct 2012 23:47:21 -0000 From: "hjl.tools at gmail dot com" To: glibc-bugs@sources.redhat.com Subject: [Bug dynamic-link/14683] New: Static dlopen abort on $ORIGIN Date: Sun, 07 Oct 2012 23:47:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: glibc X-Bugzilla-Component: dynamic-link X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: hjl.tools at gmail dot com X-Bugzilla-Status: NEW X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: unassigned at sourceware dot org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Message-ID: X-Bugzilla-URL: http://sourceware.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 Mailing-List: contact glibc-bugs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: glibc-bugs-owner@sourceware.org X-SW-Source: 2012-10/txt/msg00080.txt.bz2 http://sourceware.org/bugzilla/show_bug.cgi?id=14683 Bug #: 14683 Summary: Static dlopen abort on $ORIGIN Product: glibc Version: 2.17 Status: NEW Severity: normal Priority: P2 Component: dynamic-link AssignedTo: unassigned@sourceware.org ReportedBy: hjl.tools@gmail.com Classification: Unclassified Created attachment 6672 --> http://sourceware.org/bugzilla/attachment.cgi?id=6672 A testcase On x86-64, this testcase aborts: Starting program: /export/build/gnu/glibc-test/build-x86_64-linux/elf/tst-leaks1-static tst-leaks1-static: dl-load.c:438: expand_dynamic_string_token: Assertion `(l)->l_name[0] == '\0' || 0' failed. Program received signal SIGABRT, Aborted. 0x0000000000463395 in raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56 56 return INLINE_SYSCALL (tgkill, 3, pid, selftid, sig); (gdb) bt #0 0x0000000000463395 in raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56 #1 0x0000000000429df8 in abort () at abort.c:90 #2 0x00000000004253c0 in __assert_fail_base ( fmt=0x492bc8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x491a50 "(l)->l_name[0] == '\\0' || 0", file=file@entry=0x4918ab "dl-load.c", line=line@entry=438, function=function@entry=0x491b90 <__PRETTY_FUNCTION__.11499> "expand_dynamic_string_token") at assert.c:92 #3 0x000000000042542e in __assert_fail ( assertion=assertion@entry=0x491a50 "(l)->l_name[0] == '\\0' || 0", file=file@entry=0x4918ab "dl-load.c", line=line@entry=438, function=function@entry=0x491b90 <__PRETTY_FUNCTION__.11499> "expand_dynamic_string_token") at assert.c:101 #4 0x000000000041d0f3 in expand_dynamic_string_token (l=0x6c01d0, s=, is_path=0) at dl-load.c:438 #5 0x000000000041d66e in _dl_map_object (loader=loader@entry=0x6c01d0, name=name@entry=0x48d91f "$ORIGIN/tst-leaks1.o", type=type@entry=2, trace_mode=trace_mode@entry=0, mode=mode@entry=-1879048191, nsid=0) at dl-load.c:2284 #6 0x0000000000421d98 in dl_open_worker (a=a@entry=0x7fffffffdc40) at dl-open.c:226 #7 0x0000000000420326 in _dl_catch_error ( ---Type to continue, or q to quit--- objname=objname@entry=0x7fffffffdc30, errstring=errstring@entry=0x7fffffffdc38, mallocedp=mallocedp@entry=0x7fffffffdc2f, operate=operate@entry=0x421c80 , args=args@entry=0x7fffffffdc40) at dl-error.c:177 #8 0x0000000000421947 in _dl_open (file=0x48d91f "$ORIGIN/tst-leaks1.o", mode=-2147483647, caller_dlopen=0x400cd6 , nsid=nsid@entry=0, argc=1, argv=, env=0x7fffffffdf88) at dl-open.c:654 #9 0x0000000000403edc in dlopen_doit (a=a@entry=0x7fffffffde40) at dlopen.c:66 #10 0x0000000000420326 in _dl_catch_error ( objname=objname@entry=0x6bd470 , errstring=errstring@entry=0x6bd478 , mallocedp=mallocedp@entry=0x6bd468 , operate=operate@entry=0x403e90 , args=args@entry=0x7fffffffde40) at dl-error.c:177 #11 0x000000000040428d in _dlerror_run ( operate=operate@entry=0x403e90 , args=args@entry=0x7fffffffde40) at dlerror.c:163 #12 0x0000000000403f2e in __dlopen ( file=file@entry=0x48d91f "$ORIGIN/tst-leaks1.o", mode=mode@entry=1, dl_caller=) at dlopen.c:89 #13 0x00000000004010a9 in dlopen ( file=file@entry=0x48d91f "$ORIGIN/tst-leaks1.o", mode=mode@entry=1) ---Type to continue, or q to quit--- at dlopen.c:30 #14 0x0000000000400cd6 in main () at tst-leaks1.c:14 (gdb) -- Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.