This will only need to be done by who use the UnrealIRCd and others IRCd, where is analogous line of the server notices.
I made some changes to the code based on the string you receive from the server. Hopefully you are actually see the real IP address of each connecting user in the format IPv4, and not "000.000.000.000".

In addition, I found one error in line: "if ($istok(%ps_servers,$nick,44)) || ($hget(ps,servers) == all) {"
It should be like this: "if ($istok(%ps_servers,$nick,44)) || (%ps_servers == all) {"

Find this piece of code in script:
Code
on *:SNOTICE:*Client connecting*:{
  if (%ps_work == on) {
    if ($istok(%ps_servers,$nick,44)) || ($hget(ps,servers) == all) {
      var %ps_mask $remove($wildtok($1-,*@*,1,32),$chr(40),$chr(41)) | var %ps_nick $gettok(%ps_mask,1,33) | var %ps_ip $gettok(%ps_mask,2,64) | var %ps_id $gettok($gettok(%ps_mask,1,64),2,33)
      if ($ps_detectip(%ps_ip)) proxyscanner_check %ps_ip %ps_id %ps_nick
    }
  }
}

And try replacing it with this piece of code:
Code
on *:SNOTICE:*Client connecting*:{
  if (%ps_work == on) {
    if ($istok(%ps_servers,$nick,44)) || (%ps_servers == all) {
      var %ps_mask $remove($wildtok($1-,*@*,1,32),$chr(40),$chr(41)) | var %ps_nick $gettok($gettok($1-,2,58),1,32) | var %ps_ip $gettok(%ps_mask,2,64) | var %ps_id $gettok(%ps_mask,1,64)
      if ($ps_detectip(%ps_ip)) proxyscanner_check %ps_ip %ps_id %ps_nick
    }
  }
}


Also, if you will be using ZLINE in "%ps_btype = ZLINE", then find this line:
Code
if (%ps_btype == ZLINE) .ZLINE $hget(ps-oip,%ps_dnsrip) %ps_btime %ps_breason

And replace with this line:
Code
if (%ps_btype == ZLINE) .ZLINE $+(*@,$hget(ps-oip,%ps_dnsrip)) %ps_btime %ps_breason


Try to run the script the command: "!ps start" - provided that your nickname is in the list of script admins "%ps_admins = YourNick".
Remember that the script will only to react to found IP addresses in the DNSBL databases from the list in alias "proxyscanner_list". But there will be no to react to pure connecting IP addresses.


P.S. I am already thinking to start updating the script to the new version. There are plans to create a full-fledged dialog box for controlling the script so that you no longer need to get into the script code, in order to avoid breakage. I will probably have to rewrite most of the code to improve its quality, taking into account the exploitation in different IRCd.




🌐 http://forum.epicnet.ru 📜 irc.epicnet.ru 6667 #Code | mIRC scripts, help, discuss, examples