William Pitcock
85368a13d3
ircd: rewrite SOCKET_ERROR as I_SOCKET_ERROR
2016-03-20 01:44:00 -05:00
William Pitcock
1859e9d7d7
ircd: remove basically entirely pointless ServerInfo.hub ( closes #167 )
2016-03-19 23:05:07 -05:00
William Pitcock
72b51232a9
ensure we do not distribute flex/bison files
2016-03-19 19:23:08 -05:00
Elizabeth Myers
9b8e9eb321
config.h delenda est
2016-03-19 19:14:26 -05:00
William Pitcock
43f06d8d8c
ircd/sslproc: same for zlib_ok
2016-03-19 00:58:57 -05:00
William Pitcock
bfc44622c8
ircd: do not shadow internal openssl symbol "ssl_ok" (yeah, i know)
2016-03-19 00:57:32 -05:00
William Pitcock
7cc67225cb
sslproc: return after calling free_ssl_daemon() when in sandbox ipc service routine
2016-03-19 00:04:38 -05:00
William Pitcock
61eb4ba64a
ircd: link libircd with -no-external
2016-03-18 23:14:38 -05:00
Elizabeth Myers
c084fcafec
ircd: fix a really retarded GCC warning by being anal retentively "standards compliant"
2016-03-18 15:53:43 -05:00
Elizabeth Myers
1db8a31395
modules: fix stupid GCC false positive warning.
...
This invocation of strlen is on a constant string and should be folded
by any sane compiler (GCC included), but it warns anyway because GCC is
stupid.
2016-03-18 15:32:33 -05:00
William Pitcock
1ca8cd5276
parse: ensure that aliases have a sufficient number of parameters before trying to process them
2016-03-17 23:13:22 -05:00
Elizabeth Myers
617144af7a
dns: remove unneeded defines
2016-03-14 22:15:28 -05:00
Elizabeth Myers
9ca15a2679
Merge branch 'master' of github.com:charybdis-ircd/charybdis
2016-03-14 22:14:28 -05:00
Simon Arlott
532f83a70a
ircd: Don't refer to the IP address as a "netmask" in error messages
2016-03-14 22:38:04 +00:00
Elizabeth Myers
068c6c4a2b
dns: use a dictionary for query storage
2016-03-13 03:23:41 -05:00
Elizabeth Myers
9abdcf1c64
modules: can .la suffix.
...
.la archives are prohibited by most Linux distributions because they
clutter up the linker. They may get caught up as victims in scripts that
purge .la files. Besides, .la files don't matter for simple loadable
modules on most systems.
So, what we do now instead is just use the platform suffix detected by
libtool.
2016-03-12 20:10:46 -06:00
Elizabeth Myers
50f842125a
authd: crap, C was taken already, rename reload to H.
2016-03-10 08:07:29 -06:00
Elizabeth Myers
6445c1cf0b
rehash: don't restart authd for DNS reloads
...
This could lead to pretty nasty things, like losing DNS (and in the
future, ident) queries. That's a Bad Thing™.
2016-03-09 03:46:04 -06:00
Elizabeth Myers
503727d1ee
More bool conversions
2016-03-09 02:19:31 -06:00
Elizabeth Myers
1b916de505
More bool conversions [ci skip]
2016-03-09 02:10:21 -06:00
Elizabeth Myers
f66f0baa67
More bool conversions
2016-03-09 02:00:40 -06:00
Elizabeth Myers
550e851c5e
Merge branch 'master' of github.com:charybdis-ircd/charybdis into elizafox-cleanups
2016-03-09 01:41:10 -06:00
Elizabeth Myers
3c7d6fcce7
Message handlers should return void.
...
Also fix up some return values and stuff to use bool (or void if
nothing). I just did it whilst I was here.
According to jilles, the return value used to signify whether or not the
client had exited. This was error-prone and was fixed a long, long time
ago, but the return value was left int for historical reasons.
Since the return type is not used (and has no clear use case anyway),
it's safe to just get rid of it.
2016-03-09 01:37:03 -06:00
William Pitcock
ea111ea544
ircd: further cleanup of YES/NO
2016-03-08 13:52:48 -06:00
William Pitcock
881acf00c6
ircd: fix up some iwarn() calls which referred to L_MAIN
2016-03-08 13:47:41 -06:00
William Pitcock
3089f59c10
modules: using labs() for date math is unsafe
2016-03-08 13:46:19 -06:00
William Pitcock
d2e0b78f6c
s_conf: remove YES/NO references
2016-03-08 13:45:29 -06:00
Elizabeth Myers
6287d57fa9
s_user: clean up return types and can YES/NO.
2016-03-08 05:06:29 -06:00
Elizabeth Myers
07554369bd
Detect stdbool.h and add conformant shims if it isn't available
...
Charybdis requires C99 already, so it's high time we start using
stdbool. I've converted a few pieces of code already.
A lot of the old code that uses YES/NO should probably be updated too
because that's fucking hideous.
2016-03-08 04:54:04 -06:00
Elizabeth Myers
55799c6b4d
dns: prune worthless function.
2016-03-08 03:25:21 -06:00
Elizabeth Myers
8a26cd1973
dns: clean up awful hacks.
...
We now have a resolver cache which we init on startup.
2016-03-08 03:22:25 -06:00
Elizabeth Myers
394b8dde17
authd: allow querying the list of DNS servers.
...
This was an asston of pain, and it still feels "dirty" as it introduces
an async call where there normally wouldn't be one. Better
implementation more than welcome.
2016-03-08 02:53:25 -06:00
Elizabeth Myers
cdf5ed6cc8
blacklist: clean up some of my old code
2016-03-07 19:54:25 -06:00
Elizabeth Myers
7e6b5384b3
Convert 2.8 style ToUpper/ToLower names to irctoupper/irctolower
2016-03-07 19:04:24 -06:00
Elizabeth Myers
81204be809
Add ircd serials to AV2.
2016-03-07 18:10:22 -06:00
Elizabeth Myers
749d697c98
Fix generation of serno.h
...
Due to reversed conditionals, it wasn't being generated properly.
This also actually fixes its generation in librb by just copying the
Charybdis version. Unbundlers will want to take note of this.
2016-03-07 17:15:39 -06:00
Elizabeth Myers
638d286293
Change some RATBOX_FOO defines to CHARYBDIS_FOO.
2016-03-07 05:01:31 -06:00
Elizabeth Myers
978b723252
modules: show module provenance in modlist
2016-03-06 23:21:08 -06:00
Elizabeth Myers
216d70e91d
modules: tag origin at load time.
2016-03-06 18:57:05 -06:00
Elizabeth Myers
c63aeb44e9
modules: add origin field to V2
2016-03-06 17:52:49 -06:00
Elizabeth Myers
2ab24be6f9
modules: show descriptions in list
2016-03-06 17:26:30 -06:00
Elizabeth Myers
0eb7d9c02c
modules: add description field
2016-03-06 17:14:31 -06:00
Elizabeth Myers
0e5bf029a6
modules: wow, that was a dumb error.
...
Add a stupid break statement.
2016-03-06 17:08:44 -06:00
Elizabeth Myers
8e9c6a7590
modules: add new MAPI V2
...
MAPI V1 is still supported for legacy modules, but it is highly
recommended to update to MAPI V2. It includes support for capability
tables, module descriptions, and implicit versions.
2016-03-06 16:53:03 -06:00
Elizabeth Myers
a4bf26dd34
Move irc_* data structures to librb.
...
This makes the base ircd less cluttered up with data structures that can
go elsewhere.
2016-03-06 14:17:19 -06:00
Elizabeth Myers
fe037171d6
Change all leftover libratbox stuff to librb.
2016-03-06 03:49:27 -06: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
a3a2f405fc
ircd: -lrb, not -lratbox
2016-03-06 02:34:47 -06:00
William Pitcock
c83f2f5e12
rename libratbox to librb, since its pretty modified anyway
2016-03-06 02:30:20 -06:00
Elizabeth Myers
1d91de8100
Remove old .indent.pro files
...
These have been unused since dinosaurs roamed the earth and are mostly
smelly old Hybrid relics.
2016-03-05 21:21:36 -06:00
William Pitcock
9ea48ec30a
remove presupplied autotools files
2016-03-05 17:47:48 -06:00
Elizabeth Myers
7416e480b0
parse: export cmd_dict for use elsewhere.
2016-03-05 01:05:26 -06:00
Elizabeth Myers
e8f1c19e7b
parse: get rid of report_messages
...
It is a function with a single usage, that is used only for one specific
stats command on one line.
2016-03-05 00:55:33 -06:00
Simon Arlott
e9ffc3c153
ssld: provide version in stats S output
2016-03-03 22:14:50 +00:00
William Pitcock
428f9bc117
client: handle UID rollover. ircd-ratbox r28917
2016-03-02 15:56:49 -06:00
William Pitcock
65f2c0a263
ircd: simplify connid table handling
2016-03-02 15:31:50 -06:00
William Pitcock
1b6568f6d0
sslproc: compile fix
2016-03-01 20:24:12 -06:00
William Pitcock
a0130f9daf
sslproc: properly use zconnid's for ziplinks
2016-03-01 20:02:55 -06:00
William Pitcock
36f0ec74c1
client: always purge a client from the connid table, as connid is not related to FD
2016-03-01 19:52:34 -06:00
Simon Arlott
035d9143bd
ircd: add missing sslproc function ssld_foreach_info()
...
Iterate through the ssl daemons and report their status.
2016-03-01 21:30:51 +00:00
William Pitcock
2e4bf32f36
capability: set ownerdata to NULL when orphaning
2016-02-28 19:15:04 -06:00
William Pitcock
193d4db30c
sasl: transfer ownership of 'sasl' capability to m_sasl module
2016-02-28 00:29:26 -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
0416a2cc86
starttls: take ownership of 'tls' capability
2016-02-27 01:45:40 -06:00
William Pitcock
32df5e96a6
cap: substantial rewrite leveraging the ircd capabilities framework for client caps
2016-02-27 01:41:36 -06:00
William Pitcock
ba83226733
capability: move some previously private structures to public API
2016-02-27 00:46:49 -06:00
William Pitcock
486cd34415
ircd: chase capability API changes
2016-02-27 00:01:54 -06:00
William Pitcock
63b9db9675
capability: allow attaching capability-owner data to a capability token, to enable extended data for client capabilities
2016-02-26 23:55:43 -06:00
William Pitcock
4d2f203026
msgbuf: msgbuf_unparse_tags(): don't send a tags sigil unless tags will actually be emitted
2016-02-20 18:41:16 -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
71c875fb9a
msgbuf: allow for an explicit target to be defined
2016-02-20 17:59:00 -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
33085472a2
msgbuf: make msgbuf_unparse_prefix() public
2016-02-20 14:46:09 -06:00
William Pitcock
c678fbc08b
ircd: remove broken USE_IODEBUG_HOOKS knob and related code
2016-02-20 12:02:49 -06:00
William Pitcock
8f64d32533
msgbuf: implement msgbuf_vunparse_fmt() and friends
2016-02-20 11:38:00 -06:00
William Pitcock
691adddd0e
msgbuf: handle me.name properly
2016-02-20 11:23:44 -06:00
William Pitcock
4a13e3f1da
msgbuf: add some message building code
2016-02-20 11:21:12 -06:00
William Pitcock
d84acbceca
newconf: move SSL/TLS deprecation message from ERROR severity to WARNING severity
2016-02-19 17:11:25 -06:00
William Pitcock
7baa37a9ef
msg: remove last vestiges of the fakelag system. charybdis has never supported fakelag.
2016-02-19 16:43:39 -06:00
Antoine Beaupré
a393a68a0e
make build reproducible
...
we do this by removing the uname usage everywhere: it is not actually
used at runtime at all.
we keep the timestamp, because it is actually used in user_welcome()
but allow it to be overriden.
ideally, that timestamp would be completely removed, but I am not sure
what to put in its place, or if it would break some mysterious RFC (or
client!) if we remove that announcement.
2016-02-16 00:37:20 -05:00
William Pitcock
d670fe5271
msgbuf: msgbuf_append_tag(): add support for attaching a specific capability bit
2016-02-13 00:19:23 -06:00
William Pitcock
08006c16f8
msgbuf: do a better job of handling gotchas with parsing tags
2016-02-10 21:16:28 -06:00
William Pitcock
4a84a763cd
ircd: change MessageHandler to include a MsgBuf pointer at the front for tag access
2016-02-10 20:13:44 -06:00
Simon Arlott
eb1b303d56
ircd: support restarting ssld processes
...
Add REHASH SSLD (admins only) that starts new sslds and marks the
existing ones as inactive until all their clients disconnect.
Very useful whenever the SSL library has a vulnerability because
new connections can use a new version of the library without
disconnecting existing clients/servers.
Add STATS S (admins only) to list ssld processes, status, and client
count.
2016-02-10 19:03:30 -06:00
Simon Arlott
5e270e7d89
ircd: Handle which_ssld failure
...
It's possible for which_ssld to fail and return NULL, handle this in
start_ssld_connect and start_ssld_accept by returning NULL. The NULL
return value is already handled in all calls to start_ssld_accept,
so handle this for start_ssld_connect by reporting an error connecting.
Handle it in start_zlib_session by exiting the client.
2016-02-10 22:45:38 +00:00
Simon Arlott
b9ff4868a9
ircd: add missing rb_free in start_zlib_session
2016-02-10 22:45:35 +00:00
William Pitcock
1579e155b1
parse: further cleanups
2016-02-10 10:25:16 -06:00
William Pitcock
20dd3725b8
parse: fix aliases
2016-02-10 10:09:42 -06:00
William Pitcock
269dd686b3
msgbuf: improve parse logic
2016-02-10 00:46:32 -06:00
William Pitcock
4d03595da4
parse: utilise MsgBuf to simplify message parsing
2016-02-10 00:22:37 -06:00
William Pitcock
a8e69f5dfc
msgbuf: implement msgbuf_parse()
2016-02-10 00:08:58 -06:00
William Pitcock
de50a480af
Remove unused .depend files.
2016-02-09 23:08:35 -06:00
Valerii Iatsko
5203cba5ce
Remove libratbox's snprintf.c, update related ircd code
2016-02-10 02:25:32 +01:00
William Pitcock
55d5f7970a
ircd: various memory leak fixes from pull requests
2016-02-09 10:53:24 -06:00