Skip to content
Extraits de code Groupes Projets
Sélectionner une révision Git
  • d42834cfbbec9e1ce12586fa555f2b022390902c
  • develop par défaut
  • renovate/configure
  • rebase-v4
  • cherry-pick-moise protégée
5 résultats

matrixcommandhandler.ts

Blame
  • 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;