X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=include%2Fsend.h;h=1825e4db2b5a9a98519f15f7bc5766dff8de0130;hb=dc84c4782beab4f9ed5e63f988fc9e4c73141da0;hp=5554050fa3bc3dbc3612ff456287cd99cfe8de81;hpb=cc05a230ac079fa15a2e43e6e68ef7126128cefd;p=ircu2.10.12-pk.git diff --git a/include/send.h b/include/send.h index 5554050..1825e4d 100644 --- a/include/send.h +++ b/include/send.h @@ -1,7 +1,6 @@ -/* - * send.h - * - * $Id$ +/** @file send.h + * @brief Send messages to certain targets. + * @version $Id$ */ #ifndef INCLUDED_send_h #define INCLUDED_send_h @@ -22,8 +21,11 @@ struct MsgBuf; /* * Prototypes */ +extern struct SLink *opsarray[]; + extern void send_buffer(struct Client* to, struct MsgBuf* buf, int prio); +extern void kill_highest_sendq(int servers_too); extern void flush_connections(struct Client* cptr); extern void send_queued(struct Client *to); @@ -42,6 +44,12 @@ extern void sendcmdto_prio_one(struct Client *from, const char *cmd, const char *tok, struct Client *to, const char *pattern, ...); +/* Send command to servers by flags except one */ +extern void sendcmdto_flag_serv_butone(struct Client *from, const char *cmd, + const char *tok, struct Client *one, + int require, int forbid, + const char *pattern, ...); + /* Send command to all servers except one */ extern void sendcmdto_serv_butone(struct Client *from, const char *cmd, const char *tok, struct Client *one, @@ -60,26 +68,38 @@ extern void sendcmdto_channel_butserv_butone(struct Client *from, const char *tok, struct Channel *to, struct Client *one, + unsigned int skip, const char *pattern, ...); +/* Send command to all servers interested in a channel */ +extern void sendcmdto_channel_servers_butone(struct Client *from, + const char *cmd, + const char *tok, + struct Channel *to, + struct Client *one, + unsigned int skip, + const char *pattern, ...); + /* Send command to all interested channel users */ extern void sendcmdto_channel_butone(struct Client *from, const char *cmd, const char *tok, struct Channel *to, struct Client *one, unsigned int skip, const char *pattern, ...); -#define SKIP_DEAF 0x01 /* skip users that are +d */ -#define SKIP_BURST 0x02 /* skip users that are bursting */ -#define SKIP_NONOPS 0x04 /* skip users that aren't chanops */ +#define SKIP_DEAF 0x01 /**< skip users that are +d */ +#define SKIP_BURST 0x02 /**< skip users that are bursting */ +#define SKIP_NONOPS 0x04 /**< skip users that aren't chanops */ +#define SKIP_NONVOICES 0x08 /**< skip users that aren't voiced (includes + chanops) */ /* Send command to all users having a particular flag set */ extern void sendwallto_group_butone(struct Client *from, int type, struct Client *one, const char *pattern, ...); -#define WALL_DESYNCH 1 -#define WALL_WALLOPS 2 -#define WALL_WALLUSERS 3 +#define WALL_DESYNCH 1 /**< send as a DESYNCH message */ +#define WALL_WALLOPS 2 /**< send to all +w opers */ +#define WALL_WALLUSERS 3 /**< send to all +w users */ /* Send command to all matching clients */ extern void sendcmdto_match_butone(struct Client *from, const char *cmd,