#include <string.h>
#include <stdio.h>
#include <unistd.h>
+#include "../lib/version.h"
+
+MODULE_VERSION(QVERSION)
#define CSG_BUFSIZE 1024
#define CSG_MAXSTARTPOINT 30
int csg_dogrep(void *source, int cargc, char **cargv) {
nick *sender=source;
+ reguser *rup=getreguserfromnick(sender);
+
+ if (!rup)
+ return CMD_ERROR;
if (cargc<1) {
chanservstdmessage(sender, QM_NOTENOUGHPARAMS, "grep");
csg_curfile=0;
csg_direction=0;
+
+ chanservwallmessage("%s (%s) used GREP %s", sender->nick, rup->username, cargv[0]);
+ cs_log(sender, "GREP %s", cargv[0]);
+
return csg_execgrep(sender, cargv[0]);
}
int csg_dorgrep(void *source, int cargc, char **cargv) {
int startpoint;
nick *sender=source;
+ reguser *rup=getreguserfromnick(sender);
+
+ if (!rup)
+ return CMD_ERROR;
if (cargc<2) {
chanservstdmessage(sender, QM_NOTENOUGHPARAMS, "rgrep");
return CMD_ERROR;
}
+ chanservwallmessage("%s (%s) used RGREP %s %s", sender->nick, rup->username, cargv[0], cargv[1]);
+ cs_log(sender, "RGREP %s %s", cargv[0], cargv[1]);
+
csg_curfile=startpoint;
csg_direction=1;
return csg_execgrep(sender, cargv[1]);
if (!pcre_exec(csg_curpat, NULL, linestart, strlen(linestart), 0, 0, NULL, 0)) {
chanservsendmessage(np, "%s", linestart);
if (++csg_matches >= csg_maxmatches) {
+ chanservstdmessage(np, QM_TRUNCATED, csg_maxmatches);
chanservstdmessage(np, QM_ENDOFLIST);
free(csg_curpat);
deregisterhandler(fd, 1);