Sélectionner une révision Git
matrixcommandhandler.ts
bot.pl 4,93 Kio
#!/usr/bin/perl
#
# Bot IRC
#
# @author TC (aka Romain Coltel)
# @date 2010-03-26 - First release
#
#
BEGIN {
use strict;
use warnings;
use Data::Dumper;
use Core::Command_line_args;
use Core::Config;
use Core::Getpass;
use Core::Logging;
# Ça c'est pour utiliser nos librairies avant celles installées sur le système
# Ça sert notamment pour Net::IRC, vu que je l'ai patchée (http://coltel.iiens.net/patch_Net_IRC)
my $incpath = pop @INC;
unshift @INC, $incpath;
# On vérifie qu'on n'a pas trop de droits
open ID, "id |" or die "Unable to run `id`\n";
my $id = <ID>;
close ID;
if($id =~ /uid=(\d+)\(([A-Za-z]+)\)/)
{
if($1 == 0 || $2 eq "root")
{
print STDERR "I don't wanna be running with privileges";
exit 2;
}
}
# On regarde les arguments passés en ligne de commande ensuite
if($#ARGV != -1)
{
# S'il y a des arguments, on jette un oeil dessus
Command_line_args::process_args(\@ARGV);
}
# On initialise le module en charge des logs
our $logger = new Logging(
$Config::debug > 1 ? "STDOUT": $Config::logfile,
1
);
$logger->utf8(1);
if($Config::want_nick_register)
{
# Récupérons notre mdp Nickserv de celui qui lance le bignouf
my $pass = Getpass::get_pass("NickServ");
$Config::passwd = $pass;
}
}
use Net::IRC;
use Core::Hook;
use Core::Refresh;