Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/perl
- # SDF-COMMODE AUTO MODARATOR
- use Net::Telnet;
- #use strict;
- use warnings;
- ## Varible Declarations
- my @masters = ('pi', 'i0n', 'smj');
- my $buffer = "";
- my $server = "";
- #Authentication info
- my $host = 'sdf.lonestar.org';
- my $username = 'comzor';
- my $password = '66669999';
- # Function for checking username against list of masters
- sub master_check {
- $name = shift;
- # #loop through array and compare
- # # return 1 if master, 0 if not
- foreach my $mast (@masters) {
- if ($mast eq $name) {
- return 1;
- }
- return 0;
- }
- }
- sub psh_login {
- my $user= shift;
- my $pass = shift;
- #login to sdf, conect to a preval shell, and start com
- $server = new Net::Telnet (Prompt => '/(.){1,4}/');
- $server->open($host) or die "connect:[ $! ]";
- $server->waitfor('/login:.*$/') or die "waiting for login...";
- $server->print("$user");
- $server->waitfor('/Password:.*$/') or die "waiting for pass...";
- $server->print("$pass");
- $server->waitfor('/Please\spress\syour\sBACKSPACE\skey:.*$/') or die "waiting for backspace prompt...";
- $server->print("\b");
- $server->waitfor('/\[CONTINUE\].*$/');
- $server->print("");
- $server->waitfor('/sdf/') or die "waiting for shell prompt...";
- $server->print("com");
- $server->waitfor('/COMMODE/');
- }
- psh_login($username, $password, $host);
- print "WARNING: Endlessloop...\n\n";
- #Set the server not to time-out on an endless read
- $server->timeout(undef);
- #DONT SPAM LOBBY
- $server->print("gvhdl");
- #Empty input buffer to save processing time
- $server->buffer_empty;
- # Start a loop while $server exists
- do {
- #read input buffer one line at a time
- $buffer = $server->getline();
- ### Command Function Parsing ###
- # test funtion 1
- if ($buffer =~ m/\!boobs/) {
- $server->print("v( * Y * ) ");
- }
- # Goto function (master protected)
- elsif ($buffer =~ m/^\[(.{1,8})\]\s{1,8}!g\s(.*)/ ) {
- if ((master_check($1)) == 1) {
- $server->print("v yes, $1");
- $server->print("g$2");
- } else { $server->print("vYour not my master."); };
- }
- elsif ($THIS_SHOULD_NOT_HAPPEN) {
- die "huh?";
- } else {
- #$server->print("a error: command not reconized");
- }
- ################################
- print "$buffer";
- $buffer = "";
- } while ($server);
Add Comment
Please, Sign In to add comment