This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug dynamic-link/23102] Incorrect parsing of multiple consecutive $variable patterns in runpath entries (e.g. $ORIGIN$ORIGIN)


https://sourceware.org/bugzilla/show_bug.cgi?id=23102

--- Comment #3 from Carlos O'Donell <carlos at redhat dot com> ---
(In reply to Dmitry V. Levin from comment #2)
> A token in $var form is substituted only if it ends the string or is
> followed by '/'. A token in {var} form does not have this limitation.
> 
> I suggest documenting this behavior rather than changing it.

The official specification of the gABI says:
http://www.sco.com/developers/gabi/latest/ch5.dynamic.html#shobj_dependencies
~~~
Within a string provided by dynamic array entries with the DT_NEEDED or
DT_RUNPATH tags and in pathnames passed as parameters to the dlopen() routine,
a dollar sign ($) introduces a substitution sequence. This sequence consists of
the dollar sign immediately followed by either the longest name sequence or a
name contained within left and right braces ({) and (}). A name is a sequence
of bytes that start with either a letter or an underscore followed by zero or
more letters, digits or underscores. If a dollar sign is not immediately
followed by a name or a brace-enclosed name, the behavior of the dynamic linker
is unspecified. ~~~

Which seems to allow $ORIGIN$ORIGIN to me?

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]