]>
jfr.im git - irc/quakenet/newserv.git/blob - chanserv/newsearch/csns-qsuspendreason.c
2 * qsuspendreason functionality
5 #include "../../newsearch/newsearch.h"
6 #include "../chanserv.h"
10 void *qsuspendreason_exe(searchCtx
*ctx
, struct searchNode
*thenode
, void *theinput
);
11 void qsuspendreason_free(searchCtx
*ctx
, struct searchNode
*thenode
);
13 struct searchNode
*qsuspendreason_parse(searchCtx
*ctx
, int argc
, char **argv
) {
14 struct searchNode
*thenode
;
16 if (!(thenode
=(struct searchNode
*)malloc(sizeof (struct searchNode
)))) {
17 parseError
= "malloc: could not allocate memory for this search.";
21 thenode
->returntype
= RETURNTYPE_STRING
;
22 thenode
->exe
= qsuspendreason_exe
;
23 thenode
->free
= qsuspendreason_free
;
28 void *qsuspendreason_exe(searchCtx
*ctx
, struct searchNode
*thenode
, void *theinput
) {
29 authname
*ap
= (authname
*)theinput
;
30 reguser
*rup
= ap
->exts
[chanservext
];
31 if(!rup
|| !UHasSuspension(rup
) || !rup
->suspendreason
)
34 return rup
->suspendreason
->content
;
37 void qsuspendreason_free(searchCtx
*ctx
, struct searchNode
*thenode
) {