]>
jfr.im git - irc/quakenet/newserv.git/blob - chanserv/chanserv_relay.c
2 #include "../control/control.h"
4 int csa_docheckhashpass(void *source
, int cargc
, char **cargv
);
7 registercontrolhelpcmd("checkhashpass", NO_RELAY
, 3, csa_docheckhashpass
, "Usage: checkhashpass <username> <digest> ?junk?");
11 deregistercontrolcmd("checkhashpass", csa_docheckhashpass
);
14 int csa_docheckhashpass(void *source
, int cargc
, char **cargv
) {
15 nick
*sender
=(nick
*)source
;
20 controlreply(sender
, "CHECKHASHPASS FAIL args");
24 if (!(rup
=findreguserbynick(cargv
[0]))) {
25 controlreply(sender
, "CHECKHASHPASS FAIL user");
29 flags
= printflags(QUFLAG_ALL
& rup
->flags
, ruflags
);
30 if(UHasSuspension(rup
)) {
31 controlreply(sender
, "CHECKHASHPASS FAIL suspended %s %s %u", rup
->username
, flags
, rup
->ID
);
32 } else if(!checkhashpass(rup
, cargc
<3?NULL
:cargv
[2], cargv
[1])) {
33 controlreply(sender
, "CHECKHASHPASS FAIL digest %s %s %u", rup
->username
, flags
, rup
->ID
);
35 controlreply(sender
, "CHECKHASHPASS OK %s %s %u %s", rup
->username
, flags
, rup
->ID
, rup
->email
?rup
->email
->content
:"-");