Hi all, Re: recent debugging / library topics, I thought I'd share my latest find and ask for pointers too. I recently read ld(1); it is not a page turner, at least not until I saw --wrap. 4 lines of code is a thousand words, so: void *__wrap_malloc (int c) { printf ("malloc called with %ld\n", c); return __real_malloc(c); } It lets you put a wrapper around arbitrary functions .. without playing tricks with #define! This would've helped me finding a bug in tar (!) a few days ago, instead of manually wrapping each occurance of free(). [1]. Hey, does anyone know if people actually read the debian-glibc list? The tar bug is actually a glibc problem, [2], and nobody's commented on the list or on the bug. And I don't feel like making a sources.redhat account to report it in upstream bugzilla.. Now my question. Is there a package (debian or otherwise) which will show me the possible function call paths? I want something that will look through code and show me (graphically maybe) that X calls Y which calls Z which calls X, so there's recursion there, and A calls B and C calls D in a loop. Maybe even smart enough to deal with conditions (E calls F _or_ G). Ideas? Thanks, -- Justin aptitude install iraf saods9 eclipse xpa sextractor x11iraf wcstools pyraf http://www.justinpryzby.com/debian/ References [1] http://lists.gnu.org/archive/html/bug-tar/2004-08/msg00004.html [2] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262782
Attachment:
signature.asc
Description: Digital signature