]>
git.ipfire.org Git - thirdparty/freeradius-server.git/log
Arran Cudbard-Bell [Thu, 17 Mar 2022 13:44:53 +0000 (09:44 -0400)]
Remove more rlm_sql prefixes
Alan T. DeKok [Wed, 16 Mar 2022 14:27:01 +0000 (10:27 -0400)]
it helps to check if there's room for the header.
Alan T. DeKok [Wed, 16 Mar 2022 13:41:51 +0000 (09:41 -0400)]
allow fixed-width string/octet types in an array
Alan T. DeKok [Wed, 16 Mar 2022 13:39:19 +0000 (09:39 -0400)]
allow decoding of arrays of fixed-size string/octets
not sure if the dicts support it, but what the heck
Alan T. DeKok [Wed, 16 Mar 2022 13:37:20 +0000 (09:37 -0400)]
use new functions, and make more like dhcpv6
Alan T. DeKok [Wed, 16 Mar 2022 13:37:01 +0000 (09:37 -0400)]
add fr_dhcpv4_attr_sizes[] and fr_dhcpv4_option_len()
Alan T. DeKok [Tue, 15 Mar 2022 21:24:17 +0000 (17:24 -0400)]
encode bools properly
adding fr_dhcpv4_next_encodable, and updating encode_value()
the decoder was already correct.
Alan T. DeKok [Tue, 15 Mar 2022 18:16:12 +0000 (14:16 -0400)]
add struct decoding
Alan T. DeKok [Tue, 15 Mar 2022 17:50:21 +0000 (13:50 -0400)]
start of the tree list API
Alan T. DeKok [Tue, 15 Mar 2022 13:54:53 +0000 (09:54 -0400)]
allow for exact decoding of values.
if we expect a byte and we get 4 bytes, then it should be a raw
option.
Alan T. DeKok [Tue, 15 Mar 2022 13:42:10 +0000 (09:42 -0400)]
fix fr_dhcpv4_decode_option to return the correct values
we don't return the length of the decoded data, we return
however much we decoded in one option.
James Jones [Tue, 15 Mar 2022 12:13:44 +0000 (07:13 -0500)]
Allow string/octet "arrays" with length=uint8 (#4415)
This is the DHCPv4 analog of
64ea2f5 , the analogous DHCPv6 change.
Jorge Pereira [Mon, 14 Mar 2022 19:24:08 +0000 (16:24 -0300)]
ci-rpm: Fix packages.endpointdev.com URL (#4414)
Needed by Centos-7 CI Building when installing https://packages.endpointdev.com/rhel/7/os/x86_64/git-core-2.24.1-1.ep7.x86_64.rpm
Alan T. DeKok [Mon, 14 Mar 2022 13:14:38 +0000 (09:14 -0400)]
rework to be more like other protocols
we really need to move this repetitive code into common functions
Alan T. DeKok [Sun, 13 Mar 2022 11:56:36 +0000 (07:56 -0400)]
update comments
Alan T. DeKok [Sun, 13 Mar 2022 10:52:33 +0000 (06:52 -0400)]
it helps to check for overflow
Alan T. DeKok [Sat, 12 Mar 2022 15:56:07 +0000 (10:56 -0500)]
port decode_raw() over from dhcpv6
which involves adding a tmp_ctx to packet_ctx
ensuring that all functions have a decode_ctx passed to them
fixing up the calls to decode_raw() to pass the correct values
fixing the test output so that it shows the current attribute
as raw, and not something else.
Alan T. DeKok [Sat, 12 Mar 2022 15:21:10 +0000 (10:21 -0500)]
now that the decoder is fixed, fix the encoder
so that it mashes the values together
Alan T. DeKok [Sat, 12 Mar 2022 15:19:33 +0000 (10:19 -0500)]
automatically coalesce values across multiple options
Alan T. DeKok [Sat, 12 Mar 2022 15:04:51 +0000 (10:04 -0500)]
pass non-NULL decode ctx to decode option function
Alan T. DeKok [Sat, 12 Mar 2022 14:44:22 +0000 (09:44 -0500)]
call encode_array
Alan T. DeKok [Fri, 11 Mar 2022 13:16:39 +0000 (08:16 -0500)]
don't loop over values for VSAs
Alan T. DeKok [Fri, 11 Mar 2022 12:53:57 +0000 (07:53 -0500)]
hack up encode_array() to not cross option boundaries
this really needs to be fixed in the decoder
Alan T. DeKok [Thu, 10 Mar 2022 22:40:27 +0000 (17:40 -0500)]
call extend_option()
which shows that decoding needs to be fixed, too
Alan T. DeKok [Thu, 10 Mar 2022 22:35:06 +0000 (17:35 -0500)]
get network length, which is a bit different...
IPv6 has 16 bytes minimum, 17 max (for scope I guess).
We're not going to copy fr_dhcpv6_option_len() as yet, so we
just hack something for now.
Alan T. DeKok [Thu, 10 Mar 2022 22:22:22 +0000 (17:22 -0500)]
copy encode_array() from dhcpv6
- comment out dns_labels for now
- use vp->vp_length instead of fr_dhcpv6_option_len()
we'll fix that later.
- use 8-bit length for string/octets, instead of 16-bit
It still doesn't split "too long" options but that can come next
Alan T. DeKok [Thu, 10 Mar 2022 22:15:51 +0000 (17:15 -0500)]
loop over input VPs.
we don't call extend_option() yet. Just cleaning up
Alan T. DeKok [Thu, 10 Mar 2022 22:08:40 +0000 (17:08 -0500)]
start of cleanup
the code is better, but the tests don't pass. dhcpv4 requires
multiple of the same pair_t to be encoded in the same option
Nick Porter [Fri, 11 Mar 2022 14:27:30 +0000 (14:27 +0000)]
v4: Two small fixes for LDAP reconnect when bind fails (#4412)
* Don't return members of a freed structure
* Add reconnection_delay to rlm_ldap
So that incorrect bind credentials don't result in a spinning
connection.
Alan T. DeKok [Fri, 11 Mar 2022 14:06:12 +0000 (09:06 -0500)]
allow fixed-size data types to have "array" flag, too
Alan T. DeKok [Thu, 10 Mar 2022 22:50:25 +0000 (17:50 -0500)]
check for key fields, not for bit fields
Alan T. DeKok [Thu, 10 Mar 2022 13:21:47 +0000 (08:21 -0500)]
we're going to do dynamic clients a different way
so remove the knowledge that packet_ctx is anything at all
Nick Porter [Wed, 9 Mar 2022 15:35:33 +0000 (15:35 +0000)]
%{bin: } xlat - adjust length of string when removing initial 0x (#4408)
James Jones [Wed, 9 Mar 2022 12:21:46 +0000 (06:21 -0600)]
Let da_is_length_field() recognize uint8 lengths (#4406)
Alan T. DeKok [Tue, 8 Mar 2022 21:44:42 +0000 (16:44 -0500)]
ensure that string/octet arrays are marked as "length=uint16"
Alan T. DeKok [Tue, 8 Mar 2022 21:43:54 +0000 (16:43 -0500)]
add 'length=uint16' here, too
Alan T. DeKok [Tue, 8 Mar 2022 20:51:44 +0000 (15:51 -0500)]
minor cleanups
use correct da_is_length_field() macro
"too long" data isn't an assert. It's a "can't encode" error
Alan T. DeKok [Mon, 7 Mar 2022 15:43:55 +0000 (10:43 -0500)]
UNUSED
Alan T. DeKok [Mon, 7 Mar 2022 14:15:26 +0000 (09:15 -0500)]
add 'length=uint8'
Alan T. DeKok [Sun, 6 Mar 2022 12:44:42 +0000 (07:44 -0500)]
this is bool
Alan T. DeKok [Fri, 4 Mar 2022 20:46:44 +0000 (15:46 -0500)]
double-check flags for "length=uint16,array"
to tighten up the restrictions a bit, and to make the dictionaries
more explicit
Alan T. DeKok [Fri, 4 Mar 2022 20:03:40 +0000 (15:03 -0500)]
these are arrays of string/octet, prefixed with a 16-bit length
the use of the "array" flag causes the DHCPv6 encoder to automatically
prefix the variable length strings with a 16-bit length. But it
doesn't hurt to have this information explicit in the dictionaries too
Jorge Pereira [Fri, 4 Mar 2022 14:36:40 +0000 (11:36 -0300)]
Fix Centos 8 CI build and enable Rocky 8 (#4399)
* Fix Centos 8 CI build
* Enable Rocky 8 CI build
As the Centos 8 is EOL. Let's also consider see if the build is ok on
Rocky 8.
James Jones [Fri, 4 Mar 2022 14:09:49 +0000 (08:09 -0600)]
Add fr_trunk_verify() and FR_TRUNK_VERIFY() to assist with detecting trunk issues. (#4379)
Sudheer Satyanarayana [Fri, 4 Mar 2022 13:25:12 +0000 (18:55 +0530)]
Minor text fix in LDAP module comments (#4405)
removed redundant word
Arran Cudbard-Bell [Fri, 4 Mar 2022 00:22:59 +0000 (18:22 -0600)]
Correct heap talloc types
Arran Cudbard-Bell [Thu, 3 Mar 2022 23:45:46 +0000 (17:45 -0600)]
Allow heap access functions to be inlined
Heaps hold the thread specific data for xlats, and will do the same for modules, so it's good to try and make them as cheap to access as possible.
Arran Cudbard-Bell [Thu, 3 Mar 2022 20:50:48 +0000 (14:50 -0600)]
Add common fields to the proto modules
Arran Cudbard-Bell [Thu, 3 Mar 2022 03:31:46 +0000 (21:31 -0600)]
Fix spurious debug message
Arran Cudbard-Bell [Thu, 3 Mar 2022 03:31:35 +0000 (21:31 -0600)]
Fix build errors in cassandra
Arran Cudbard-Bell [Thu, 3 Mar 2022 03:17:43 +0000 (21:17 -0600)]
Cast data not inst in sql drivers
Arran Cudbard-Bell [Thu, 3 Mar 2022 03:12:36 +0000 (21:12 -0600)]
Need to bootstrap sqlite _before_ rlm_sql does instantiation and creates the pool
Arran Cudbard-Bell [Thu, 3 Mar 2022 01:38:39 +0000 (19:38 -0600)]
Use common submodule CONF_PARSER code for loading submodules
Arran Cudbard-Bell [Thu, 3 Mar 2022 00:17:51 +0000 (18:17 -0600)]
Use the common submodule infrastructure for rlm_sql
This gives us thread instantiation/detach for sql drivers
Arran Cudbard-Bell [Thu, 3 Mar 2022 00:08:47 +0000 (18:08 -0600)]
Split conf parsing phase off from dl instantiation
This lets us get the instance data in all the appropriate trees before running CONF_PARSER callbacks
Arran Cudbard-Bell [Thu, 3 Mar 2022 00:07:06 +0000 (18:07 -0600)]
Provide accessor to get dl_inst from conf
Arran Cudbard-Bell [Thu, 3 Mar 2022 00:04:20 +0000 (18:04 -0600)]
Call detach on shallowest parent first
Arran Cudbard-Bell [Thu, 3 Mar 2022 00:03:51 +0000 (18:03 -0600)]
Fix whitespace
Arran Cudbard-Bell [Wed, 2 Mar 2022 21:21:22 +0000 (15:21 -0600)]
Switch rlm_radius to using the high level submodule interface
Really this is part of the previous commit, but broken out for ease of examination if we run into problems later.
Arran Cudbard-Bell [Wed, 2 Mar 2022 21:18:50 +0000 (15:18 -0600)]
Use module_t as the common set of fields in loadable modules
Arran Cudbard-Bell [Wed, 2 Mar 2022 15:36:29 +0000 (09:36 -0600)]
Split module_rlm functions out into a separate header file
Arran Cudbard-Bell [Wed, 2 Mar 2022 14:57:25 +0000 (08:57 -0600)]
Explicitly pass in the type of module we're loading to module_bootstrap
Arran Cudbard-Bell [Wed, 2 Mar 2022 14:11:53 +0000 (08:11 -0600)]
Typo
Arran Cudbard-Bell [Wed, 2 Mar 2022 00:03:48 +0000 (18:03 -0600)]
Split out rlm module code from modules.c
github-actions[bot] [Tue, 1 Mar 2022 09:34:49 +0000 (09:34 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/radius.tar
github-actions[bot] [Tue, 1 Mar 2022 09:34:43 +0000 (09:34 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/tftp.tar
github-actions[bot] [Tue, 1 Mar 2022 09:34:40 +0000 (09:34 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/vmps.tar
github-actions[bot] [Tue, 1 Mar 2022 09:34:36 +0000 (09:34 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/tacacs.tar
github-actions[bot] [Tue, 1 Mar 2022 09:34:33 +0000 (09:34 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/dns.tar
github-actions[bot] [Tue, 1 Mar 2022 09:34:31 +0000 (09:34 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/dhcpv6.tar
github-actions[bot] [Tue, 1 Mar 2022 09:34:28 +0000 (09:34 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/dhcpv4.tar
github-actions[bot] [Tue, 1 Mar 2022 09:34:21 +0000 (09:34 +0000)]
Scheduled fuzzing: Update src/tests/fuzzer-corpus/util.tar
Arran Cudbard-Bell [Wed, 23 Feb 2022 16:05:05 +0000 (11:05 -0500)]
Zero out input buffer on reset in internal md5
Arran Cudbard-Bell [Tue, 22 Feb 2022 21:46:54 +0000 (16:46 -0500)]
use all pre-allocated MD5 ctxs to reduce OpenSSL malloc/free noise
Arran Cudbard-Bell [Tue, 22 Feb 2022 20:30:12 +0000 (15:30 -0500)]
Add atexit state function
Arran Cudbard-Bell [Sat, 19 Feb 2022 04:50:01 +0000 (23:50 -0500)]
Explicitly cleanup "thread local" memory in single threaded mode
Alan T. DeKok [Fri, 18 Feb 2022 13:31:31 +0000 (08:31 -0500)]
check length before using it. Fixes fuzzer
Alan T. DeKok [Thu, 17 Feb 2022 21:51:51 +0000 (16:51 -0500)]
more "shut up clang analyzer"
Alan T. DeKok [Thu, 17 Feb 2022 15:31:45 +0000 (10:31 -0500)]
shut up static analyzer
Alan T. DeKok [Thu, 17 Feb 2022 13:56:55 +0000 (08:56 -0500)]
remove "peek-ahead" da and type
and other minor cleanups
Alan T. DeKok [Thu, 17 Feb 2022 13:53:07 +0000 (08:53 -0500)]
add "make test.unit.xlat"
Arran Cudbard-Bell [Thu, 17 Feb 2022 00:50:27 +0000 (19:50 -0500)]
Fix multiple issues with clearing failed TLS sessions
Arran Cudbard-Bell [Wed, 16 Feb 2022 16:48:56 +0000 (11:48 -0500)]
Unused
Arran Cudbard-Bell [Wed, 16 Feb 2022 05:30:41 +0000 (00:30 -0500)]
Whitespace
Arran Cudbard-Bell [Tue, 15 Feb 2022 03:38:55 +0000 (22:38 -0500)]
Helps if these are the right way round
Arran Cudbard-Bell [Tue, 15 Feb 2022 03:34:55 +0000 (22:34 -0500)]
Print out when a SSL * is bound and unbound
Arran Cudbard-Bell [Tue, 15 Feb 2022 00:18:58 +0000 (19:18 -0500)]
Fix up references to vector attributes
Arran Cudbard-Bell [Tue, 15 Feb 2022 00:13:08 +0000 (19:13 -0500)]
Remove references to EAP-SIM-*
Arran Cudbard-Bell [Mon, 14 Feb 2022 23:46:53 +0000 (18:46 -0500)]
Default to the first method in the NAK list
Arran Cudbard-Bell [Mon, 14 Feb 2022 23:16:54 +0000 (18:16 -0500)]
Support dynamically configuring more than one acceptable EAP method
This is needed for EAP-SIM/AKA/AKA'
Arran Cudbard-Bell [Fri, 11 Feb 2022 17:47:07 +0000 (12:47 -0500)]
Allow SIM-Start packets without identity requests
Unsure why/when this would be useful, but it's needed for completeness.
Arran Cudbard-Bell [Fri, 11 Feb 2022 17:46:27 +0000 (12:46 -0500)]
session-id is now ambiguous, use the correct one
Arran Cudbard-Bell [Fri, 11 Feb 2022 15:49:44 +0000 (10:49 -0500)]
Always run EAP-SIM-START for EAP-SIM
It's useless legacy cruft, EAP-AKA and EAP-AKA' don't require it.
Alan T. DeKok [Thu, 10 Feb 2022 18:57:51 +0000 (13:57 -0500)]
try to quiet clang
Arran Cudbard-Bell [Thu, 10 Feb 2022 18:42:42 +0000 (13:42 -0500)]
Minor fixes
Arran Cudbard-Bell [Thu, 10 Feb 2022 18:42:26 +0000 (13:42 -0500)]
Define the set of case statements for fr_type_signed too
Alan T. DeKok [Thu, 10 Feb 2022 15:44:49 +0000 (10:44 -0500)]
add fr_type_is_signed()
Alan T. DeKok [Thu, 10 Feb 2022 15:38:59 +0000 (10:38 -0500)]
use correct variable
Alan T. DeKok [Thu, 10 Feb 2022 14:48:08 +0000 (09:48 -0500)]
remove RPEDEBUG in xlat_eval_sync function
all callers have multiple paths where they return an error
via fr_strerror..(). However, by xlat_eval_sync using RPEDEBUG,
it "eats" the error, and the caller gets no error message.
Alan T. DeKok [Thu, 10 Feb 2022 14:47:41 +0000 (09:47 -0500)]
groupify child nodes, which is needed