]> git.ipfire.org Git - thirdparty/freeradius-server.git/log
thirdparty/freeradius-server.git
2 years agoFix confusing name
Arran Cudbard-Bell [Wed, 19 Jun 2024 20:11:40 +0000 (14:11 -0600)] 
Fix confusing name

2 years agoquiet coverity
Alan T. DeKok [Wed, 19 Jun 2024 12:49:17 +0000 (08:49 -0400)] 
quiet coverity

We can decode packets if there's no original request, but we
cannot verify the Response Authenticator

2 years agoStatus-Client has no definition and is never used
Alan T. DeKok [Wed, 19 Jun 2024 12:47:53 +0000 (08:47 -0400)] 
Status-Client has no definition and is never used

2 years agoadd connection_timeout to RADIUS client BIO
Alan T. DeKok [Wed, 12 Jun 2024 18:50:33 +0000 (14:50 -0400)] 
add connection_timeout to RADIUS client BIO

2 years agoremove UNUSED
Alan T. DeKok [Wed, 12 Jun 2024 18:08:30 +0000 (14:08 -0400)] 
remove UNUSED

variables are used.

2 years agofix compiler warning
Alan T. DeKok [Wed, 12 Jun 2024 18:07:05 +0000 (14:07 -0400)] 
fix compiler warning

2 years agoEnsure queries are freed before pool connection is released
Nick Porter [Tue, 18 Jun 2024 15:02:14 +0000 (16:02 +0100)] 
Ensure queries are freed before pool connection is released

2 years agoFix docs
Arran Cudbard-Bell [Tue, 18 Jun 2024 02:58:37 +0000 (20:58 -0600)] 
Fix docs

2 years agoFix "RADIUS checksum" mode in radsniff, when dealing with Access-Requests
Arran Cudbard-Bell [Tue, 18 Jun 2024 02:48:12 +0000 (20:48 -0600)] 
Fix "RADIUS checksum" mode in radsniff, when dealing with Access-Requests

2 years agoAdd 3GPP2 attributes
Nick Porter [Mon, 17 Jun 2024 16:04:18 +0000 (17:04 +0100)] 
Add 3GPP2 attributes

Found in 3GPP2 specification document A.S0008-C

2 years agoRecord which xlat registered the module instance
Arran Cudbard-Bell [Sun, 16 Jun 2024 04:53:42 +0000 (22:53 -0600)] 
Record which xlat registered the module instance

2 years agoNot supported by GCC
Arran Cudbard-Bell [Sun, 16 Jun 2024 04:39:00 +0000 (22:39 -0600)] 
Not supported by GCC

2 years agoWrap the module method array in a grouping structure
Arran Cudbard-Bell [Sun, 9 Jun 2024 22:46:00 +0000 (18:46 -0400)] 
Wrap the module method array in a grouping structure

2 years agoFix policy name
Nick Porter [Fri, 14 Jun 2024 11:56:54 +0000 (12:56 +0100)] 
Fix policy name

There is no preacct section or method any more

2 years agoRemove dangling symlink
Nick Porter [Fri, 14 Jun 2024 08:55:35 +0000 (09:55 +0100)] 
Remove dangling symlink

2 years agoPacify Coverity (CID #1598300)
Nick Porter [Tue, 11 Jun 2024 09:42:03 +0000 (10:42 +0100)] 
Pacify Coverity (CID #1598300)

2 years agoSatisfy both clang scan and Coverity (CID #1603335)
Nick Porter [Mon, 10 Jun 2024 07:40:28 +0000 (08:40 +0100)] 
Satisfy both clang scan and Coverity (CID #1603335)

2 years agoWhitespace
Arran Cudbard-Bell [Sun, 9 Jun 2024 22:02:46 +0000 (18:02 -0400)] 
Whitespace

2 years agoCorrect uninitialized scalar false positives (CID #1504037, #1503938)
James Jones [Mon, 6 May 2024 17:24:50 +0000 (12:24 -0500)] 
Correct uninitialized scalar false positives (CID #1504037, #1503938)

Coverity doesn't realize that uninitialized char arrays used as
buffer space for sbuffs are in fact set by sbuff functions that
write to the sbuff. (Yes, we tried modeling, but it didn't work.)
The solution is to keep the sbuff FR_SBUFF_OUT() creates around
long enough to use fr_sbuff_start(&sbuff) "instead of" the array
(even though it really is the array); that satisfies coverity.

2 years agos/idle/reapable/ in trunk code
Arran Cudbard-Bell [Sat, 8 Jun 2024 20:03:47 +0000 (16:03 -0400)] 
s/idle/reapable/ in trunk code

Idle is a little ambiguous.  Reapable describes more or less the exact behaviour that's implemented... treq finishes, and then hangs around in the trunk waiting for something to collect its status code, and other outputs.

2 years agoThese are attribute numbers...
Arran Cudbard-Bell [Sat, 8 Jun 2024 20:01:59 +0000 (16:01 -0400)] 
These are attribute numbers...

2 years agoFix conflict between pub/private function
Arran Cudbard-Bell [Sat, 8 Jun 2024 20:01:40 +0000 (16:01 -0400)] 
Fix conflict between pub/private function

2 years agoWrap trunk allocations in MEM()
Arran Cudbard-Bell [Sat, 8 Jun 2024 19:53:07 +0000 (15:53 -0400)] 
Wrap trunk allocations in MEM()

2 years agoFix enums
Arran Cudbard-Bell [Sat, 8 Jun 2024 19:51:13 +0000 (15:51 -0400)] 
Fix enums

2 years agoRemove fr_ prefix from trunk and connection
Arran Cudbard-Bell [Sat, 8 Jun 2024 19:47:19 +0000 (15:47 -0400)] 
Remove fr_ prefix from trunk and connection

2 years agoNot needed, we always sort the bindings now
Arran Cudbard-Bell [Sat, 8 Jun 2024 19:40:48 +0000 (15:40 -0400)] 
Not needed, we always sort the bindings now

2 years agoClear references to markers in fr_sbuff_reset_talloc
Arran Cudbard-Bell [Fri, 7 Jun 2024 21:00:00 +0000 (17:00 -0400)] 
Clear references to markers in fr_sbuff_reset_talloc

2 years agoQuiet compiler
Arran Cudbard-Bell [Fri, 7 Jun 2024 01:32:48 +0000 (21:32 -0400)] 
Quiet compiler

2 years agoUse new module method resolution function
Arran Cudbard-Bell [Fri, 7 Jun 2024 00:30:52 +0000 (20:30 -0400)] 
Use new module method resolution function

This supports static and dynamic modules
Pass in call_env_ctx_t to parsing callbacks instead of the section name, module instance data directly

2 years agoMethod names need to match section names exactly
Arran Cudbard-Bell [Fri, 7 Jun 2024 00:23:14 +0000 (20:23 -0400)] 
Method names need to match section names exactly

2 years agoUse correct type for cf_pair_debug
Arran Cudbard-Bell [Sat, 1 Jun 2024 01:32:41 +0000 (19:32 -0600)] 
Use correct type for cf_pair_debug

2 years agoFixes to section cmp functions
Arran Cudbard-Bell [Sat, 1 Jun 2024 01:32:27 +0000 (19:32 -0600)] 
Fixes to section cmp functions

2 years agoMove module xlat registrations into the module code
Arran Cudbard-Bell [Sat, 1 Jun 2024 01:29:04 +0000 (19:29 -0600)] 
Move module xlat registrations into the module code

2 years agoSplit section name match
Arran Cudbard-Bell [Tue, 28 May 2024 02:03:13 +0000 (22:03 -0400)] 
Split section name match

2 years agodouble-check iterations size
Alan T. DeKok [Fri, 7 Jun 2024 14:40:10 +0000 (10:40 -0400)] 
double-check iterations size

2 years agoFixup configure script to look for MariaDB specifically
Arran Cudbard-Bell [Fri, 7 Jun 2024 03:02:42 +0000 (23:02 -0400)] 
Fixup configure script to look for MariaDB specifically

2 years agoDon't crash if fr_trunk_request_alloc() returns NULL
Nick Porter [Tue, 4 Jun 2024 16:56:58 +0000 (17:56 +0100)] 
Don't crash if fr_trunk_request_alloc() returns NULL

This is typically due to configuration limits

2 years agoDon't close the final connection on a trunk if the last event was a failure
Nick Porter [Tue, 4 Jun 2024 07:42:42 +0000 (08:42 +0100)] 
Don't close the final connection on a trunk if the last event was a failure

Closing this last connection can lead to no active connections and the
last event being a failure, which then blocks enqueueing of new
requests.

2 years agoForce use of mysql_native_password for test account
Nick Porter [Tue, 28 May 2024 11:15:06 +0000 (12:15 +0100)] 
Force use of mysql_native_password for test account

To allow older client library to authenticate against newer server.

MySQL and MariaDB have different one line syntaxes for this - the version
implemented here works with both.

2 years agoTo use the non-blocking API we can only build against libmariadb
Nick Porter [Tue, 28 May 2024 09:43:39 +0000 (10:43 +0100)] 
To use the non-blocking API we can only build against libmariadb

libmysqlclient has a different non-blocking api

2 years agoRemove lifetime timer event when setting a tconn to drain
Nick Porter [Tue, 28 May 2024 09:19:41 +0000 (10:19 +0100)] 
Remove lifetime timer event when setting a tconn to drain

2 years agoUpdate mysql driver to use trunk connections and non-blocking calls
Nick Porter [Mon, 27 May 2024 14:01:35 +0000 (15:01 +0100)] 
Update mysql driver to use trunk connections and non-blocking calls

2 years agoAdd FR_TRUNK_REQUEST_STATE_IDLE
Nick Porter [Tue, 4 Jun 2024 17:01:21 +0000 (18:01 +0100)] 
Add FR_TRUNK_REQUEST_STATE_IDLE

Used when a trunk request has been sent and the request needs to remain
valid, but no response is expected (typically where an immediate
response happened).

This is required for SQL queries where multiple exchanges on the same
connection are often required.

2 years agoAdd infrastructure for SQL drivers to use trunks
Nick Porter [Mon, 27 May 2024 12:45:17 +0000 (13:45 +0100)] 
Add infrastructure for SQL drivers to use trunks

2 years agoAmend rlm_sql mod_authorize and group membership xlat to push queries on the stack
Nick Porter [Mon, 27 May 2024 11:08:31 +0000 (12:08 +0100)] 
Amend rlm_sql mod_authorize and group membership xlat to push queries on the stack

They share a common function for retrieving group membership so have to
be amended at the same time

2 years agoAmend sqlippool mod_common to push queries on the stack
Nick Porter [Fri, 24 May 2024 16:10:25 +0000 (17:10 +0100)] 
Amend sqlippool mod_common to push queries on the stack

2 years agoAmend sqlippool mod_alloc to push queries on the stack
Nick Porter [Fri, 24 May 2024 13:54:42 +0000 (14:54 +0100)] 
Amend sqlippool mod_alloc to push queries on the stack

2 years agoOnly reserve a pool connection when not using trunks
Nick Porter [Fri, 24 May 2024 13:41:36 +0000 (14:41 +0100)] 
Only reserve a pool connection when not using trunks

2 years agoAdd a `sent` flag to trunk requests
Nick Porter [Tue, 21 May 2024 09:49:01 +0000 (10:49 +0100)] 
Add a `sent` flag to trunk requests

So that only the first time of sending a request counts towards
connection statistics.

Requests which are re-queued typically need to run on the same
connection (e.g. a series of SQL queries forming a transaction) and bad
things will happen if `max_uses` causes a connection to close part way
through such requests.

2 years agoUpdate SQL mod_map_proc to push query on stack for evaluation
Nick Porter [Tue, 21 May 2024 07:49:41 +0000 (08:49 +0100)] 
Update SQL mod_map_proc to push query on stack for evaluation

2 years agoPass fr_sql_query_t to sql_fields function
Nick Porter [Mon, 20 May 2024 18:38:30 +0000 (19:38 +0100)] 
Pass fr_sql_query_t to sql_fields function

And remove calls to sql_num_fields

2 years agosql_num_fields is not used
Nick Porter [Mon, 20 May 2024 18:22:02 +0000 (19:22 +0100)] 
sql_num_fields is not used

2 years agoDefine contexts for SQL pair and group retrieval
Nick Porter [Mon, 20 May 2024 11:11:56 +0000 (12:11 +0100)] 
Define contexts for SQL pair and group retrieval

2 years agoAmend sql_mod_redundant to push SQL call on the stack
Nick Porter [Mon, 20 May 2024 11:22:53 +0000 (12:22 +0100)] 
Amend sql_mod_redundant to push SQL call on the stack

2 years agoUpdate rlm_sql_fetch_row to allow for trunk connections
Nick Porter [Mon, 20 May 2024 10:41:43 +0000 (11:41 +0100)] 
Update rlm_sql_fetch_row to allow for trunk connections

2 years agoRework SQL xlat to push SQL query function on the stack
Nick Porter [Mon, 20 May 2024 10:35:37 +0000 (11:35 +0100)] 
Rework SQL xlat to push SQL query function on the stack

2 years agoPass fr_sql_query_t to sql_error functions
Nick Porter [Mon, 13 May 2024 14:48:07 +0000 (15:48 +0100)] 
Pass fr_sql_query_t to sql_error functions

2 years agoMove SQL results row to query_ctx
Nick Porter [Fri, 10 May 2024 14:57:50 +0000 (15:57 +0100)] 
Move SQL results row to query_ctx

2 years agoPass fr_sql_query_t to SQL free result functions
Nick Porter [Fri, 10 May 2024 14:26:23 +0000 (15:26 +0100)] 
Pass fr_sql_query_t to SQL free result functions

2 years agoPass fr_sql_query_t to SQL finish functions
Nick Porter [Wed, 8 May 2024 15:08:13 +0000 (16:08 +0100)] 
Pass fr_sql_query_t to SQL finish functions

In preparation for moving from pool connections to trunk connections.

2 years agoPass fr_sql_query_t to num_rows and affected_rows
Nick Porter [Wed, 8 May 2024 11:12:23 +0000 (12:12 +0100)] 
Pass fr_sql_query_t to num_rows and affected_rows

In preparation for moving from pool connections to trunk connections.

2 years agoAdd request to fr_sql_query_t
Nick Porter [Wed, 8 May 2024 09:54:18 +0000 (10:54 +0100)] 
Add request to fr_sql_query_t

So the correct request can be resumed once a query has run.

2 years agoAdd alloc / free methods for SQL driver specific escape arg
Nick Porter [Tue, 7 May 2024 09:52:39 +0000 (10:52 +0100)] 
Add alloc / free methods for SQL driver specific escape arg

2 years agoUse request attributes in sql xlat test
Nick Porter [Mon, 6 May 2024 14:31:38 +0000 (15:31 +0100)] 
Use request attributes in sql xlat test

To ensure escaping code is called.

2 years agoAllow for differing arguments to sql escape function
Nick Porter [Mon, 6 May 2024 14:29:51 +0000 (15:29 +0100)] 
Allow for differing arguments to sql escape function

Drivers using the builtin escape function just need the SQL instance for
access to the allowed chars.
Those using connection pools will use a pool connection.
Those using trunks will use a per thread fr_connection_t - no actual data
is transferred, but the driver escaping functions refer to server side
data such as character sets.

2 years agoAdd SQL driver options for trunks
Nick Porter [Fri, 3 May 2024 11:20:41 +0000 (12:20 +0100)] 
Add SQL driver options for trunks

Allowing for one driver at a time to be converted to trunks

2 years agoAdd trunk to SQL query ctx
Nick Porter [Fri, 3 May 2024 11:01:35 +0000 (12:01 +0100)] 
Add trunk to SQL query ctx

And populate from module thread data

2 years agoAdd per thread SQL module data
Nick Porter [Fri, 3 May 2024 08:50:28 +0000 (09:50 +0100)] 
Add per thread SQL module data

For holding trunk connection

2 years agoAdd module_instance_t to rlm_sql_t
Nick Porter [Fri, 17 May 2024 08:45:43 +0000 (09:45 +0100)] 
Add module_instance_t to rlm_sql_t

For thread data lookup

2 years agoUse instance methods for calling SQL functions
Nick Porter [Fri, 3 May 2024 07:54:30 +0000 (08:54 +0100)] 
Use instance methods for calling SQL functions

Preparation so we can switch functions as drivers move to use trunk code

2 years agoChange function signature of SQL driver sql_fetch_row() to unlang_function_t
Nick Porter [Thu, 2 May 2024 13:44:27 +0000 (14:44 +0100)] 
Change function signature of SQL driver sql_fetch_row() to unlang_function_t

2 years agoRemove SQL driver store_result method
Nick Porter [Thu, 2 May 2024 08:39:46 +0000 (09:39 +0100)] 
Remove SQL driver store_result method

Only defined for MySQL and never used outside the driver.

2 years agoChange function signature of SQL driver query functions to unlang_function_t
Nick Porter [Thu, 2 May 2024 08:00:52 +0000 (09:00 +0100)] 
Change function signature of SQL driver query functions to unlang_function_t

2 years agoChange function signature of rlm_sql_fetch_row() to be unlang_function_t
Nick Porter [Tue, 30 Apr 2024 10:26:35 +0000 (11:26 +0100)] 
Change function signature of rlm_sql_fetch_row() to be unlang_function_t

2 years agoChange function signature of rlm_sql_select_query() to be unlang_function_t
Nick Porter [Mon, 29 Apr 2024 15:47:05 +0000 (16:47 +0100)] 
Change function signature of rlm_sql_select_query() to be unlang_function_t

2 years agoSQL connect_query is not expected to return data
Nick Porter [Mon, 29 Apr 2024 15:42:59 +0000 (16:42 +0100)] 
SQL connect_query is not expected to return data

So run with `rlm_sql_query()` rather than `rlm_sql_select_query()`

2 years agoChange function signature of rlm_sql_query() to be unlang_function_t
Nick Porter [Fri, 26 Apr 2024 15:12:52 +0000 (16:12 +0100)] 
Change function signature of rlm_sql_query() to be unlang_function_t

2 years agoDefine an SQL query context
Nick Porter [Fri, 26 Apr 2024 15:01:33 +0000 (16:01 +0100)] 
Define an SQL query context

And allocation / free routines

2 years agofix issues found by coverity
Alan T. DeKok [Thu, 6 Jun 2024 20:44:12 +0000 (16:44 -0400)] 
fix issues found by coverity

don't reset connection->parent, as we can't do that safely.

Instead, just set a variable saying whether or not the connection
is in the parent hash, and therefore has to be deleted (or not)

2 years agounlink connection from parent before cleaning it up
Alan T. DeKok [Thu, 6 Jun 2024 18:36:19 +0000 (14:36 -0400)] 
unlink connection from parent before cleaning it up

to prevent repeated deletes

2 years agoadd notes
Alan T. DeKok [Thu, 6 Jun 2024 16:45:04 +0000 (12:45 -0400)] 
add notes

2 years agoauto-add all known VENDORs to all known VSAs
Alan T. DeKok [Thu, 6 Jun 2024 16:42:45 +0000 (12:42 -0400)] 
auto-add all known VENDORs to all known VSAs

2 years agomore gluing in of EOF callbacks
Alan T. DeKok [Thu, 6 Jun 2024 13:43:58 +0000 (09:43 -0400)] 
more gluing in of EOF callbacks

2 years agotell the iterator that we're deleting this node
Alan T. DeKok [Thu, 6 Jun 2024 13:43:09 +0000 (09:43 -0400)] 
tell the iterator that we're deleting this node

2 years agodocument xlat for delay
Alan T. DeKok [Thu, 6 Jun 2024 13:21:33 +0000 (09:21 -0400)] 
document xlat for delay

2 years agomove to EOF callbacks
Alan T. DeKok [Thu, 6 Jun 2024 11:37:52 +0000 (07:37 -0400)] 
move to EOF callbacks

2 years agoactivate / shutdown don't return anything
Alan T. DeKok [Wed, 5 Jun 2024 15:49:23 +0000 (11:49 -0400)] 
activate / shutdown don't return anything

and add provisions for EOF callbacks

2 years agocatch more corner cases
Alan T. DeKok [Wed, 5 Jun 2024 01:44:17 +0000 (21:44 -0400)] 
catch more corner cases

2 years agotypos
Alan T. DeKok [Mon, 3 Jun 2024 18:18:47 +0000 (14:18 -0400)] 
typos

2 years agolet's use a modern version of OpenSSL
Alan T. DeKok [Mon, 3 Jun 2024 17:56:05 +0000 (13:56 -0400)] 
let's use a modern version of OpenSSL

2 years agoTell vscode to use configured includePath
Nick Porter [Thu, 2 May 2024 08:18:07 +0000 (09:18 +0100)] 
Tell vscode to use configured includePath

2 years agoMake DEBUG3 less noisy
Nick Porter [Wed, 29 May 2024 07:31:31 +0000 (08:31 +0100)] 
Make DEBUG3 less noisy

2 years agoRemove defunct config from tests
Nick Porter [Mon, 27 May 2024 08:50:41 +0000 (09:50 +0100)] 
Remove defunct config from tests

2 years agoCorrect test data
Nick Porter [Tue, 21 May 2024 08:13:32 +0000 (09:13 +0100)] 
Correct test data

2 years agoScheduled fuzzing: Update src/tests/fuzzer-corpus/dns.tar
github-actions[bot] [Thu, 6 Jun 2024 09:34:49 +0000 (09:34 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/dns.tar

2 years agoScheduled fuzzing: Update src/tests/fuzzer-corpus/dhcpv6.tar
github-actions[bot] [Thu, 6 Jun 2024 09:34:46 +0000 (09:34 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/dhcpv6.tar

2 years agoScheduled fuzzing: Update src/tests/fuzzer-corpus/dhcpv4.tar
github-actions[bot] [Thu, 6 Jun 2024 09:34:43 +0000 (09:34 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/dhcpv4.tar

2 years agoScheduled fuzzing: Update src/tests/fuzzer-corpus/radius.tar
github-actions[bot] [Thu, 6 Jun 2024 09:34:40 +0000 (09:34 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/radius.tar

2 years agoScheduled fuzzing: Update src/tests/fuzzer-corpus/bfd.tar
github-actions[bot] [Thu, 6 Jun 2024 09:34:37 +0000 (09:34 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/bfd.tar

2 years agoScheduled fuzzing: Update src/tests/fuzzer-corpus/util.tar
github-actions[bot] [Thu, 6 Jun 2024 09:34:34 +0000 (09:34 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/util.tar