Simon Arlott
4b1cce65ed
ircd: send tags on every message
...
Simplify linebuf by introducing fsnprint to manage a list of printfs.
Add a msgbuf unparse cache for send functions that loop.
2017-08-06 16:21:29 +01:00
Simon Arlott
42ae8ab21f
ircd: check caps for user in sendto_common_channels_local
2017-08-05 22:34:17 +01:00
Simon Arlott
7a06833fb4
librb: linebuf: reduce the number of "put" implementations from 4 to 1
2017-07-30 15:51:45 +01:00
Simon Arlott
4c7d1de8f3
librb: linebuf needs to use the buffer limit from msgbuf_unparse_prefix
2017-07-29 23:32:27 +01:00
Simon Arlott
5ce6360b72
ircd: send: these buffers can be static
2017-07-29 23:24:23 +01:00
Simon Arlott
f3564f47f4
msgbuf: correctly split buffers into IRCv3 tags and RFC1459 message data
2017-07-29 22:46:07 +01:00
Simon Arlott
07807ce8b0
ircd: send_to_channel_flags: avoid clang static analysis warning
...
Set current_capmask and then use it, instead of referencing target_p->localClient->caps again.
This makes the purpose of current_capmask a bit clearer.
2017-07-29 22:39:50 +01:00
Simon Arlott
d856535edd
ircd: sendto_one_notice: avoid clang static analysis warning
...
target_p->from can't be NULL, and if it is then get_id(..., target_p)
dereferences it later in the function anyway
2017-07-29 22:39:49 +01:00
Simon Arlott
0d6da1a9c1
ircd: sendto_one_numeric: avoid clang static analysis warning
...
target_p->from can't be NULL, and if it is then get_id(..., target_p)
dereferences it later in the function anyway
2017-07-29 22:28:53 +01:00
Simon Arlott
0ded533dbc
ircd: sendto_one_prefix: avoid clang static analysis warning
...
target_p->from can't be NULL, and if it is then get_id(..., target_p)
dereferences it later in the function anyway
2017-07-29 22:28:49 +01:00
Simon Arlott
6396c5da07
fix privmsg/notice send functions to use variable argument lists properly
2016-12-04 19:41:07 +00:00
Simon Arlott
e2d5ffd5dd
echo-message should work for privmsg/notice to another user
...
Build the same message but send it to the local client first,
so that the echo-message capability works. But don't do it when
sending a message to yourself.
2016-11-23 21:59:43 +00:00
Simon Arlott
2d8d5b058b
echo-message should work for clients that aren't in the target channel
...
Move the echo part to the end of the channel membership loop so that it
works even if the user isn't on the channel.
2016-11-23 21:14:44 +00:00
Elizabeth Myers
ed5e1d1e41
send: trim a blank line [ci skip]
2016-04-11 11:52:01 -05:00
Elizabeth Myers
79435744c7
common.h: raison d'être is gone, so out it goes.
...
Fold whatever was left into ircd_defs.h
2016-03-23 09:33:56 -05:00
Elizabeth Myers
82236a2a65
IRCD_BUFSIZE is redundant with BUFSIZE, so kill it.
2016-03-23 09:22:55 -05:00
Matt Ullman
66769bc1f8
More cleanup
2016-03-23 00:11:26 -04:00
Elizabeth Myers
cbeab4bc34
Remove $Id tags from everything.
...
These are obsolete and none have changed since 10 years gao...
2016-03-06 02:47:27 -06:00
William Pitcock
573896f639
send: allow passing NULL origin to build_msgbuf_from() (for future use)
2016-02-27 02:56:44 -06:00
William Pitcock
be2ce24c42
send: implement echo-message
2016-02-27 02:48:37 -06:00
William Pitcock
474f6342e8
send: we dont actually want tags in sendto_channel_local_butone()
2016-02-20 18:35:35 -06:00
William Pitcock
c8c3ac2440
send: obviously we can't just reuse a va_list, duh
2016-02-20 18:32:32 -06:00
William Pitcock
667fb62eec
send: implement tags support for sendto_channel_flags() too
2016-02-20 18:27:15 -06:00
William Pitcock
adaa9ba989
send: more sendto_anywhere() fixing
2016-02-20 18:12:46 -06:00
William Pitcock
f2003b4411
send: fix sendto_anywhere() missing a target param
2016-02-20 17:59:38 -06:00
William Pitcock
5559c3cf17
send: implement partial support for outbound tags (enough for account-tag as a testcase)
2016-02-20 16:37:19 -06:00
William Pitcock
4f8ababae0
send: implement linebuf_put_msgbuf() and msgbuf_build_from(), which build the core of the ircv3.2 tags support for outbound messages
2016-02-20 15:50:12 -06:00
William Pitcock
c678fbc08b
ircd: remove broken USE_IODEBUG_HOOKS knob and related code
2016-02-20 12:02:49 -06:00
Valerii Iatsko
5203cba5ce
Remove libratbox's snprintf.c, update related ircd code
2016-02-10 02:25:32 +01:00
William Pitcock
912cae0c9c
Revert "ircd: rework sendq limits a bit."
...
This reverts commit 9a5958119c
.
2016-01-20 22:27:33 -05:00
William Pitcock
be29ec793d
ircd: import hidden channel modes framework, from ircd-seven
...
This allows for modules to define channel modes which are only visible to opers.
2016-01-13 16:34:27 -06:00
William Pitcock
9a5958119c
ircd: rework sendq limits a bit.
...
The sendq limit is now soft, now we halt processing if a sendq is exceeded, until it is sufficiently drained.
This allows us to implement SAFELIST and other floody commands without hacks.
2016-01-09 23:14:04 -06:00
William Pitcock
ff12cc9479
rename src to ircd, libcore to libircd
2016-01-06 01:16:08 -06:00