Elizabeth Myers
02e141f7a3
authd: add stats reporting API
2016-03-27 17:04:14 -05:00
Elizabeth Myers
eccc44ed7b
authd/providers/blacklist: use uint8_t for iptype
...
This clearly illustrates what it is
2016-03-27 14:41:50 -05:00
Elizabeth Myers
6535177fef
authd/provider: add data to rejection tag.
...
This is used for information such as what blacklist rejected the client.
2016-03-27 13:52:52 -05:00
Elizabeth Myers
60374ac975
authd: add abiltiy to cancel connection
2016-03-26 23:54:21 -05:00
Elizabeth Myers
0da2a404fa
authd: try to destroy all providers on the way out.
2016-03-26 23:39:22 -05:00
Elizabeth Myers
420cfb677c
authd/provider: add notices in comments to certain functions not to use auth after calling
2016-03-26 23:16:53 -05:00
Elizabeth Myers
e43e61f7a7
authd/providers/blacklist: fix use after free
...
After calling provider_done, you must *always* assume your auth instance
is freed.
2016-03-26 23:15:28 -05:00
Elizabeth Myers
f681e277eb
authd/providers/ident: perform check for valid auth_client data
2016-03-26 20:33:35 -05:00
Elizabeth Myers
247b304f1f
authd/provider: forgot this file...
2016-03-26 20:33:21 -05:00
Elizabeth Myers
05fdc0301d
authd/provider: do not accept clients until all providers have had a chance to run
2016-03-26 20:32:35 -05:00
Elizabeth Myers
f5586c3abb
authd: misc provider fixes
2016-03-26 19:50:09 -05:00
Elizabeth Myers
4ac5b30e77
authd/providers/ident: remove debugging message
2016-03-26 19:31:45 -05:00
Elizabeth Myers
6950cc255a
authd/providers/blacklist: remove dead store.
2016-03-26 19:19:52 -05:00
Elizabeth Myers
22946d30d5
authd/providers/ident: fix up trailing lf/cr at end of username
...
This bug existed in the original code too, but I have no idea how it
didn't manifest.
2016-03-26 19:18:54 -05:00
Elizabeth Myers
d1b70e3524
providers/ident: fix some nasty crashes
2016-03-26 18:40:17 -05:00
Elizabeth Myers
0cff7adb13
authd/provider: some fixes
2016-03-26 18:01:58 -05:00
Elizabeth Myers
f875cb8482
providers/ident: more aggressive NULL checks
2016-03-26 18:01:14 -05:00
Elizabeth Myers
47ab6f6e6e
authd/providers/ident: properly initialise variable
2016-03-26 17:35:48 -05:00
Elizabeth Myers
cdf1592915
Check these out from authd-framework-2.
2016-03-26 16:53:43 -05:00
Elizabeth Myers
9b24cbdecc
Merge branch 'authd-framework-2' into authd-framework
2016-03-26 16:52:13 -05:00
Elizabeth Myers
6ced6a1f1a
authd/providers/rdns: minor function renaming cleanup
2016-03-26 16:37:04 -05:00
Elizabeth Myers
67acafca57
authd/providers/ident: add configuration interface
2016-03-26 16:36:50 -05:00
Elizabeth Myers
a0a218bac8
authd/providers/blacklist: add configuration interface for deletion
2016-03-26 16:36:14 -05:00
Elizabeth Myers
06f3496ab3
providers/ident: cleanup things
2016-03-26 15:39:55 -05:00
Elizabeth Myers
646e6567c7
providers/rdns: add configuration interface for rDNS timeout
2016-03-26 15:36:12 -05:00
Elizabeth Myers
3f2695ac86
providers/blacklist: add configuration interface
2016-03-26 15:27:57 -05:00
Elizabeth Myers
a51487e0e7
authd/provider: add options handlers for providers
...
This allows providers to create handlers for changing their
configuration.
2016-03-25 23:04:00 -05:00
Elizabeth Myers
db821ee9ba
authd: split out notices stuff for backporting to master.
2016-03-25 21:29:44 -05:00
Elizabeth Myers
a70a737c9b
Merge branch 'master' into authd-framework-2
2016-03-25 21:16:04 -05:00
William Pitcock
c63cd21e6a
authd: check if handler is NULL, ensure that we do not overflow
2016-03-25 21:10:34 -05:00
Elizabeth Myers
75844b15af
authd: fix undefined behaviour
2016-03-25 21:09:55 -05:00
Elizabeth Myers
3ad21f6107
authd/provider: remove obsolete comment [ci skip]
2016-03-25 21:08:46 -05:00
Elizabeth Myers
ee658821e3
reject_client: send back ident and hostname with rejection.
...
At the moment (possibly not in the future) ircd will want to override
our decision whether or not to accept a client; we need to give them
enough information back to ensure they can do it properly.
2016-03-25 21:05:52 -05:00
Elizabeth Myers
a21a82b1b6
Fix dangling line from merge
2016-03-25 21:05:39 -05:00
Elizabeth Myers
f49198a67f
Merge branch 'master' into authd-framework-2
2016-03-25 21:01:48 -05:00
Elizabeth Myers
122ae255d7
authd: change reload character to R from H.
...
This is more in line with the specification @kaniini laid out.
2016-03-25 21:00:13 -05:00
Elizabeth Myers
6c88869f22
providers/blacklist: change some checks to asserts.
...
These should not really happen in reality...
2016-03-25 20:55:10 -05:00
Elizabeth Myers
a7d5aea119
provider: make blacklist queries come after ident/rdns.
2016-03-25 20:46:58 -05:00
Elizabeth Myers
add80afdcb
authd/provider: add blacklist provider.
...
This took way longer than it should have.
2016-03-25 20:07:36 -05:00
Elizabeth Myers
14505c8400
rdns: adjust timeout values
2016-03-25 19:47:54 -05:00
Elizabeth Myers
800ff2ca9d
Merge branch 'master' into authd-framework-2
2016-03-25 11:49:38 -05:00
Elizabeth Myers
b2ede1aa71
actually use warn_opers function
2016-03-24 19:36:41 -05:00
Elizabeth Myers
89d22b9af5
authd/provider: cleanups
2016-03-24 19:23:49 -05:00
Elizabeth Myers
410fcc233f
authd/rdns: rename a function
2016-03-23 21:59:48 -05:00
Matt Ullman
cf623e0802
authd: Fix windows build
...
Replace stray NO with false
2016-03-23 22:51:03 -04:00
Matt Ullman
2e45f5d808
Cleanup more BSD-isms
2016-03-23 22:37:52 -04:00
Matt Ullman
c056dba233
Remove the rest of the SVN id tags
2016-03-23 20:13:12 -04:00
Matt Ullman
3889fc11af
authd: Change str_isnumber() to bool
2016-03-23 20:07:21 -04:00
Elizabeth Myers
32f8c78b55
stupidity fixes
2016-03-23 19:06:33 -05:00
Elizabeth Myers
6cd3964de7
ident: use new *_addr fields
2016-03-23 18:58:56 -05:00
Elizabeth Myers
9c7498d559
authd/provider: add c_addr/l_addr fields
...
Some providers consume these directly, so it's better to have a "cached"
version that's already generated.
2016-03-23 18:58:37 -05:00
Elizabeth Myers
6e4bcf20ff
providers/ident: fix inet_ntop/inet_pton mixup
2016-03-23 18:47:02 -05:00
Elizabeth Myers
1d591813c3
providers/rdns: remove useless struct member
2016-03-23 17:44:56 -05:00
Elizabeth Myers
8ed8e5cae8
res: expose rDNS building functions
...
This will be used by the blacklist code to avoid duplication of code.
2016-03-23 16:40:31 -05:00
Elizabeth Myers
2f355b7e3c
Merge branch 'master' into authd-framework-2
2016-03-23 16:21:14 -05:00
Elizabeth Myers
ab33d608de
DICTIONARY_FOREACH -> RB_DICTIONARY_FOREACH [ci skip]
2016-03-23 14:29:27 -05:00
Elizabeth Myers
cb5a8bf847
Remove common.h from here too.
2016-03-23 10:06:52 -05:00
Elizabeth Myers
a52c7a8e69
authd/provider: really fix things for new changes.
2016-03-23 09:15:18 -05:00
Elizabeth Myers
aba29d5a19
authd/provider: incorporate new changes
2016-03-23 09:03:37 -05:00
Elizabeth Myers
3e875f629f
authd/provider: overhaul storage of various pieces of data
...
Clients are stored in a dictionary referenced by id (to allow for
UINT32_MAX auth clients, which is plenty).
Each provider now has a data slot (this limits the number of providers
to 32 for now, but that's plenty for now) which they can use to attach
data to auth_clients. This consolidates data, aids in debugging, and
makes it easier to just pass around auth_client structures.
2016-03-22 19:13:54 -05:00
Elizabeth Myers
238a9ed590
Merge branch 'master' into authd-framework-2
2016-03-22 17:43:43 -05:00
Matt Ullman
e23126c83b
Cleanup warnings
2016-03-21 22:28:41 -04:00
William Pitcock
9783438eb4
authd: res: fix build on windows ipv6
2016-03-20 04:22:17 -05:00
William Pitcock
ddebec8cfd
reslib: really fix it this time
2016-03-20 03:57:21 -05:00
William Pitcock
f23719b7cd
authd: reslib: fix compile on win32
2016-03-20 03:56:00 -05:00
William Pitcock
4063dc2f62
authd: reslib: hook in windows DNS logic
2016-03-20 03:51:31 -05:00
William Pitcock
2dea53a203
authd: some more win32 fixes
2016-03-20 01:37:00 -05:00
William Pitcock
66cd5f6695
authd/reslib: include rb_lib.h
2016-03-20 01:33:23 -05:00
William Pitcock
c99ae1907f
authd: use GET_SS_FAMILY() where appropriate
2016-03-20 01:30:24 -05:00
William Pitcock
8da0b2f2cb
authd: use _WIN32 as the define for checking windows presence
2016-03-20 01:19:46 -05:00
William Pitcock
76ebf6c489
authd: initial pass at win32 porting
2016-03-20 01:16:41 -05:00
Elizabeth Myers
46d17a88b4
provider: compile fixes
2016-03-19 15:58:48 -05:00
Elizabeth Myers
f7b37c1dc1
authd: add provider-specific data to auth_client via a dictionary.
2016-03-19 15:47:10 -05:00
Elizabeth Myers
a16b484f27
Import this from authd-framework branch
2016-03-17 16:25:58 -05:00
Elizabeth Myers
2b0cc3d36a
Redo of the authd-framework branch.
...
This is basically most of the code from the authd-framework branch, but
written to the new DNS code in master. Not quite done yet but getting
there.
2016-03-17 16:23:27 -05:00
Elizabeth Myers
1d9925cfb3
authd: fix a fallthrough.
2016-03-13 03:22:41 -05:00
Elizabeth Myers
540676fc18
cancel_query: fix stupid build error
2016-03-12 07:36:57 -06:00
Elizabeth Myers
45ac1e3ce6
authd: add the ability to cancel DNS requests
2016-03-12 07:10:27 -06:00
Elizabeth Myers
399c633313
authd: add improved API for internal usage
...
This is similar to what exists in ircd, but instead of request ID's, we
return struct dns_query pointers (that are freed by the DNS callback, so
you don't have to worry about their lifecycle management).
2016-03-12 07:08:27 -06:00
Elizabeth Myers
91f870b39b
auth: enable soft reject of clients.
...
This doesn't cancel callbacks in progress. This is useful in cases where
you're not sure you want to reject a client yet.
2016-03-10 11:30:09 -06:00
Elizabeth Myers
df32819e04
authd: tag rejection type.
2016-03-10 11:27:07 -06:00
Elizabeth Myers
c2222d7e9a
authd: actually init providers on startup.
...
(Yay, it doesn't crash!)
2016-03-10 10:04:35 -06:00
Elizabeth Myers
8b4544c9dc
authd: load ident provider
2016-03-10 10:01:41 -06:00
Elizabeth Myers
f1861e48e6
authd: identd fixes
2016-03-10 10:00:46 -06:00
Elizabeth Myers
b74739c247
auth: use sockaddr_storage to store ports
2016-03-10 09:32:37 -06:00
Elizabeth Myers
c70ae2e5cb
authd: properly iterate through all outstanding rdns queries on timeout
2016-03-10 08:43:46 -06:00
Elizabeth Myers
9eb410b347
rdns: properly set provider
2016-03-10 08:28:22 -06:00
Elizabeth Myers
cafe4dd8df
authd: plug in new C type.
2016-03-10 08:09:16 -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
8dc9aa85b6
authd: crap, C was taken already, rename reload to H.
2016-03-10 08:06:57 -06:00
Elizabeth Myers
187643195c
authd: add rdns provider (compile-tested)
2016-03-10 08:04:17 -06:00
Elizabeth Myers
5bfc606fa4
authd/provider: use rb_sockaddr_storage for IP addresses.
2016-03-10 07:25:22 -06:00
Elizabeth Myers
b3265d7afb
dns: create sockcmp function.
2016-03-10 06:32:25 -06:00
Elizabeth Myers
1c99f551e3
dns: add format_address function
2016-03-10 05:57:33 -06:00
Elizabeth Myers
f169fc8842
authd: add address families to provider processing.
...
ircd knows about them so let's not reinvent checking for address types
and stuff.
2016-03-10 05:40:21 -06:00
Elizabeth Myers
9b5b2dedc0
authd/provider: add these to provider.h
2016-03-10 03:15:03 -06:00
Elizabeth Myers
0f95a2749f
rename auth.[ch] to provider.[ch]
...
This name is less confusing and more descriptive.
2016-03-10 03:07:52 -06:00
Elizabeth Myers
99e538670d
authd: convert auth stuff to use a linked list.
...
This allows runtime loadable providers.
2016-03-10 03:02:16 -06:00
Elizabeth Myers
2c01da6b7e
Once more with feeling, remove useless enum bit
...
Now with 50% less experimental changes
2016-03-10 02:42:40 -06:00
Elizabeth Myers
be67cfca84
Revert "[ci skip] remove useless bit in auth.h"
...
This reverts commit 4cc131fc48
.
2016-03-10 02:42:18 -06:00