Leser: 1
6 Einträge, 1 Seite |
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#!/usr/bin/perl
use warnings;
use strict;
package IPToolCollection;
use IO::Socket;
use Thread;
#-----------------------------------------------------------------------#
# subroutines # #-----------------------------------------------------------------------#
sub scanPorts() {
our ($remoteHost, $protocol, $startPort, $stopPort) = @_;
my %portStatusH = ();
sub scanSinglePort() {
my $remotePort = shift;
my $portStatusB = "open";
my $socket = new IO::Socket::INET (
PeerAddr => $remoteHost,
PeerPort => $remotePort,
Proto => $protocol,
Type => SOCK_STREAM
);
$portStatusB = "closed" if(!defined($socket));
return ($remotePort,$portStatusB);
}
for my $i ($startPort..$stopPort) {
my $scanPortThread = Thread->new (
\&scanSinglePort,$i
);
}
for my $t (Thread->list()) {
my ($port, $portStatusB) = $t->join();
$portStatusH{$port} = $portStatusB;
}
return %portStatusH;
}
#-----------------------------------------------------------------------#
# main script #
#-----------------------------------------------------------------------#
my %resultH = &scanPorts("127.0.0.1", "TCP", 0, 100);
while(my ($k,$val) = each(%resultH)) {
print "port $k is $val \n";
}
1
2
3
4
Use of uninitialized value in concatenation (.) or string at ./portscanner.pl line 72.
port closed is
Use of uninitialized value in concatenation (.) or string at ./portscanner.pl line 72.
port open is
print "port $k is $val \n";
1
2
3
4
5
6
for my $i ($startPort..$stopPort) {
my $scanPortThread = threads->new (
\&scanSinglePort,$i
);
}
6 Einträge, 1 Seite |