]> git.ipfire.org Git - thirdparty/freeradius-server.git/log
thirdparty/freeradius-server.git
2 days agoword smithing and updates developer/alandekok master
Alan T. DeKok [Fri, 3 Oct 2025 16:23:03 +0000 (12:23 -0400)] 
word smithing and updates

2 days agoRemove UNLANG_ACTION_STOP_PROCESSING developer/arr2036
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.

2 days agoPrint better errors in control socket test
Arran Cudbard-Bell [Wed, 1 Oct 2025 04:25:05 +0000 (00:25 -0400)] 
Print better errors in control socket test

2 days agoadd release management doc
Alan T. DeKok [Thu, 2 Oct 2025 21:04:23 +0000 (17:04 -0400)] 
add release management doc

2 days agoreformat and word wrap
Alan T. DeKok [Thu, 2 Oct 2025 16:34:52 +0000 (12:34 -0400)] 
reformat and word wrap

2 days agoallow UTF-8 characters while reading directories
Alan T. DeKok [Sun, 28 Sep 2025 16:00:48 +0000 (12:00 -0400)] 
allow UTF-8 characters while reading directories

2 days agohandle zero terminated strings better in UTF8 checks.
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

4 days agoIf the the LDAP query failed to enqueue, then query will be NULL developer/ndptech
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

4 days agoUse autofreeing of autz_ctx
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.

4 days agoReturn UNLANG_ACTION_FAIL if the module call fails
Nick Porter [Wed, 1 Oct 2025 15:52:39 +0000 (16:52 +0100)] 
Return UNLANG_ACTION_FAIL if the module call fails

4 days agoRemove over restrictive checks on array index contents
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.

4 days agoWrite to logdir, not confdir
Nick Porter [Wed, 1 Oct 2025 12:55:36 +0000 (13:55 +0100)] 
Write to logdir, not confdir

4 days agoAlign upper bound of max_pps with upper bound of start_pps
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

4 days agoAdd support for FR_TYPE_ATTR xlat arguments
Nick Porter [Wed, 1 Oct 2025 11:04:46 +0000 (12:04 +0100)] 
Add support for FR_TYPE_ATTR xlat arguments

4 days agoAdd fr_value_box_set_attr to populate FR_TYPE_ATTR boxes
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

4 days agoNo need for variadic args to %proto.decode() xlat
Nick Porter [Wed, 1 Oct 2025 08:23:53 +0000 (09:23 +0100)] 
No need for variadic args to %proto.decode() xlat

5 days agoTest %ldap.uri.escape and %ldap.uri.unescape with multiple boxes
Nick Porter [Tue, 30 Sep 2025 11:08:18 +0000 (12:08 +0100)] 
Test %ldap.uri.escape and %ldap.uri.unescape with multiple boxes

5 days agoDon't concat the inputs to %ldap.uri.escape and %ldap.uri.unescape
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>')

6 days agoAdd values for ATT
Nick Porter [Fri, 26 Sep 2025 19:08:34 +0000 (20:08 +0100)] 
Add values for ATT

6 days agoAdd ref to RFC4243
Nick Porter [Fri, 26 Sep 2025 19:08:01 +0000 (20:08 +0100)] 
Add ref to RFC4243

6 days agoAllocate args when copying an xlat function
Nick Porter [Fri, 26 Sep 2025 18:46:38 +0000 (19:46 +0100)] 
Allocate args when copying an xlat function

6 days agosize also needs to be on a separate line
Arran Cudbard-Bell [Sun, 28 Sep 2025 23:02:35 +0000 (19:02 -0400)] 
size also needs to be on a separate line

6 days agoAdd more notes on how the atomic queues work
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.

6 days agoMove atomic things inside atomic_queue.c
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

6 days agoAdd functions to round to nearest power of 2
Arran Cudbard-Bell [Sun, 28 Sep 2025 19:30:12 +0000 (15:30 -0400)] 
Add functions to round to nearest power of 2

7 days agoFix trigger docs
Arran Cudbard-Bell [Sat, 27 Sep 2025 19:15:52 +0000 (15:15 -0400)] 
Fix trigger docs

8 days agodict_def should always be local_dict
Arran Cudbard-Bell [Fri, 26 Sep 2025 23:06:22 +0000 (19:06 -0400)] 
dict_def should always be local_dict

8 days agoMake json.encode work with local attributes
Arran Cudbard-Bell [Fri, 26 Sep 2025 22:35:46 +0000 (18:35 -0400)] 
Make json.encode work with local attributes

8 days agoHave json.encode accept refs as discreet arguments
Arran Cudbard-Bell [Fri, 26 Sep 2025 21:22:35 +0000 (17:22 -0400)] 
Have json.encode accept refs as discreet arguments

10 days agolet's exit the loop on success
Alan T. DeKok [Wed, 24 Sep 2025 20:55:14 +0000 (16:55 -0400)] 
let's exit the loop on success

10 days agono longer used
Alan T. DeKok [Wed, 24 Sep 2025 17:58:48 +0000 (13:58 -0400)] 
no longer used

11 days agoallow dictionary to use $INCLUDE directory.d/
Alan T. DeKok [Wed, 24 Sep 2025 14:38:26 +0000 (10:38 -0400)] 
allow dictionary to use $INCLUDE directory.d/

11 days agoadd wrapper API for iterating files, directories, or globs
Alan T. DeKok [Tue, 23 Sep 2025 15:39:29 +0000 (11:39 -0400)] 
add wrapper API for iterating files, directories, or globs

12 days agoadd and use chdir option
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

12 days agorename variables
Alan T. DeKok [Mon, 22 Sep 2025 22:29:22 +0000 (18:29 -0400)] 
rename variables

to be more consistent with _dict_from_file()

12 days agosimplify _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

2 weeks agoScheduled fuzzing: Update src/tests/fuzzer-corpus/der.tar
github-actions[bot] [Thu, 18 Sep 2025 04:29:34 +0000 (04:29 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/der.tar

2 weeks agoScheduled fuzzing: Update src/tests/fuzzer-corpus/cbor.tar
github-actions[bot] [Thu, 18 Sep 2025 04:27:19 +0000 (04:27 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/cbor.tar

2 weeks agogetopt() returns an int, not char
Nick Porter [Wed, 17 Sep 2025 15:43:08 +0000 (16:43 +0100)] 
getopt() returns an int, not char

2 weeks agoEnsure vb is initialised
Nick Porter [Wed, 17 Sep 2025 15:35:06 +0000 (16:35 +0100)] 
Ensure vb is initialised

2 weeks agoRe-enable control_test
Nick Porter [Mon, 8 Sep 2025 16:00:13 +0000 (17:00 +0100)] 
Re-enable control_test

2 weeks agoBase atomic queue size on the max message count
Nick Porter [Mon, 8 Sep 2025 16:02:28 +0000 (17:02 +0100)] 
Base atomic queue size on the max message count

2 weeks agoBack off message retry
Nick Porter [Mon, 8 Sep 2025 16:01:52 +0000 (17:01 +0100)] 
Back off message retry

2 weeks agoAdd extra debug levels to control_test
Nick Porter [Mon, 8 Sep 2025 16:01:15 +0000 (17:01 +0100)] 
Add extra debug levels to control_test

2 weeks agoUpdate control_test to allow one atomic queue per worker
Nick Porter [Fri, 5 Sep 2025 08:24:58 +0000 (09:24 +0100)] 
Update control_test to allow one atomic queue per worker

2 weeks agoUpdate control_test to use current APIs and use variable number of workers
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

2 weeks agoRe-enable ring_buffer_test
Nick Porter [Tue, 2 Sep 2025 14:48:25 +0000 (15:48 +0100)] 
Re-enable ring_buffer_test

2 weeks agoCorrect comment
Nick Porter [Mon, 8 Sep 2025 15:48:12 +0000 (16:48 +0100)] 
Correct comment

2 weeks agoPop all pending control messages when the read event fires
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.

2 weeks agoDon't re-run garbage collection
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.

2 weeks agoRetry writing to the pipe if it fails with EAGAIN / EWOULDBLOCK
Nick Porter [Mon, 8 Sep 2025 10:01:39 +0000 (11:01 +0100)] 
Retry writing to the pipe if it fails with EAGAIN / EWOULDBLOCK

2 weeks agoCorrect EV_SET for triggering user event
Nick Porter [Fri, 5 Sep 2025 14:32:59 +0000 (15:32 +0100)] 
Correct EV_SET for triggering user event

2 weeks agoAlign macro argument names with their use
Nick Porter [Fri, 5 Sep 2025 12:31:28 +0000 (13:31 +0100)] 
Align macro argument names with their use

2 weeks agoNo need to pass in event list as fr_event_user_t contains the list
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

2 weeks agoDon't drop capabilities too early
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.

2 weeks agoclear CAP_SUID and CAP_GUID as necessary. Fixes #5647
Alan T. DeKok [Mon, 15 Sep 2025 19:29:49 +0000 (15:29 -0400)] 
clear CAP_SUID and CAP_GUID as necessary.  Fixes #5647

2 weeks agoPackage libfreeradius-der in .deb packages
Nick Porter [Mon, 15 Sep 2025 15:56:28 +0000 (16:56 +0100)] 
Package libfreeradius-der in .deb packages

2 weeks agoOptionally decode certificates using the DER decoder
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.

2 weeks agoUse mmap to allocate for OpenSSL stack allocation
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()

3 weeks agoAdd additional test for nested JSON encoding
Arran Cudbard-Bell [Wed, 10 Sep 2025 18:15:09 +0000 (19:15 +0100)] 
Add additional test for nested JSON encoding

3 weeks agoUpdate wiki link for redhat FAQ
ethan-thompson [Wed, 10 Sep 2025 14:32:39 +0000 (10:32 -0400)] 
Update wiki link for redhat FAQ

3 weeks agoScheduled fuzzing: Update src/tests/fuzzer-corpus/dhcpv4.tar
github-actions[bot] [Wed, 10 Sep 2025 04:29:55 +0000 (04:29 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/dhcpv4.tar

3 weeks agoScheduled fuzzing: Update src/tests/fuzzer-corpus/radius.tar
github-actions[bot] [Wed, 10 Sep 2025 04:28:46 +0000 (04:28 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/radius.tar

3 weeks agoScheduled fuzzing: Update src/tests/fuzzer-corpus/dhcpv6.tar
github-actions[bot] [Wed, 10 Sep 2025 04:28:19 +0000 (04:28 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/dhcpv6.tar

3 weeks agoScheduled fuzzing: Update src/tests/fuzzer-corpus/util.tar
github-actions[bot] [Wed, 10 Sep 2025 04:26:22 +0000 (04:26 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/util.tar

3 weeks agoScheduled fuzzing: Update src/tests/fuzzer-corpus/tacacs.tar
github-actions[bot] [Wed, 10 Sep 2025 04:26:13 +0000 (04:26 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/tacacs.tar

3 weeks agoScheduled fuzzing: Update src/tests/fuzzer-corpus/dns.tar
github-actions[bot] [Wed, 10 Sep 2025 04:25:04 +0000 (04:25 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/dns.tar

3 weeks agoScheduled fuzzing: Update src/tests/fuzzer-corpus/bfd.tar
github-actions[bot] [Wed, 10 Sep 2025 04:24:46 +0000 (04:24 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/bfd.tar

3 weeks agoScheduled fuzzing: Update src/tests/fuzzer-corpus/tftp.tar
github-actions[bot] [Wed, 10 Sep 2025 04:24:40 +0000 (04:24 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/tftp.tar

3 weeks agoScheduled fuzzing: Update src/tests/fuzzer-corpus/vmps.tar
github-actions[bot] [Wed, 10 Sep 2025 04:24:37 +0000 (04:24 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/vmps.tar

4 weeks agoAdd test of %smtp.send() xlat
Nick Porter [Thu, 4 Sep 2025 14:18:08 +0000 (15:18 +0100)] 
Add test of %smtp.send() xlat

4 weeks agoAdd %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.

4 weeks agoCorrect debug message types
Nick Porter [Thu, 4 Sep 2025 12:54:04 +0000 (13:54 +0100)] 
Correct debug message types

4 weeks agoUse correct rcode depending on why the call could not run
Nick Porter [Thu, 4 Sep 2025 12:50:05 +0000 (13:50 +0100)] 
Use correct rcode depending on why the call could not run

4 weeks agoCorrect comment
Nick Porter [Thu, 4 Sep 2025 12:45:50 +0000 (13:45 +0100)] 
Correct comment

4 weeks agoMake sure the randle is released if enqueue fails
Nick Porter [Thu, 4 Sep 2025 12:44:39 +0000 (13:44 +0100)] 
Make sure the randle is released if enqueue fails

4 weeks agoAdd aliases for sha2/sha3
Arran Cudbard-Bell [Thu, 4 Sep 2025 11:31:51 +0000 (13:31 +0200)] 
Add aliases for sha2/sha3

4 weeks agoEquality not assignment...
Arran Cudbard-Bell [Thu, 4 Sep 2025 11:01:47 +0000 (13:01 +0200)] 
Equality not assignment...

4 weeks agoAdd ordering match on attributes, to allow server side sort on profiles to return...
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

4 weeks agoPass the correct uctx when resetting the timer
Nick Porter [Wed, 3 Sep 2025 18:23:03 +0000 (19:23 +0100)] 
Pass the correct uctx when resetting the timer

4 weeks agoRetry request will have state TRUNK_REQUEST_STATE_SENT
Nick Porter [Wed, 3 Sep 2025 18:14:14 +0000 (19:14 +0100)] 
Retry request will have state TRUNK_REQUEST_STATE_SENT

4 weeks agoPacify Coverity (CID #1503923)
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.

4 weeks agoPacify Coverity (CID #1520878)
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

4 weeks agoCorrect logic for finding trigger section for exfiles (CID #1665211)
Nick Porter [Wed, 3 Sep 2025 10:39:21 +0000 (11:39 +0100)] 
Correct logic for finding trigger section for exfiles (CID #1665211)

4 weeks agoPacify coverity (CID #1665209, #1665208, #1665207)
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.

4 weeks agoEnsure pair list is allocated (CID #1665210)
Nick Porter [Wed, 3 Sep 2025 09:45:01 +0000 (10:45 +0100)] 
Ensure pair list is allocated (CID #1665210)

4 weeks agoUpdate repo lists after adding NR extras
Nick Porter [Tue, 2 Sep 2025 09:58:52 +0000 (10:58 +0100)] 
Update repo lists after adding NR extras

4 weeks agoDoxygen fixes
Nick Porter [Tue, 2 Sep 2025 09:30:40 +0000 (10:30 +0100)] 
Doxygen fixes

4 weeks agoadd backlog parameter for the listen() API
Alan T. DeKok [Mon, 1 Sep 2025 22:55:58 +0000 (18:55 -0400)] 
add backlog parameter for the listen() API

4 weeks agoadd more comments
Alan T. DeKok [Tue, 26 Aug 2025 19:20:08 +0000 (15:20 -0400)] 
add more comments

4 weeks agoRemove redundant options
Nick Porter [Mon, 1 Sep 2025 10:04:47 +0000 (11:04 +0100)] 
Remove redundant options

4 weeks agomode has to be set correctly, due to the CONF_PARSER function
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

4 weeks agoRemove incorrect comment
Nick Porter [Mon, 1 Sep 2025 09:53:36 +0000 (10:53 +0100)] 
Remove incorrect comment

4 weeks agoEnable NR extras repo
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.

4 weeks agoUse Module-Name and Module-Instance in global triggers
Nick Porter [Mon, 1 Sep 2025 08:48:10 +0000 (09:48 +0100)] 
Use Module-Name and Module-Instance in global triggers

4 weeks agoUse correct value for trigger name
Nick Porter [Mon, 1 Sep 2025 08:40:09 +0000 (09:40 +0100)] 
Use correct value for trigger name

5 weeks agoPass trigger_args to trunk_alloc
Nick Porter [Fri, 29 Aug 2025 17:03:20 +0000 (18:03 +0100)] 
Pass trigger_args to trunk_alloc

5 weeks agoAdd trigger_args to rlm_tacacs
Nick Porter [Fri, 29 Aug 2025 17:00:41 +0000 (18:00 +0100)] 
Add trigger_args to rlm_tacacs

5 weeks agoAdd trigger_args to rlm_radius
Nick Porter [Fri, 29 Aug 2025 16:50:06 +0000 (17:50 +0100)] 
Add trigger_args to rlm_radius

5 weeks agoNo need for goto error
Nick Porter [Fri, 29 Aug 2025 16:29:42 +0000 (17:29 +0100)] 
No need for goto error