Commit graph

3635 commits

Author SHA1 Message Date
Elizabeth Myers
508e25a85b librb: add versions of rb_strcasecmp, rb_strncasecmp, and rb_strcasestr.
The first two are POSIX but not standard (Windows has functions that act
like it, so use them), but the latter is non-standard, full stop.
2016-04-05 05:33:43 -05:00
Elizabeth Myers
731d128990 authd: rework module ID system
Provider ID's are now assigned dynamically at load-time. To accomodate
this, there is now a lookup system for finding providers by name (all
providers have names as well).
2016-04-05 04:31:22 -05:00
Elizabeth Myers
376ae2e2a7 Clean up the provider status logic.
Provider status (done, running, not run) is now attached to the
provider-specific data of the client. A reference count of auth
instances is kept in the auth_client struct to determine if a client is
done or not.

This also moves a lot of the logic for manipulating provider data into
into the provider.h header for inlining (no point in a function call for
these simple accessors).
2016-04-05 03:30:02 -05:00
Elizabeth Myers
a68d9a2b61 authd: dynamically allocate data and timeout elements 2016-04-05 03:08:52 -05:00
William Pitcock
d475622639 authd: mention rDNS in found your hostname message 2016-04-05 00:56:43 -05:00
Elizabeth Myers
bdddd9ba83 authd: update all providers to new timeout API 2016-04-04 04:32:55 -05:00
Elizabeth Myers
2e1e0b9981 authd: add provider timeout setting API 2016-04-04 04:24:49 -05:00
Elizabeth Myers
1b4dba98a6 opm: fix typo 2016-04-04 03:59:18 -05:00
Elizabeth Myers
a8322b5268 opm: update to new provider data API 2016-04-04 03:58:46 -05:00
Elizabeth Myers
e78a87f3c4 blacklist: update for new provider data API 2016-04-04 03:49:34 -05:00
Elizabeth Myers
9155a94867 ident: replace some checks with asserts
These checks shouldn't ever trigger, and if they do, it's a problem.
2016-04-04 03:48:42 -05:00
Elizabeth Myers
751d39cc17 ident: update to use new provider data API 2016-04-04 03:39:22 -05:00
Elizabeth Myers
74909c9ada authd: add provider data getter/setter functions 2016-04-04 03:33:25 -05:00
Elizabeth Myers
fc9013d6b0 Don't send original error message if we're already on the channel we're forwarding to
Closes #55
2016-04-04 03:08:52 -05:00
Elizabeth Myers
3256156aca Announce changed capabilities on module load
Closes #165
2016-04-04 02:30:35 -05:00
staticfox
5eb3d7a7c0 modules: Revert mapi_register() to use ints
modinit() returns either 0 (success) or -1 (failure) so we
can't check for true/false.
2016-04-03 20:14:36 -04:00
William Pitcock
5902547a10 wsockd: use text frames 2016-04-03 15:15:12 -05:00
Elizabeth Myers
c0483ac17b boolify calls to rehash 2016-04-03 01:53:34 -05:00
Elizabeth Myers
aa483e55bd bool-ify modules stuff 2016-04-03 01:51:45 -05:00
William Pitcock
dab623671c wsockd: set FIN attribute on all frames, we don't fragment 2016-04-03 01:40:52 -05:00
Elizabeth Myers
6603175304 Clean up module loading a bit. 2016-04-03 01:21:19 -05:00
William Pitcock
c90e5c0884 wsockd: implement plain linebuf draining, finishing this off (closes #78) 2016-04-03 00:10:24 -05:00
William Pitcock
d3f01ce7bf wsockd: implement reading of small and large frames (but not huge frames) 2016-04-03 00:10:24 -05:00
Elizabeth Myers
53c0462146 provider: use rb_dlinkAddTail instead of rb_dlinkAdd.
Providers we add last should come last, not first.
2016-04-03 00:06:58 -05:00
Elizabeth Myers
85589ba32f opm: don't start until we've finished ident and rDNS queries.
This ensures that if we reject the client, they will always have a
username and hostname if ircd decides to accept them.
2016-04-03 00:05:53 -05:00
Elizabeth Myers
cfb9253671 Update warnings in the opm default configs [ci skip] 2016-04-02 23:42:23 -05:00
Elizabeth Myers
0e651b1441 librb: rb_run_event -> rb_run_one_event
This is to avoid confusion with rb_event_run, which does something else.
2016-04-02 23:38:28 -05:00
Elizabeth Myers
f8ef4b8dd6 win32: change from ircd-ratbox-class to charybdis-class 2016-04-02 23:19:38 -05:00
Elizabeth Myers
ffa79a9516 Use rb_dlink_list_length... == 0, not !rb_dlink_list_length 2016-04-02 22:45:52 -05:00
Elizabeth Myers
34bc7caeae Send enabling message to opm at the end of opm block. 2016-04-02 22:33:19 -05:00
Elizabeth Myers
55984834e5 opm: properly disable opm on blacklist deletions.
If there are no proxies left (or they're all being cleared), disable
OPM, as it's totally useless from that point.
2016-04-02 22:31:19 -05:00
Elizabeth Myers
5c5296c8f8 newconf: delete all proxies on rehash 2016-04-02 22:30:54 -05:00
Elizabeth Myers
7f2272d3d3 opm: properly check for duplicate listeners 2016-04-02 21:13:44 -05:00
Elizabeth Myers
850ced64fe authd: options can have no parameters.
This is used for deleting all blacklists for instance.
2016-04-02 20:42:45 -05:00
William Pitcock
c3780ae27f wsockd: try to flush ircd-side recvq when we call close_conn()
this is so that a websocket client may receive it's ERROR message if available
2016-04-02 20:40:17 -05:00
William Pitcock
7428c4e07e wsockd: write short frames and long frames using their preferred wire formats 2016-04-02 20:32:32 -05:00
Elizabeth Myers
e2a8228f85 authproc: minor fixes 2016-04-02 20:31:32 -05:00
Elizabeth Myers
8d48aa190b dns: don't use zero ID's 2016-04-02 20:19:37 -05:00
Elizabeth Myers
e22b896208 Merge branch 'master' of github.com:charybdis-ircd/charybdis 2016-04-02 20:11:35 -05:00
Elizabeth Myers
1d657e0b08 authproc: rehash on authd restart
This is a hack for now so it gets the config again.
2016-04-02 20:10:56 -05:00
Elizabeth Myers
7c4b574e1b authd: avoid crash on full reload 2016-04-02 20:10:17 -05:00
William Pitcock
e688bcbdaf wsockd: more progress on output 2016-04-02 19:59:16 -05:00
Elizabeth Myers
4dbed1ed61 conf: in OPM, it's listen_port, not port. [ci skip] 2016-04-02 19:53:24 -05:00
Elizabeth Myers
18f3b3c928 opm: downgrade a non-fatal warning 2016-04-02 19:50:25 -05:00
Elizabeth Myers
3d2fc110e3 authproc: add more API's for opm management 2016-04-02 19:45:27 -05:00
Elizabeth Myers
c1f4db3fb7 Tweak some configuration semantics of opm 2016-04-02 19:45:09 -05:00
Elizabeth Myers
d9364d2913 authproc: pad leading 0 for localhost IP's
This avoids misparsing by rb's helper stuff..
2016-04-02 19:29:16 -05:00
William Pitcock
839f2fa23e wsockd: provide websocket wire protocol structs 2016-04-02 18:56:37 -05:00
Elizabeth Myers
eb0814b3cb opm: add support for HTTPS CONNECT proxies.
TBD: do we need an SSL listener for these?
2016-04-02 18:38:21 -05:00
William Pitcock
2d89c9ffc1 wsockd: further win32 fixes 2016-04-02 18:28:53 -05:00