-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdronebl_check.pl
79 lines (66 loc) · 2.12 KB
/
dronebl_check.pl
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
use strict;
use warnings;
use Irssi;
use Data::Dumper;
use lib Irssi::get_irssi_dir() . '/scripts/irssi-scripts'; # LAama1 2024-07-26
use KaaosRadioClass;
use vars qw($VERSION %IRSSI);
$VERSION = '0.1';
%IRSSI = (
authors => 'LAama1',
contact => '#kaaosradio.fi@ircnet',
name => 'dronecheck',
description => 'Check if somebody joined the channel from open proxy.',
license => 'BSD',
changed => '2023-01-28',
url => 'http://www.kaaosradio.fi'
);
my $dronebl_address = 'https://';
my $statsfile = Irssi::get_irssi_dir().'/scripts/dronebl.log';
my $scriptfile = Irssi::get_irssi_dir().'/scripts/checkdnsbl.sh';
# when you join a channel
sub event_chan_joined {
my ($channel, @rest) = @_;
print "Jes. i joined: ";
print Dumper $channel;
print "--------------";
print Dumper @rest ;
}
sub dronebl_check {
my ($ip, @rest) = @_;
my $data = `${scriptfile} ${ip}`;
print("data from script:");
print Dumper $data;
}
# when user joined your channel
sub event_msg_joined {
my ($server, $channel, $nick, $address, $account, $realname) = @_;
#my @ip_parts = split '\@', $address;
my @ip_parts = split '@', $address;
$server->send_raw("whois $nick");
my $host = $ip_parts[1];
my $ident = $ip_parts[0];
print "Got nick: $nick, ident: $ident, host: $host";
save_stuff($nick, $ident, $host);
dronebl_check($host);
#save_stuff($nick, $ident, $host);
}
sub event_whois {
my ($server, $data, $srv_addr, @rest) = @_;
my ($me, $nick, $user, $host) = split(" ", $data);
#my $network = $server->{tag};
#$nick = fc $nick;
print("Nick: $nick, me: $me, user: $user, host: $host, server address: $srv_addr");
print Dumper @rest;
}
sub do_the_kick {
my ($server, $chan, $nick, @rest) = @_;
}
sub save_stuff {
my ($nick, $ident, $ip, @channels) = @_;
print("Saving: $nick, $ident, $ip");
KaaosRadioClass::addLineToFile($statsfile, time.';'.$nick. ';'. $ident.';'.$ip.';');
}
Irssi::signal_add('channel joined', 'event_chan_joined');
Irssi::signal_add('message join', 'event_msg_joined');
Irssi::signal_add_first('event 311', 'event_whois');