my connection doesnt want to join.. i always get a Auth. Failed error
my passport is updated but it just doesnt want to join a room..
i hope someone would be able to get my connection working/fixed :$
and i hope that someone would help me to get everything decoded.. (like the nicklist)
thanks in advance
alias debug {
if (!$window(@Debug)) window -n @Debug
echo -t @Debug $sockname $+ $1-
}
alias verbindmirc {
var %port = $rand(1111,9999)
while (!$portfree(%port)) { var %port $rand(1111,9999) }
socklisten hermirc %port
server localhost %port
}
;MSN OCXless Auth Generator - By eXonyte [modded by The Gate Keeper]
alias dc.auth {
if ($prop == open) return IRCVERS IRC8 MSN-OCX!9.02.0503.2301 $crlf $iif((room* iswm $1) && (%nick),NICK %nick $crlf) AUTH $2 I $+(:GKSSP\0\0\0,$chr(3),\0\0\0,$chr(1),\0\0\0)
if (*:GKSSP* iswm $1-) { var %x, %re = .*:GKSSP\\0.*\\0\\0.*\\0\\0(.*), %y = $regsub($1-,%re,,%x) | tokenize 32 $regml(1) }
bset &h1 1 101 100 112 123 125 101 124 119 120 114 100 115 101 125 125 117 $str(54 $+ $chr(32),48) $mh.tobin($1-)
bset &h2 1 15 14 26 17 23 15 22 29 18 24 14 25 15 23 23 31 $str(92 $+ $chr(32),48) $mh.hex2bin($md5(&h1,1))
return $+(:GKSSP\0\0\0,$chr(2),\0\0\0,$chr(3),\0\0\0,$mh.unhex($md5(&h2,1)))
}
alias mh.tobin {
var %l 1, %r, %x $len($1)
while (%l <= %x) {
if ($mid($1,%l,1) == \) {
inc %l
if ($mid($1,%l,1) == 0) %r = %r 0
elseif ($mid($1,%l,1) == t) %r = %r 9
elseif ($mid($1,%l,1) == n) %r = %r 10
elseif ($mid($1,%l,1) == r) %r = %r 13
elseif ($mid($1,%l,1) == b) %r = %r 32
elseif ($mid($1,%l,1) == c) %r = %r 44
elseif ($mid($1,%l,1) == \) %r = %r 92
}
else %r = %r $asc($mid($1,%l,1))
inc %l
}
return %r
}
alias mh.hex2bin {
var %l 1, %r, %x $len($1)
while (%l <= %x) {
%r = %r $base($mid($1,%l,2),16,10)
inc %l 2
}
return %r
}
alias mh.unhex {
var %l 1, %r, %x $remove($1-,$chr(32)), %y $len(%x)
while (%l <= %y) {
if ($mid(%x,%l,2) == 00) %r = %r $+ \0
elseif ($mid(%x,%l,2) == 0A) %r = %r $+ \n
elseif ($mid(%x,%l,2) == 0D) %r = %r $+ \r
elseif ($mid(%x,%l,2) == 2C) %r = %r $+ \c
elseif ($mid(%x,%l,2) == 09) %r = %r $+ \t
elseif ($mid(%x,%l,2) == 5C) %r = %r $+ \\
elseif ($mid(%x,%l,2) == 20) %r = %r $+ \b
else %r = %r $+ $chr($base($mid(%x,%l,2),16,10))
inc %l 2
}
return %r
}
alias pass sockwrite -tn $hget(sensiva,$chan) mode $me +h $$?*="Password"
alias msn {
if (!$hget(sensiva)) hmake sensiva 10
sockopen normale.controle 207.68.167.253 6667
}
alias normale.controle {
if ($sock($sockname)) sockwrite -n $sockname $crlf
else .timerhousocket off
}
on *:sockopen:normale.controle:{ .timerhousocket 0 8 normale.controle | verbindmirc | sockwrite -n $sockname $dc.auth($sockname,GateKeeperPassport).open | var %port = $rand(1111,9999) | while (!$portfree(%port)) { inc %port } }
on *:sockread:normale.controle:{
var %buffer | sockread %buffer | tokenize 32 %buffer | debug $1-
if ($1 == AUTH) {
if (:GKSSP* iswm $4) sockwrite -n $sockname $1-3 $dc.auth($4 $+ $sock($sockname).ip)
elseif (:ok == $4) sockwrite -n $sockname AUTH GateKeeperPassport S : $+ $base($len(%ticket),10,16,8) $+ %ticket $+ $base($len(%profile),10,16,8) $+ %profile $+ $lf $+ PROP $ SUBSCRIBERINFO : $+ %subinfo
else sockwrite -n $sockname NICK $iif(%nick,%nick,DC $+ $rand(000,999))
}
elseif ($2 == 001) sockwrite -n mirc $1- $crlf $1 005 $dc.nick(%n,$3) IRCX CHANTYPES=# PREFIX=(qov).@+ CHANMODES=b,k,l,defhimnprsStuwWx NETWORK=MSN :Are supported by this server
elseif ($2 == 908) { sockwrite -n mirc $1- | echo 4 -st SubscriberInfo Failed - Please Update Subinfo & Type /msn }
elseif ($2 == 910) { sockwrite -n mirc $1- | echo 4 -st Lookup $right($4-,-1) - Please Update Cookies & Type /msn | sockclose $sockname }
elseif ($2 == 702) { echo $color(info) -at $hget(sensiva,chan) Not Found }
elseif ($2 == 613) {
echo $color(info) -at $hget(sensiva,chan) Found... Joining
var %sockname room. $+ $r(A,Z) $+ $r(A,Z) $+ $r(A,Z) $+ $r(A,Z)
sockopen %sockname $right($4,-1) $5
sockmark %sockname $right($4,-1)
hadd sensiva $hget(sensiva,chan) %sockname
}
}
on *:sockopen:room*:{ sockwrite -n $sockname $dc.auth($sockname,GateKeeperPassport).open | var %port = $rand(1111,9999) | while (!$portfree(%port)) { inc %port } | sockmark $sockname $hget(sensiva,chan) }
on *:sockread:room*:{
var %buffer | sockread %buffer | tokenize 32 %buffer | debug $1-
if ($1 == PING) sockwrite -n $sockname PONG $2-
elseif ($2 isin 002 003 004 251 252 253 254 255 265 266 422) return
elseif ($1 == AUTH) {
if (:GKSSP* iswm $4) sockwrite -n $sockname $1-3 $dc.auth($4 $+ $sock($sockname).ip)
elseif (:ok == $4) {
sockwrite -n $sockname $1-3 $+(:$base($len(%ticket),10,16,8),%ticket,$base($len(%profile),10,16,8),%profile,$crlf,User $me * * :Sensiva $crlf)
sockwrite -n $sockname PROP $ MSNPROFILE :0
sockwrite -n $sockname PROP $ SUBSCRIBERINFO : $+ %subinfo
}
}
elseif ($2 == 001) sockwrite -n $sockname JOIN $sock($sockname).mark
elseif ($2 == 353) { .var %i = 5, %n | while (%i < $numtok($1-,32)) { inc %i | .var %n = %n $gettok($gettok($1-,%i,32),-1,44) } | sockwrite -n mirc $1-5 : $+ %n | return }
elseif ($2 == 908) { echo 4 -st SubscriberInfo Failed - Please Update Subinfo & Type /join $sock($sockname).mark }
elseif ($2 == 910) { echo 4 -st Room $right($5-,-1) - Please Update Cookies & Type /join $sock($sockname).mark | sockclose $sockname }
elseif ($2 == JOIN) sockwrite -n mirc $1-2 $4
elseif ($2 == PRIVMSG) { $iif($left($4,3) == : S,sockwrite -n mirc $1-3 : $+ $left($6-,-1),sockwrite -n mirc $1-) | return }
else sockwrite -n mirc $1-
}
on *:socklisten:hermirc: { sockaccept Mirc | sockclose $sockname }
on *:sockread:Mirc:{
var %buffer | sockread %buffer | tokenize 32 %buffer | debug $1-
if ($1 == Join) {
if ($sock($hget(sensiva,$2))) { sockwrite -n $ifmatch $1- }
else { sockwrite -n normale.controle FINDS $2 | hadd sensiva chan $2 }
}
elseif ($sock($hget(sensiva,$2))) { sockwrite -n $ifmatch $1- }
elseif ($sock($hget(sensiva,$comchan($2,1)))) { sockwrite -n $ifmatch $1- }
elseif ($sock(room*,0)) { sockwrite -n room* $1- | halt }
}