#################
# This version is modified with 4 bl checks only (its plenty)
# This version is made to be used on a bot
# When loaded, type this in the channels where you want to use the tool
# --> .chanset #Chan +dronebl
# Then use: !bl ip.ip.ip.ip
# New Credits: KingSlayer @ Freenode
#################
alias revip { tokenize 46 $1 | return $+($4, ., $3, ., $2, ., $1) }
on *:text:.chanset *:#:{
if ($nick !isop $chan) { msg # you need @ to use .chanset | halt }
if (!$3) { msg # [4Error] type .chanset <#Chan> <+/-Script> | halt }
if ($chan == $2) && ($3 == +dronebl) { set %blchans $addtok(%blchans,$2,44) | msg # Performed +dronebl on # | halt }
if ($chan == $2) && ($3 == -dronebl) { set %blchans $remtok(%blchans,$2,1,44) | msg # Performed -dronebl on # | halt }
}
on *:text:!bl *:%blchans:{
if (!$2) { msg # its !bl <ip.ip.ip.ip> | halt }
if ($nick isreg $chan) { halt }
msg # Looking up, one moment..
set %hit::1 3Clear | set %hit::2 3Clear | set %hit::3 3Clear | set %hit::4 3Clear
set %bl.chan #
proxycheck $2
}
alias proxycheck {
if ($1 == $null) { echo $color(notice) * Missing parameters: /proxycheck <ip> or to check your own ip /proxycheck localhost }
else {
if ($1 == localhost) { set %dnscheckproxy 1 | set %checkip $ip | proxycheck.progress | halt }
else { set %dnscheckproxy 1 | set %checkip $1 | proxycheck.progress }
}
}
alias -l proxycheck.progress {
.timer 1 1 dronebl | .timer 1 2 proxybl
.timer 1 4 rbl.efnet.org | .timer 1 5 dnsbl.swiftbl.org
.timer 1 6 saybl
}
alias -l dronebl { set %dbl dnsbl.dronebl.org | dns $revip(%checkip) $+ .dnsbl.dronebl.org }
alias -l proxybl { set %dbl dnsbl.proxybl.org | dns $revip(%checkip) $+ .dnsbl.proxybl.org }
alias -l rbl.efnet.org { set %dbl rbl.efnet.org | dns $revip(%checkip) $+ .rbl.efnet.org }
alias -l dnsbl.swiftbl.org { set %dbl dnsbl.swiftbl.org | dns $revip(%checkip) $+ .dnsbl.swiftbl.org }
alias -l saybl {
msg %bl.chan DroneBl Result $+([dronebl.org: %hit::1, ]) $+([proxybl.org: %hit::2, ]) $+([rbl.efnet.org: %hit::3, ]) $+([dnsbl.swiftbl.org: %hit::4, ])
}
on *:DNS:{
if (%dnscheckproxy == 1) {
if (%dbl == dnsbl.dronebl.org) {
if ($iaddress != $null) {
set %hit::1 4Found }
else { set %hit::1 3Clear }
}
if (%dbl == dnsbl.proxybl.org) {
if ($iaddress != $null) {
set %hit::2 4Found }
else { set %hit::2 3Clear }
}
if (%dbl == rbl.efnet.org) {
if ($iaddress != $null) {
set %hit::3 4Found }
else { set %hit::3 3Clear }
}
if (%dbl == dnsbl.swiftbl.org) {
if ($iaddress != $null) {
set %hit::4 4Found }
else { set %hit::4 3Clear }
}
unset %dbl | unset %dnsproxycheck
}
}
Comments