]> git.ipfire.org Git - thirdparty/freeradius-server.git/log
thirdparty/freeradius-server.git
4 months agofix bounds checking, add corresponding unit tests
Catalina Pineros [Mon, 9 Mar 2026 20:40:27 +0000 (16:40 -0400)] 
fix bounds checking, add corresponding unit tests

blksize was missing minimum check,
if statement previously flags the 'end-of-file' packet as malformed,
unit tests added to check empty data block signals end-of-file, as well as invalid block size where minimum is 8

(protocols/tftp: fix empty DATA packet rejection and missing blksize minimum check 470)

4 months agofix syntax error
Catalina Pineros [Mon, 9 Mar 2026 20:14:20 +0000 (16:14 -0400)] 
fix syntax error
(fix(udpfromto.c): fix syntax error 'to = NULL:' -> 'to = NULL;' 177)

4 months agoadd 'goto error' after a REDEBUG() call
Catalina Pineros [Mon, 9 Mar 2026 16:06:37 +0000 (12:06 -0400)] 
add 'goto error' after a REDEBUG() call
when trying to encrypt a 3gpp pseudonym without the ID hint byte:
if the request.EAP-Type does not match a SIM based EAP-Type
then return XLAT_ACTION_FAIL
(eap_aka_sim/xlat: missing goto error in encrypt xlat causes silent encryption with tag=0 75)

4 months agoerror function call parameter fixed
Catalina Pineros [Mon, 9 Mar 2026 14:57:01 +0000 (10:57 -0400)] 
error function call parameter fixed
(rlm_redis_ippool_tool: fix NULL deref in driver_get_stats error path 351)

4 months agoreturn code (-1) when allocation failure
Catalina Pineros [Mon, 9 Mar 2026 14:50:38 +0000 (10:50 -0400)] 
return code (-1) when allocation failure
(dhcpv6/dns: return -1 on OOM in default client allocation 204)

4 months agoadd missing #pragma once
Catalina Pineros [Mon, 9 Mar 2026 14:13:09 +0000 (10:13 -0400)] 
add missing #pragma once
(eap_aka_sim/module.h: add missing #pragma once 70)

4 months agominor tweaks to edit code
Alan T. DeKok [Mon, 9 Mar 2026 21:33:34 +0000 (17:33 -0400)] 
minor tweaks to edit code

4 months agominor tweaks and fixes
Alan T. DeKok [Mon, 9 Mar 2026 21:14:08 +0000 (17:14 -0400)] 
minor tweaks and fixes

ferror() does not return any reasonable error value.

If we're looping over all values in an 8-bit range, don't use an
8-bit index variable.

4 months agoupdate end check for strings
Alan T. DeKok [Mon, 9 Mar 2026 21:12:35 +0000 (17:12 -0400)] 
update end check for strings

the check (a_end + 1) < in->end requires at least two bytes between
the two pointers. Since in->end points to the NUL terminator, this
means a trailing digit at position in->end - 1 (the very last data
byte) is never checked.

For example, parsing "123x" where x is the last character of
"in". a_end points to x, a_end + 1 == in->end, condition is false,
and any trailing data is not detected.

4 months agoadd checks to quiet coverity
Alan T. DeKok [Mon, 9 Mar 2026 20:59:24 +0000 (16:59 -0400)] 
add checks to quiet coverity

4 months agoset h && watcher if the connection succeeds immediately
Alan T. DeKok [Mon, 9 Mar 2026 20:57:35 +0000 (16:57 -0400)] 
set h && watcher if the connection succeeds immediately

4 months agofr_dbuff_reset_talloc() can reset to at least minimum size
Alan T. DeKok [Mon, 9 Mar 2026 20:14:07 +0000 (16:14 -0400)] 
fr_dbuff_reset_talloc() can reset to at least minimum size

and doesn't need to always reset from larger (allowed) size, back
to minimum size

4 months agoTypo
Nick Porter [Mon, 9 Mar 2026 18:20:02 +0000 (18:20 +0000)] 
Typo

4 months agoAdd Nokia IPv6 packet counters
Nick Porter [Mon, 9 Mar 2026 17:30:23 +0000 (17:30 +0000)] 
Add Nokia IPv6 packet counters

As found in
https://infocenter.nokia.com/public/7750SR150R5A/index.jsp?topic=%2Fcom.sr.radius%2Fhtml%2Fsros_radius_attrib.html

4 months agovarious minor bug fixes in dl.c
Alan T. DeKok [Mon, 9 Mar 2026 12:44:34 +0000 (08:44 -0400)] 
various minor bug fixes in dl.c

4 months agodon't calculate "end" until we have checked the inputs
Alan T. DeKok [Mon, 9 Mar 2026 02:08:28 +0000 (22:08 -0400)] 
don't calculate "end" until we have checked the inputs

4 months agoadd DNS tests for encoding, decoding, and error paths
Alan T. DeKok [Mon, 9 Mar 2026 01:18:20 +0000 (21:18 -0400)] 
add DNS tests for encoding, decoding, and error paths

4 months agotweak corner cases and typos
Alan T. DeKok [Mon, 9 Mar 2026 01:30:38 +0000 (21:30 -0400)] 
tweak corner cases and typos

4 months agoreturn failure on error case
Alan T. DeKok [Mon, 9 Mar 2026 01:19:34 +0000 (21:19 -0400)] 
return failure on error case

4 months agofix fr_nbo_to_int64v()
Alan T. DeKok [Mon, 9 Mar 2026 00:57:48 +0000 (20:57 -0400)] 
fix fr_nbo_to_int64v()

use / return int64_t, not uint64_t

set the high bits to zero starting at 0, not part-way through

4 months agoinitialize variable before doing recursive call, not in recursion
Alan T. DeKok [Mon, 9 Mar 2026 00:43:37 +0000 (20:43 -0400)] 
initialize variable before doing recursive call, not in recursion

4 months agocheck current pointer, not packet start
Alan T. DeKok [Mon, 9 Mar 2026 00:40:55 +0000 (20:40 -0400)] 
check current pointer, not packet start

4 months agouse real parent context
Alan T. DeKok [Mon, 9 Mar 2026 00:38:55 +0000 (20:38 -0400)] 
use real parent context

4 months agouse DEBUG for non-error message
Alan T. DeKok [Mon, 9 Mar 2026 00:36:19 +0000 (20:36 -0400)] 
use DEBUG for non-error message

4 months agoincrement pointer after \r, \n, etc.
Alan T. DeKok [Mon, 9 Mar 2026 00:34:42 +0000 (20:34 -0400)] 
increment pointer after \r, \n, etc.

4 months agocopy va_list instead of re-using it,and other cleanups
Alan T. DeKok [Mon, 9 Mar 2026 00:32:47 +0000 (20:32 -0400)] 
copy va_list instead of re-using it,and other cleanups

4 months agocheck each individual entry, not only the first one
Alan T. DeKok [Mon, 9 Mar 2026 00:32:18 +0000 (20:32 -0400)] 
check each individual entry, not only the first one

4 months agofree on error
Alan T. DeKok [Mon, 9 Mar 2026 00:26:15 +0000 (20:26 -0400)] 
free on error

4 months agofix typos
Alan T. DeKok [Mon, 9 Mar 2026 00:21:46 +0000 (20:21 -0400)] 
fix typos

4 months agouse correct talloc type
Alan T. DeKok [Mon, 9 Mar 2026 00:11:48 +0000 (20:11 -0400)] 
use correct talloc type

4 months agofix minor issues in rlm_mschap
Alan T. DeKok [Mon, 9 Mar 2026 00:08:27 +0000 (20:08 -0400)] 
fix minor issues in rlm_mschap

4 months agouse distinct name per test
Alan T. DeKok [Mon, 9 Mar 2026 00:01:52 +0000 (20:01 -0400)] 
use distinct name per test

4 months agoremove auth_fail tests from Postgres until we determine why they fail
Alan T. DeKok [Sun, 8 Mar 2026 13:48:00 +0000 (09:48 -0400)] 
remove auth_fail tests from Postgres until we determine why they fail

the rows are inserted, but the SELECT returns no data

4 months agotweak lhs/rhs handling rules, and require well-formed strings
Alan T. DeKok [Sun, 8 Mar 2026 12:35:05 +0000 (08:35 -0400)] 
tweak lhs/rhs handling rules, and require well-formed strings

use different rules for local LHS / RHS, which ensures that
there's no aliasing, and that the local rules updates don't
mangle each other.  There were corner cases where the LHS rules
would get over-written in the tmpl_needs_resolving() condition
near the end of the file.

Complain if quoted strings on the RHS aren't well formed.
Add a test for this case, too

4 months agouse correct talloc hierarchy, and clean up more on error
Alan T. DeKok [Sun, 8 Mar 2026 12:33:07 +0000 (08:33 -0400)] 
use correct talloc hierarchy, and clean up more on error

4 months agominor fixes to map.c
Alan T. DeKok [Sat, 7 Mar 2026 22:40:38 +0000 (17:40 -0500)] 
minor fixes to map.c

remove unused variables, tweak cleanup paths to always clean up
intermediate lists.

4 months agominor tweaks to connection handling
Alan T. DeKok [Sat, 7 Mar 2026 18:39:34 +0000 (13:39 -0500)] 
minor tweaks to connection handling

conn->shutdown may not exist, and other small changes for
consistency

4 months agouse vb_foo instead of datum.foo
Alan T. DeKok [Sat, 7 Mar 2026 15:35:28 +0000 (10:35 -0500)] 
use vb_foo instead of datum.foo

and update comments to note that '%l' and '%c' are NOT dates,
but instead integers.  If they were of type 'date', then they
would be printed as dates, and not as integers.

4 months agouse MEM in more places, and free buffers on error
Alan T. DeKok [Sat, 7 Mar 2026 15:24:31 +0000 (10:24 -0500)] 
use MEM in more places, and free buffers on error

4 months agovarious minor bug fixes in compile.c
Alan T. DeKok [Sat, 7 Mar 2026 14:48:06 +0000 (09:48 -0500)] 
various minor bug fixes in compile.c

4 months agovarious bug fixes for corner cases in rlm_isc_dhcp
Alan T. DeKok [Sat, 7 Mar 2026 14:28:22 +0000 (09:28 -0500)] 
various bug fixes for corner cases in rlm_isc_dhcp

4 months agocheck for invalid MS-CHAP attributes
Alan T. DeKok [Sat, 7 Mar 2026 14:19:03 +0000 (09:19 -0500)] 
check for invalid MS-CHAP attributes

4 months agozero out binding in destructure, before calling release
Alan T. DeKok [Sat, 7 Mar 2026 14:16:59 +0000 (09:16 -0500)] 
zero out binding in destructure, before calling release

which avoids a double free

4 months agoensure that frame->retry always has the same talloc parent
Alan T. DeKok [Sat, 7 Mar 2026 14:03:28 +0000 (09:03 -0500)] 
ensure that frame->retry always has the same talloc parent

4 months agovarious minor bug fixes in interpret.c
Alan T. DeKok [Sat, 7 Mar 2026 13:53:57 +0000 (08:53 -0500)] 
various minor bug fixes in interpret.c

4 months agomore tests for corner cases of TACACS+ encoder
Alan T. DeKok [Sat, 7 Mar 2026 13:23:34 +0000 (08:23 -0500)] 
more tests for corner cases of TACACS+ encoder

4 months agomore tests for corner cases of DHCPv4 encoder
Alan T. DeKok [Sat, 7 Mar 2026 13:00:02 +0000 (08:00 -0500)] 
more tests for corner cases of DHCPv4 encoder

4 months agomore tests for corner cases of DHCPv4 encoder
Alan T. DeKok [Sat, 7 Mar 2026 12:52:21 +0000 (07:52 -0500)] 
more tests for corner cases of DHCPv4 encoder

4 months agoremoved redundant free
Catalina Pineros [Fri, 6 Mar 2026 20:59:52 +0000 (15:59 -0500)] 
removed redundant free
fclose(f) also frees oc, so talloc_free(oc) is not necessary
(lib/util/fopencookie: fix double-free of cookie in fseek error path 159)

4 months agoreturn code (-1) when invalid data type
Catalina Pineros [Fri, 6 Mar 2026 20:12:41 +0000 (15:12 -0500)] 
return code (-1) when invalid data type
(value.c: fr_value_box_ipaddr_from_network returns 0 instead of -1 for invalid type 302)

4 months agofixed double-counting, when updating source and destination statistics
Catalina Pineros [Fri, 6 Mar 2026 18:44:41 +0000 (13:44 -0500)] 
fixed double-counting, when updating source and destination statistics
code was updating both stat[src_code] and stat[dst_code], once when updating source statistics and once again when updating destination statistics.
(rlm_stats: per-IP stats double-count both src_code and dst_code 229)

4 months agoremove impossible assert
Catalina Pineros [Fri, 6 Mar 2026 17:16:23 +0000 (12:16 -0500)] 
remove impossible assert
ret == RD_KAFKA_CONF_UNKNOWN already checked in previous if statement that returns value 0. so assert is redundant, always fails, and also prevents cf_log_err() from printing error message
(lib/kafka: remove impossible assertion in kafka_topic_config_dflt 106)

4 months agoreturn code (-1) when out of memory
Catalina Pineros [Fri, 6 Mar 2026 14:41:19 +0000 (09:41 -0500)] 
return code (-1) when out of memory
(proto_dhcpv4/v6_udp.c: return 0 instead of -1 on talloc_zero failure in mod_instantiate 305)

4 months agomore tests for corner cases of RADIUS encoder
Alan T. DeKok [Sat, 7 Mar 2026 12:30:09 +0000 (07:30 -0500)] 
more tests for corner cases of RADIUS encoder

4 months agouse correct size for poisoned region
Alan T. DeKok [Fri, 6 Mar 2026 20:45:10 +0000 (15:45 -0500)] 
use correct size for poisoned region

instead of relying on "slen", which is then over-written before
un-poisoning the region.

5 months agoclean up and tweak substr tests
Alan T. DeKok [Fri, 6 Mar 2026 17:18:18 +0000 (12:18 -0500)] 
clean up and tweak substr tests

5 months agomore corner cases for internal encoder / decoder
Alan T. DeKok [Fri, 6 Mar 2026 17:11:41 +0000 (12:11 -0500)] 
more corner cases for internal encoder / decoder

5 months agomore corner cases for DER
Alan T. DeKok [Fri, 6 Mar 2026 16:14:38 +0000 (11:14 -0500)] 
more corner cases for DER

5 months agomore corner cases for TACACS+
Alan T. DeKok [Fri, 6 Mar 2026 15:34:56 +0000 (10:34 -0500)] 
more corner cases for TACACS+

5 months agoadd corner cases / error tests for DHCPv6
Alan T. DeKok [Fri, 6 Mar 2026 15:11:42 +0000 (10:11 -0500)] 
add corner cases / error tests for DHCPv6

5 months agomore tests for dhcpv4
Alan T. DeKok [Fri, 6 Mar 2026 04:08:49 +0000 (23:08 -0500)] 
more tests for dhcpv4

5 months agomore corner cases for RADIUS
Alan T. DeKok [Fri, 6 Mar 2026 04:00:59 +0000 (23:00 -0500)] 
more corner cases for RADIUS

5 months agoadd more tests for error cases and bad packets
Alan T. DeKok [Fri, 6 Mar 2026 03:54:46 +0000 (22:54 -0500)] 
add more tests for error cases and bad packets

5 months agoadd tests for more corner cases
Alan T. DeKok [Fri, 6 Mar 2026 03:43:14 +0000 (22:43 -0500)] 
add tests for more corner cases

5 months agodisallow empty input files
Alan T. DeKok [Fri, 6 Mar 2026 03:27:21 +0000 (22:27 -0500)] 
disallow empty input files

while it can be nice to do nothing, it's best to do something.

5 months agoreturn on error
Alan T. DeKok [Fri, 6 Mar 2026 03:20:44 +0000 (22:20 -0500)] 
return on error

5 months agorhel: Disable dwz (dwarf compression), so we get debuginfo usable with lldb
Arran Cudbard-Bell [Fri, 6 Mar 2026 04:29:28 +0000 (20:29 -0800)] 
rhel: Disable dwz (dwarf compression), so we get debuginfo usable with lldb

5 months agodocker: Copy GPG key from the build phase to reduce spurious failures
Arran Cudbard-Bell [Fri, 6 Mar 2026 01:56:15 +0000 (17:56 -0800)] 
docker: Copy GPG key from the build phase to reduce spurious failures

5 months agocount offers, not replies
Alan T. DeKok [Fri, 6 Mar 2026 01:25:43 +0000 (20:25 -0500)] 
count offers, not replies

5 months agocheck for end pointer, too
Alan T. DeKok [Fri, 6 Mar 2026 01:25:01 +0000 (20:25 -0500)] 
check for end pointer, too

5 months agoreturn on OOM
Alan T. DeKok [Fri, 6 Mar 2026 01:21:56 +0000 (20:21 -0500)] 
return on OOM

5 months agoupdate macro
Alan T. DeKok [Fri, 6 Mar 2026 01:18:16 +0000 (20:18 -0500)] 
update macro

5 months agoremove unused file
Alan T. DeKok [Fri, 6 Mar 2026 01:16:14 +0000 (20:16 -0500)] 
remove unused file

5 months agouse same code as previous check
Alan T. DeKok [Fri, 6 Mar 2026 01:14:58 +0000 (20:14 -0500)] 
use same code as previous check

this should really be abstracted into a common function

5 months agofree on OOM
Alan T. DeKok [Fri, 6 Mar 2026 01:13:09 +0000 (20:13 -0500)] 
free on OOM

5 months agocheck for failure when adding chain cert
Alan T. DeKok [Fri, 6 Mar 2026 01:08:54 +0000 (20:08 -0500)] 
check for failure when adding chain cert

5 months agoclose pipe after ferror() call
Alan T. DeKok [Fri, 6 Mar 2026 01:08:03 +0000 (20:08 -0500)] 
close pipe after ferror() call

5 months agoone more fix
Alan T. DeKok [Fri, 6 Mar 2026 01:04:36 +0000 (20:04 -0500)] 
one more fix

5 months agoFix debuginfo in RPM builds
Arran Cudbard-Bell [Fri, 6 Mar 2026 01:02:58 +0000 (17:02 -0800)] 
Fix debuginfo in RPM builds

Always built with -g3 no matter if it's a developer build or not, otherwise state machine issues become impossible to debug.

5 months agodon't use "index" as a variable name, it's a C library function
Alan T. DeKok [Fri, 6 Mar 2026 00:48:30 +0000 (19:48 -0500)] 
don't use "index" as a variable name, it's a C library function

the compilers aren't smart enough to notice this and complain.

5 months agotypo
Catalina Pineros [Thu, 5 Mar 2026 20:42:28 +0000 (15:42 -0500)] 
typo
(rlm_python: fix wrong variable 'index' in py_freeradius_build_parents error message 341)

5 months agorlm_sql_firebird: fix free() on talloc-allocated memory in fb_free_sqlda()
junirod [Tue, 24 Feb 2026 07:41:41 +0000 (07:41 +0000)] 
rlm_sql_firebird: fix free() on talloc-allocated memory in fb_free_sqlda()

5 months agoreturn after error, initialize var
Catalina Pineros [Thu, 5 Mar 2026 18:55:36 +0000 (13:55 -0500)] 
return after error, initialize var
(command.c: fix missing return false and uninitialized child_done 148)

5 months agoreturn after error, deallocate variable
Catalina Pineros [Thu, 5 Mar 2026 17:32:03 +0000 (12:32 -0500)] 
return after error, deallocate variable
(rlm_sql_unixodbc: fix missing return after connection failure and ind memory leak 412)

5 months agoreturn code (-1) when parse failure
Catalina Pineros [Thu, 5 Mar 2026 17:00:39 +0000 (12:00 -0500)] 
return code (-1) when parse failure
(map_to_vp: returns success (rcode=0) on fr_pair_value_from_str failure 239)

5 months agotypo
Catalina Pineros [Thu, 5 Mar 2026 16:41:04 +0000 (11:41 -0500)] 
typo
(lib/kafka: fix auto_commit property name typo (enable_auto.commit -> enable.auto.commit) 107)

5 months agoadd missing 'usage()' for consistency
Catalina Pineros [Thu, 5 Mar 2026 15:55:30 +0000 (10:55 -0500)] 
add missing 'usage()' for consistency
(rlm_redis_ippool_tool: add missing usage() call after invalid prefix error 353)

5 months agoallow queries to proceed in CONNECTING or CONNECTED states
Alan T. DeKok [Thu, 5 Mar 2026 13:31:32 +0000 (08:31 -0500)] 
allow queries to proceed in CONNECTING or CONNECTED states

instead of checking for a failure state, and missing some
failure states

5 months agouse consistent names
Alan T. DeKok [Thu, 5 Mar 2026 13:29:19 +0000 (08:29 -0500)] 
use consistent names

'conn' is the #fr_connection_t

'c' is the DB connection handle

5 months agoMAX is last valid plus one
Alan T. DeKok [Thu, 5 Mar 2026 13:09:55 +0000 (08:09 -0500)] 
MAX is last valid plus one

5 months agovarious bug fixes and tweaks to the tests
Alan T. DeKok [Thu, 5 Mar 2026 13:02:32 +0000 (08:02 -0500)] 
various bug fixes and tweaks to the tests

5 months agoclean up FDs and PID in all situations
Alan T. DeKok [Thu, 5 Mar 2026 12:52:42 +0000 (07:52 -0500)] 
clean up FDs and PID in all situations

and don't complain on cleanup if the program exited cleanly.

5 months agotypo
Alan T. DeKok [Thu, 5 Mar 2026 12:32:44 +0000 (07:32 -0500)] 
typo

5 months agouse better dlist functions, which means less code
Alan T. DeKok [Thu, 5 Mar 2026 12:24:08 +0000 (07:24 -0500)] 
use better dlist functions, which means less code

5 months agoarguably functions calling talloc_free() should return int
Alan T. DeKok [Thu, 5 Mar 2026 12:11:33 +0000 (07:11 -0500)] 
arguably functions calling talloc_free() should return int

and the callers should check the return code

5 months agotypo in doxygen
Alan T. DeKok [Thu, 5 Mar 2026 12:08:50 +0000 (07:08 -0500)] 
typo in doxygen

5 months agouse fr_dlist_talloc_free() instead of hand-rolled loop
Alan T. DeKok [Thu, 5 Mar 2026 12:05:08 +0000 (07:05 -0500)] 
use fr_dlist_talloc_free() instead of hand-rolled loop

5 months agojust use pop_head(), which is a bit clearer
Alan T. DeKok [Thu, 5 Mar 2026 12:04:39 +0000 (07:04 -0500)] 
just use pop_head(), which is a bit clearer

5 months agotypo
Alan T. DeKok [Thu, 5 Mar 2026 11:57:57 +0000 (06:57 -0500)] 
typo

5 months agouse value-box escaping function.
Alan T. DeKok [Wed, 4 Mar 2026 22:31:58 +0000 (17:31 -0500)] 
use value-box escaping function.