Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re: Reverse Engineering Perl Using... Perl.

by rinceWind (Monsignor)
on Jun 17, 2005 at 16:27 UTC ( [id://467795]=note: print w/replies, xml ) Need Help??


in reply to Reverse Engineering Perl Using... Perl.

If you want to catch all the named subroutines, these will be in the symbol table hash (stash) %main:: (also known as %::) or %Foo::Bar::.

One way to get this is through the perl debugger. Run a script and issue the following command:

DB<1> x %::

This will pick up all the global variables and subs in main:: and also all the packages. You can walk into each package namespace and get further globals, packages and subs.

You can also get the debugger to read its commands from a file instead of stdin, which may help automate your process.

Hope this helps

--

Oh Lord, won’t you burn me a Knoppix CD ?
My friends all rate Windows, I must disagree.
Your powers of persuasion will set them all free,
So oh Lord, won’t you burn me a Knoppix CD ?
(Missquoting Janis Joplin)

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://467795]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others examining the Monastery: (4)
As of 2024-03-29 09:19 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found