libslang0.99.34 > libslang0.99.38
Pavel Kankovsky
peak na kerberos.troja.mff.cuni.cz
Čtvrtek Leden 15 11:11:22 CET 1998
On Wed, 14 Jan 1998, Pavel Machek wrote:
> > prelinkovat), 3) "opravit" exac (jen pro pokrocile)
>
> Myslis doufam exec, ze? Hmm, nevidim jak by to pomohlo, ja bych
> 'opravoval' ld.so.
Ne myslel jsem exac (tj. soubor s tim programem--cili executable),
kde je mozno v prislusnych hlavickach zmodifikovat, jake maji byt
natahovany knihovny. :)
> BTW kdyby si nekdo chtel hrat s ld.so, byla by dobra vec (tm) spachat
> 'ltrace'. T. j. neco jako strace, az na to ze se pisou volani
> knihoven.
Principialne by to slo, protoze dyn. linkeru nic nebrani v tom nasadit na
volane funkce breakpointy (nebo misto nich exportovat nejake stuby).
On Thu, 15 Jan 1998, Pavel Janik ml. wrote:
> A nepomuze pouhe LD_PRELOAD=/usr/lib/libslang.so.0.99.38?
To se chova obcas divne (nekdy se mi stavalo, ze byly naloadovane obe
verze knihoven a nebylo jasne, kterou to pouziva). Ale nevim presne, co
zatim je.
> SnowWhite:~/Tmp$ ldd a.out
> libc.so.6 => /lib/libc.so.6 (0x40003000)
> /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x00000000)
> SnowWhite:~/Tmp$
Ono to ukazuje dyn. linker jako knihovnu? To jsou veci.
> A ted chci dat strace ./a.out, ale s jednou podminkou - chci pouzit
> starou libc5 (ne pro strace, ale pro a.out). Ale v tom je hacek,
> protoze strace konci s libc5 se SEGFAULT.
>
> Napadlo mne pouze poslat strace -f na skript:
>
> #!/bin/bash
> LD_PRELOAD=/usr/i486-linux-libc5/lib/libc.so.5 ./a.out
ja bych tam dal
export LD_PRELOAD=...
exec ./a.out
a nepotreboval bych -f (ale pokud se a.out neforkuje, tak je to skoro
jedno)
> Existuje i nejaka jina moznost (samozrejme krome staticke
> kompilace...)?
Asi ne. I kdyz to, ze by strace mel byt staticky slinkovany mi
nepripada jako principialni nesmysl.
--Pavel Kankovsky aka Peak (troja.mff.cuni.cz network administration)
[ Boycott Microsoft -- http://www.vcnet.com/bms ]
Další informace o konferenci Linux