Ranged IP ScanKicker

Ranged IP ScanKicker

mIRC snippet that scan IP based on simple IP or wildacards. You can use this code in order to protect your channel from abusiv users.

Postat de Copyright Categorie Review user Vizualizari Data
BLKoldSUN BLKoldSUN chanops Cod testat 515 2024-08-11 09:32:07

alias -l scan.get {
  set %adrs $$input(Enter address or IP. Search uses *wildcards*. $& 
    $crlf $+ Eg. 127 would match all IP's that have 127 in them. $& 
    $crlf $+ NOTE : Input may consist of both letters and numbers.,ew,Enter Address For Scan&Kick!)
}

alias scan {
  if ($1 == +k) {
    if ($me isop $chan) {
      var %scan.cmd kick
      if ($2 != $null) var %adrs $2
      else scan.get
    }
    else { echo -a [Ranged IP Kick] You are not OP on $chan $+ . | return }
  }
  elseif ($1 == +kb) {
    if ($me isop $chan) {
      var %scan.cmd ban
      if ($2 != $null) var %adrs $2
      else scan.get
    }
    else { echo -a [Ranged IP Ban] You are not OP on $chan $+ . | return }
  }
  elseif ($1 == $null) scan.get
  else var %adrs $1
  var %i $nick($chan,0)
  while (%i) {
    if (%adrs isin $address($nick($chan,%i),0)) {
      if (!%scan.cmd) echo -a 4Scan Result for 3* $+ %adrs $+ * !!! $nick($chan,%i) $address($nick($chan,%i),1)
      elseif (%scan.cmd == kick) kick $chan $nick($chan,%i) IP matches with requested IP for kicking : 3* $+ %adrs $+ *
      elseif (%scan.cmd == ban) ban -ku60 $chan $nick($chan,%i) IP matches with requested IP for kick/banning : 3* $+ %adrs $+ *
      inc %scan.found
    }
    dec %i
  }
  if (%scan.found == $null) echo -a 4Scan Result NOT found for 3* $+ %adrs $+ * !!! 
  unset %scan.found
  unset %adrs
}

menu channel {
  [Ranged IP ScanKicker] 
  .Scan on $chan:scan
  .ScanKick on $chan:scan +k
  .ScanKickBan on $chan:scan +kb
}