]>
git.ipfire.org Git - thirdparty/freeradius-server.git/log
Arran Cudbard-Bell [Fri, 19 Jan 2018 18:39:40 +0000 (11:39 -0700)]
Print the full error stack in map.c
Alan T. DeKok [Fri, 19 Jan 2018 14:31:13 +0000 (09:31 -0500)]
make tmpl_verify() happy
Alan T. DeKok [Fri, 19 Jan 2018 14:24:03 +0000 (09:24 -0500)]
clarify the code
We probably also want to check for names / da being NULL...
which seems to be an issue in rlm_cache.c:412
Arran Cudbard-Bell [Fri, 19 Jan 2018 18:15:08 +0000 (11:15 -0700)]
Use different name for module and thread instance data in modules.c
Makes it slightly less confusing. ish...
Arran Cudbard-Bell [Fri, 19 Jan 2018 02:01:24 +0000 (19:01 -0700)]
Add rlm_rest xlat back as an async expansion
It sends requests at least... More work needed to call the resume function properly
Arran Cudbard-Bell [Fri, 19 Jan 2018 02:00:27 +0000 (19:00 -0700)]
Various fixes in xlat_inst.c
Arran Cudbard-Bell [Fri, 19 Jan 2018 01:59:56 +0000 (18:59 -0700)]
Allow thread instances to be looked up with module instances
Arran Cudbard-Bell [Thu, 18 Jan 2018 23:47:48 +0000 (16:47 -0700)]
Simplify xlat instance destructors and xlat destructors
Arran Cudbard-Bell [Thu, 18 Jan 2018 23:30:50 +0000 (16:30 -0700)]
Some dumb hacks that solve a bunch of ordering issues with rbtrees and destructors
Arran Cudbard-Bell [Thu, 18 Jan 2018 21:25:00 +0000 (14:25 -0700)]
Plumb in xlat instances
Delay instantiation of xlats until xlat_instantiate() is called.
This means the boostrap phase of the server is fully complete by the time we start creating xlat instances.
Arran Cudbard-Bell [Thu, 18 Jan 2018 20:20:28 +0000 (13:20 -0700)]
module_thread_instance_find returns a module_thread_instance_t
Arran Cudbard-Bell [Thu, 18 Jan 2018 20:19:19 +0000 (13:19 -0700)]
Fixup number of elements in the tree
It's visible to children being freed
Alan T. DeKok [Thu, 18 Jan 2018 17:39:32 +0000 (12:39 -0500)]
typo
Alan T. DeKok [Thu, 18 Jan 2018 17:05:32 +0000 (12:05 -0500)]
comnvert asserts to run-time checks
Alan T. DeKok [Thu, 18 Jan 2018 16:23:38 +0000 (11:23 -0500)]
use rad_assert
Alan T. DeKok [Thu, 18 Jan 2018 15:40:25 +0000 (10:40 -0500)]
use consistent names for variables
Alan T. DeKok [Thu, 18 Jan 2018 15:31:44 +0000 (10:31 -0500)]
make reparent return the trie
a bit more complex, but less code for each call,
and easier to automatically verify assignments
Alan T. DeKok [Thu, 18 Jan 2018 15:16:57 +0000 (10:16 -0500)]
rename trie to entry
Arran Cudbard-Bell [Thu, 18 Jan 2018 01:50:16 +0000 (18:50 -0700)]
Add xlat instantiation framework
Arran Cudbard-Bell [Thu, 18 Jan 2018 01:30:30 +0000 (18:30 -0700)]
Group xlat functions in unlang_op.c
Alan T. DeKok [Thu, 18 Jan 2018 01:23:33 +0000 (20:23 -0500)]
doxygen
Alan T. DeKok [Wed, 17 Jan 2018 22:25:14 +0000 (17:25 -0500)]
well-known clients cannot be behind a NAT
Alan T. DeKok [Wed, 17 Jan 2018 22:09:23 +0000 (17:09 -0500)]
dynamic clients behind a NAT gateway are not in any list
instead, they cause a connection to be created, and that's that...
Alan T. DeKok [Wed, 17 Jan 2018 21:52:10 +0000 (16:52 -0500)]
rename to "behind_nat"
note that the admin CANNOT set static or dynamic clients as
being NAT gateways. Instead, the code does that internally
Alan T. DeKok [Wed, 17 Jan 2018 21:41:10 +0000 (16:41 -0500)]
more handling of nat'd clients
Alan T. DeKok [Wed, 17 Jan 2018 21:28:37 +0000 (16:28 -0500)]
don't immediately delete NATed clients
Alan T. DeKok [Wed, 17 Jan 2018 21:17:02 +0000 (16:17 -0500)]
generalize handling of conflicting packets
Arran Cudbard-Bell [Wed, 17 Jan 2018 22:23:19 +0000 (15:23 -0700)]
Include unlang.h where it's needed
Arran Cudbard-Bell [Wed, 17 Jan 2018 21:42:52 +0000 (14:42 -0700)]
Create public/private heders for unlang code
Move operations to basic registration API. Needs more work, but at least we can now move the xlat stuff out of the interpreter.
Matthew Newton [Wed, 17 Jan 2018 17:34:15 +0000 (17:34 +0000)]
tidy random symlinks added in
8404a2a1
Alan T. DeKok [Wed, 17 Jan 2018 16:09:45 +0000 (11:09 -0500)]
'&' is not a valid attribute or list name
Alan T. DeKok [Wed, 17 Jan 2018 15:59:50 +0000 (10:59 -0500)]
sockfd is unused
Alan T. DeKok [Wed, 17 Jan 2018 15:12:19 +0000 (10:12 -0500)]
initialize all of "address"
Alan T. DeKok [Wed, 17 Jan 2018 14:54:08 +0000 (09:54 -0500)]
limit number of packets we read from one socket
so that we don't starve other sockets
Alan T. DeKok [Wed, 17 Jan 2018 14:53:01 +0000 (09:53 -0500)]
return "no more data" when too many outstanding packets.
Once a socket is ready, the network side tries to read many
packets. So we have to check for max_outstanding ourselves
Alan T. DeKok [Wed, 17 Jan 2018 14:39:07 +0000 (09:39 -0500)]
ignore write errors to the control plane
once the packet has been placed into the worker queue, then
the worker will pick it up. If we can't signal the control
plane, then the worker has tons of pending messages, and will
pick up the packet.
Alan T. DeKok [Wed, 17 Jan 2018 14:20:44 +0000 (09:20 -0500)]
ensure we don't pick the same worker twice...
Arran Cudbard-Bell [Wed, 17 Jan 2018 03:35:35 +0000 (20:35 -0700)]
Break most of the unlang keyword and operations code into a separate source file
Progressing more towards a generic interpreter which is independent of the keywords and operations being executed
Arran Cudbard-Bell [Wed, 17 Jan 2018 03:20:01 +0000 (20:20 -0700)]
Extra tests for strerror
Alan T. DeKok [Tue, 16 Jan 2018 21:30:11 +0000 (16:30 -0500)]
support NAT
we track received but un-processed packets for dynamic clients.
Then, when we've processed the last pending packet, the dynamic
client is deleted. That way, each connection gets it's own client.
Alan T. DeKok [Tue, 16 Jan 2018 21:16:45 +0000 (16:16 -0500)]
allow dynamic clients to say they're behind a NAT gateway
it's not yet glued into proto_radius_udp, but that's next
Alan T. DeKok [Tue, 16 Jan 2018 21:10:07 +0000 (16:10 -0500)]
work around crash
fr_strerror_printf_push(..., fr_strerror_pop()) now crashes
in the address sanitizer. It's not clear what's going on in
strerror.c, so it's easier to just avoid the issue.
The errors are still printed, just a bit less clearly.
Alan T. DeKok [Tue, 16 Jan 2018 21:04:39 +0000 (16:04 -0500)]
const issues
Alan T. DeKok [Tue, 16 Jan 2018 20:24:28 +0000 (15:24 -0500)]
clean up expired / unused connected UDP sockets
Alan T. DeKok [Tue, 16 Jan 2018 20:24:13 +0000 (15:24 -0500)]
don't print socket errors. let the read() routine do that.
Alan T. DeKok [Tue, 16 Jan 2018 19:48:34 +0000 (14:48 -0500)]
final tweaks to get connected UDP sockets working
Alan T. DeKok [Tue, 16 Jan 2018 19:48:00 +0000 (14:48 -0500)]
free timers when freeing entries in the rbtree
Alan T. DeKok [Tue, 16 Jan 2018 19:35:17 +0000 (14:35 -0500)]
clean ups
Alan T. DeKok [Tue, 16 Jan 2018 19:29:51 +0000 (14:29 -0500)]
don't push config parse rules if there's no config
Alan T. DeKok [Tue, 16 Jan 2018 19:25:29 +0000 (14:25 -0500)]
clone the client, too
Alan T. DeKok [Tue, 16 Jan 2018 19:23:07 +0000 (14:23 -0500)]
add client_clone() for connected UDP sockets
Alan T. DeKok [Tue, 16 Jan 2018 17:26:29 +0000 (12:26 -0500)]
instantiate the child, and open the child socket
Alan T. DeKok [Tue, 16 Jan 2018 17:21:52 +0000 (12:21 -0500)]
child socket connects to client
Alan T. DeKok [Tue, 16 Jan 2018 16:42:38 +0000 (11:42 -0500)]
set SO_REUSEPORT for connected sockets
Alan T. DeKok [Mon, 15 Jan 2018 21:41:13 +0000 (16:41 -0500)]
glue mod_clone into the socket code.
still a few TODO's. (i.e. you use it now, it crashes).
But the basics are laid out
Alan T. DeKok [Mon, 15 Jan 2018 21:40:44 +0000 (16:40 -0500)]
track dst ip/port in child, too
Alan T. DeKok [Mon, 15 Jan 2018 21:10:13 +0000 (16:10 -0500)]
notes on splitting out dynamic clients, and connected UDP sockets
Arran Cudbard-Bell [Tue, 16 Jan 2018 02:34:44 +0000 (19:34 -0700)]
Doxygen
Arran Cudbard-Bell [Tue, 16 Jan 2018 00:33:45 +0000 (17:33 -0700)]
Move signalling and resumption callbacks to the unlang_op_t
This is partly in preparation for dynamic registration and partly because it's easier to organise it this way.
Arran Cudbard-Bell [Tue, 16 Jan 2018 00:00:40 +0000 (17:00 -0700)]
Fix buffer scoping in fr_pair_make
Arran Cudbard-Bell [Mon, 15 Jan 2018 23:39:06 +0000 (16:39 -0700)]
Print name of failing function
Arran Cudbard-Bell [Mon, 15 Jan 2018 23:38:51 +0000 (16:38 -0700)]
I have no idea what wimsie is...
Arran Cudbard-Bell [Mon, 15 Jan 2018 23:38:30 +0000 (16:38 -0700)]
Formatting
Arran Cudbard-Bell [Mon, 15 Jan 2018 23:38:21 +0000 (16:38 -0700)]
Fix indentation
Arran Cudbard-Bell [Mon, 15 Jan 2018 23:37:25 +0000 (16:37 -0700)]
Add signal and resume callbacks to the unlang_op_t
Originally there wasn't the need for this type of abstraction as the only type of resumable frame was modcall. Now we have multiple types of resumption it's better to add these types of callbacks directly to the unlang_action_t.
Alan T. DeKok [Fri, 12 Jan 2018 14:04:36 +0000 (09:04 -0500)]
remove LN-S from warnings
Matthew Newton [Tue, 9 Jan 2018 15:28:53 +0000 (15:28 +0000)]
include dhcpclient binary in freeradius-dhcp debian package
Matthew Newton [Tue, 9 Jan 2018 12:53:33 +0000 (12:53 +0000)]
don't fail in removing freeradius-config .deb pkg if dir no longer exists
Matthew Newton [Tue, 9 Jan 2018 11:16:14 +0000 (11:16 +0000)]
also don't pull in boiler.mk whilst doing make deb
Matthew Newton [Tue, 9 Jan 2018 10:35:12 +0000 (10:35 +0000)]
make sure install continues even if the daemon isn't running
First install fails if freeradius package and module packages are
installed at the same time.
Matthew Newton [Mon, 15 Jan 2018 22:59:15 +0000 (22:59 +0000)]
autoconf typo
Matthew Newton [Mon, 15 Jan 2018 22:31:37 +0000 (22:31 +0000)]
Check for -Wno-date-time to pacify ancient compilers
Arran Cudbard-Bell [Wed, 10 Jan 2018 23:57:20 +0000 (18:57 -0500)]
Typo
Alan T. DeKok [Mon, 15 Jan 2018 17:15:14 +0000 (12:15 -0500)]
const issues
Alan T. DeKok [Mon, 15 Jan 2018 16:44:26 +0000 (11:44 -0500)]
better initialize packet_time
Alan T. DeKok [Mon, 15 Jan 2018 16:42:02 +0000 (11:42 -0500)]
initialize packet_len, not data_size
Alan T. DeKok [Mon, 15 Jan 2018 16:40:28 +0000 (11:40 -0500)]
renames for doxygen
Alan T. DeKok [Mon, 15 Jan 2018 15:46:58 +0000 (10:46 -0500)]
don't delete conflicting packets
Alan T. DeKok [Mon, 15 Jan 2018 15:34:44 +0000 (10:34 -0500)]
move tracking to proto_radius
Alan T. DeKok [Mon, 15 Jan 2018 15:28:52 +0000 (10:28 -0500)]
move src_dst to array[0] at the end of the struct
Alan T. DeKok [Fri, 12 Jan 2018 18:13:23 +0000 (13:13 -0500)]
start of mod_clone() for connected UDP sockets
with notes for more future work
Alan T. DeKok [Fri, 12 Jan 2018 18:13:05 +0000 (13:13 -0500)]
cache scheduler for connected UDP sockets
Alan T. DeKok [Fri, 12 Jan 2018 15:56:23 +0000 (10:56 -0500)]
add mod_inject, along with handlers for it
in preparation for connected UDP sockets
Alan T. DeKok [Fri, 12 Jan 2018 15:34:11 +0000 (10:34 -0500)]
these attributes are "string". Fixes #2130
Alan T. DeKok [Thu, 11 Jan 2018 18:56:56 +0000 (13:56 -0500)]
initialize data structures for connected sockets
Alan T. DeKok [Thu, 11 Jan 2018 18:39:09 +0000 (13:39 -0500)]
data structures in preparation for connected sockets
Alan T. DeKok [Thu, 11 Jan 2018 18:24:18 +0000 (13:24 -0500)]
added fr_network_listen_inject()
to inject data into a socket.
Mainly to be used for connected sockets
Alan T. DeKok [Wed, 10 Jan 2018 21:24:51 +0000 (16:24 -0500)]
remove undef variable. Fixes #2156
Alan T. DeKok [Wed, 10 Jan 2018 20:52:32 +0000 (15:52 -0500)]
send fr_listen_t to network, not whole fr_network_socket_t
the socket_t is too large, and unnecessary. we can just send
the one pointer we care about
Alan T. DeKok [Wed, 10 Jan 2018 18:37:09 +0000 (13:37 -0500)]
have different error for "ring buffer full"
Alan T. DeKok [Wed, 10 Jan 2018 17:26:08 +0000 (12:26 -0500)]
look for overlapping networks, and complain if so
Alan T. DeKok [Wed, 10 Jan 2018 17:17:25 +0000 (12:17 -0500)]
move "check for connected socket" code to bootstrap
Alan T. DeKok [Wed, 10 Jan 2018 17:16:56 +0000 (12:16 -0500)]
move sanity checks to bootstrap
so that instantiate can be called from proto_radius_connected_udp
Alan T. DeKok [Wed, 10 Jan 2018 17:14:36 +0000 (12:14 -0500)]
note todo for overlapping networks
e.g.
192.168/16 is allowed, and so is 192.168.1/24. They're overlapping
and the second is unnecessary.
Alan T. DeKok [Tue, 9 Jan 2018 18:19:19 +0000 (13:19 -0500)]
move dynamic clients to using patricia trie
instead of walking down a list of networks
Alan T. DeKok [Tue, 9 Jan 2018 17:54:31 +0000 (12:54 -0500)]
rename to fr_radius_dynamic_client_t
Alan T. DeKok [Tue, 9 Jan 2018 16:39:27 +0000 (11:39 -0500)]
update proto_radius_udp in preparation for connected sockets
Alan T. DeKok [Tue, 9 Jan 2018 16:27:19 +0000 (11:27 -0500)]
move "print name" to instantiate
so that we can possibly skip mod_open() for connected sockets
Alan T. DeKok [Tue, 9 Jan 2018 15:47:02 +0000 (10:47 -0500)]
set s->dead, so we know it's dead
Alan T. DeKok [Tue, 9 Jan 2018 15:45:46 +0000 (10:45 -0500)]
mark socket dead on read error.
don't free it, as there still may be outstanding requests