rendered paste bodyalias 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 }
}