]>
jfr.im git - irc/quakenet/newserv.git/blob - chanserv/usercmds/spewpassword.c
1 /* Automatically generated by refactor.pl.
4 * CMDNAME: spewpassword
7 * CMDDESC: Search for a password in the database.
8 * CMDFUNC: csu_dospewpass
9 * CMDPROTO: int csu_dospewpass(void *source, int cargc, char **cargv);
10 * CMDHELP: Usage: spewpassword <pattern>
11 * CMDHELP: Displays all users with a password that matches the specified pattern.
14 #include "../chanserv.h"
15 #include "../../lib/irc_string.h"
19 int csu_dospewpass(void *source
, int cargc
, char **cargv
) {
21 reguser
*rup
=getreguserfromnick(sender
);
30 chanservstdmessage(sender
, QM_NOTENOUGHPARAMS
, "spewpass");
34 cs_log(sender
, "SPEWPASS %s", cargv
[0]);
35 chanservwallmessage("%s (%s) using SPEWPASS (see log for password)", sender
->nick
, rup
->username
);
37 chanservstdmessage(sender
, QM_SPEWHEADER
);
38 for (i
=0;i
<REGUSERHASHSIZE
;i
++) {
39 for (dbrup
=regusernicktable
[i
]; dbrup
; dbrup
=dbrup
->nextbyname
) {
40 if (!UHasHelperPriv(dbrup
) && !match(cargv
[0], dbrup
->password
)) {
41 chanservsendmessage(sender
, "%-15s %-10s %-30s %s", dbrup
->username
, UHasSuspension(dbrup
)?"yes":"no", dbrup
->email
?dbrup
->email
->content
:"none set", dbrup
->lastuserhost
?dbrup
->lastuserhost
->content
:"none");
44 chanservstdmessage(sender
, QM_TOOMANYRESULTS
, 2000, "users");
50 chanservstdmessage(sender
, QM_RESULTCOUNT
, count
, "user", (count
==1)?"":"s");