mIRC Home    About    Download    Register    News    Help

Print Thread
Joined: May 2011
Posts: 24
S
SiD69 Offline OP
Ameglian cow
OP Offline
Ameglian cow
S
Joined: May 2011
Posts: 24
the title describ the problem
when you dns someone on ipv6, it work, if you /dns ipv6, won't reply anything

*** Looking up host of Poppabear
*** Resolved 2001:470:1f11:6b5::2 to ipv6.servxtreme.info

*** Looking up ipv6.servxtreme.info
*** Resolved ipv6.servxtreme.info to 2001:470:1f11:6b5::2

[22:54:58] *** Looking up host of 2001:470:1f11:6b5::2

nothing never come

Joined: Oct 2003
Posts: 3,918
A
Hoopy frood
Offline
Hoopy frood
A
Joined: Oct 2003
Posts: 3,918
Can't reproduce this. Please list your mIRC version, OS, and any other relevant info (how you are connected to IPv6, etc).

Code:
/dns 2001:470:1f11:6b5::2
* Dns resolving 2001:470:1f11:6b5::2
-
* Dns resolved 2001:470:1f11:6b5::2 to ipv6.servxtreme.info
-


And see if /dns -6 2001:470:1f11:6b5::2 works


- argv[0] on EFnet #mIRC
- "Life is a pointer to an integer without a cast"
Joined: May 2011
Posts: 24
S
SiD69 Offline OP
Ameglian cow
OP Offline
Ameglian cow
S
Joined: May 2011
Posts: 24
that is not a mirc bug, my bad
that alias is broking it
if anyone see how to fix it can you plz tell me how;p


dns {
if ($1 == $null) { dns | return }
elseif ($1 == -c) { dns -c | return }
var %dns,%type
if ($1 == -h) { %dns = $2 | %type = -h }
elseif (. isin $1) { if (@ isin $1) %dns = $gettok($1,2,64) | else %dns = $1 | %type = -h }
else { %dns = $_nc($1) | %type = -n }
if ($show) {
_Q.dns _dnsshow _dnsfail %type %dns

if (%type == -n) set -u %::nick %dns
else set -u %::address %dns
set -u %:echo echo $color(other) -t $+ $_cfgi(eroute)
theme.text DNS
}
else _Q.dns halt halt %type %dns
}
; _Q.dns command errorcmd -h/-n nick/addr1 nick/addr2 ...
; command is _s2p, run for each resolved ($nick/$raddress/$iaddress/$naddress set)
; errorcmd is _s2p, run if resolve fails (etc. set) halt is ok etc.
; -h for hosts, -n for nicks
_Q.dns {
if ($3 == -n) _notconnected
:loop
var %whom = $cid $+ . $+ $iif($3 == -n,:) $+ $iif(@ isin $4,$gettok($4,2-,64),$4)
hadd pnp.qdns %whom $hget(pnp.qdns,%whom) $1-2
.!dns $iif($3 == -h,-h) $4
if ($5) {
tokenize 32 $1-3 $5-
goto loop
}
}

im running PnP scripts

Last edited by SiD69; 22/07/12 10:06 AM.
Joined: Oct 2003
Posts: 3,918
A
Hoopy frood
Offline
Hoopy frood
A
Joined: Oct 2003
Posts: 3,918
Without reading too far into that blob of really obtuse code, my guess is that the script simply does not support ipv6 addresses. It seems like it's checking for a '.' in the address to see if it should dns a nickname or an address, which ipv6 won't give you. I could be reading it wrong though. Either way, you should check for a later version of the script, since you are unlikely to get tech support for third party scripts here (you can certainly try in the Scripts & Popups forum though!)


- argv[0] on EFnet #mIRC
- "Life is a pointer to an integer without a cast"
Joined: May 2011
Posts: 24
S
SiD69 Offline OP
Ameglian cow
OP Offline
Ameglian cow
S
Joined: May 2011
Posts: 24
elseif (. isin $1) { if (@ isin $1) %dns = $gettok($1,2,64) | else %dns = $1 | %type = -h }
elseif (: isin $1) { if (@ isin $1) %dns = $gettok($1,2,64) | else %dns = $1 | %type = -h }


got it fixed by adding the second line
thanks for the cue:P

Joined: Dec 2002
Posts: 1,541
L
Hoopy frood
Offline
Hoopy frood
L
Joined: Dec 2002
Posts: 1,541
not wanting to steal anybody's thunder here, all you really needed was the second comparison, not a whole new line.

elseif ((. isin $1) || (: isin $1)) { if (@ isin $1) %dns = $gettok($1,2,64) | else %dns = $1 | %type = -h }

should work just fine.


Those who fail history are doomed to repeat it

Link Copied to Clipboard