]>
git.ipfire.org Git - thirdparty/freeradius-server.git/log
Alan T. DeKok [Fri, 3 Oct 2025 16:23:03 +0000 (12:23 -0400)]
word smithing and updates
Arran Cudbard-Bell [Thu, 2 Oct 2025 23:37:36 +0000 (17:37 -0600)]
Remove UNLANG_ACTION_STOP_PROCESSING
It's not needed anymore. Fatal errors should use `RETURN_UNLANG_ACTION_FATAL` to signal the request to stop.
Fix issue where finally-timeout test wasn't actually running because the dummy request got cancalled during the virtual server call (oops).
Add regression tests for module calls being immediately cancelled in finally sections.
Arran Cudbard-Bell [Wed, 1 Oct 2025 04:25:05 +0000 (00:25 -0400)]
Print better errors in control socket test
Alan T. DeKok [Thu, 2 Oct 2025 21:04:23 +0000 (17:04 -0400)]
add release management doc
Alan T. DeKok [Thu, 2 Oct 2025 16:34:52 +0000 (12:34 -0400)]
reformat and word wrap
Alan T. DeKok [Sun, 28 Sep 2025 16:00:48 +0000 (12:00 -0400)]
allow UTF-8 characters while reading directories
Alan T. DeKok [Sun, 28 Sep 2025 13:42:44 +0000 (09:42 -0400)]
handle zero terminated strings better in UTF8 checks.
the final zero is not valid UTF8.
Control characters are not valid UTF8.
Limit the allowed UTF8 length to where the trailing zero is located
Nick Porter [Wed, 1 Oct 2025 15:57:56 +0000 (16:57 +0100)]
If the the LDAP query failed to enqueue, then query will be NULL
Nick Porter [Wed, 1 Oct 2025 15:56:49 +0000 (16:56 +0100)]
Use autofreeing of autz_ctx
It is parented off a higher stack frame, and if `unlang_module_yield`
has been used to set a repeat function, which needs to be done before
attempting to submit a query, then `autz_ctx` needs to remain until that
repeat has happened.
Nick Porter [Wed, 1 Oct 2025 15:52:39 +0000 (16:52 +0100)]
Return UNLANG_ACTION_FAIL if the module call fails
Nick Porter [Wed, 1 Oct 2025 13:43:34 +0000 (14:43 +0100)]
Remove over restrictive checks on array index contents
This reported incorrect errors - such as when an attribute is used as an
array index.
Invalid array indexes (e.g. undefined attributes or invalid data types)
are caught during policy compilation.
Nick Porter [Wed, 1 Oct 2025 12:55:36 +0000 (13:55 +0100)]
Write to logdir, not confdir
Nick Porter [Wed, 1 Oct 2025 12:43:17 +0000 (13:43 +0100)]
Align upper bound of max_pps with upper bound of start_pps
Nick Porter [Wed, 1 Oct 2025 11:04:46 +0000 (12:04 +0100)]
Add support for FR_TYPE_ATTR xlat arguments
Nick Porter [Wed, 1 Oct 2025 10:55:43 +0000 (11:55 +0100)]
Add fr_value_box_set_attr to populate FR_TYPE_ATTR boxes
Nick Porter [Wed, 1 Oct 2025 08:23:53 +0000 (09:23 +0100)]
No need for variadic args to %proto.decode() xlat
Nick Porter [Tue, 30 Sep 2025 11:08:18 +0000 (12:08 +0100)]
Test %ldap.uri.escape and %ldap.uri.unescape with multiple boxes
Nick Porter [Tue, 30 Sep 2025 11:06:17 +0000 (12:06 +0100)]
Don't concat the inputs to %ldap.uri.escape and %ldap.uri.unescape
If the input to these xlats is mulitple boxes, this produces multiple
boxes on the output allowing escaping / unescaping to be done inline in
cases such as
%concat(%ldap.uri.escape(foo[*]), '<sep>')
Nick Porter [Fri, 26 Sep 2025 19:08:34 +0000 (20:08 +0100)]
Add values for ATT
Nick Porter [Fri, 26 Sep 2025 19:08:01 +0000 (20:08 +0100)]
Add ref to RFC4243
Nick Porter [Fri, 26 Sep 2025 18:46:38 +0000 (19:46 +0100)]
Allocate args when copying an xlat function
Arran Cudbard-Bell [Sun, 28 Sep 2025 23:02:35 +0000 (19:02 -0400)]
size also needs to be on a separate line
Arran Cudbard-Bell [Sun, 28 Sep 2025 19:32:15 +0000 (15:32 -0400)]
Add more notes on how the atomic queues work
Replace modulo with bitwise and.
Arran Cudbard-Bell [Sun, 28 Sep 2025 19:31:04 +0000 (15:31 -0400)]
Move atomic things inside atomic_queue.c
...so we can spell acquire correctly
Arran Cudbard-Bell [Sun, 28 Sep 2025 19:30:12 +0000 (15:30 -0400)]
Add functions to round to nearest power of 2
Arran Cudbard-Bell [Sat, 27 Sep 2025 19:15:52 +0000 (15:15 -0400)]
Fix trigger docs
Arran Cudbard-Bell [Fri, 26 Sep 2025 23:06:22 +0000 (19:06 -0400)]
dict_def should always be local_dict
Arran Cudbard-Bell [Fri, 26 Sep 2025 22:35:46 +0000 (18:35 -0400)]
Make json.encode work with local attributes
Arran Cudbard-Bell [Fri, 26 Sep 2025 21:22:35 +0000 (17:22 -0400)]
Have json.encode accept refs as discreet arguments
Alan T. DeKok [Wed, 24 Sep 2025 20:55:14 +0000 (16:55 -0400)]
let's exit the loop on success
Alan T. DeKok [Wed, 24 Sep 2025 17:58:48 +0000 (13:58 -0400)]
no longer used
Alan T. DeKok [Wed, 24 Sep 2025 14:38:26 +0000 (10:38 -0400)]
allow dictionary to use $INCLUDE directory.d/
Alan T. DeKok [Tue, 23 Sep 2025 15:39:29 +0000 (11:39 -0400)]
add wrapper API for iterating files, directories, or globs
Alan T. DeKok [Tue, 23 Sep 2025 11:29:36 +0000 (07:29 -0400)]
add and use chdir option
so that the server will do a chdir after suid_down_permanent
Alan T. DeKok [Mon, 22 Sep 2025 22:29:22 +0000 (18:29 -0400)]
rename variables
to be more consistent with _dict_from_file()
Alan T. DeKok [Mon, 22 Sep 2025 18:20:40 +0000 (14:20 -0400)]
simplify _dict_from_file()
in preparation for adding globbing support
_dict_from_file() is called to load the protocol dictionaries,
which have hard-coded path and filename. Or, from the $INCLUDE
handler, which can do the normalizations itself
github-actions[bot] [Thu, 18 Sep 2025 04:29:34 +0000 (04:29 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/der.tar
github-actions[bot] [Thu, 18 Sep 2025 04:27:19 +0000 (04:27 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/cbor.tar
Nick Porter [Wed, 17 Sep 2025 15:43:08 +0000 (16:43 +0100)]
getopt() returns an int, not char
Nick Porter [Wed, 17 Sep 2025 15:35:06 +0000 (16:35 +0100)]
Ensure vb is initialised
Nick Porter [Mon, 8 Sep 2025 16:00:13 +0000 (17:00 +0100)]
Re-enable control_test
Nick Porter [Mon, 8 Sep 2025 16:02:28 +0000 (17:02 +0100)]
Base atomic queue size on the max message count
Nick Porter [Mon, 8 Sep 2025 16:01:52 +0000 (17:01 +0100)]
Back off message retry
Nick Porter [Mon, 8 Sep 2025 16:01:15 +0000 (17:01 +0100)]
Add extra debug levels to control_test
Nick Porter [Fri, 5 Sep 2025 08:24:58 +0000 (09:24 +0100)]
Update control_test to allow one atomic queue per worker
Nick Porter [Fri, 5 Sep 2025 07:48:55 +0000 (08:48 +0100)]
Update control_test to use current APIs and use variable number of workers
Nick Porter [Tue, 2 Sep 2025 14:48:25 +0000 (15:48 +0100)]
Re-enable ring_buffer_test
Nick Porter [Mon, 8 Sep 2025 15:48:12 +0000 (16:48 +0100)]
Correct comment
Nick Porter [Mon, 8 Sep 2025 15:47:53 +0000 (16:47 +0100)]
Pop all pending control messages when the read event fires
Under extreme load not all messages get popped, eventually leading to a
full ring buffer and so collapse of the control signalling.
Nick Porter [Mon, 8 Sep 2025 15:31:38 +0000 (16:31 +0100)]
Don't re-run garbage collection
`fr_control_message_alloc()` already attempts garbage collection if
allocation from the ring buffer fails, so trying again like this will
potentially result in 3 calls to `fr_control_gc()` when the buffer is
full.
Nick Porter [Mon, 8 Sep 2025 10:01:39 +0000 (11:01 +0100)]
Retry writing to the pipe if it fails with EAGAIN / EWOULDBLOCK
Nick Porter [Fri, 5 Sep 2025 14:32:59 +0000 (15:32 +0100)]
Correct EV_SET for triggering user event
Nick Porter [Fri, 5 Sep 2025 12:31:28 +0000 (13:31 +0100)]
Align macro argument names with their use
Nick Porter [Fri, 5 Sep 2025 12:24:27 +0000 (13:24 +0100)]
No need to pass in event list as fr_event_user_t contains the list
Nick Porter [Wed, 17 Sep 2025 13:44:40 +0000 (14:44 +0100)]
Don't drop capabilities too early
Dropping CAP_SETGID too early can cause setresuid() to fail on some
platforms.
Seen when running `freeradius -XC` on Debian platforms.
Alan T. DeKok [Mon, 15 Sep 2025 19:29:49 +0000 (15:29 -0400)]
clear CAP_SUID and CAP_GUID as necessary. Fixes #5647
Nick Porter [Mon, 15 Sep 2025 15:56:28 +0000 (16:56 +0100)]
Package libfreeradius-der in .deb packages
Nick Porter [Mon, 15 Sep 2025 08:28:20 +0000 (09:28 +0100)]
Optionally decode certificates using the DER decoder
This requires OpenSSL >= 3.4 where the custom stack allocator callback
is available.
The default stack size allocated by previous versions is too small and
the recursive calls involved in certificate decoding require a larger
stack.
Nick Porter [Fri, 12 Sep 2025 19:53:37 +0000 (20:53 +0100)]
Use mmap to allocate for OpenSSL stack allocation
Using the size reported by pthread_attr_getstacksize()
Arran Cudbard-Bell [Wed, 10 Sep 2025 18:15:09 +0000 (19:15 +0100)]
Add additional test for nested JSON encoding
ethan-thompson [Wed, 10 Sep 2025 14:32:39 +0000 (10:32 -0400)]
Update wiki link for redhat FAQ
github-actions[bot] [Wed, 10 Sep 2025 04:29:55 +0000 (04:29 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/dhcpv4.tar
github-actions[bot] [Wed, 10 Sep 2025 04:28:46 +0000 (04:28 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/radius.tar
github-actions[bot] [Wed, 10 Sep 2025 04:28:19 +0000 (04:28 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/dhcpv6.tar
github-actions[bot] [Wed, 10 Sep 2025 04:26:22 +0000 (04:26 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/util.tar
github-actions[bot] [Wed, 10 Sep 2025 04:26:13 +0000 (04:26 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/tacacs.tar
github-actions[bot] [Wed, 10 Sep 2025 04:25:04 +0000 (04:25 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/dns.tar
github-actions[bot] [Wed, 10 Sep 2025 04:24:46 +0000 (04:24 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/bfd.tar
github-actions[bot] [Wed, 10 Sep 2025 04:24:40 +0000 (04:24 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/tftp.tar
github-actions[bot] [Wed, 10 Sep 2025 04:24:37 +0000 (04:24 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/vmps.tar
Nick Porter [Thu, 4 Sep 2025 14:18:08 +0000 (15:18 +0100)]
Add test of %smtp.send() xlat
Nick Porter [Thu, 4 Sep 2025 12:55:10 +0000 (13:55 +0100)]
Add %smtp.send() xlat
For sending simple emails, e.g. as triggers or for logging exceptions.
Nick Porter [Thu, 4 Sep 2025 12:54:04 +0000 (13:54 +0100)]
Correct debug message types
Nick Porter [Thu, 4 Sep 2025 12:50:05 +0000 (13:50 +0100)]
Use correct rcode depending on why the call could not run
Nick Porter [Thu, 4 Sep 2025 12:45:50 +0000 (13:45 +0100)]
Correct comment
Nick Porter [Thu, 4 Sep 2025 12:44:39 +0000 (13:44 +0100)]
Make sure the randle is released if enqueue fails
Arran Cudbard-Bell [Thu, 4 Sep 2025 11:31:51 +0000 (13:31 +0200)]
Add aliases for sha2/sha3
Arran Cudbard-Bell [Thu, 4 Sep 2025 11:01:47 +0000 (13:01 +0200)]
Equality not assignment...
Arran Cudbard-Bell [Thu, 4 Sep 2025 11:00:42 +0000 (13:00 +0200)]
Add ordering match on attributes, to allow server side sort on profiles to return attributes in a consistent order
Nick Porter [Wed, 3 Sep 2025 18:23:03 +0000 (19:23 +0100)]
Pass the correct uctx when resetting the timer
Nick Porter [Wed, 3 Sep 2025 18:14:14 +0000 (19:14 +0100)]
Retry request will have state TRUNK_REQUEST_STATE_SENT
Nick Porter [Wed, 3 Sep 2025 12:53:13 +0000 (13:53 +0100)]
Pacify Coverity (CID #
1503923 )
Coverity is not correctly doing the calculations inside the loop to
realise that block_len is safely limited to protect against out of
bounds access to tpasswd.
Nick Porter [Wed, 3 Sep 2025 10:50:17 +0000 (11:50 +0100)]
Pacify Coverity (CID #
1520878 )
Coverity doesn't see that fd < 0 means the lock was released
Nick Porter [Wed, 3 Sep 2025 10:39:21 +0000 (11:39 +0100)]
Correct logic for finding trigger section for exfiles (CID #
1665211 )
Nick Porter [Wed, 3 Sep 2025 09:53:14 +0000 (10:53 +0100)]
Pacify coverity (CID #
1665209 , #
1665208 , #
1665207 )
Coverity doesn't follow that s_mac being wrapped in FR_DBUFF_TMP will be
populated by fr_base16_decode.
It also doesn't see that digest and mic will be populated by HMAC.
Nick Porter [Wed, 3 Sep 2025 09:45:01 +0000 (10:45 +0100)]
Ensure pair list is allocated (CID #
1665210 )
Nick Porter [Tue, 2 Sep 2025 09:58:52 +0000 (10:58 +0100)]
Update repo lists after adding NR extras
Nick Porter [Tue, 2 Sep 2025 09:30:40 +0000 (10:30 +0100)]
Doxygen fixes
Alan T. DeKok [Mon, 1 Sep 2025 22:55:58 +0000 (18:55 -0400)]
add backlog parameter for the listen() API
Alan T. DeKok [Tue, 26 Aug 2025 19:20:08 +0000 (15:20 -0400)]
add more comments
Nick Porter [Mon, 1 Sep 2025 10:04:47 +0000 (11:04 +0100)]
Remove redundant options
Nick Porter [Mon, 1 Sep 2025 09:58:25 +0000 (10:58 +0100)]
mode has to be set correctly, due to the CONF_PARSER function
Nick Porter [Mon, 1 Sep 2025 09:53:36 +0000 (10:53 +0100)]
Remove incorrect comment
Nick Porter [Mon, 1 Sep 2025 09:09:23 +0000 (10:09 +0100)]
Enable NR extras repo
The minimum version of libkqueue-dev set in debian/control is higher
than that provided by Ubuntu repos.
Nick Porter [Mon, 1 Sep 2025 08:48:10 +0000 (09:48 +0100)]
Use Module-Name and Module-Instance in global triggers
Nick Porter [Mon, 1 Sep 2025 08:40:09 +0000 (09:40 +0100)]
Use correct value for trigger name
Nick Porter [Fri, 29 Aug 2025 17:03:20 +0000 (18:03 +0100)]
Pass trigger_args to trunk_alloc
Nick Porter [Fri, 29 Aug 2025 17:00:41 +0000 (18:00 +0100)]
Add trigger_args to rlm_tacacs
Nick Porter [Fri, 29 Aug 2025 16:50:06 +0000 (17:50 +0100)]
Add trigger_args to rlm_radius
Nick Porter [Fri, 29 Aug 2025 16:29:42 +0000 (17:29 +0100)]
No need for goto error