]> git.ipfire.org Git - thirdparty/freeradius-server.git/log
thirdparty/freeradius-server.git
2 years agosign, etc. issues
Alan T. DeKok [Wed, 15 Mar 2023 02:07:48 +0000 (22:07 -0400)] 
sign, etc. issues

2 years agocheck auth-type lengths, too
Alan T. DeKok [Tue, 14 Mar 2023 21:40:57 +0000 (17:40 -0400)] 
check auth-type lengths, too

2 years agogo to admin-down on routing errors
Alan T. DeKok [Tue, 14 Mar 2023 21:28:28 +0000 (17:28 -0400)] 
go to admin-down on routing errors

2 years agowe don't need unlang_module_resume_t any more.
Alan T. DeKok [Tue, 14 Mar 2023 21:12:46 +0000 (17:12 -0400)] 
we don't need unlang_module_resume_t any more.

it's just a module method

perl -p -i -e 's/unlang_module_resume_t/module_method_t/g' $(git grep -l unlang_module_resume_t src/)

2 years agorun "send foo" through unlang
Alan T. DeKok [Tue, 14 Mar 2023 21:09:29 +0000 (17:09 -0400)] 
run "send foo" through unlang

2 years agoprocess sending BFD packets
Alan T. DeKok [Tue, 14 Mar 2023 21:04:39 +0000 (17:04 -0400)] 
process sending BFD packets

where we don't have a request, but we do have a reply

2 years agosimple auth is 3 + password length
Alan T. DeKok [Tue, 14 Mar 2023 17:47:26 +0000 (13:47 -0400)] 
simple auth is 3 + password length

2 years agoAPI to allocate an io_track_t
Alan T. DeKok [Mon, 13 Mar 2023 18:28:17 +0000 (14:28 -0400)] 
API to allocate an io_track_t

for sending to the worker

2 years agoAPI to allow sending packets directly to the worker
Alan T. DeKok [Mon, 13 Mar 2023 18:29:09 +0000 (14:29 -0400)] 
API to allow sending packets directly to the worker

2 years agoclean up debug output
Alan T. DeKok [Mon, 13 Mar 2023 20:32:47 +0000 (16:32 -0400)] 
clean up debug output

use

BFD <self> peer <name> message

as we don't really care about IP addresses and ports

2 years agomove check for "already started" to function which manages it
Alan T. DeKok [Mon, 13 Mar 2023 20:31:23 +0000 (16:31 -0400)] 
move check for "already started" to function which manages it

2 years agoleave detection_time as not multiplied by detect_multi
Alan T. DeKok [Mon, 13 Mar 2023 20:30:56 +0000 (16:30 -0400)] 
leave detection_time as not multiplied by detect_multi

which makes some of the logic a little simpler

2 years agodon't restart polling if we're already polling
Alan T. DeKok [Mon, 13 Mar 2023 20:29:05 +0000 (16:29 -0400)] 
don't restart polling if we're already polling

2 years agoremove unnecessary checks for app_io decoder
Alan T. DeKok [Sun, 12 Mar 2023 01:49:03 +0000 (20:49 -0500)] 
remove unnecessary checks for app_io decoder

2 years agohoist common code to worker
Alan T. DeKok [Sun, 12 Mar 2023 01:43:04 +0000 (20:43 -0500)] 
hoist common code to worker

none of the app_io libraries currently have their own encode
functions.  So remove the duplicate code in each proto_foo which
checks for that.

Instead, hoist it to the worker, which prioritizes the app_io
over the app encode routine

2 years agodon't write data on RECV packet or STATE CHANGE
Alan T. DeKok [Sun, 12 Mar 2023 01:32:59 +0000 (20:32 -0500)] 
don't write data on RECV packet or STATE CHANGE

2 years agoallow for zero data in messages
Alan T. DeKok [Sun, 12 Mar 2023 01:09:46 +0000 (20:09 -0500)] 
allow for zero data in messages

2 years agoadd wrapper structure and update mod_read()
Alan T. DeKok [Sat, 11 Mar 2023 22:51:31 +0000 (17:51 -0500)] 
add wrapper structure and update mod_read()

so that we can signal the decoder and process code what kind of
packet we're getting:

* recv real packet, but no reply

* send real packet, but no request

* timeout state change

2 years agorearrange in preparation for punting packets to unlang
Alan T. DeKok [Sat, 11 Mar 2023 14:25:44 +0000 (09:25 -0500)] 
rearrange in preparation for punting packets to unlang

2 years agoRemove unused synchronous SASL code
Nick Porter [Tue, 14 Mar 2023 09:44:19 +0000 (09:44 +0000)] 
Remove unused synchronous SASL code

2 years agoCorrect creation of talloc pool for parsed mod_env
Nick Porter [Mon, 13 Mar 2023 08:27:05 +0000 (08:27 +0000)] 
Correct creation of talloc pool for parsed mod_env

2 years agofix for env_data
Alan T. DeKok [Sat, 11 Mar 2023 13:53:02 +0000 (08:53 -0500)] 
fix for env_data

2 years agouse the result of bfd_auth_simple()
Alan T. DeKok [Fri, 10 Mar 2023 22:16:40 +0000 (17:16 -0500)] 
use the result of bfd_auth_simple()

2 years agoupdate state machine as per RFC5080
Alan T. DeKok [Fri, 10 Mar 2023 17:30:49 +0000 (12:30 -0500)] 
update state machine as per RFC5080

with comments from the RFC

2 years agomove set of el / nr to proto_bfd_udp.c
Alan T. DeKok [Fri, 10 Mar 2023 15:42:44 +0000 (10:42 -0500)] 
move set of el / nr to proto_bfd_udp.c

in preparation for rework which allows packet injection

2 years agominor cleanups
Alan T. DeKok [Fri, 10 Mar 2023 15:38:54 +0000 (10:38 -0500)] 
minor cleanups

2 years agothis code is no longer necessary
Alan T. DeKok [Fri, 10 Mar 2023 15:24:36 +0000 (10:24 -0500)] 
this code is no longer necessary

all of the relevant work has been ported to the new framework.

2 years agoavoid a bounce through the event loop in fr_network_listen_inject()
Alan T. DeKok [Thu, 9 Mar 2023 23:21:21 +0000 (18:21 -0500)] 
avoid a bounce through the event loop in fr_network_listen_inject()

2 years agothere's no need for the injected packet to be writable
Alan T. DeKok [Fri, 10 Mar 2023 14:30:04 +0000 (09:30 -0500)] 
there's no need for the injected packet to be writable

2 years agoCorrect alloc_update and alloc_requested queries for sqlite
Nick Porter [Tue, 13 Apr 2021 08:59:09 +0000 (09:59 +0100)] 
Correct alloc_update and alloc_requested queries for sqlite

2 years agoExample use of per call module enviroment with rlm_files
Nick Porter [Fri, 3 Mar 2023 17:04:42 +0000 (17:04 +0000)] 
Example use of per call module enviroment with rlm_files

More work is needed in the module to make it fully protocol agnostic,
but this demostrates the use of the module environment to evaluate
tmpls per call and have the expanded tmpls be available before the
module is called.

2 years agoExpand module environment tmpls before calling module methods
Nick Porter [Fri, 3 Mar 2023 16:55:45 +0000 (16:55 +0000)] 
Expand module environment tmpls before calling module methods

2 years agoAdd module_env_value_parse() to parse tmpl expansions before module calls
Nick Porter [Fri, 3 Mar 2023 16:52:41 +0000 (16:52 +0000)] 
Add module_env_value_parse() to parse tmpl expansions before module calls

2 years agoAdd entries to unlang_frame_state_module_t to track tmpl expansion
Nick Porter [Fri, 3 Mar 2023 15:29:44 +0000 (15:29 +0000)] 
Add entries to unlang_frame_state_module_t to track tmpl expansion

2 years agoDefine helper macros for building module_env_t
Nick Porter [Fri, 3 Mar 2023 15:28:49 +0000 (15:28 +0000)] 
Define helper macros for building module_env_t

2 years agoNo need to get thread data if there is a forced return code
Nick Porter [Tue, 28 Feb 2023 15:37:57 +0000 (15:37 +0000)] 
No need to get thread data if there is a forced return code

2 years agoAdd env_data to module_ctx, unlang_module_event and unlang_frame_state_module
Nick Porter [Tue, 28 Feb 2023 11:05:22 +0000 (11:05 +0000)] 
Add env_data to module_ctx, unlang_module_event and unlang_frame_state_module

A pointer to the evaluated per-call environment data

2 years agoParse method_env when compiling modules
Nick Porter [Tue, 28 Feb 2023 10:44:03 +0000 (10:44 +0000)] 
Parse method_env when compiling modules

2 years agoDefine method_env_count()
Nick Porter [Tue, 7 Mar 2023 17:48:39 +0000 (17:48 +0000)] 
Define method_env_count()

2 years agoDefine method_env_parse()
Nick Porter [Tue, 28 Feb 2023 10:20:17 +0000 (10:20 +0000)] 
Define method_env_parse()

2 years agoUpdate module_rlm_by_name_and_method() to return method_env
Nick Porter [Tue, 28 Feb 2023 10:18:46 +0000 (10:18 +0000)] 
Update module_rlm_by_name_and_method() to return method_env

2 years agoDefine module_method_env_t and add to module_method_name_t
Nick Porter [Mon, 27 Feb 2023 15:59:20 +0000 (15:59 +0000)] 
Define module_method_env_t and add to module_method_name_t

Links lists of module_env_t with module methods and the data structures
which the evaluated tmpls will populate.

2 years agoDefine module_env_parsed_t to hold parsed module_env_t
Nick Porter [Mon, 27 Feb 2023 15:52:25 +0000 (15:52 +0000)] 
Define module_env_parsed_t to hold parsed module_env_t

2 years agoDefine module_env_t
Nick Porter [Mon, 27 Feb 2023 15:50:53 +0000 (15:50 +0000)] 
Define module_env_t

To hold rules for parsing config items into call specific tmpls.

2 years agoGet rid of unresolved explicit link request warning (#4925)
James Jones [Fri, 10 Mar 2023 16:53:51 +0000 (10:53 -0600)] 
Get rid of unresolved explicit link request warning (#4925)

It turns out that the link requests we use that work are to types,
values, and functions known at the time of the link request. This
doesn't work for not-yet-seen function parameters.

2 years agoFix typo in DHCPv4 schema
Arran Cudbard-Bell [Thu, 9 Mar 2023 22:55:21 +0000 (16:55 -0600)] 
Fix typo in DHCPv4 schema

2 years agoIt's OK to have multiple Framed-IPv6-Address attributes
Arran Cudbard-Bell [Thu, 9 Mar 2023 22:55:06 +0000 (16:55 -0600)] 
It's OK to have multiple Framed-IPv6-Address attributes

2 years agocall bfd_session_process() when receiving a packet
Alan T. DeKok [Thu, 9 Mar 2023 22:26:15 +0000 (17:26 -0500)] 
call bfd_session_process() when receiving a packet

for now, we run the unlang sections only when there's a state
change on receiving a packet.

We don't run unlang when receiving the continual "up" packets.

We don't run unlang when sending packets.

2 years agoerror message on auth failed
Alan T. DeKok [Thu, 9 Mar 2023 22:25:06 +0000 (17:25 -0500)] 
error message on auth failed

2 years agoRFC 5880 Section 6.8.3 says "seconds", not "usec"
Alan T. DeKok [Thu, 9 Mar 2023 22:23:17 +0000 (17:23 -0500)] 
RFC 5880 Section 6.8.3 says "seconds", not "usec"

2 years agoadd fr_bfd_packet_ok() and use it in proto_bfd_udp
Alan T. DeKok [Thu, 9 Mar 2023 22:11:46 +0000 (17:11 -0500)] 
add fr_bfd_packet_ok() and use it in proto_bfd_udp

2 years agoauthentication type updates
Alan T. DeKok [Thu, 9 Mar 2023 15:41:44 +0000 (10:41 -0500)] 
authentication type updates

implement simple auth type

enforce password length restrictions

2 years agoTurn off caller graph for strlcpy() (#4924)
James Jones [Thu, 9 Mar 2023 21:19:02 +0000 (15:19 -0600)] 
Turn off caller graph for strlcpy() (#4924)

We get the "missing" version of strlcpy() on Linux, which means
the other @hidecallergraph has to be in src/include/missing-h,
from which src/include/missing.h, which doxygen looks at, is
generated.

2 years agoAdd src/modules/rlm_ocsp/oscp.c to EXCLUDE (#4922)
James Jones [Thu, 9 Mar 2023 20:33:00 +0000 (14:33 -0600)] 
Add src/modules/rlm_ocsp/oscp.c to EXCLUDE (#4922)

That file currently isn't compiled, so there's no point in
having it in doxygen generated documentation.

2 years agoSkip the *call* graph (not caller) for xlat_init() (#4923)
James Jones [Thu, 9 Mar 2023 20:32:48 +0000 (14:32 -0600)] 
Skip the *call* graph (not caller) for xlat_init() (#4923)

2 years agoCorrect action name
Nick Porter [Thu, 9 Mar 2023 17:53:31 +0000 (17:53 +0000)] 
Correct action name

2 years agoTypo
Nick Porter [Thu, 9 Mar 2023 17:34:26 +0000 (17:34 +0000)] 
Typo

2 years agoRework documentation CI job 4921/head
Nick Porter [Thu, 9 Mar 2023 16:34:55 +0000 (16:34 +0000)] 
Rework documentation CI job

Split into two jobs, where the github publishing is only in the second.

2 years agoSimpler...
Arran Cudbard-Bell [Thu, 9 Mar 2023 15:30:19 +0000 (09:30 -0600)] 
Simpler...

2 years agoDon't leak memory
Nick Porter [Thu, 9 Mar 2023 11:41:34 +0000 (11:41 +0000)] 
Don't leak memory

2 years agoScheduled fuzzing: Update src/tests/fuzzer-corpus/dhcpv4.tar
github-actions[bot] [Thu, 9 Mar 2023 09:34:52 +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, 9 Mar 2023 09:34:49 +0000 (09:34 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/radius.tar

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

2 years agoScheduled fuzzing: Update src/tests/fuzzer-corpus/tftp.tar
github-actions[bot] [Thu, 9 Mar 2023 09:34:42 +0000 (09:34 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/tftp.tar

2 years agoScheduled fuzzing: Update src/tests/fuzzer-corpus/vmps.tar
github-actions[bot] [Thu, 9 Mar 2023 09:34:39 +0000 (09:34 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/vmps.tar

2 years agoScheduled fuzzing: Update src/tests/fuzzer-corpus/tacacs.tar
github-actions[bot] [Thu, 9 Mar 2023 09:34:37 +0000 (09:34 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/tacacs.tar

2 years agoScheduled fuzzing: Update src/tests/fuzzer-corpus/dns.tar
github-actions[bot] [Thu, 9 Mar 2023 09:34:34 +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, 9 Mar 2023 09:34:30 +0000 (09:34 +0000)] 
Scheduled fuzzing: Update src/tests/fuzzer-corpus/dhcpv6.tar

2 years agothere's no need to set inst->el
Alan T. DeKok [Wed, 8 Mar 2023 22:05:44 +0000 (17:05 -0500)] 
there's no need to set inst->el

2 years agomore secret checks
Alan T. DeKok [Wed, 8 Mar 2023 21:38:31 +0000 (16:38 -0500)] 
more secret checks

2 years agoonly set secret_len if there's a secret
Alan T. DeKok [Wed, 8 Mar 2023 21:14:00 +0000 (16:14 -0500)] 
only set secret_len if there's a secret

and secrets may be binary blobs

2 years agofinal changes to allow the state machine to compile.
Alan T. DeKok [Wed, 8 Mar 2023 20:27:09 +0000 (15:27 -0500)] 
final changes to allow the state machine to compile.

Next step is to plug it into the mod_read() functions, and then
figure out how to get triggers and "packets to send" over to the
process handler.

2 years agomore checks for bad BFD packets in the mod_read() function
Alan T. DeKok [Wed, 8 Mar 2023 19:37:47 +0000 (14:37 -0500)] 
more checks for bad BFD packets in the mod_read() function

2 years agoscripts to use gdb && lldb from the source tree
Alan T. DeKok [Tue, 7 Mar 2023 20:40:15 +0000 (15:40 -0500)] 
scripts to use gdb && lldb from the source tree

2 years agotodo note
Alan T. DeKok [Tue, 7 Mar 2023 20:25:10 +0000 (15:25 -0500)] 
todo note

2 years agoprint out source IP of received packet, too
Alan T. DeKok [Tue, 7 Mar 2023 20:23:36 +0000 (15:23 -0500)] 
print out source IP of received packet, too

2 years agoparse peer port, and actually send packets
Alan T. DeKok [Tue, 7 Mar 2023 20:05:22 +0000 (15:05 -0500)] 
parse peer port, and actually send packets

2 years agoauth_type handling
Alan T. DeKok [Tue, 7 Mar 2023 19:41:18 +0000 (14:41 -0500)] 
auth_type handling

parse it, verify it, verify the secret, and sign the packets

2 years agodefine table for auth-type names and values.
Alan T. DeKok [Tue, 7 Mar 2023 19:18:49 +0000 (14:18 -0500)] 
define table for auth-type names and values.

2 years agoadd "event list set" function fort BFD
Alan T. DeKok [Thu, 2 Mar 2023 22:37:08 +0000 (17:37 -0500)] 
add "event list set" function fort BFD

and use it to bootstrap the state machine.

2 years agoallow matching listeners based on peer src_ipaddr
Alan T. DeKok [Thu, 2 Mar 2023 22:33:03 +0000 (17:33 -0500)] 
allow matching listeners based on peer src_ipaddr

2 years agoensure that src_ipaddr is set
Alan T. DeKok [Thu, 2 Mar 2023 22:29:08 +0000 (17:29 -0500)] 
ensure that src_ipaddr is set

2 years agoAdd LDAP schema -> ldif script and sync schemas and LDIFs
Arran Cudbard-Bell [Wed, 8 Mar 2023 20:20:49 +0000 (14:20 -0600)] 
Add LDAP schema -> ldif script and sync schemas and LDIFs

2 years agoImmediately deschedule
Arran Cudbard-Bell [Wed, 8 Mar 2023 20:05:39 +0000 (14:05 -0600)] 
Immediately deschedule

2 years agoAdd radiusFramedIpv6Address
Arran Cudbard-Bell [Wed, 8 Mar 2023 20:02:31 +0000 (14:02 -0600)] 
Add radiusFramedIpv6Address

2 years agoAdd connection config section to sample imap module
Nick Porter [Wed, 8 Mar 2023 14:10:33 +0000 (14:10 +0000)] 
Add connection config section to sample imap module

2 years agoImprove rlm_imap tests
Nick Porter [Tue, 7 Mar 2023 14:59:39 +0000 (14:59 +0000)] 
Improve rlm_imap tests

2 years agoUse proper types for fr_value_box_t dlist structures
Nick Porter [Mon, 6 Mar 2023 10:44:47 +0000 (10:44 +0000)] 
Use proper types for fr_value_box_t dlist structures

2 years agoAdd macro to create friendly type names for dlist head / entry structures
Nick Porter [Wed, 8 Mar 2023 10:38:01 +0000 (10:38 +0000)] 
Add macro to create friendly type names for dlist head / entry structures

2 years agogo to Admin-Down on fail
Alan T. DeKok [Thu, 2 Mar 2023 21:52:38 +0000 (16:52 -0500)] 
go to Admin-Down on fail

2 years agoadd length=uint8 notes
Alan T. DeKok [Thu, 2 Mar 2023 21:27:27 +0000 (16:27 -0500)] 
add length=uint8 notes

2 years agomove more of the state machine into proto_bfd
Alan T. DeKok [Thu, 2 Mar 2023 21:27:11 +0000 (16:27 -0500)] 
move more of the state machine into proto_bfd

the state machine doesn't send or receive packets, but that will
gradually get fixed.

2 years agoBFD packets don't get replies
Alan T. DeKok [Thu, 2 Mar 2023 02:25:49 +0000 (21:25 -0500)] 
BFD packets don't get replies

they just cause us to change our state machine.

Any packets we originate get written.  Somehow...

2 years agomove client list to simple rbtree
Alan T. DeKok [Thu, 2 Mar 2023 02:06:37 +0000 (21:06 -0500)] 
move client list to simple rbtree

so that we can loop over it ourselves.

And because we can't have ip/mask for BFD.  The packets are
always sent to a particular IP

2 years agoset TTL socket option
Alan T. DeKok [Wed, 1 Mar 2023 22:57:07 +0000 (17:57 -0500)] 
set TTL socket option

2 years agodo bounds checks on fields
Alan T. DeKok [Wed, 1 Mar 2023 22:56:47 +0000 (17:56 -0500)] 
do bounds checks on fields

2 years agoAdd @param for extra in client_afrom_cs() (#4914)
James Jones [Thu, 2 Mar 2023 20:09:48 +0000 (14:09 -0600)] 
Add @param for extra in client_afrom_cs() (#4914)

2 years agodocs: Fix antora errors
Nick Porter [Wed, 1 Mar 2023 16:40:52 +0000 (16:40 +0000)] 
docs: Fix antora errors

2 years agodocs: Update logo for Doxygen site
Nick Porter [Wed, 1 Mar 2023 19:02:33 +0000 (19:02 +0000)] 
docs: Update logo for Doxygen site

2 years agothe main proto_bfd module allocates peers
Alan T. DeKok [Wed, 1 Mar 2023 22:28:54 +0000 (17:28 -0500)] 
the main proto_bfd module allocates peers