X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=src%2Fmodcmd.h;h=9ef35dceec03ec55a4fbf81e459640f1d2e91bfc;hb=fc6ec41a5a09a61f6880c77ba5aa50e4e78387f5;hp=f1ae636616735d068589a513f216b348f6afb34e;hpb=bfe215c2fe8eb715e4e7b929aa13d87066143776;p=srvx.git diff --git a/src/modcmd.h b/src/modcmd.h index f1ae636..9ef35dc 100644 --- a/src/modcmd.h +++ b/src/modcmd.h @@ -1,5 +1,5 @@ /* modcmd.h - Generalized module command support - * Copyright 2002-2004 srvx Development Team + * Copyright 2002-2006 srvx Development Team * * This file is part of srvx. * @@ -32,7 +32,7 @@ struct modcmd; #define MODCMD_FUNC(NAME) int NAME(struct userNode *user, UNUSED_ARG(struct chanNode *channel), UNUSED_ARG(unsigned int argc), UNUSED_ARG(char **argv), UNUSED_ARG(struct svccmd *cmd)) typedef MODCMD_FUNC(modcmd_func_t); -#define SVCMSG_HOOK(NAME) int NAME(struct userNode *user, struct userNode *target, char *text, int server_qualified); +#define SVCMSG_HOOK(NAME) int NAME(struct userNode *user, struct userNode *target, const char *text, int server_qualified) typedef SVCMSG_HOOK(svcmsg_hook_t); DECLARE_LIST(svccmd_list, struct svccmd*); @@ -75,6 +75,12 @@ DECLARE_LIST(module_list, struct module*); #define SVCCMD_DEBIT 0x000002 #define SVCCMD_NOISY 0x000004 +/* We do not use constants for 0 (no logging) and 1 (regular logging) as those + * are used very often and are intuitive enough. + */ +#define CMD_LOG_STAFF 0x02 +#define CMD_LOG_OVERRIDE 0x04 + /* Modularized commands work like this: * * Modules define commands. Services contain "bindings" of those @@ -157,7 +163,7 @@ struct module *module_register(const char *name, struct log_type *clog, const ch struct module *module_find(const char *name); /* Register a command-using service. */ -struct service *service_register(struct userNode *bot, char trigger); +struct service *service_register(struct userNode *bot); /* Find a service by name. */ struct service *service_find(const char *name); /* Bind one command to a service. */