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

hlubenow
 2018-09-19 18:27
#188945 #188945
User since
2009-02-22
876 Artikel
BenutzerIn
[default_avatar]
2018-09-19T16:03:38 Linuxer
Ich glaube zwar erkennen zu können, welche Routinen von CGI.pm exportiert werden;

Z.B. so:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#!/usr/bin/perl

use warnings;
use strict;

use CGI qw( :all );
print header( "text/html" );

use Devel::Symdump;

sub funcNames {
    my @a = @_;
    my @b;
    my $i;
    my $rvar;
    my @c;
    for $i (@a) {
        @b = split(/::/, $i);
        $rvar = pop(@b);
        push(@c, $rvar);
    }
    return @c;
}


my $cgisym = Devel::Symdump->new("CGI");
my $mainsym = Devel::Symdump->new();
my @mainfuncs = $mainsym->functions();
my @cgifuncs = $cgisym->functions();
@mainfuncs = funcNames(@mainfuncs);
@cgifuncs = funcNames(@cgifuncs);
my $i;
my $u;
print "In mainspace from CGI:\n";
for $i (@mainfuncs) {
    for $u (@cgifuncs) {
        if ($i eq $u) {
            print "$i\n";
        }
        next;
    }
}

Linuxer
aber ich habe keinen Bezug erkennen können, welche von denen nun auch wirklich benutzt wurde. Betonung liegt auf "Bezug erkennen".

Dazu müßte man halt das Hauptskript nach den Funktionsaufrufen durchsuchen.

View full thread Rausfinden welche exportierten Funktionen in Programm benutzt werden