]> git.ipfire.org Git - thirdparty/freeradius-server.git/log
thirdparty/freeradius-server.git
5 hours agoAdd json.encode regression test for DHCPv4 in RADIUS master
Arran Cudbard-Bell [Thu, 31 Jul 2025 04:45:04 +0000 (21:45 -0700)] 
Add json.encode regression test for DHCPv4 in RADIUS

5 hours agoThe enumv isn't an ancestor of the attribute being printed
Arran Cudbard-Bell [Thu, 31 Jul 2025 04:44:47 +0000 (21:44 -0700)] 
The enumv isn't an ancestor of the attribute being printed

5 hours agoWhen storing an enum for later parsing, we need to store the '::' prefix too
Arran Cudbard-Bell [Thu, 31 Jul 2025 04:23:12 +0000 (21:23 -0700)] 
When storing an enum for later parsing, we need to store the '::' prefix too

5 hours agoFix copying FR_TYPE_ATTR
Arran Cudbard-Bell [Thu, 31 Jul 2025 04:22:36 +0000 (21:22 -0700)] 
Fix copying FR_TYPE_ATTR

5 hours agoEncoded attributes can be infinitely long, and definitely more than 4 bytes
Arran Cudbard-Bell [Thu, 31 Jul 2025 04:22:23 +0000 (21:22 -0700)] 
Encoded attributes can be infinitely long, and definitely more than 4 bytes

5 hours agoNo reason to add 'da' as part of the cursor struct
Arran Cudbard-Bell [Thu, 31 Jul 2025 04:21:47 +0000 (21:21 -0700)] 
No reason to add 'da' as part of the cursor struct

6 hours agoCheck for vp_attr in PAIR_VERIFY
Arran Cudbard-Bell [Thu, 31 Jul 2025 04:21:17 +0000 (21:21 -0700)] 
Check for vp_attr in PAIR_VERIFY

6 hours agoCan't use verify here, as we're appending half constructed pairs
Arran Cudbard-Bell [Thu, 31 Jul 2025 04:21:03 +0000 (21:21 -0700)] 
Can't use verify here, as we're appending half constructed pairs

8 hours agoattr: These conversions are all fine
Arran Cudbard-Bell [Thu, 31 Jul 2025 01:55:05 +0000 (18:55 -0700)] 
attr: These conversions are all fine

14 hours agoAdd simplified redundant test
Arran Cudbard-Bell [Wed, 30 Jul 2025 19:51:56 +0000 (12:51 -0700)] 
Add simplified redundant test

14 hours agoDon't spit out errors for blastradius
Arran Cudbard-Bell [Wed, 30 Jul 2025 19:51:43 +0000 (12:51 -0700)] 
Don't spit out errors for blastradius

21 hours agoAdd test of %rest() receiving a failure HTTP status code developer/ndptech
Nick Porter [Wed, 30 Jul 2025 13:15:16 +0000 (14:15 +0100)] 
Add test of %rest() receiving a failure HTTP status code

21 hours agoWhen %rest() get a failure HTTP status code capture the body in REST-HTTP-Body
Nick Porter [Wed, 30 Jul 2025 13:03:28 +0000 (14:03 +0100)] 
When %rest() get a failure HTTP status code capture the body in REST-HTTP-Body

Recent correction to rcode handling have resulted in xlats which return
XLAT_ACTION_FAIL having their output disgarded, so the previous
behaviour of %rest() was lost.

This approach gives more consistent behaviour with other xlats, but
still allows access to any errors reported by the server in the reply
body.

41 hours agomove DHCPv6 to use FR_TYPE_ATTR developer/alandekok
Alan T. DeKok [Tue, 29 Jul 2025 17:11:00 +0000 (13:11 -0400)] 
move DHCPv6 to use FR_TYPE_ATTR

41 hours agoparse OIDs numerically if we don't know the name
Alan T. DeKok [Tue, 29 Jul 2025 17:10:32 +0000 (13:10 -0400)] 
parse OIDs numerically if we don't know the name

44 hours agodocs-v4: update top-level and sub-section landing pages HIVE 4114/8. Added xrefs...
nolade [Tue, 15 Jul 2025 19:21:52 +0000 (15:21 -0400)] 
docs-v4: update top-level and sub-section landing pages HIVE 4114/8. Added xrefs, rewrote some intros.

44 hours agodocs-v4: Update Introduction landing page and nav panel HIVE 4114/5
nolade [Thu, 10 Jul 2025 16:35:44 +0000 (12:35 -0400)] 
docs-v4: Update Introduction landing page and nav panel HIVE 4114/5

44 hours agoadded some more guidance
Alan T. DeKok [Tue, 29 Jul 2025 13:42:03 +0000 (09:42 -0400)] 
added some more guidance

45 hours agodocs-v4: Fix make docsite errors
nolade [Wed, 16 Jul 2025 20:36:31 +0000 (16:36 -0400)] 
docs-v4: Fix make docsite errors

45 hours agoswitch dhcpv4 to use FR_TYPE_ATTR for Parameter-Request-List
Alan T. DeKok [Tue, 29 Jul 2025 13:04:30 +0000 (09:04 -0400)] 
switch dhcpv4 to use FR_TYPE_ATTR for Parameter-Request-List

the underlying data type / length of the encoding is defined by
the size of the attribute number, and not by the dictionaries

45 hours agoallow FR_TYPE_ATTR to be passed in as enumv for decoding
Alan T. DeKok [Tue, 29 Jul 2025 13:04:10 +0000 (09:04 -0400)] 
allow FR_TYPE_ATTR to be passed in as enumv for decoding

46 hours agodecode FR_TYPE_ATTR
Alan T. DeKok [Tue, 29 Jul 2025 11:53:40 +0000 (07:53 -0400)] 
decode FR_TYPE_ATTR

46 hours agoprint full received data on -xx
Alan T. DeKok [Tue, 29 Jul 2025 11:53:19 +0000 (07:53 -0400)] 
print full received data on -xx

46 hours agoverify FR_TYPE_ATTR
Alan T. DeKok [Tue, 29 Jul 2025 10:42:57 +0000 (06:42 -0400)] 
verify FR_TYPE_ATTR

46 hours agodon't assert if we fail to instantiate the dictionaries
Alan T. DeKok [Tue, 29 Jul 2025 10:36:27 +0000 (06:36 -0400)] 
don't assert if we fail to instantiate the dictionaries

46 hours agocleanups and tests
Alan T. DeKok [Tue, 29 Jul 2025 09:38:54 +0000 (05:38 -0400)] 
cleanups and tests

we might as well use "::" for FR_TYPE_ATTR, too.  This makes them
look and feel like enums, rather than adding extra-special syntax

46 hours agobe safe when passed a dict root
Alan T. DeKok [Tue, 29 Jul 2025 09:54:42 +0000 (05:54 -0400)] 
be safe when passed a dict root

2 days agoAdd map tests with nested LHS
Nick Porter [Tue, 29 Jul 2025 09:56:51 +0000 (10:56 +0100)] 
Add map tests with nested LHS

2 days agomap_to_request expects the value callback to only create the leaf pair
Nick Porter [Tue, 29 Jul 2025 09:43:05 +0000 (10:43 +0100)] 
map_to_request expects the value callback to only create the leaf pair

It does the job of creating any interim structural pairs required

2 days agodon't call shutdown recursively
Alan T. DeKok [Tue, 29 Jul 2025 09:00:23 +0000 (05:00 -0400)] 
don't call shutdown recursively

2 days agoPacify coverity (CID #1660567)
Nick Porter [Tue, 29 Jul 2025 08:14:18 +0000 (09:14 +0100)] 
Pacify coverity (CID #1660567)

2 days agoRemove libpcre references from docs
Nick Porter [Mon, 28 Jul 2025 16:17:28 +0000 (17:17 +0100)] 
Remove libpcre references from docs

2 days agoRemove feature.regex-pcre from tests
Nick Porter [Mon, 28 Jul 2025 16:14:39 +0000 (17:14 +0100)] 
Remove feature.regex-pcre from tests

2 days agoAll supported platforms have libpcre2 available
Nick Porter [Thu, 24 Jul 2025 17:35:31 +0000 (18:35 +0100)] 
All supported platforms have libpcre2 available

So remove libpcre code

2 days agoAll supported .deb platforms have libpcre2
Nick Porter [Thu, 24 Jul 2025 16:40:01 +0000 (17:40 +0100)] 
All supported .deb platforms have libpcre2

2 days agoDon't call fr_bio_shutdown recursively
Arran Cudbard-Bell [Mon, 28 Jul 2025 23:31:17 +0000 (16:31 -0700)] 
Don't call fr_bio_shutdown recursively

2 days agoclose and free on shutdown
Alan T. DeKok [Mon, 28 Jul 2025 19:47:51 +0000 (15:47 -0400)] 
close and free on shutdown

2 days agoadd FR_TYPE_ATTR
Alan T. DeKok [Mon, 28 Jul 2025 19:44:37 +0000 (15:44 -0400)] 
add FR_TYPE_ATTR

no tests.  will do soon.

2 days agono need to check for NULL
Alan T. DeKok [Mon, 28 Jul 2025 12:30:58 +0000 (08:30 -0400)] 
no need to check for NULL

2 days agono need to check for NULL
Alan T. DeKok [Mon, 28 Jul 2025 12:29:26 +0000 (08:29 -0400)] 
no need to check for NULL

2 days agono need to check for NULL as a special case
Alan T. DeKok [Mon, 28 Jul 2025 12:27:59 +0000 (08:27 -0400)] 
no need to check for NULL as a special case

3 days agomight as well allow actions{...} in catch {...}
Alan T. DeKok [Sat, 26 Jul 2025 18:52:08 +0000 (14:52 -0400)] 
might as well allow actions{...} in catch {...}

tho I guess this check should really be a flag in the unlang op
structure.

3 days agomight as well save the result somewhere
Alan T. DeKok [Wed, 23 Jul 2025 07:11:05 +0000 (09:11 +0200)] 
might as well save the result somewhere

3 days agocatch many many more corner cases with 'try'
Alan T. DeKok [Mon, 28 Jul 2025 00:27:42 +0000 (20:27 -0400)] 
catch many many more corner cases with 'try'

if the input compile_ctx has REJECT or RETURN for an action, AND
there's a "try / catch" for it, we do NOT have the try actions
stay "REJECT" or "RETURN"

also change the behavior so catch { ... } means "catch ALL" of the
rcodes.

the error rcodes are special, too :(

3 days agohave "try" cache the "catch" instructions
Alan T. DeKok [Sun, 27 Jul 2025 15:38:38 +0000 (11:38 -0400)] 
have "try" cache the "catch" instructions

and rearrange the code so that we don't have to skip to the next
catch, it just happens automatically in the interpreter

3 days agoremove unused macro
Alan T. DeKok [Sun, 27 Jul 2025 16:39:14 +0000 (12:39 -0400)] 
remove unused macro

3 days agomore initialization, and catch corner cases
Alan T. DeKok [Sun, 27 Jul 2025 16:07:52 +0000 (12:07 -0400)] 
more initialization, and catch corner cases

3 days agomove unlang_t to use dlists
Alan T. DeKok [Sun, 27 Jul 2025 15:06:38 +0000 (11:06 -0400)] 
move unlang_t to use dlists

3 days agoremove unused function ulang_timeout_section_push()
Alan T. DeKok [Sun, 27 Jul 2025 11:36:26 +0000 (07:36 -0400)] 
remove unused function ulang_timeout_section_push()

3 days agouse section_result to refer to results from push_section()
Alan T. DeKok [Mon, 21 Jul 2025 12:09:31 +0000 (14:09 +0200)] 
use section_result to refer to results from push_section()

3 days agouse macro
Alan T. DeKok [Mon, 21 Jul 2025 12:08:57 +0000 (14:08 +0200)] 
use macro

5 days agoUse a dummy eap-sim virtual server for the eap_sim module tests
Arran Cudbard-Bell [Fri, 25 Jul 2025 19:45:44 +0000 (12:45 -0700)] 
Use a dummy eap-sim virtual server for the eap_sim module tests

5 days agoMerge state machines with EAP modules, use virtual_server_t in more places
Arran Cudbard-Bell [Fri, 25 Jul 2025 19:33:55 +0000 (12:33 -0700)] 
Merge state machines with EAP modules, use virtual_server_t in more places

5 days agoRemove unused function
Arran Cudbard-Bell [Fri, 25 Jul 2025 18:31:14 +0000 (11:31 -0700)] 
Remove unused function

5 days agoEnsure process modules in virtual servers have a specific name Closes #5626
Arran Cudbard-Bell [Fri, 25 Jul 2025 18:31:05 +0000 (11:31 -0700)] 
Ensure process modules in virtual servers have a specific name Closes #5626

This stops people using the wrong virtual server with EAP modules

6 days agoTest use of local variable to reference index in map list
Nick Porter [Thu, 24 Jul 2025 13:57:33 +0000 (14:57 +0100)] 
Test use of local variable to reference index in map list

6 days agoDon't dereference output pointer in debug
Nick Porter [Thu, 24 Jul 2025 13:37:52 +0000 (14:37 +0100)] 
Don't dereference output pointer in debug

If `out` points to an integer rather than a char* then dereferencing
does not give another pointer.

6 days agoUse a type handled by FR_TYPE_FROM_PTR
Nick Porter [Thu, 24 Jul 2025 12:43:41 +0000 (13:43 +0100)] 
Use a type handled by FR_TYPE_FROM_PTR

6 days agoTest handling of FR_TYPE_NULL in map list
Nick Porter [Thu, 24 Jul 2025 11:16:08 +0000 (12:16 +0100)] 
Test handling of FR_TYPE_NULL in map list

6 days agoAllow redis xlat to emit FR_TYPE_NULL again
Nick Porter [Thu, 24 Jul 2025 11:15:24 +0000 (12:15 +0100)] 
Allow redis xlat to emit FR_TYPE_NULL again

Now that this can be handled by `map list`

6 days agoAdd basic test of map list
Nick Porter [Thu, 24 Jul 2025 11:32:36 +0000 (12:32 +0100)] 
Add basic test of map list

6 days agoAdd `map list` as a "builtin" map
Nick Porter [Thu, 24 Jul 2025 10:54:00 +0000 (11:54 +0100)] 
Add `map list` as a "builtin" map

6 days agoPacify UBSAN for rlm_tacacs conn_init
Nick Porter [Thu, 24 Jul 2025 10:55:22 +0000 (11:55 +0100)] 
Pacify UBSAN for rlm_tacacs conn_init

7 days agoRemove unused prototype
Nick Porter [Thu, 24 Jul 2025 09:50:17 +0000 (10:50 +0100)] 
Remove unused prototype

8 days agoUpdate radhttpcheck.py to use pyrad or pyrad2
Nick Porter [Tue, 22 Jul 2025 17:14:57 +0000 (18:14 +0100)] 
Update radhttpcheck.py to use pyrad or pyrad2

pyrad2 is required if the checks are going to be called from Windows,
but it requires Python >= 3.12 so is not suitable for all Linux hosts.

8 days agoMap TACACS reply packet code to module rcode
Nick Porter [Tue, 22 Jul 2025 15:01:30 +0000 (16:01 +0100)] 
Map TACACS reply packet code to module rcode

8 days agoCompare received session ID to the one sent
Nick Porter [Tue, 22 Jul 2025 13:30:45 +0000 (14:30 +0100)] 
Compare received session ID to the one sent

h->session_id is only used if the packet did not contain a
Packet->Session-Id attribute.

8 days agoCorrect assert on timer being disarmed
Nick Porter [Tue, 22 Jul 2025 13:29:04 +0000 (14:29 +0100)] 
Correct assert on timer being disarmed

8 days agoTACACS uses TCP not UDP
Nick Porter [Tue, 22 Jul 2025 10:30:48 +0000 (11:30 +0100)] 
TACACS uses TCP not UDP

so name things appropriately

9 days agoPrint correct frame index when reporting frame popping
Arran Cudbard-Bell [Mon, 21 Jul 2025 21:54:59 +0000 (14:54 -0700)] 
Print correct frame index when reporting frame popping

9 days agoAllocate a name for the trigger request
Arran Cudbard-Bell [Mon, 21 Jul 2025 21:38:55 +0000 (14:38 -0700)] 
Allocate a name for the trigger request

9 days agorequest->priority and request->sequence are no longer just used by the IO code, and...
Arran Cudbard-Bell [Mon, 21 Jul 2025 21:38:29 +0000 (14:38 -0700)] 
request->priority and request->sequence are no longer just used by the IO code, and should be a structure that's always allocated i.e. the request_t

9 days agoFix trigger plumbing in connection.c
Arran Cudbard-Bell [Mon, 21 Jul 2025 20:52:51 +0000 (13:52 -0700)] 
Fix trigger plumbing in connection.c

9 days agotmpl_push should take an argument saying whether it's a top frame
Arran Cudbard-Bell [Mon, 21 Jul 2025 15:02:54 +0000 (08:02 -0700)] 
tmpl_push should take an argument saying whether it's a top frame

9 days agoNo need to call fr_network_listen_delete here
Nick Porter [Mon, 21 Jul 2025 14:23:55 +0000 (15:23 +0100)] 
No need to call fr_network_listen_delete here

It only looks up the socket and calls fr_network_socket_dead, but the
socket likely has already been removed from the tree of sockets by the
socket talloc destructor - which is what is calling mod_close

10 days agostore the result somewhere
Alan T. DeKok [Mon, 21 Jul 2025 10:18:18 +0000 (12:18 +0200)] 
store the result somewhere

10 days agoit helps to check the result of an xlat
Alan T. DeKok [Mon, 21 Jul 2025 08:27:04 +0000 (10:27 +0200)] 
it helps to check the result of an xlat

except that this error check never catches an error, because
something in the interpreter isn't passing the results back to
us.

10 days agopush a function before running the trigger
Alan T. DeKok [Mon, 21 Jul 2025 07:45:30 +0000 (09:45 +0200)] 
push a function before running the trigger

the interpreter needs the stack to be bootstrapped with a function
or module that is something other than a tmpl.  The tmpl expects
to be a sub frame.

Without this, the trigger subrequest never runs anything after the
first instruction

10 days agodon't append output book on failure
Alan T. DeKok [Mon, 21 Jul 2025 07:40:03 +0000 (09:40 +0200)] 
don't append output book on failure

10 days agoallow non-operators for "limit" and "timeout", too
Alan T. DeKok [Sun, 20 Jul 2025 12:45:32 +0000 (14:45 +0200)] 
allow non-operators for "limit" and "timeout", too

12 days agouse macros for consistency with the rest of the code
Alan T. DeKok [Sat, 19 Jul 2025 00:03:19 +0000 (20:03 -0400)] 
use macros for consistency with the rest of the code

12 days agorename fields for consistency with the rest of the code
Alan T. DeKok [Sat, 19 Jul 2025 00:01:18 +0000 (20:01 -0400)] 
rename fields for consistency with the rest of the code

12 days agoset priority, too.
Alan T. DeKok [Fri, 18 Jul 2025 18:35:32 +0000 (14:35 -0400)] 
set priority, too.

instead of having it left over from the previous instruction

12 days agoDon't add FR_TYPE_NULL boxes to xlat output
Nick Porter [Fri, 18 Jul 2025 13:53:04 +0000 (14:53 +0100)] 
Don't add FR_TYPE_NULL boxes to xlat output

They currently can't be cast to anything so cause issues when assigning
to a target attribute

12 days agoRemove meaningless debug
Nick Porter [Fri, 18 Jul 2025 13:45:40 +0000 (14:45 +0100)] 
Remove meaningless debug

12 days agoSimplify trigger handling.
Arran Cudbard-Bell [Fri, 18 Jul 2025 16:20:26 +0000 (10:20 -0600)] 
Simplify trigger handling.

Remove trigger xlat, we just use the request like.

Use tmpl_afrom_substr instead of custom parsing logic.

12 days agoInitialise triggers later, move trigger name into an attribute to make serialisation...
Arran Cudbard-Bell [Fri, 18 Jul 2025 15:40:48 +0000 (09:40 -0600)] 
Initialise triggers later, move trigger name into an attribute to make serialisation easier

12 days agoadd %test.null() which always returns a value box of FR_TYPE_NULL
Alan T. DeKok [Fri, 18 Jul 2025 14:11:14 +0000 (10:11 -0400)] 
add %test.null() which always returns a value box of FR_TYPE_NULL

12 days agoRevert "slight tweaks"
Alan T. DeKok [Fri, 18 Jul 2025 11:00:12 +0000 (07:00 -0400)] 
Revert "slight tweaks"

This reverts commit 8f2845ebe9feeb010c086ac20fc329e44104ea95.

13 days agoScheduled fuzzing: Update src/tests/fuzzer-corpus/cbor.tar
github-actions[bot] [Fri, 18 Jul 2025 04:40:08 +0000 (04:40 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/cbor.tar

13 days agoScheduled fuzzing: Update src/tests/fuzzer-corpus/der.tar
github-actions[bot] [Fri, 18 Jul 2025 04:39:04 +0000 (04:39 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/der.tar

13 days agoslight tweaks
Alan T. DeKok [Thu, 17 Jul 2025 17:15:18 +0000 (13:15 -0400)] 
slight tweaks

13 days agouse macro for common case
Alan T. DeKok [Thu, 17 Jul 2025 16:56:09 +0000 (12:56 -0400)] 
use macro for common case

some instructions didn't return on timeout.  So using a common
initializer is beneficial

13 days agoActually run on our runners
Arran Cudbard-Bell [Thu, 17 Jul 2025 19:11:24 +0000 (13:11 -0600)] 
Actually run on our runners

13 days agoAttempt to move sanitizers to local infrastructure
Arran Cudbard-Bell [Thu, 17 Jul 2025 17:41:53 +0000 (11:41 -0600)] 
Attempt to move sanitizers to local infrastructure

13 days agoFix typos and bad docs
Arran Cudbard-Bell [Thu, 17 Jul 2025 15:55:05 +0000 (09:55 -0600)] 
Fix typos and bad docs

13 days agodon't assert on FR_TYPE_NULL
Alan T. DeKok [Thu, 17 Jul 2025 11:36:46 +0000 (07:36 -0400)] 
don't assert on FR_TYPE_NULL

in preparation for allowing it as a real type

2 weeks agoAdd additional file check flags
Arran Cudbard-Bell [Thu, 17 Jul 2025 02:19:55 +0000 (20:19 -0600)] 
Add additional file check flags

Add specific flag for unix sockets

2 weeks agomust always check the return code of fr_value_box_cast
Alan T. DeKok [Wed, 16 Jul 2025 19:31:30 +0000 (15:31 -0400)] 
must always check the return code of fr_value_box_cast

2 weeks agoadd test of "last loop returns the rcode"
Alan T. DeKok [Wed, 16 Jul 2025 19:21:42 +0000 (15:21 -0400)] 
add test of "last loop returns the rcode"