Padajici program (DTORS)

Pavel Kankovsky peak na kerberos.troja.mff.cuni.cz
Úterý Únor 10 21:18:40 CET 1998


On Tue, 10 Feb 1998, Pavel Dufek wrote:

> Mam program, ktery bezi jako demon, zjistuje nejake veci ze site pomoci 
> CMU SNMP library (dynamicka, posledni verze) a "obcas" spadne na sig. 11. 
> Kdyz analyzuje core (knihovna i program je "-g"), dozvim se, ze chtel 
> delat free s nespravnym parametrem (nesmyslna adresa). Problem je, ze 
> "info stack" rekne, ze to free zavolala funkce __DTORS_END (mozna jsou 
> spatne ta podtrzitka, ale je tam jen jedna takova ...). A "info target" 
> rika, ze na te adrese jen "dtors" segment z te libc knihovny (a info var 
> rika, ze to je "non debugging symbol"). Stalo se to uz nekomu ? Co je ten 
> segment "dtors" ? Has anyone any idea ????? Please.

v .dtors jsou destruktory, tj. jakysi seznam funkci, ktere maji byt
zavolany za ucelem destrukce globalnich dat obsazenych v knihovne

ovsem pokud prohlasi, ze navratova adresa je __DTOR_END__ + neco, pak
to zrejme uz bude v nejake dalsi sekci; zda se, ze je to .got, tedy
Global Offset Table, coz je divne, to jsou totiz uz data a ne kod

zkusil bych:
1) pouzit malloc debugger (electric fence, ccmalloc)
2) slinkovat to staticky (hin sa ukaze!)
3) spustit na platforme, co rozlisuje cteni a exekuci (!= Intel)

--Pavel Kankovsky aka Peak   [ Boycott Microsoft -- http://www.vcnet.com/bms ]



Další informace o konferenci Linux