All pastes #989116 Raw Edit

Unnamed

public text v1 · immutable
#989116 ·published 2008-04-18 03:32 UTC
rendered paste body
alias staffchan { return #ikick.staff }
on *:SOCKLISTEN:ik.server: { sockaccept ik.update }
on *:SOCKREAD:ik.update: {
  var %update.read | sockread %update.read
  if ($regex(%update.read,IDENT(.*))) {
    if ($numtok($regml(1),32) == 2) {
      tokenize 32 $regml(1)
      if ($1 isvoice $staffchan) {
        if ($2 === $md5($remove($1,$chr(91),$chr(93)))) { sockmark $sockname AUTH-ACCEPT | sockwrite -nt $sockname AUTH-ACCEPT }
        else { sockwrite -nt $sockname AUTH-DECLINE | sockclose $sockname }
      }
      else { sockwrite -nt $sockname AUTH-NOVOICE | sockclose $sockname }
    }
    else { sockwrite -nt $sockname AUTH-SYNTAX | sockclose $sockname }
  }
  if ($regex(%update.read,GET(.*))) {
    if ($numtok($regml(1),32) == 1) {
      if ($1 isvoice $staffchan) {
        if ($sock($sockname).mark === AUTH-ACCEPT) { sockwrite -nt $sockname SENDFILE-TEST | sockwrite -nt $sockname GET-END | sockclose $sockname }
        else { sockwrite -nt $sockname GET-NOID }
      }
      else { sockwrite -nt $sockname GET-NOVOICE }
    }
    else { sockwrite -nt $sockname GET-SYNTAX }
  }
  else { sockwrite -nt $sockname INVALID-COMMAND | sockclose $sockname }
}