Banning By Email Adress 1.0 ONLY FOR Y1G BETA 5, ENGLISH VERSION! This mod adds an email banlist to the admin section. You should also install "no_equal_mailadr.mod". [CV]XXL http://xxl.cstrike.de Sources\Security.pl sub banning { $remote_ip = "$ENV{'REMOTE_ADDR'}"; open(BAN, "$vardir/ban.txt" ); @entries = ; close(BAN); foreach $ban_ip (@entries) { chop($ban_ip); $str_len = length($ban_ip); $comp_ip = substr($remote_ip,0,$str_len); if ($comp_ip eq $ban_ip) { open(LOG, ">>$vardir/ban_log.txt" ); &lock(LOG); print LOG "$remote_ip\n"; &unlock(LOG); close(LOG); print "Content-type: text/html\n\n"; print ""; print ""; print "

Sorry, "; print "$remote_ip"; print " $txt{'430'}!"; print "

"; print ""; print ""; exit; } }
# EMAIL BANNING if ($username ne 'Guest') { $remote_ip = "$ENV{'REMOTE_ADDR'}"; open(BAN, "$vardir/ban_email.txt" ); &lock(FILE2); @entries = ; &unlock(FILE2); close(BAN); foreach $ban_email (@entries) { if (lc $ban_email eq lc $settings[2]) { open(LOG, ">>$vardir/ban_log.txt" ); &lock(LOG); print LOG "$ban_email ($remote_ip)\n"; &unlock(LOG); close(LOG); print "Content-type: text/html\n\n"; print ""; print ""; print "

Sorry, "; print "$remote_ip"; print " $txt{'430'}!"; print "

"; print ""; print ""; exit; } } }
Yabb.pl ### Banning ### &banning; ### Load user settings ### &LoadUserSettings; ### Load user settings ### &LoadUserSettings; ### Banning ### &banning; Sources\Admin.pl sub ipban { &is_admin; open(FILE, "$vardir/ban.txt"); &lock(FILE); @ipban = ; &unlock(FILE); close(FILE); $yytitle = "$txt{'340'}"; &header; print <<"EOT";
$txt{'340'}

EOT &footer; exit; } sub ipban2 { &is_admin; open(FILE, ">$vardir/ban.txt"); &lock(FILE); print FILE "$FORM{'ban'}"; &unlock(FILE); close(FILE); print "Location: $cgi\&action=admin\n\n"; exit; }
sub ipban { &is_admin; open(FILE, "$vardir/ban.txt"); &lock(FILE); @ipban = ; &unlock(FILE); close(FILE); open(FILE, "$vardir/ban_email.txt"); &lock(FILE); @emailban = ; &unlock(FILE); close(FILE); $yytitle = "$txt{'340'}"; &header; print <<"EOT";
$txt{'340'}
$txt{'724'}


$txt{'725'}

EOT &footer; exit; } sub ipban2 { &is_admin; open(FILE, ">$vardir/ban.txt"); &lock(FILE); print FILE "$FORM{'ban'}"; &unlock(FILE); close(FILE); open(FILE, ">$vardir/ban_email.txt"); &lock(FILE); print FILE "$FORM{'ban_email'}"; &unlock(FILE); close(FILE); print "Location: $cgi\&action=admin\n\n"; exit; }
English.lng 1; $txt{'724'} = "IP banning: (e.g. 192.168.12.213 or 128.0.*.*) - one entry per line"; $txt{'725'} = "Email banning: (e.g. badguy\@somewhere.com) - one entry per line";