]> git.ipfire.org Git - thirdparty/freeradius-server.git/log
thirdparty/freeradius-server.git
2 months agoAdd test of TACACS+ encode using multiple Vendor arguments
Nick Porter [Thu, 26 Mar 2026 19:59:39 +0000 (19:59 +0000)] 
Add test of TACACS+ encode using multiple Vendor arguments

As a regression test for previous behaviour where the argument count was
incorrect for this case.

2 months agoRemove spurious debug
Nick Porter [Thu, 26 Mar 2026 19:21:59 +0000 (19:21 +0000)] 
Remove spurious debug

2 months agoCheck for Vendor attributes before RFC 8097 attributes
Nick Porter [Thu, 26 Mar 2026 19:17:21 +0000 (19:17 +0000)] 
Check for Vendor attributes before RFC 8097 attributes

Vendor attributes have the root as their parent in the TACACS+
dictionary, so were caught by the test for RFC 8907 attributes and
therefore returning the wrong count.

2 months agoCorrect Juniper TACACS+ dictionary
Nick Porter [Thu, 26 Mar 2026 16:17:44 +0000 (16:17 +0000)] 
Correct Juniper TACACS+ dictionary

2 months agoCorrect iterator use
Nick Porter [Thu, 26 Mar 2026 13:42:44 +0000 (13:42 +0000)] 
Correct iterator use

2 months agofix various bugs in tmpl_eval.c
Alan T. DeKok [Wed, 25 Mar 2026 23:01:47 +0000 (12:01 +1300)] 
fix various bugs in tmpl_eval.c

2 months agofix various bugs in tmpl_tokenize.c
Alan T. DeKok [Wed, 25 Mar 2026 23:18:00 +0000 (12:18 +1300)] 
fix various bugs in tmpl_tokenize.c

2 months agouse consistent headings
Alan T. DeKok [Wed, 25 Mar 2026 22:20:17 +0000 (11:20 +1300)] 
use consistent headings

2 months agodocs-v4: Updated doc to reflect child behviour when exiting from parallel. Fixed...
nolade [Wed, 25 Mar 2026 15:05:23 +0000 (11:05 -0400)] 
docs-v4: Updated doc to reflect child behviour when exiting from parallel. Fixed typo

2 months agonotes on why we can't detach the subrequest
Alan T. DeKok [Wed, 25 Mar 2026 22:16:36 +0000 (11:16 +1300)] 
notes on why we can't detach the subrequest

2 months agocancel the subrequest, too
Alan T. DeKok [Wed, 25 Mar 2026 20:38:57 +0000 (09:38 +1300)] 
cancel the subrequest, too

2 months agoDon't free subrequest during eap auth cancellation
Nick Porter [Wed, 25 Mar 2026 18:37:41 +0000 (18:37 +0000)] 
Don't free subrequest during eap auth cancellation

It needs to persist so that it and any child subrequests talloc'd off it
can complete after the cancellation callbacks have been run.

2 months agoRemove vendor name from RtBrick attributes
Nick Porter [Wed, 25 Mar 2026 09:05:46 +0000 (09:05 +0000)] 
Remove vendor name from RtBrick attributes

2 months agotweaks and formatting
Alan T. DeKok [Tue, 24 Mar 2026 22:31:43 +0000 (11:31 +1300)] 
tweaks and formatting

2 months agodocs-v4: integrity doc/source check. Fixed discrepencies in the expressions.adoc...
nolade [Wed, 18 Mar 2026 21:05:39 +0000 (17:05 -0400)] 
docs-v4: integrity doc/source check. Fixed discrepencies in the expressions.adoc files

2 months agotweaks and formatting
Alan T. DeKok [Tue, 24 Mar 2026 22:27:22 +0000 (11:27 +1300)] 
tweaks and formatting

2 months agodocs-v4: doc integrity fixes to the foreach.adoc file
nolade [Tue, 24 Mar 2026 19:04:59 +0000 (15:04 -0400)] 
docs-v4: doc integrity fixes to the foreach.adoc file

2 months agoport RTBrick dictionary from v3
Alan T. DeKok [Tue, 24 Mar 2026 21:51:15 +0000 (10:51 +1300)] 
port RTBrick dictionary from v3

and change for v4.  Use v4 data types, and add refs to the DHCP
dictionaries, and update encrypt= line

2 months agominor cleanups
Alan T. DeKok [Tue, 24 Mar 2026 21:59:01 +0000 (10:59 +1300)] 
minor cleanups

2 months agoadd more test module configurations
Alan T. DeKok [Tue, 24 Mar 2026 21:58:42 +0000 (10:58 +1300)] 
add more test module configurations

2 months agoaccount for abinary header, too. Fixes #5779
Alan T. DeKok [Tue, 24 Mar 2026 21:33:17 +0000 (10:33 +1300)] 
account for abinary header, too.  Fixes #5779

2 months agoframework and sample tests for reading module configurations
Alan T. DeKok [Mon, 23 Mar 2026 02:22:32 +0000 (15:22 +1300)] 
framework and sample tests for reading module configurations

2 months agoprint out data type in error too
Alan T. DeKok [Mon, 23 Mar 2026 00:27:07 +0000 (13:27 +1300)] 
print out data type in error too

so that it's easier to tell just what the thing expects

2 months agocomplain when there are duplicate 'type = foo' entries
Alan T. DeKok [Mon, 23 Mar 2026 00:23:15 +0000 (13:23 +1300)] 
complain when there are duplicate 'type = foo' entries

2 months agoclarify error a little bit
Alan T. DeKok [Mon, 23 Mar 2026 00:20:09 +0000 (13:20 +1300)] 
clarify error a little bit

2 months agoadd '-C' to unit_test_module
Alan T. DeKok [Mon, 23 Mar 2026 00:04:42 +0000 (13:04 +1300)] 
add '-C' to unit_test_module

2 months agomore RADIUS encode / decode tests for corner cases
Alan T. DeKok [Sun, 22 Mar 2026 20:20:10 +0000 (09:20 +1300)] 
more RADIUS encode / decode tests for corner cases

2 months agoPacify Coverity (CID #1690427)
Nick Porter [Tue, 24 Mar 2026 08:44:12 +0000 (08:44 +0000)] 
Pacify Coverity (CID #1690427)

2 months agoCorrect array index
Nick Porter [Tue, 24 Mar 2026 08:23:22 +0000 (08:23 +0000)] 
Correct array index

The first array entry relates to worker `MIN_WORKER_ID`, not worker 0

2 months agoci: docker fixes for multi-server-tests job
Matthew Newton [Tue, 24 Mar 2026 00:41:08 +0000 (00:41 +0000)] 
ci: docker fixes for multi-server-tests job

2 months agoIn single thread mode the worker_id is 0
Nick Porter [Mon, 23 Mar 2026 20:13:21 +0000 (20:13 +0000)] 
In single thread mode the worker_id is 0

2 months agoSet up destructor for coord_pair
Nick Porter [Mon, 23 Mar 2026 18:27:13 +0000 (18:27 +0000)] 
Set up destructor for coord_pair

To clean up any pending requests during shutdown

2 months agoAdd optional inst_destroy to coordinator callbacks
Nick Porter [Mon, 23 Mar 2026 18:23:31 +0000 (18:23 +0000)] 
Add optional inst_destroy to coordinator callbacks

For instance specific destructors

2 months agoNaming correction
Nick Porter [Mon, 23 Mar 2026 18:07:34 +0000 (18:07 +0000)] 
Naming correction

2 months agoCorrect definition of Worker-Id attribute
Nick Porter [Mon, 23 Mar 2026 16:32:35 +0000 (16:32 +0000)] 
Correct definition of Worker-Id attribute

2 months agoPass a module context to coordinator worker callbacks
Nick Porter [Mon, 23 Mar 2026 11:14:18 +0000 (11:14 +0000)] 
Pass a module context to coordinator worker callbacks

2 months agoStore module instance when registering coordinator
Nick Porter [Mon, 23 Mar 2026 11:11:50 +0000 (11:11 +0000)] 
Store module instance when registering coordinator

So it can be passed to worker callbacks which may want module instance
or thread instance data.

2 months agoHandle main thread connecting to coordinators
Nick Porter [Mon, 23 Mar 2026 11:08:31 +0000 (11:08 +0000)] 
Handle main thread connecting to coordinators

Which is happening now that the main thread is creating thread instance
data.

The main thread will return -1 when calling fr_schedule_worker_id().

This case is now handled by increasing the size of the coordinator
arrays to handle the extra "worker" and calculating array indexes
appropriately.

2 months agoAdd additional asserts
Nick Porter [Mon, 23 Mar 2026 09:24:47 +0000 (09:24 +0000)] 
Add additional asserts

2 months agoSet an initial value for worker_id
Nick Porter [Mon, 23 Mar 2026 09:23:22 +0000 (09:23 +0000)] 
Set an initial value for worker_id

So that fr_schedule_workder_id() returns -1 when called from the main
thread, avoiding confusion with worker 0.

2 months agoMulti-server tests only run on the FreeRADIUS repo
Nick Porter [Fri, 20 Mar 2026 10:25:47 +0000 (10:25 +0000)] 
Multi-server tests only run on the FreeRADIUS repo

2 months agoBump GitHub action versions for Node.js 24
Nick Porter [Fri, 20 Mar 2026 10:23:25 +0000 (10:23 +0000)] 
Bump GitHub action versions for Node.js 24

2 months agocomplain if receipt file is the same as one of the input files
Alan T. DeKok [Sun, 22 Mar 2026 19:25:35 +0000 (08:25 +1300)] 
complain if receipt file is the same as one of the input files

2 months agoadd more tests for corner cases
Alan T. DeKok [Sun, 22 Mar 2026 19:30:40 +0000 (08:30 +1300)] 
add more tests for corner cases

2 months agoencode OID subidentifier value 0 as single 0x00 byte
ethan-thompson [Mon, 16 Mar 2026 19:38:53 +0000 (15:38 -0400)] 
encode OID subidentifier value 0 as single 0x00 byte

Signed-off-by: ethan-thompson <ethan.thompson@networkradius.com>
2 months agoavoid buffer overread in SET OF lexicographic comparator
ethan-thompson [Mon, 16 Mar 2026 19:37:13 +0000 (15:37 -0400)] 
avoid buffer overread in SET OF lexicographic comparator

Signed-off-by: ethan-thompson <ethan.thompson@networkradius.com>
2 months agoRemove file containing PII accidentally committed in b0f4123c84
Arran Cudbard-Bell [Sat, 21 Mar 2026 04:38:24 +0000 (22:38 -0600)] 
Remove file containing PII accidentally committed in b0f4123c84

2 months agoEmit the command that failed when it fails
Arran Cudbard-Bell [Thu, 19 Mar 2026 16:36:16 +0000 (10:36 -0600)] 
Emit the command that failed when it fails

2 months agomulti-server: add daily scheduled run for all tests
Arran Cudbard-Bell [Thu, 19 Mar 2026 04:43:46 +0000 (22:43 -0600)] 
multi-server: add daily scheduled run for all tests

Schedule runs at 2pm EST (7pm UTC) daily, executing all tests
including longer-running variants.  Push and PR triggers continue
to run only the short CI tests.

2 months agodocument behavior of $ENV{} with conditions
Alan T. DeKok [Fri, 20 Mar 2026 12:50:11 +0000 (08:50 -0400)] 
document behavior of $ENV{} with conditions

and add tests for current behavior, so at least we will be able
to detect when the behavior is wrong

2 months agomissing environment variables in strings can be a parse error
Alan T. DeKok [Thu, 19 Mar 2026 21:03:33 +0000 (17:03 -0400)] 
missing environment variables in strings can be a parse error

foo = $ENV{MISSING} is an error
foo = "$ENV{MISSING}" is OK

$INCLUDE foo/$ENV{MISSING} is an error

if (... $ENV{MISSING} ...) is OK, but should be updated so that
it only allows it inside of a quoted string

2 months agoin some cases, "no data" is a parse error
Alan T. DeKok [Thu, 19 Mar 2026 20:23:50 +0000 (16:23 -0400)] 
in some cases, "no data" is a parse error

and add tests to match

2 months agoadd and use error for "input is empty"
Alan T. DeKok [Thu, 19 Mar 2026 20:21:41 +0000 (16:21 -0400)] 
add and use error for "input is empty"

when the input shouldn't be empty.  this is different from the
case of "got input, but it wasn't what I expected"

2 months agotweak assertion for empty input
Alan T. DeKok [Thu, 19 Mar 2026 20:00:36 +0000 (16:00 -0400)] 
tweak assertion for empty input

2 months agotweak developer index page for clarity
Alan T. DeKok [Thu, 19 Mar 2026 19:12:24 +0000 (15:12 -0400)] 
tweak developer index page for clarity

2 months agonote that people should use github
Alan T. DeKok [Thu, 19 Mar 2026 17:18:19 +0000 (13:18 -0400)] 
note that people should use github

2 months agoformat and note github access tokens
Alan T. DeKok [Thu, 19 Mar 2026 17:12:05 +0000 (13:12 -0400)] 
format and note github access tokens

2 months agoAdd test of association_time to redis_ippool tests
Nick Porter [Thu, 19 Mar 2026 17:54:35 +0000 (17:54 +0000)] 
Add test of association_time to redis_ippool tests

2 months agoRenumber lua script lines
Nick Porter [Thu, 19 Mar 2026 17:53:53 +0000 (17:53 +0000)] 
Renumber lua script lines

2 months agoExpiry status is not relevant to sticky IP allocation
Nick Porter [Thu, 19 Mar 2026 17:51:14 +0000 (17:51 +0000)] 
Expiry status is not relevant to sticky IP allocation

If the device -> IP association persists, and the IP has not been
allocated to another device then re-allocate it to the requesting
device.

2 months agoAdd association_time option to rlm_redis_ippool
Nick Porter [Thu, 19 Mar 2026 16:45:02 +0000 (16:45 +0000)] 
Add association_time option to rlm_redis_ippool

To allow for "sticky" addressing.

This allows the owner -> IP association to last longer than the address
lease, so that allocation requests can return the address previously
used by a device if it has not been allocated to another owner since the
lease expiry.

2 months agoAdd fr_coord_pair_int_request_start()
Nick Porter [Thu, 19 Mar 2026 12:07:08 +0000 (12:07 +0000)] 
Add fr_coord_pair_int_request_start()

To start a request within a coordinator rather than in response to
worker -> coordinator data.

2 months agoBreak apart coord_pair_request_bootstrap
Nick Porter [Thu, 19 Mar 2026 11:51:14 +0000 (11:51 +0000)] 
Break apart coord_pair_request_bootstrap

To allow for requests being run through a coordinator process module to
come from sources other than worker -> coordinator data.

2 months agoAdd fr_coord_pair_request_coord_pair
Nick Porter [Wed, 18 Mar 2026 15:26:10 +0000 (15:26 +0000)] 
Add fr_coord_pair_request_coord_pair

To retrieve the coord_pair associated with a given request
being run through a process module.

2 months agoAdd fr_coord_worker_reply_broadcast
Nick Porter [Wed, 18 Mar 2026 15:20:30 +0000 (15:20 +0000)] 
Add fr_coord_worker_reply_broadcast

So replies from coordinator process modules can be sent to all workers.

2 months agoCorrect naming
Nick Porter [Wed, 18 Mar 2026 15:19:14 +0000 (15:19 +0000)] 
Correct naming

2 months agoset variables to NULL on free
Alan T. DeKok [Thu, 19 Mar 2026 15:16:18 +0000 (11:16 -0400)] 
set variables to NULL on free

and goto correct cleanup path

2 months agore-add request=child, as it's used to set pairs in the child
Alan T. DeKok [Thu, 19 Mar 2026 15:15:04 +0000 (11:15 -0400)] 
re-add request=child, as it's used to set pairs in the child

2 months agoalways add tls client hello version
Alan T. DeKok [Thu, 19 Mar 2026 15:03:09 +0000 (11:03 -0400)] 
always add tls client hello version

2 months agofree extensions in more error cases
Alan T. DeKok [Thu, 19 Mar 2026 13:45:16 +0000 (09:45 -0400)] 
free extensions in more error cases

2 months agoonly set CRL if we're using certificates
Alan T. DeKok [Thu, 19 Mar 2026 09:22:09 +0000 (05:22 -0400)] 
only set CRL if we're using certificates

and complain if check_crl=yes, but OpenSSL doesn't have the
relevant flags

2 months agoset ASYNC for non-certificate case, too
Alan T. DeKok [Thu, 19 Mar 2026 08:47:20 +0000 (04:47 -0400)] 
set ASYNC for non-certificate case, too

2 months agoadd server libraries to json fuzzer
Alan T. DeKok [Thu, 19 Mar 2026 07:00:41 +0000 (03:00 -0400)] 
add server libraries to json fuzzer

2 months agoadd FR_TRUNK_LIST_FUNC(draining, trunk_connection_t)
Catalina Pineros [Wed, 18 Mar 2026 18:15:46 +0000 (14:15 -0400)] 
add FR_TRUNK_LIST_FUNC(draining, trunk_connection_t)

2 months agoadd FR_TRUNK_LIST_FUNC(inactive_draining, trunk_connection_t)
Catalina Pineros [Wed, 18 Mar 2026 17:44:00 +0000 (13:44 -0400)] 
add FR_TRUNK_LIST_FUNC(inactive_draining, trunk_connection_t)

2 months agoadd FR_TRUNK_LIST_FUNC(inactive, trunk_connection_t)
Catalina Pineros [Wed, 18 Mar 2026 15:22:52 +0000 (11:22 -0400)] 
add FR_TRUNK_LIST_FUNC(inactive, trunk_connection_t)

2 months agouse FR_TRUNK_LIST_FUNC for 'full' list
Catalina Pineros [Thu, 19 Mar 2026 06:53:34 +0000 (02:53 -0400)] 
use FR_TRUNK_LIST_FUNC for 'full' list

2 months agoupdate FR_TRUNC_LIST macro to specify a target data type
Catalina Pineros [Thu, 19 Mar 2026 06:37:09 +0000 (02:37 -0400)] 
update FR_TRUNC_LIST macro to specify a target data type

2 months agofix typos in license
Alan T. DeKok [Thu, 19 Mar 2026 06:17:55 +0000 (02:17 -0400)] 
fix typos in license

2 months agofix typos
Catalina Pineros [Wed, 18 Mar 2026 20:16:54 +0000 (16:16 -0400)] 
fix typos

2 months agofix typos
Catalina Pineros [Tue, 17 Mar 2026 15:47:14 +0000 (11:47 -0400)] 
fix typos

2 months agofix typo in comment
Catalina Pineros [Tue, 17 Mar 2026 15:35:48 +0000 (11:35 -0400)] 
fix typo in comment
(rlm_redis_ippool_tool: fix wrong doc comment on ippool_tool_stats_t.free 354)

2 months agomulti-server: use fixed subnet and remove env-setup.sh
Arran Cudbard-Bell [Thu, 19 Mar 2026 02:57:33 +0000 (20:57 -0600)] 
multi-server: use fixed subnet and remove env-setup.sh

Set TEST_SUBNET via compose environment with a fixed 172.28.0.0/16
subnet (overridable via test_subnet param). Remove env-setup.sh
which ran apt-get install on every container startup.

2 months agoPass the scheduler as a context for thread instantiate
Arran Cudbard-Bell [Thu, 19 Mar 2026 02:04:15 +0000 (20:04 -0600)] 
Pass the scheduler as a context for thread instantiate

2 months agoCreate thread instance data for the main thread too (when not running in single threa...
Arran Cudbard-Bell [Wed, 18 Mar 2026 23:32:15 +0000 (17:32 -0600)] 
Create thread instance data for the main thread too (when not running in single threaded mode)

This is needed for triggers to be able to call xlats

2 months agomulti-server: refactor test framework for parameterised tests
Arran Cudbard-Bell [Wed, 18 Mar 2026 17:22:33 +0000 (11:22 -0600)] 
multi-server: refactor test framework for parameterised tests

Restructure the multi-server test framework so that each test is
defined by a single YAML params file.  All templates (compose,
radiusd configs, test steps) are rendered from shared Jinja2
templates using those params.

- Replace monolithic all.mk with macro-based framework that
  auto-discovers test suites and param files
- Move configs to configs/freeradius/, environments to environments/
- Rename test suites to proxy-accept and proxy-multihop-accept
- Use *.test.yml for param files, *.ci.test.yml for CI-only tests
- Add test.multi-server.ci target for short CI tests
- Render all build products into build/ directory
- Support parallel execution with unique Docker project names
- Add healthchecks to compose templates
- Remove hardcoded port mappings (containers use internal networking)
- Add CI workflow for GitHub Actions with Docker-in-Docker

2 months agodocker: build libkqueue from source on non-amd64 architectures
Arran Cudbard-Bell [Wed, 18 Mar 2026 02:14:45 +0000 (20:14 -0600)] 
docker: build libkqueue from source on non-amd64 architectures

The NetworkRADIUS extras repository only provides amd64 packages
for libkqueue. On other architectures (e.g. arm64), build libkqueue
from source and install the resulting .deb packages in both the
build and runtime stages.

2 months agodebian: remove --without-rlm_sql_unixodbc from rules
Arran Cudbard-Bell [Wed, 18 Mar 2026 01:44:23 +0000 (19:44 -0600)] 
debian: remove --without-rlm_sql_unixodbc from rules

The unixodbc module was explicitly disabled in configure but the
freeradius-unixodbc package was still defined in control.in with
its .install file expecting the .so to exist, causing dh_install
to fail with missing files.

2 months agoclean up variable on exit
Alan T. DeKok [Wed, 18 Mar 2026 10:51:52 +0000 (06:51 -0400)] 
clean up variable on exit

2 months agouse goto inside "if" instead of "break"
Alan T. DeKok [Wed, 18 Mar 2026 10:50:58 +0000 (06:50 -0400)] 
use goto inside "if" instead of "break"

2 months agoCorrect comments
Nick Porter [Wed, 18 Mar 2026 11:29:37 +0000 (11:29 +0000)] 
Correct comments

2 months agoRemove incorrect frees
Nick Porter [Mon, 16 Mar 2026 12:55:35 +0000 (12:55 +0000)] 
Remove incorrect frees

2 months agoprint relevant variable in error message
Catalina Pineros [Tue, 17 Mar 2026 14:25:17 +0000 (10:25 -0400)] 
print relevant variable in error message

2 months agofix typos in comments
Catalina Pineros [Mon, 16 Mar 2026 18:19:18 +0000 (14:19 -0400)] 
fix typos in comments

2 months agocatch corner case of allocation failure
Alan T. DeKok [Wed, 18 Mar 2026 09:55:18 +0000 (05:55 -0400)] 
catch corner case of allocation failure

2 months agomove bnctx to thread instance data
Alan T. DeKok [Wed, 18 Mar 2026 09:51:46 +0000 (05:51 -0400)] 
move bnctx to thread instance data

2 months agoadd DIAG_OFF to quiet C compiler warnings
Alan T. DeKok [Wed, 18 Mar 2026 09:51:20 +0000 (05:51 -0400)] 
add DIAG_OFF to quiet C compiler warnings

2 months agofix typo
Alan T. DeKok [Tue, 17 Mar 2026 20:51:58 +0000 (16:51 -0400)] 
fix typo

2 months agoformat to follow coding style / standards
Alan T. DeKok [Tue, 17 Mar 2026 12:56:51 +0000 (08:56 -0400)] 
format to follow coding style / standards

2 months agoOSS-Fuzz: Add fuzzer for json
Arthur Chan [Thu, 12 Mar 2026 22:10:03 +0000 (22:10 +0000)] 
OSS-Fuzz: Add fuzzer for json

Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>