alias _proxy {
dialog -m pcontrol pcontrol
}
alias _proxykontrol {
sockclose pcontrol
sockopen pcontrol www.checker.freeproxy.ru 80
}
on *:sockopen:pcontrol: {
sockwrite -nt $sockname GET /checker/last_checked_proxies.php HTTP/1.1
sockwrite -nt $sockname Host: www.checker.freeproxy.ru
sockwrite -nt $sockname User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; tr; rv:1.8) Gecko/20051111 Firefox/1.5
sockwrite -nt $sockname Accept: application/x-shockwave-flash,text/xml,application/xml,application/xhtml+xml,text/html;q ...
sockwrite -nt $sockname Accept-Language: tr-TR,tr;q=0.8,en-us;q=0.5,en;q=0.3
sockwrite -nt $sockname Accept-Encoding: gzip,deflate
sockwrite -nt $sockname Accept-Charset: ISO-8859-9,utf-8;q=0.7,*;q=0.7
sockwrite -nt $sockname Keep-Alive: 300
sockwrite -nt $sockname Connection: keep-alive
sockwrite -nt $sockname Referer:
http://www.checker.freeproxy.ru/ sockwrite -nt $sockname Cookie: hotlog=1
sockwrite -nt $sockname Cache-Control: max-age=0
sockwrite -nt $sockname $crlf
}
on *:sockread:pcontrol: {
sockread %p
tokenize 32 %p
;echo -a 2 $1-
if $dialog(pcontrol) {
if $1- == <h2 align="center">Free SOCKS 4 proxy list:</h2> {
set %proxy 1
did -a pcontrol 3,4 == Socks 4 List ==
}
if $1- == <h2 align="center">Free SOCKS 5 proxy list:</h2> {
set %proxy 2
did -a pcontrol 3,4
did -a pcontrol 3,4 == Socks 5 List ==
}
if $1- == </table><br> && %proxy == 2 {
unset %proxy
}
if $1 == res && $2 == $chr(61) {
set %portn $right($gettok($3,1,43),-4)
set %ports $left($gettok($3,2,43),-1)
_listing
}
if $1 == name && $2 == $chr(61) && %proxy {
set %pip $right($left($3,-2),-1)
did -a pcontrol 3 Proxy IP: %pip
}
if port* iswm $1 && $2 == $chr(61) && %proxy {
did -a pcontrol 3 $left($1-,-1)
}
}
}
on *:sockclose:pcontrol: {
unset %proxy
if $dialog(pcontrol) {
did -e pcontrol 7
}
}
dialog pcontrol {
title "Proxy Finder"
size -1 -1 94 174
option dbu
tab "Tab 1", 5, -96 -98 500 400
list 4, 6 22 80 120, tab 5 size
button "Use selected", 8, 47 7 38 12, tab 5
button "Find proxy", 7, 7 7 38 12, tab 5
button "Close", 9, 6 145 38 12, tab 5, ok
box "", 10, 2 0 89 172, tab 5
text "Proxy finder v1.0", 11, 6 160 72 8, disable tab 5
tab "Tab 2", 6
list 3, 10 25 31 16, tab 6 size hsbar vsbar
}
on *:dialog:pcontrol:*:*: {
if $devent == sclick {
if $did == 7 {
did -b $dname 7
did -r $dname 3,4
_proxykontrol
}
if $did == 8 {
if $did(pcontrol,4).sel {
var %1 = $gettok($did(pcontrol,4).seltext,1,58)
var %2 = $gettok($did(pcontrol,4).seltext,2,58)
if $did(pcontrol,4).sel > $didwm(pcontrol,4, *,1) {
firewall -m5 on %1 %2
echo 3 -a * Selected proxy ( $+ $+(%1,:,%2) $+ ) is ready on SOCKS5.
}
else {
firewall -m4 on %1 %2
echo 3 -a * Selected proxy ( $+ $+(%1,:,%2) $+ ) is ready on SOCKS4.
}
}
else {
echo 2 -a * Please select a proxy which you want to use.
}
}
}
}
alias -l _listing {
var %i $did(pcontrol,3).lines
while 1 <= %i {
if $right($gettok($did(pcontrol,3,%i),1,32),-4) == %portn {
var %1 = $gettok($did(pcontrol,3,%i),3,32)
if $gettok($did(pcontrol,4,$did(pcontrol,4).lines),1,58) != %pip {
did -a pcontrol 4 %pip $+ : $+ $calc(%1 + %ports)
}
did -o pcontrol 3 %i IRC port: $calc(%1 + %ports)
break
}
dec %i
}
}
menu channel,status,menubar {
Proxy finder:_proxy
}