Thread Rausfinden welche exportierten Funktionen in Programm benutzt werden (17 answers)
Opened by GwenDragon at 2018-09-18 14:11

hlubenow
 2018-09-19 16:44
#188943 #188943
User since
2009-02-22
875 Artikel
BenutzerIn
[default_avatar]
Also, wenn ich dieses laufen lasse:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
#!/usr/bin/perl
use warnings;
use strict;

use File::Find;
use Devel::Symdump;

my $obj = Devel::Symdump->new();
my @a = $obj->functions();
for my $i (@a) {
    print "$i\n";
}

Dann ist die Ausgabe:
Code: (dl )
1
2
3
main::finddepth
main::_find_opt
main::find

Wenn man im Skript nach dem String "sub " sucht, kann man feststellen, ob diese Funktionen im Hauptskript definiert wurden.
Wenn man das oben mit "->rnew(...);" startet, erhält man auch die Funktionen der eingebundenen Module. Für File::Find z.B.
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
File::Find::contract_name
File::Find::wrap_wanted
File::Find::_find_dir_symlnk
File::Find::find
File::Find::_find_dir
File::Find::is_tainted
File::Find::_find_opt
File::Find::PathCombine
File::Find::Follow_SymLink
File::Find::finddepth
File::Find::is_tainted_pp

Und wenn man das abgleicht, spricht doch einiges dafür, daß die drei Funktionen in main aus File::Find kommen. Vielleicht wäre das ein Weg.

Möchtest Du wirklich Variablen oder Funktionen umbenennen, die aus Modulen importiert wurden?

View full thread Rausfinden welche exportierten Funktionen in Programm benutzt werden