]> git.ipfire.org Git - thirdparty/freeradius-server.git/log
thirdparty/freeradius-server.git
6 months agothe new child is always parented by the new dst DA
Alan T. DeKok [Fri, 21 Nov 2025 21:37:51 +0000 (16:37 -0500)] 
the new child is always parented by the new dst DA

otherwise the child is marked up as having the old parent, which
is wrong.

6 months agorefactor inner loop to function, in preparation for future work
Alan T. DeKok [Fri, 21 Nov 2025 16:07:04 +0000 (11:07 -0500)] 
refactor inner loop to function, in preparation for future work

6 months agosimplify and correct enum ext copying
Alan T. DeKok [Fri, 21 Nov 2025 14:49:27 +0000 (09:49 -0500)] 
simplify and correct enum ext copying

6 months agodocs-v4: Update path for users.adoc xref link in src/original file
nolade [Thu, 20 Nov 2025 20:57:37 +0000 (15:57 -0500)] 
docs-v4: Update path for users.adoc xref link in src/original file

6 months agomove key_child_ref to extension
Alan T. DeKok [Fri, 21 Nov 2025 01:05:42 +0000 (20:05 -0500)] 
move key_child_ref to extension

6 months agouse internal print, so we can do %pV and %pP
Alan T. DeKok [Thu, 20 Nov 2025 20:40:04 +0000 (15:40 -0500)] 
use internal print, so we can do %pV and %pP

6 months agowe only need one begin/end
Alan T. DeKok [Thu, 20 Nov 2025 20:33:11 +0000 (15:33 -0500)] 
we only need one begin/end

6 months agoDNS doesn't have attribute numbers, so use DEFINE
Alan T. DeKok [Thu, 20 Nov 2025 20:24:06 +0000 (15:24 -0500)] 
DNS doesn't have attribute numbers, so use DEFINE

7 months agoallow FR_TYPE_ATTR to have enums (or not)
Alan T. DeKok [Wed, 19 Nov 2025 21:41:59 +0000 (16:41 -0500)] 
allow FR_TYPE_ATTR to have enums (or not)

so that the code works properly in both cases

7 months agolimit the scope of 'clone='
Alan T. DeKok [Wed, 19 Nov 2025 15:17:49 +0000 (10:17 -0500)] 
limit the scope of 'clone='

and produce better errors, earlier

7 months agoScheduled fuzzing: Update src/tests/fuzzer-corpus/der.tar
github-actions[bot] [Wed, 19 Nov 2025 04:25:34 +0000 (04:25 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/der.tar

7 months agoScheduled fuzzing: Update src/tests/fuzzer-corpus/cbor.tar
github-actions[bot] [Wed, 19 Nov 2025 04:24:58 +0000 (04:24 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/cbor.tar

7 months agoWe cannot copy KEY refs.
Alan T. DeKok [Wed, 19 Nov 2025 02:19:25 +0000 (21:19 -0500)] 
We cannot copy KEY refs.

because they point to a key which is in the same parent as the
union.  So copying the union would copy the key ref, which is bad.

the only way to copy a union would be to set a new key ref while
we're copying it.

7 months agowe cannot re-allocate or move a da which is a target of a ref
Alan T. DeKok [Wed, 19 Nov 2025 02:10:35 +0000 (21:10 -0500)] 
we cannot re-allocate or move a da which is a target of a ref

otherwise we have DAs which point to the old definitions, and
that's bad

7 months agomove to using explicit include list when checking for valid types
Alan T. DeKok [Tue, 18 Nov 2025 20:37:03 +0000 (15:37 -0500)] 
move to using explicit include list when checking for valid types

7 months agocheck parent/child relationships in fr_dict_attr_add() too
Alan T. DeKok [Tue, 18 Nov 2025 16:51:08 +0000 (11:51 -0500)] 
check parent/child relationships in fr_dict_attr_add() too

7 months agolimit the places where we allow rcodes
Alan T. DeKok [Mon, 17 Nov 2025 19:13:15 +0000 (14:13 -0500)] 
limit the places where we allow rcodes

we can't do math, so (-ok) is not allowed.  but !ok is allowed.

Add xlat_purify_cond function.  update tests to match.

7 months agowe can't do math on rcodes
Alan T. DeKok [Mon, 17 Nov 2025 18:25:48 +0000 (13:25 -0500)] 
we can't do math on rcodes

so "invalid-packet" is not "invalid - packet"

7 months agoEnable process tests
Nick Porter [Mon, 17 Nov 2025 15:57:54 +0000 (15:57 +0000)] 
Enable process tests

7 months agoAdd simple test of Relay-Forward
Nick Porter [Mon, 17 Nov 2025 14:59:56 +0000 (14:59 +0000)] 
Add simple test of Relay-Forward

7 months agoCorrect xlat arguments
Nick Porter [Mon, 17 Nov 2025 14:57:36 +0000 (14:57 +0000)] 
Correct xlat arguments

7 months agoTidy test dictionary
Nick Porter [Mon, 17 Nov 2025 14:55:28 +0000 (14:55 +0000)] 
Tidy test dictionary

7 months agoDisable checks on children of structs until UNION data types are done
Nick Porter [Mon, 17 Nov 2025 14:15:33 +0000 (14:15 +0000)] 
Disable checks on children of structs until UNION data types are done

7 months agoAdd symlinks to dictionaries needed for process tests
Nick Porter [Mon, 17 Nov 2025 10:10:55 +0000 (10:10 +0000)] 
Add symlinks to dictionaries needed for process tests

7 months agoCorrect enum and edit syntax in process tests
Nick Porter [Mon, 17 Nov 2025 10:06:52 +0000 (10:06 +0000)] 
Correct enum and edit syntax in process tests

7 months agoxylan(dictionnary): Add new attribute (Priv-F-R3/R4/W3/W4)
Alexis La Goutte [Wed, 24 Sep 2025 07:54:17 +0000 (09:54 +0200)] 
xylan(dictionnary): Add new attribute (Priv-F-R3/R4/W3/W4)

7 months agoUse correct namespace when resolving children of FR_TYPE_GROUP
Nick Porter [Mon, 17 Nov 2025 13:44:32 +0000 (13:44 +0000)] 
Use correct namespace when resolving children of FR_TYPE_GROUP

7 months agoUse consistent rctx for all dhcpv6 process sections
Nick Porter [Sat, 15 Nov 2025 20:57:33 +0000 (20:57 +0000)] 
Use consistent rctx for all dhcpv6 process sections

Functions defined in process.h expect PROCESS_RCTX to specify the type
in use - which is defined once per process module.

7 months agoprint "::" more consistently for enums
Alan T. DeKok [Sat, 15 Nov 2025 23:59:47 +0000 (18:59 -0500)] 
print "::" more consistently for enums

but not for booleans, as true/false look bad with a "::" prefix.

The complicated checks for this condition are wrapped in an inline
function.  The various unlang / edit / xlat / etc. print routines
then manually add it.

If instead we add "::" in fr_value_box_print(), then there are
many cases where we _don't_ want to print it.  Rather than tweaking
all that through the code, we just instrument each part of the
printing code.

7 months agoadd missing ';'
Alan T. DeKok [Sat, 15 Nov 2025 19:47:02 +0000 (14:47 -0500)] 
add missing ';'

7 months agoshow the server log when things fail
Alan T. DeKok [Fri, 14 Nov 2025 21:01:24 +0000 (16:01 -0500)] 
show the server log when things fail

7 months agodocs: update path for users.adoc
nolade [Thu, 6 Nov 2025 15:44:47 +0000 (10:44 -0500)] 
docs: update path for users.adoc

7 months agoupdate last at the last minute.
Alan T. DeKok [Fri, 14 Nov 2025 13:03:44 +0000 (08:03 -0500)] 
update last at the last minute.

7 months agoproposal for upgrade navbar
Alan T. DeKok [Thu, 13 Nov 2025 19:29:26 +0000 (14:29 -0500)] 
proposal for upgrade navbar

7 months agomove upgrade documentation one level up
Alan T. DeKok [Thu, 13 Nov 2025 19:12:44 +0000 (14:12 -0500)] 
move upgrade documentation one level up

in preparation for further splitting

7 months agoadd and use 'auto' data type in dictionaries
Alan T. DeKok [Thu, 13 Nov 2025 15:53:26 +0000 (10:53 -0500)] 
add and use 'auto' data type in dictionaries

which can only be used in association with "clone=..."

That way we don't need to duplicate the data type which is in the
cloned (i.e. source) attribute.

Note that we still allow a data type, though perhaps we want to
forbid that?

7 months agoOverride new LLDB terminal window which breaks scrolling
Alan T. DeKok [Thu, 13 Nov 2025 12:00:42 +0000 (07:00 -0500)] 
Override new LLDB terminal window which breaks scrolling

7 months agoAdd test that %rest() can fetch a module call un-supported content type
Nick Porter [Fri, 14 Nov 2025 12:04:50 +0000 (12:04 +0000)] 
Add test that %rest() can fetch a module call un-supported content type

7 months agoThe %rest() xlat should return the body regardless of content type
Nick Porter [Fri, 14 Nov 2025 11:36:48 +0000 (11:36 +0000)] 
The %rest() xlat should return the body regardless of content type

Since we're not doing any of the processing of the body which is done
during module method calls.

7 months agoAdd tests of compound keys in rlm_cache
Nick Porter [Wed, 12 Nov 2025 14:07:49 +0000 (14:07 +0000)] 
Add tests of compound keys in rlm_cache

7 months agoHandle rlm_cache producing multiple values when expanding the key
Nick Porter [Thu, 13 Nov 2025 08:26:33 +0000 (08:26 +0000)] 
Handle rlm_cache producing multiple values when expanding the key

Since the `key` expansion is set to output FR_TYPE_VOID, so that values
retain their native type, it cannot be set to concatenate values.

However, a key expansion of "%{foo}%{bar}" will produce 2 values which
need to be concatenated as a string before use.

7 months agoCorrect return handling
Nick Porter [Wed, 12 Nov 2025 20:52:38 +0000 (20:52 +0000)] 
Correct return handling

Wrapping the `ret = module...` assignment in `unlikely()` resulted in
incorrect values in `ret`

7 months agoAdd multi-thread gdb VS code target
Nick Porter [Tue, 11 Nov 2025 14:41:51 +0000 (14:41 +0000)] 
Add multi-thread gdb VS code target

7 months agoenum names might not be safe for SQL
Alan T. DeKok [Thu, 13 Nov 2025 02:26:06 +0000 (21:26 -0500)] 
enum names might not be safe for SQL

7 months agothe migration option is gone, and we can delete the code
Alan T. DeKok [Wed, 12 Nov 2025 15:49:39 +0000 (10:49 -0500)] 
the migration option is gone, and we can delete the code

7 months agoadd CONF_ITEM to attr_rules_t, for complaining with -C
Alan T. DeKok [Wed, 12 Nov 2025 15:37:15 +0000 (10:37 -0500)] 
add CONF_ITEM to attr_rules_t, for complaining with -C

so that when -C is used, and attribute references begin with '&',
it complains.

This should arguably be a parse error in 4.2

7 months agocatch the case of key fields
Alan T. DeKok [Tue, 11 Nov 2025 18:59:59 +0000 (13:59 -0500)] 
catch the case of key fields

for

reply.Server-ID.DUID := ::UUID

7 months agorename protocol pair encode/decode xlats
Alan T. DeKok [Tue, 11 Nov 2025 16:54:51 +0000 (11:54 -0500)] 
rename protocol pair encode/decode xlats

in preparation for adding protocol packet encode/decode xlats

7 months agoScheduled fuzzing: Update src/tests/fuzzer-corpus/dhcpv6.tar
github-actions[bot] [Tue, 11 Nov 2025 04:32:34 +0000 (04:32 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/dhcpv6.tar

7 months agoScheduled fuzzing: Update src/tests/fuzzer-corpus/util.tar
github-actions[bot] [Tue, 11 Nov 2025 04:31:45 +0000 (04:31 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/util.tar

7 months agoScheduled fuzzing: Update src/tests/fuzzer-corpus/dns.tar
github-actions[bot] [Tue, 11 Nov 2025 04:29:52 +0000 (04:29 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/dns.tar

7 months agoScheduled fuzzing: Update src/tests/fuzzer-corpus/tftp.tar
github-actions[bot] [Tue, 11 Nov 2025 04:27:50 +0000 (04:27 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/tftp.tar

7 months agoScheduled fuzzing: Update src/tests/fuzzer-corpus/vmps.tar
github-actions[bot] [Tue, 11 Nov 2025 04:27:47 +0000 (04:27 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/vmps.tar

7 months agoScheduled fuzzing: Update src/tests/fuzzer-corpus/tacacs.tar
github-actions[bot] [Tue, 11 Nov 2025 04:27:43 +0000 (04:27 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/tacacs.tar

7 months agoScheduled fuzzing: Update src/tests/fuzzer-corpus/dhcpv4.tar
github-actions[bot] [Tue, 11 Nov 2025 04:27:35 +0000 (04:27 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/dhcpv4.tar

7 months agoScheduled fuzzing: Update src/tests/fuzzer-corpus/radius.tar
github-actions[bot] [Tue, 11 Nov 2025 04:27:31 +0000 (04:27 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/radius.tar

7 months agoScheduled fuzzing: Update src/tests/fuzzer-corpus/bfd.tar
github-actions[bot] [Tue, 11 Nov 2025 04:26:49 +0000 (04:26 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/bfd.tar

7 months agoFix infinite encoder loop encoding Message-Type as a foreign attribute
Arran Cudbard-Bell [Sat, 8 Nov 2025 16:47:06 +0000 (08:47 -0800)] 
Fix infinite encoder loop encoding Message-Type as a foreign attribute

7 months agoDon't use strlen in talloced buffers
Arran Cudbard-Bell [Fri, 7 Nov 2025 01:35:09 +0000 (17:35 -0800)] 
Don't use strlen in talloced buffers

7 months agoWhitespace
Arran Cudbard-Bell [Fri, 10 Oct 2025 20:59:48 +0000 (14:59 -0600)] 
Whitespace

7 months agoDocument %uuid.v4() and %uuid.v7()
Nick Porter [Thu, 6 Nov 2025 11:42:47 +0000 (11:42 +0000)] 
Document %uuid.v4() and %uuid.v7()

7 months agoAdd test of %uuid.v4() and %uuid.v7()
Nick Porter [Thu, 6 Nov 2025 11:28:55 +0000 (11:28 +0000)] 
Add test of %uuid.v4() and %uuid.v7()

7 months agoAdd %uuid.v4() and %uuid.v7() for generating UUIDs
Nick Porter [Thu, 6 Nov 2025 10:41:13 +0000 (10:41 +0000)] 
Add %uuid.v4() and %uuid.v7() for generating UUIDs

7 months agouse the correct link
Alan T. DeKok [Tue, 4 Nov 2025 21:23:13 +0000 (16:23 -0500)] 
use the correct link

7 months agohandle corner cases of Protocol-Error
Alan T. DeKok [Sun, 2 Nov 2025 19:01:14 +0000 (14:01 -0500)] 
handle corner cases of Protocol-Error

if there's no response configured, and the client supports
Protocol-Error, then synthesize a Protocol-Error with an
appropriate Error-Cause.

If there is a Protocol-Error response configured and the client
does not support it, then synthesize an appropriate response.

7 months agoAdd read / write hexdump option to TACACS listener
Nick Porter [Mon, 3 Nov 2025 12:52:47 +0000 (12:52 +0000)] 
Add read / write hexdump option to TACACS listener

7 months agoAdd read / write hexdump options to RADIUS app_io
Nick Porter [Mon, 3 Nov 2025 11:55:47 +0000 (11:55 +0000)] 
Add read / write hexdump options to RADIUS app_io

7 months agoAdd an app IO callback to set the read / write hexdump option
Nick Porter [Mon, 3 Nov 2025 11:52:58 +0000 (11:52 +0000)] 
Add an app IO callback to set the read / write hexdump option

7 months agoAdd optional hexdump of packet read and write
Nick Porter [Mon, 3 Nov 2025 11:51:25 +0000 (11:51 +0000)] 
Add optional hexdump of packet read and write

For when really low level debugging is needed

7 months agowarn if Original-Packet-Code is missing
Alan T. DeKok [Sat, 1 Nov 2025 19:26:12 +0000 (15:26 -0400)] 
warn if Original-Packet-Code is missing

and delete it if we see it

7 months agoif there's no Error-Cause, add one in
Alan T. DeKok [Sat, 1 Nov 2025 19:20:26 +0000 (15:20 -0400)] 
if there's no Error-Cause, add one in

7 months agowarn if Original-Packet-Code is missing, and delete it from the reply
Alan T. DeKok [Sat, 1 Nov 2025 18:56:40 +0000 (14:56 -0400)] 
warn if Original-Packet-Code is missing, and delete it from the reply

it's a link-layer signaling issue.  So we can nuke it as soon as
we receive it.

7 months agolet's do error messages, too
Alan T. DeKok [Fri, 31 Oct 2025 21:33:46 +0000 (17:33 -0400)] 
let's do error messages, too

7 months agoreturn error on fatal socket, not 0
Alan T. DeKok [Fri, 31 Oct 2025 21:27:45 +0000 (17:27 -0400)] 
return error on fatal socket, not 0

7 months agoThis should really be DEBUG2 to reduce noise
Nick Porter [Fri, 31 Oct 2025 17:44:19 +0000 (17:44 +0000)] 
This should really be DEBUG2 to reduce noise

Which matches the packet expiry timeout debugs

7 months agoUpdate docs on DHCP options from SQL
Nick Porter [Fri, 31 Oct 2025 17:03:58 +0000 (17:03 +0000)] 
Update docs on DHCP options from SQL

The DHCP specific schema from v3 doesn't ship with v4, and now that
`%sql()` can return multiple values this provides a more flexible
approach than the call to the `sql` module.

7 months agoAdd test of %map() with multiple input boxes
Nick Porter [Fri, 31 Oct 2025 13:39:37 +0000 (13:39 +0000)] 
Add test of %map() with multiple input boxes

7 months agoAllow %map() to work on a list of input boxes
Nick Porter [Fri, 31 Oct 2025 13:38:50 +0000 (13:38 +0000)] 
Allow %map() to work on a list of input boxes

This allows syntax like `%map(%sql("SELECT attrmap FROM ..."))` or
`%map(foo[*])` to perform multiple attribute manipulations.

7 months agohoist assertion around print_args. Fixes #5672
Alan T. DeKok [Fri, 31 Oct 2025 13:30:03 +0000 (09:30 -0400)] 
hoist assertion around print_args.  Fixes #5672

7 months agothe clone code supports leaf attributes, so allow it here, too
Alan T. DeKok [Fri, 31 Oct 2025 11:30:43 +0000 (07:30 -0400)] 
the clone code supports leaf attributes, so allow it here, too

7 months agoadd official Docker Hub link to documentation
iTrooz [Thu, 30 Oct 2025 20:59:19 +0000 (21:59 +0100)] 
add official Docker Hub link to documentation

7 months agoupdate recommendations for PAP
Alan T. DeKok [Thu, 30 Oct 2025 16:52:02 +0000 (12:52 -0400)] 
update recommendations for PAP

7 months agoTypo
Nick Porter [Thu, 30 Oct 2025 11:24:37 +0000 (11:24 +0000)] 
Typo

7 months agobe explicit about which data types we accept in the dictionaries
Alan T. DeKok [Wed, 29 Oct 2025 11:20:56 +0000 (07:20 -0400)] 
be explicit about which data types we accept in the dictionaries

7 months agoReport correct config option name. Fixes #5669
Nick Porter [Wed, 29 Oct 2025 11:44:19 +0000 (11:44 +0000)] 
Report correct config option name. Fixes #5669

7 months agoRecord the current request in the reponse ctx
Nick Porter [Wed, 29 Oct 2025 11:31:08 +0000 (11:31 +0000)] 
Record the current request in the reponse ctx

7 months agoallow 389ds legacy PBKDF2_SHA256 to use arbitrary iteration count (#5653)
Gerald Vogt [Wed, 29 Oct 2025 03:40:51 +0000 (04:40 +0100)] 
allow 389ds legacy PBKDF2_SHA256 to use arbitrary iteration count (#5653)

7 months agoallow return of negative number. Fixes #5666
Alan T. DeKok [Tue, 28 Oct 2025 13:29:08 +0000 (09:29 -0400)] 
allow return of negative number.  Fixes #5666

7 months agoomit printing a union if it has only one child.
Alan T. DeKok [Tue, 28 Oct 2025 13:06:35 +0000 (09:06 -0400)] 
omit printing a union if it has only one child.

this simplifies the output and makes it easier to understand.
it's also the counterpart to adding the ALIAS which points from
the parent of the union, to the union member.

Other parts of the server will need to be updated to omit unions,
too.  But for now, this is good enough for tests.

7 months agosimplify this code by using the updated API
Alan T. DeKok [Tue, 28 Oct 2025 12:32:53 +0000 (08:32 -0400)] 
simplify this code by using the updated API

7 months agoadd short-circuit checks to fr_pair_afrom_da_depth_nested
Alan T. DeKok [Tue, 28 Oct 2025 12:31:26 +0000 (08:31 -0400)] 
add short-circuit checks to fr_pair_afrom_da_depth_nested

7 months agoadd alias for children of UNION
Alan T. DeKok [Mon, 27 Oct 2025 21:35:57 +0000 (17:35 -0400)] 
add alias for children of UNION

so if we have:

foo  struct
  bar union
    baz  struct
            blag uint32

We do need to store that internally as the full hierarchy.

However, as a special case, we add an alias for each child:

foo struct
  bar union
    baz struct
    blag uint32

  baz ALIAS bar.baz
  blag ALIAS bar.blag

this lets the user type in something reasonable, i.e. without the
intermediate UNION.

7 months agohandle ALIAS attributes when parsing
Alan T. DeKok [Mon, 27 Oct 2025 21:32:47 +0000 (17:32 -0400)] 
handle ALIAS attributes when parsing

so that we create the full tree, and not a partial one

7 months agofix length passed to talloc_bstr_realloc()
Alan T. DeKok [Mon, 27 Oct 2025 20:33:39 +0000 (16:33 -0400)] 
fix length passed to talloc_bstr_realloc()

the meaning of the length parameter should not change depending
on the first parameter being NULL or not.

7 months agoMore DHCPv4 docs updates
Nick Porter [Tue, 28 Oct 2025 08:19:22 +0000 (08:19 +0000)] 
More DHCPv4 docs updates

7 months agoThis is really an error
Nick Porter [Mon, 27 Oct 2025 17:30:20 +0000 (17:30 +0000)] 
This is really an error

And marking it as such will create Module-Failure-Message which is
helpful for logging.

7 months agobio/haproxy: fix CRLF check in PROXY v1 parser
Joshua Rogers [Mon, 27 Oct 2025 17:10:34 +0000 (01:10 +0800)] 
bio/haproxy: fix CRLF check in PROXY v1 parser

memcmp compared 3 bytes against "\r\n", which required a trailing NUL on the wire.
Compare 2 bytes and consume 2 so valid headers are accepted and connections are not dropped.

This bug was found by ZeroPath

Signed-off-by: Joshua Rogers <MegaManSec@users.noreply.github.com>
7 months agoadd test for encoding / decoding leaf child of union
Alan T. DeKok [Mon, 27 Oct 2025 14:59:49 +0000 (10:59 -0400)] 
add test for encoding / decoding leaf child of union

7 months agoallow children of UNION to be TLV or leaf.
Alan T. DeKok [Mon, 27 Oct 2025 13:17:33 +0000 (09:17 -0400)] 
allow children of UNION to be TLV or leaf.

because the struct encoder can be updated to allow that.

Note that the struct encode / decode has not yet been updated

7 months agoalignment issues
Alan T. DeKok [Mon, 27 Oct 2025 13:17:21 +0000 (09:17 -0400)] 
alignment issues