All pastes #963997 Raw Edit

James

public text v1 · immutable
#963997 ·published 2008-03-30 23:26 UTC
rendered paste body
ON $*:TEXT:/^[!@]IP$/i:#;[
    if ($readini(Sets.ini,$+($network,:,$chan),IP)) { halt }
    elseif ($2 == $null) {
      notice $nick $logo(Syntax Error) [!@]IP $+(<,$c1(IP Address),>)
    }
    else {
      if ($remove($2,.) !isnum) {
        set $+(%,DNS.,$2) %display
        .dns $2
      }
      else {
        sockopen $+(IP.,$ticks,.,$nick) www.melissadata.com 80
        sockmark $+(IP.,$ticks,.,$nick) $+(%Display,*,$replace($2,$chr(32),_,+,_)))
      }
    }  
  }
  if (IP.* iswm $sockname) {
    sockwrite -nt $sockname GET $+(/lookups/iplocation.asp?ipaddress=,$2) HTTP/1.1
    sockwrite -nt $sockname Host: www.melissadata.com
  }
  if (IP.* iswm $sockname) {
    if ($regex(%Socket,/The IP address <b>(.*)<\/b> is not valid./)) {
      %Display $Logo(IP) Invalid IP!
      unset %IP. [ $+ [ %ID ] ]
      sockclose $sockname
    } 
    if ($regex(%Socket,/<tr><td align="right">(.*)<\/td><td><b>(.*)<\/b><\/td><\/tr>/)) {
      if ($regml(1) != ISP) set $+(%,IP.,%ID) $($+(%,IP.,%ID),2) $remove($Regml(1) $+ : $C1($Regml(2)),&nbsp;) $X
      else {
        %Display $Logo(IP) $($+(%,IP.,%ID),2) $remove($Regml(1) $+ : $C1($Regml(2)),&nbsp;) $Web(Melissadata.com)
        unset %IP. [ $+ [ %ID ] ]
        sockclose $sockname
      }
    }
  }
ON *:DNS:{
  if ($($+(%,DNS.,$DNS(1)),2)) {
    sockopen $+(IP.,$ticks,.,$nick) www.melissadata.com 80
    sockmark $+(IP.,$ticks,.,$nick) $+($($+(%,DNS.,$DNS(1)),2),*,$DNS(1).ip)
    unset %DNS. [ $+ [ $DNS(1) ] ] 
  }
}