]>
git.ipfire.org Git - thirdparty/freeradius-server.git/log
Alan T. DeKok [Wed, 28 Aug 2024 19:41:16 +0000 (15:41 -0400)]
maybe pthread functions are in -lc?
Arran Cudbard-Bell [Wed, 28 Aug 2024 18:11:33 +0000 (13:11 -0500)]
We need to be built with OpenSSL in order to do SSL for Redis
Arran Cudbard-Bell [Wed, 28 Aug 2024 17:57:56 +0000 (12:57 -0500)]
Update guess and sub
Alan T. DeKok [Wed, 28 Aug 2024 17:46:17 +0000 (13:46 -0400)]
move fr_pair_print() to using ::enum-name
and update the regression tests to match.
Anything which reads the server output will need to be updated
to allow ::enum-name.
the value-box and tmpl functions already allow, but don't require
the "::" prefix for enum names. So any server code will be OK.
i.e. radclient etc. will parse either ::enum-name or enum-name.
This change should only affect the unit tests, and the detail file
writer.
Alan T. DeKok [Wed, 28 Aug 2024 17:45:31 +0000 (13:45 -0400)]
we don't need signed ints for number of bits
Arran Cudbard-Bell [Wed, 28 Aug 2024 17:46:18 +0000 (12:46 -0500)]
Include extra header if HAVE_REDIS_SSL
Arran Cudbard-Bell [Wed, 28 Aug 2024 17:45:54 +0000 (12:45 -0500)]
Quiet clang analyzer
Arran Cudbard-Bell [Wed, 28 Aug 2024 17:17:55 +0000 (12:17 -0500)]
Quiet clang
Arran Cudbard-Bell [Wed, 28 Aug 2024 17:05:13 +0000 (12:05 -0500)]
Bump LLVM and GCC versions
Arran Cudbard-Bell [Wed, 28 Aug 2024 16:58:16 +0000 (11:58 -0500)]
FreeBSD's pip is called pip
Arran Cudbard-Bell [Wed, 28 Aug 2024 16:56:35 +0000 (11:56 -0500)]
NYI
Arran Cudbard-Bell [Wed, 28 Aug 2024 16:46:27 +0000 (11:46 -0500)]
Switch back to our internal docker image now it's been updated
Arran Cudbard-Bell [Wed, 28 Aug 2024 16:36:10 +0000 (11:36 -0500)]
Bump fuzzer OS image
Arran Cudbard-Bell [Wed, 28 Aug 2024 16:35:57 +0000 (11:35 -0500)]
Bump base ci Dockerfile image, and llvm/gcc versions
Arran Cudbard-Bell [Wed, 28 Aug 2024 16:29:17 +0000 (11:29 -0500)]
Use the env var, so old versions of pip don't break
Arran Cudbard-Bell [Wed, 28 Aug 2024 16:22:08 +0000 (11:22 -0500)]
We _should_ setup a venv for this...
Alan T. DeKok [Wed, 28 Aug 2024 16:15:44 +0000 (12:15 -0400)]
typo
Arran Cudbard-Bell [Wed, 28 Aug 2024 16:13:29 +0000 (11:13 -0500)]
No... doesn't like unterminated single quotes strings
Arran Cudbard-Bell [Wed, 28 Aug 2024 16:04:25 +0000 (11:04 -0500)]
yaml doesn't allow inline comments?
Alan T. DeKok [Wed, 28 Aug 2024 15:59:58 +0000 (11:59 -0400)]
templates can have update sections
Alan T. DeKok [Wed, 28 Aug 2024 15:11:12 +0000 (11:11 -0400)]
add "-w file" flag
which will copy the input text to output file. AND for the
"match" command, replace any incorrect "expected" text with
the "actual" output.
This functionality is useful when we're changing the print
routines, but none of the other outputs have changed.
Arran Cudbard-Bell [Wed, 28 Aug 2024 16:00:05 +0000 (11:00 -0500)]
Run CI builds on a base ubuntu24 docker image for now, until we fix up the self-hosted image
Arran Cudbard-Bell [Wed, 28 Aug 2024 15:56:10 +0000 (10:56 -0500)]
Just bump the runner to 24.04, we only run sanitizer on GitHub anyway...
Arran Cudbard-Bell [Wed, 28 Aug 2024 15:53:45 +0000 (10:53 -0500)]
Bump FreeBSD version
Arran Cudbard-Bell [Wed, 28 Aug 2024 15:51:35 +0000 (10:51 -0500)]
Bump sanitizer docker image to 24.04
Arran Cudbard-Bell [Wed, 28 Aug 2024 15:47:36 +0000 (10:47 -0500)]
Remove docker build scripts for rock8, ubuntu20, debian11
Arran Cudbard-Bell [Wed, 28 Aug 2024 15:39:51 +0000 (10:39 -0500)]
Drop ubuntu-20.04 and debian-11
Arran Cudbard-Bell [Wed, 28 Aug 2024 15:39:36 +0000 (10:39 -0500)]
Drop rocky 8
Arran Cudbard-Bell [Wed, 28 Aug 2024 15:39:23 +0000 (10:39 -0500)]
Add back missing endif
Arran Cudbard-Bell [Wed, 28 Aug 2024 15:19:50 +0000 (10:19 -0500)]
Remove OpenSSL < 3.0.x support
Alan T. DeKok [Wed, 28 Aug 2024 14:56:16 +0000 (10:56 -0400)]
update packet length after encoding
Alan T. DeKok [Tue, 27 Aug 2024 21:51:21 +0000 (17:51 -0400)]
unify pair_print_secure() and pair_print_secret a bit more
in preparation for adding ::enum printing
Nick Porter [Wed, 28 Aug 2024 09:55:41 +0000 (10:55 +0100)]
Strings need quotes in lua redis.call
Alan T. DeKok [Tue, 27 Aug 2024 20:37:39 +0000 (16:37 -0400)]
output of radsniff / radclient isn't yet :: friendly
Alan T. DeKok [Tue, 27 Aug 2024 19:59:19 +0000 (15:59 -0400)]
add :: for Service-Type
perl -p -i -e 's/Service-Type(\s+(:=|=|==)\s+)([a-zA-Z])/Service-Type$1::$3/' $(git grep -l 'Service-Type' src/tests raddb/)
except we don't so src/tests/unit, as the printing routines don't
print :: before enum names. and the parsing routines don't set
t_rules->enumv, so parsing the enum doesn't work
Alan T. DeKok [Tue, 27 Aug 2024 19:49:11 +0000 (15:49 -0400)]
and raddb too
Alan T. DeKok [Tue, 27 Aug 2024 19:48:12 +0000 (15:48 -0400)]
use ::enum
perl -p -i -e 's/Auth-Type(\s+(:=|=|==)\s+)(\w)/Auth-Type$1::$3/' $(git grep -l 'Auth-Type' src/tests/)
Alan T. DeKok [Tue, 27 Aug 2024 13:40:06 +0000 (09:40 -0400)]
remove unused field
Alan T. DeKok [Tue, 27 Aug 2024 13:37:35 +0000 (09:37 -0400)]
clarify error messages
Alan T. DeKok [Mon, 26 Aug 2024 17:43:15 +0000 (13:43 -0400)]
move parse check to before extra work
Alan T. DeKok [Mon, 26 Aug 2024 13:45:56 +0000 (09:45 -0400)]
%(...) has been forbidden for a while
Alan T. DeKok [Mon, 26 Aug 2024 12:38:56 +0000 (08:38 -0400)]
remove unused field
Nick Porter [Mon, 26 Aug 2024 08:10:56 +0000 (09:10 +0100)]
Add OpenWiFi dictionary from v3.2
Nick Porter [Mon, 26 Aug 2024 08:06:18 +0000 (09:06 +0100)]
Add ckey dictionary from v3.2
Nick Porter [Mon, 26 Aug 2024 08:01:28 +0000 (09:01 +0100)]
Add WBA attributes to dictionary.wispr
"WBA-" and "WISPr-" attributes use the same vendor ID
https://github.com/wireless-broadband-alliance/RADIUS-VSA
Nick Porter [Mon, 26 Aug 2024 07:59:01 +0000 (08:59 +0100)]
Port Starent dictionary fixes from v3.2
Nick Porter [Mon, 26 Aug 2024 07:27:32 +0000 (08:27 +0100)]
Port dictionary.iea update from v3.2
Update dictionary.iea with Air Marshal RADIUS attributes found in
https://www.iea-software.com/docs/airmarshal2/airmarshalv2.pdf
Alan T. DeKok [Sun, 25 Aug 2024 12:41:49 +0000 (08:41 -0400)]
more things can have "update" sections
Alan T. DeKok [Sun, 25 Aug 2024 12:08:44 +0000 (08:08 -0400)]
more cleanups and rearrangements
Alan T. DeKok [Sat, 24 Aug 2024 21:41:17 +0000 (17:41 -0400)]
tighten rules for parser even more
Alan T. DeKok [Sat, 24 Aug 2024 20:39:50 +0000 (16:39 -0400)]
allow LHS xlat, string, etc. only in unlang sections
Alan T. DeKok [Sat, 24 Aug 2024 14:04:20 +0000 (10:04 -0400)]
add location-specific errors
instead of just saying "error in line", we now point to the exact
character which caused the error.
Alan T. DeKok [Sat, 24 Aug 2024 13:08:23 +0000 (09:08 -0400)]
relax parser
as detail "suppress" uses bare words.
Alan T. DeKok [Sat, 24 Aug 2024 12:51:42 +0000 (08:51 -0400)]
be politer to mistakes
Alan T. DeKok [Sat, 24 Aug 2024 12:23:25 +0000 (08:23 -0400)]
narrow down the scope of bare words in the configuration files
only unlang (module references) and edit sections (lists of values)
can have bare words.
as a result, remove old configuration sections which haven't been
used for a while.
Outside of unlang (map, switch) name2 must be alphanumeric
Alan T. DeKok [Sat, 24 Aug 2024 12:14:40 +0000 (08:14 -0400)]
remove unnecessary code
Alan T. DeKok [Sat, 24 Aug 2024 11:51:05 +0000 (07:51 -0400)]
don't allow <cast>
The rest of the parser hasn't supported it for a while, so we also
remove it from tmpl_preparse()
Alan T. DeKok [Thu, 22 Aug 2024 18:57:14 +0000 (14:57 -0400)]
start of hacking up the parser for removing '&'.
we likely need to do a lot more, and do more functions like
fr_skip_xlat() in order to pre-parse attribute LHS and RHS
Nick Porter [Fri, 23 Aug 2024 11:27:09 +0000 (12:27 +0100)]
Add VSA to internal encoder test
Alan T. DeKok [Thu, 22 Aug 2024 18:33:33 +0000 (14:33 -0400)]
remove unused syntax
we used to support
foo.bar.baz = blah
as a short-hand for config
foo {
bar {
baz = blah
}
}
but that now conflicts with the non '&' attribute syntax. Since
the old-style syntax isn't used, remove it.
Alan T. DeKok [Thu, 22 Aug 2024 16:24:17 +0000 (12:24 -0400)]
add "listen" state for proto ldap sync
Alan T. DeKok [Thu, 22 Aug 2024 16:14:39 +0000 (12:14 -0400)]
hoise "parse rcode" to earlier in tokenize_field()
which simplifies some of the code, and helps us prepare for
removing the leading '&' from attribute names.
update the rcode function instantiation to allow for different
data types.
add an rcode print function which prints the text version of the
rcode.
update a few tests with new results
Alan T. DeKok [Thu, 22 Aug 2024 12:41:07 +0000 (08:41 -0400)]
add "set unlang allow" API for unit_test_map
Nick Porter [Thu, 22 Aug 2024 07:06:44 +0000 (08:06 +0100)]
VSA and VENDOR attributes need the same encoder logic as TLV
Allows for %internal.encode(&Vendor-Specific) or
%internal.encode(&Vendor-Specific.Vendor) and the children will be added
correctly.
Nick Porter [Wed, 21 Aug 2024 21:08:49 +0000 (22:08 +0100)]
Use current da type when walking through encoding steps
Alan T. DeKok [Wed, 21 Aug 2024 18:55:17 +0000 (14:55 -0400)]
add update sections to the list, too
Alan T. DeKok [Wed, 21 Aug 2024 18:08:41 +0000 (14:08 -0400)]
remove more '&' from parsing, and move to state checks
Alan T. DeKok [Wed, 21 Aug 2024 15:15:35 +0000 (11:15 -0400)]
allow locals in a "dictionary" section.
and make the parser even more state oriented
Alan T. DeKok [Wed, 21 Aug 2024 14:05:42 +0000 (10:05 -0400)]
use switch statement
Alan T. DeKok [Wed, 21 Aug 2024 11:56:59 +0000 (07:56 -0400)]
move migration flag to main config
Alan T. DeKok [Wed, 21 Aug 2024 11:47:53 +0000 (07:47 -0400)]
set tmpl migration variable from main config flags
Alan T. DeKok [Wed, 21 Aug 2024 11:44:45 +0000 (07:44 -0400)]
Make the compiler state oriented, instead of looking for '&'
Alan T. DeKok [Wed, 21 Aug 2024 11:10:17 +0000 (07:10 -0400)]
add state for map / update sections
Alan T. DeKok [Wed, 21 Aug 2024 00:00:08 +0000 (20:00 -0400)]
allow unlang inside of virtual modules
Alan T. DeKok [Tue, 20 Aug 2024 23:36:33 +0000 (19:36 -0400)]
more "move to state orientaed" instead of hacks
Alan T. DeKok [Tue, 20 Aug 2024 21:48:19 +0000 (17:48 -0400)]
make unlang parsing more explicitly state oriented
Alan T. DeKok [Tue, 20 Aug 2024 20:06:47 +0000 (16:06 -0400)]
change name to be clearer
Alan T. DeKok [Tue, 20 Aug 2024 15:55:33 +0000 (11:55 -0400)]
explicitly mark up sections which we know are unlang
in preparation for removing the requirement to use '&'
James Jones [Tue, 20 Aug 2024 18:22:25 +0000 (13:22 -0500)]
Range check buffer[1] to avoid tainted_data issue (CID #
1419883 )
Keeps it from falling off the edge of packet_name[]. Rather than
printing out a minimally informative "invalid" if it's out of
range, it will print the numerical value.
Nick Porter [Tue, 20 Aug 2024 09:48:11 +0000 (10:48 +0100)]
Re-work test for extended regex
So it doesn't hang on "lean" CI builds
Nick Porter [Tue, 20 Aug 2024 08:37:02 +0000 (09:37 +0100)]
original->flags is already in network byte order
Nick Porter [Mon, 19 Aug 2024 17:26:39 +0000 (18:26 +0100)]
RFC 2131 says DHCP replies copy flags from requests
Alan T. DeKok [Mon, 19 Aug 2024 14:39:02 +0000 (10:39 -0400)]
move "set open" to common function
Alan T. DeKok [Sun, 18 Aug 2024 21:13:56 +0000 (17:13 -0400)]
update for new fr_radius_encode() API
and call activate() from connect(), if the connection is already
open.
Alan T. DeKok [Mon, 19 Aug 2024 13:16:19 +0000 (09:16 -0400)]
call time start to bootstrap timing
Alan T. DeKok [Sat, 17 Aug 2024 12:55:42 +0000 (08:55 -0400)]
add "require_enum_prefix" migration flag
in preparation for moving to ::enum-name everywhere, which then
lets us drop the "&" prefix for attribute names
Alan T. DeKok [Sat, 17 Aug 2024 12:55:24 +0000 (08:55 -0400)]
simplify a bit
Alan T. DeKok [Fri, 16 Aug 2024 20:06:25 +0000 (16:06 -0400)]
allow cast to same data type to mean "print value, not enum name"
because I tried to use it, and it didn't work. So the logical
next step is to make it work.
Alan T. DeKok [Fri, 16 Aug 2024 13:58:46 +0000 (09:58 -0400)]
clean up casting a bit
James Jones [Fri, 16 Aug 2024 17:27:42 +0000 (12:27 -0500)]
Complete (and simplify) the pacification of Coverity (CD #
1604613 )
Handling the two-byte length case seems to have made Coverity gripe
about the one-byte case. We therefore change it so that one
Coverity-only check is done for both cases, reducing clutter.
James Jones [Wed, 14 Aug 2024 21:33:52 +0000 (16:33 -0500)]
Add Coverity-only check for two-byte length case (CID #
1604613 )
In fr_struct_to_network(), for structs prefixed by a length, the
length can be either one or two bytes. Space is set aside for it,
and when it comes time to encode it, you skip the appropriate number
of bytes and decrement length correspondingly. Coverity lets the one
byte length version pass without complaint, but in the two-byte
length case thinks length is 0 and hence underflows when 2 is subtracted
from it.
We add a Coverity-only check that returns an error if len < 2; it
never will be, but the check should persuade Coverity that at the
decrement, len will be at least 2.
Alan T. DeKok [Wed, 14 Aug 2024 13:42:24 +0000 (09:42 -0400)]
use the src enum for time resolution, not the dst enum
and add tests for it.
Nick Porter [Wed, 14 Aug 2024 09:14:30 +0000 (10:14 +0100)]
Fix crossbuild for Debian sid
Nick Porter [Wed, 14 Aug 2024 09:08:12 +0000 (10:08 +0100)]
More appropriate list of common cross builds
Nick Porter [Wed, 14 Aug 2024 08:21:10 +0000 (09:21 +0100)]
Debian sid has OpenSSL legacy providers in an optional package
Nick Porter [Wed, 14 Aug 2024 07:38:53 +0000 (08:38 +0100)]
Add rlm_sql_mysql driver option to set connection character set
Nick Porter [Wed, 14 Aug 2024 07:16:18 +0000 (08:16 +0100)]
UNUSED
Alan T. DeKok [Tue, 13 Aug 2024 20:57:19 +0000 (16:57 -0400)]
allow casting from something to specific time_delta resolutions
which creates an output value-box of type time_delta, and the
named time resolution.
Add a test.
update the calc code to include the time resolution / enumv when
doing box operations, so that we know how to properly compare things.
Alan T. DeKok [Tue, 13 Aug 2024 20:52:48 +0000 (16:52 -0400)]
add API to get enumv for time precision
Alan T. DeKok [Tue, 13 Aug 2024 15:34:42 +0000 (11:34 -0400)]
update Acct-Delay-Time calculations