]>
git.ipfire.org Git - thirdparty/freeradius-server.git/log
Arran Cudbard-Bell [Thu, 3 Jun 2021 21:06:57 +0000 (16:06 -0500)]
Don't automatically make the frame repeatable on yield
This allows modules to push things onto the stack and remove themselves from the return path.
...also clear the repeatable flag before calling the process function. This lets modules set resume functions, that'll always be called, no matter what the unlang action.
Arran Cudbard-Bell [Thu, 3 Jun 2021 21:02:35 +0000 (16:02 -0500)]
safe_lock and safe_unlock should always be inlined
we probably want to lock the signal functions too, there's no reason to suspect they're any more thread safe...
Arran Cudbard-Bell [Thu, 3 Jun 2021 18:41:34 +0000 (13:41 -0500)]
Alter the process function to determine which xlat evaluation function gets called
Arran Cudbard-Bell [Thu, 3 Jun 2021 18:39:16 +0000 (13:39 -0500)]
Support combo types in fr_value_box_hton
Arran Cudbard-Bell [Thu, 3 Jun 2021 18:05:16 +0000 (13:05 -0500)]
Pretty much every keyword can yield
Nick Porter [Thu, 3 Jun 2021 17:13:21 +0000 (18:13 +0100)]
v4: Convert %(perl: ) to new xlat API (#4092)
* Define perl_vblist_to_av() to convert a value box list to a perl array
* Define perl_sv_to_vblist() for parsing perl values to value boxes
* Convert %(perl: ) to new xlat API
* Add simple test for %(perl: )
* Add tests for %(perl: ) passing arrays and returning arrays / hashes
* Correct perl calls to FR logging in example
* Improve perl xlat comments
* Add perl tests which access and manipulate attributes
* Improve documentation for rlm_perl
Arran Cudbard-Bell [Wed, 2 Jun 2021 00:23:38 +0000 (19:23 -0500)]
Formatting
Alan T. DeKok [Thu, 3 Jun 2021 13:14:42 +0000 (09:14 -0400)]
port TLS 1.3 fix from v3.0.x
Arran Cudbard-Bell [Tue, 1 Jun 2021 23:52:30 +0000 (18:52 -0500)]
Helps to terminate the right buffer
Arran Cudbard-Bell [Tue, 1 Jun 2021 23:27:23 +0000 (18:27 -0500)]
Always terminate the output buffer (even on zero length input)
Arran Cudbard-Bell [Tue, 1 Jun 2021 23:04:39 +0000 (18:04 -0500)]
Enable the msg callback?
Arran Cudbard-Bell [Tue, 1 Jun 2021 23:04:23 +0000 (18:04 -0500)]
Formatting
Arran Cudbard-Bell [Tue, 1 Jun 2021 23:04:05 +0000 (18:04 -0500)]
Correctly terminate the output buffer
Arran Cudbard-Bell [Tue, 1 Jun 2021 22:12:20 +0000 (17:12 -0500)]
More cleanups in SSL ctx code
Arran Cudbard-Bell [Tue, 1 Jun 2021 22:00:02 +0000 (17:00 -0500)]
More minor fixes
Arran Cudbard-Bell [Tue, 1 Jun 2021 21:52:05 +0000 (16:52 -0500)]
Cosmetic changes in TLS session debug output
Arran Cudbard-Bell [Tue, 1 Jun 2021 21:40:35 +0000 (16:40 -0500)]
Add better base64, base32, base16 support to util library
All functions have identical function signatures and work in the same way
Arran Cudbard-Bell [Tue, 1 Jun 2021 21:39:02 +0000 (16:39 -0500)]
Fix macro naming conflicts in md4.c and md5.c
Jorge Pereira [Tue, 1 Jun 2021 14:06:40 +0000 (11:06 -0300)]
tftp: Add decoder and encoder (#4051)
* :gear: tftp: Add TFTP dictionary
* :gear: tftp: Add the main attributes
* :gear: tftp: Add decode function
* :gear: tftp: Add decode test entrypoint
* :gear: tftp: Add encode function
* :gear: tftp: Add encode test entrypoint
* :gear: fuzzer: Add fuzzer for tftp protocol
* :gear: fuzzer: Add TFTP corpus files to git LFS
* :gear: tftp: Add tests for decode and encode
Nick Porter [Tue, 1 Jun 2021 13:45:04 +0000 (14:45 +0100)]
v4: Convert %{escape: } and %{unescape: } to new xlat API (#4088)
* Convert %{escape: } to new xlat API
* Convert %{unescape: } to new xlat API
* Add test for "unescape" handling = not followed by hex sequence
Nick Porter [Tue, 1 Jun 2021 10:33:38 +0000 (11:33 +0100)]
Add simple tests for exec module calls
Nick Porter [Tue, 1 Jun 2021 10:32:28 +0000 (11:32 +0100)]
rctx for exec calls should be fr_box_list_t *
Nick Porter [Tue, 1 Jun 2021 10:31:25 +0000 (11:31 +0100)]
Correct references to "input_pairs" for exec calls
James Jones [Mon, 31 May 2021 20:19:29 +0000 (15:19 -0500)]
Check for NULL comparison function for heaps at compile time (#4097)
Alan T. DeKok [Mon, 31 May 2021 15:17:08 +0000 (11:17 -0400)]
reorder for broken linkers
Nick Porter [Fri, 28 May 2021 13:54:33 +0000 (14:54 +0100)]
Amend test for PERSONAL_ACCESS_TOKEN so CI doesn't fail for non push devs (#4098)
Arran Cudbard-Bell [Wed, 26 May 2021 20:52:29 +0000 (22:52 +0200)]
Clean up comparators slightly
Nick Porter [Wed, 26 May 2021 15:46:40 +0000 (16:46 +0100)]
Update test certificates as old ones had expired
Nick Porter [Wed, 26 May 2021 15:45:59 +0000 (16:45 +0100)]
Re-instate Makefile for test certs
Nick Porter [Wed, 26 May 2021 15:45:37 +0000 (16:45 +0100)]
Make .crt certificates as part of client / server targets
Nick Porter [Wed, 19 May 2021 19:36:23 +0000 (20:36 +0100)]
Expand tests of %(unpack: )
Nick Porter [Wed, 19 May 2021 19:36:03 +0000 (20:36 +0100)]
Correct error in %(unpack: ) docs example
Nick Porter [Wed, 19 May 2021 16:02:00 +0000 (17:02 +0100)]
Update documentation for %(unpack: )
Nick Porter [Wed, 19 May 2021 15:53:04 +0000 (16:53 +0100)]
Update tests for new %(unpack: ) syntax
Nick Porter [Wed, 19 May 2021 15:52:37 +0000 (16:52 +0100)]
Convert %(unpack: ) to new xlat API
Nick Porter [Tue, 25 May 2021 14:58:54 +0000 (15:58 +0100)]
Small SQL schema typos (#4093)
Alan T. DeKok [Mon, 24 May 2021 12:09:21 +0000 (08:09 -0400)]
try to shut up clang scan
Alan T. DeKok [Mon, 24 May 2021 12:02:04 +0000 (08:02 -0400)]
don't return from void function
Alan T. DeKok [Mon, 24 May 2021 11:29:00 +0000 (07:29 -0400)]
check for NULL
Alan T. DeKok [Sun, 23 May 2021 20:40:37 +0000 (16:40 -0400)]
print quotes, too
Alan T. DeKok [Fri, 21 May 2021 16:23:12 +0000 (12:23 -0400)]
support nested maps
in map_afrom_substr(), and map_to_vp()
Alan T. DeKok [Fri, 21 May 2021 16:21:08 +0000 (12:21 -0400)]
print nested attributes correctly.
make fr_pair_list_log() more like log_request_pair_list()
Alan T. DeKok [Fri, 21 May 2021 13:56:48 +0000 (09:56 -0400)]
ensure that the map is parented by parent, not by ctx
Alan T. DeKok [Fri, 21 May 2021 13:27:13 +0000 (09:27 -0400)]
hoist T_OP_CMP_TRUE checks to earlier in the process
Alan T. DeKok [Fri, 21 May 2021 13:28:39 +0000 (09:28 -0400)]
enforce assumptions, in preparation for allowing nested maps
Alan T. DeKok [Fri, 21 May 2021 13:13:40 +0000 (09:13 -0400)]
typo
Arran Cudbard-Bell [Thu, 20 May 2021 21:08:18 +0000 (23:08 +0200)]
Initialise iterations?
Arran Cudbard-Bell [Thu, 20 May 2021 20:35:38 +0000 (22:35 +0200)]
Convert base64 code to work with dbuffs/sbuffs
Arran Cudbard-Bell [Thu, 20 May 2021 20:25:56 +0000 (22:25 +0200)]
Add fr_dbuff_advance_extend
This extends the dbuff if we couldn't satisfy the number of bytes requested
Nick Porter [Fri, 21 May 2021 13:05:48 +0000 (14:05 +0100)]
v4: Convert %(mschap: ) to new xlat API (#4082)
* Convert %(mschap: ) to new xlat API
* Add extra safety checks to %(mschap: ) attribute parsing
* Add tests for %(mschap: ) xlat
* Update docs for new syntax of %(mschap: )
* Update other code use of %(mschap: )
Jorge Pereira [Thu, 20 May 2021 17:58:47 +0000 (14:58 -0300)]
Dictionaries prefix are not longer used (#4089)
Nick Porter [Thu, 20 May 2021 17:45:00 +0000 (18:45 +0100)]
v4: Convert %{Foreach} to new xlat API (#4091)
* Convert %{Foreach...} to new xlat api
* Allow virtual attributes to use new xlat API
Arran Cudbard-Bell [Thu, 20 May 2021 15:02:52 +0000 (17:02 +0200)]
Add fr_is_base64_nstd
Alan T. DeKok [Thu, 20 May 2021 14:49:47 +0000 (10:49 -0400)]
fix issues on OSX
Arran Cudbard-Bell [Mon, 17 May 2021 17:01:12 +0000 (19:01 +0200)]
Allow for other b64 dictionaries
Alan T. DeKok [Thu, 20 May 2021 13:40:28 +0000 (09:40 -0400)]
work around horrible Apple bugs.
strftime() prints UTC for time zone.
strptime() accepts GMT, not UTC.
So... re-write the strings because OSX is stupid
Alan T. DeKok [Thu, 20 May 2021 12:49:51 +0000 (08:49 -0400)]
less repetition is very useful
Alan T. DeKok [Thu, 20 May 2021 10:58:39 +0000 (06:58 -0400)]
Updating Aruba dict with VSA used in Aruba C2C product #4086
Nick Porter [Wed, 19 May 2021 18:25:22 +0000 (19:25 +0100)]
v4: Convert %(date: ) to new xlat API (#4080)
* Convert %(date: ) to new xlat API
* Add tests for %(date: ) xlat
* Amend docs to match new %(date: ) syntax
Co-authored-by: Arran Cudbard-Bell <a.cudbardb@gmail.com>
Nick Porter [Wed, 19 May 2021 15:16:27 +0000 (16:16 +0100)]
v4: Convert %(idn: ) to new xlat API (#4083)
* Convert %{idn: } to new xlat API
* Add test for %{idn: } xlat
* Update docs for %{idn: } xlat
Nick Porter [Wed, 19 May 2021 14:14:35 +0000 (15:14 +0100)]
Fix paths in debian/freeradius.examples (#4085)
Alan T. DeKok [Wed, 19 May 2021 12:20:04 +0000 (08:20 -0400)]
fix paths
Alan T. DeKok [Tue, 18 May 2021 17:46:58 +0000 (13:46 -0400)]
"users" file doesn't use "&" for attribute names.
Which then lets us update map_afrom_substr() to look for rules
without "&", and then allow relative attribute references
Alan T. DeKok [Tue, 18 May 2021 17:28:49 +0000 (13:28 -0400)]
add parent to map_afrom_substr()
the other functions don't seem to need parents.
The next step is to support relative attributes, and make "parent"
a "map_t **", so that the parsing can walk back up (or down)
the map stack, in order to place the maps in the correct place
Alan T. DeKok [Tue, 18 May 2021 17:19:51 +0000 (13:19 -0400)]
add parent map to map_afrom_cs()
all of the public callers don't need to pass in a parent map,
so the public API doesn't need it. But we do need a parent
internally, so we have a private API which allows for that
Alan T. DeKok [Tue, 18 May 2021 17:15:26 +0000 (13:15 -0400)]
add parent map to map_afrom_cp()
this function is only called by map.c, so it could likely be
private to that file.
Alan T. DeKok [Tue, 18 May 2021 17:02:23 +0000 (13:02 -0400)]
add "parent" to map
and add provisions for using it in the allocation function
Arran Cudbard-Bell [Mon, 17 May 2021 15:41:48 +0000 (17:41 +0200)]
Clean up some dictionary printing functions
Alan T. DeKok [Mon, 17 May 2021 00:03:07 +0000 (20:03 -0400)]
typo
Alan T. DeKok [Mon, 17 May 2021 00:02:42 +0000 (20:02 -0400)]
minor cleanups for printing flags
Alan T. DeKok [Sun, 16 May 2021 23:50:18 +0000 (19:50 -0400)]
print out comma after subtype names
Alan T. DeKok [Sun, 16 May 2021 17:08:35 +0000 (13:08 -0400)]
note that names can be rewritten
Alan T. DeKok [Sat, 15 May 2021 16:22:11 +0000 (12:22 -0400)]
use new names
Alan T. DeKok [Sat, 15 May 2021 16:21:33 +0000 (12:21 -0400)]
we don't need Unisphere- prefixes
Alan T. DeKok [Sat, 15 May 2021 13:13:05 +0000 (09:13 -0400)]
move script files around
so that "scripts" contains (mostly) subdirectories, instead of
a random collection of actual scripts and subdirectories.
Most utility tools are now in scripts/util
Upgrade tools are in scripts/upgrade
Alan T. DeKok [Sat, 15 May 2021 13:07:29 +0000 (09:07 -0400)]
script to rewrite v3 names to v4 names
Alan T. DeKok [Sat, 15 May 2021 12:57:52 +0000 (08:57 -0400)]
this script is only used by developers
Alan T. DeKok [Fri, 14 May 2021 18:24:05 +0000 (14:24 -0400)]
we don't need two names for ERX attributes
Alan T. DeKok [Fri, 14 May 2021 15:10:36 +0000 (11:10 -0400)]
initialize variable
Terry Burton [Fri, 14 May 2021 15:03:45 +0000 (16:03 +0100)]
redhat: Correct location of radlock (#4078)
Alan T. DeKok [Fri, 14 May 2021 14:48:56 +0000 (10:48 -0400)]
allow for "export in dictionary form, too"
in preparation for some horrific scripts which will let us
convert v3 names to v4
Alan T. DeKok [Fri, 14 May 2021 14:42:05 +0000 (10:42 -0400)]
add fr_dict_export()
which (mostly) prints attributes out in the standard dictionary
form.
Alan T. DeKok [Fri, 14 May 2021 12:50:50 +0000 (08:50 -0400)]
comment all of it out by default
Alan T. DeKok [Fri, 14 May 2021 12:48:52 +0000 (08:48 -0400)]
rerun "make asciidoc"
Alan T. DeKok [Fri, 14 May 2021 12:28:56 +0000 (08:28 -0400)]
Add v3 compatibility names
Taken from v3 via an edited "radattr" in that branch:
rm -rf alias;mkdir alias;./build/make/jlibtool --mode=execute ./build/bin/radattr -D ./share/ -A | sort -n -k6 -k7 -k8 -k9 -k10 -k11 | gawk '{printf "%s\t%-40s\t%s\n", $1, $2, $3 >> "alias/alias." tolower($5) }'
"Nothing could be simpler".
Alan T. DeKok [Fri, 14 May 2021 12:28:36 +0000 (08:28 -0400)]
notes on v3 compatible names
Arran Cudbard-Bell [Thu, 13 May 2021 17:23:22 +0000 (19:23 +0200)]
Update 3gpp dictionary
Jorge Pereira [Thu, 13 May 2021 15:16:35 +0000 (12:16 -0300)]
Add new 'Class' column into post-auth / SQL schemas (#4071)
Alan T. DeKok [Thu, 13 May 2021 15:13:13 +0000 (11:13 -0400)]
cleanups and updates for new functionality
Nick Porter [Thu, 13 May 2021 14:25:09 +0000 (15:25 +0100)]
v4: Add prepend operator for inserting attributes at the beginning of lists (#3673)
* Add prepend operator ^=
To be used in attribute assignement to get the new attribute prepended
to the list
Beneficial in DHCP where the order of multiple instances of an attribute
is significant
* Add fr_dlist_move_head() to insert one list at the head of another
* Add fr_pair_list_prepend to insert one list at the head of another
* Add "prepend" functionality to radius_pairmove
radis_pairmove is used by rlm_files for adding attributes to the reply
list. This allows for syntax such as:
<match key>
<attribute> ^= <value>
which will insert <attribute> = <value> at the top of the reply list.
Intended for DHCP use where, for example, the sequence that search
domains are returned is significant.
* Allow parsing of ^= operator in config.
* Use fr_pair_list_prepend in map_to_request
* Add an operator parameter to fr_pair_list_move
If the passed in operator is T_OP_PREPEND then any added attributes are
prepended to the "to" list rather than appended.
Existing calls to fr_pair_list_move are updated to call with T_OP_ADD to
preserve existing behaviour.
* Add prepend handling for whole list copying
Allows for
update {
&reply: ^= &request
}
which would insert all entry from request at the beginning of reply
* Add test for prepend operator
* Allow prepend operator for CSV maps
* Add prepend operator tests to CSV and SQL maps
* Update documentation to include ^= operator
* Correct rlm_rest documentation to reflect code
* Test adding whole array in json map using both += and ^= operators
* Return different operators for rlm_rest module to process
* Check different operators are respected by rlm_rest
* Test use of prepend operator in json map from rest xlat
Jorge Pereira [Thu, 13 May 2021 13:59:05 +0000 (10:59 -0300)]
libkqueue: If available, print the version (#4069)
NotAProfessionalDeveloper [Thu, 13 May 2021 13:58:36 +0000 (15:58 +0200)]
spelling (#4075)
Arran Cudbard-Bell [Wed, 12 May 2021 21:43:31 +0000 (23:43 +0200)]
Explicitly mark up alias attributes, and resolve them automatically in more places
This allows us to alias groups
Arran Cudbard-Bell [Wed, 12 May 2021 21:41:13 +0000 (23:41 +0200)]
Auto-cast mac addresses
The larger issue here is that there's no opportunity to pass a cast hint into tmpl_afrom_substr, as when there's a cast hint we should skip all the auto-casting.
Arran Cudbard-Bell [Wed, 12 May 2021 21:40:15 +0000 (23:40 +0200)]
We only have trailing hexits if we got c1, but no c2
Arran Cudbard-Bell [Wed, 12 May 2021 19:45:48 +0000 (21:45 +0200)]
Manually list libasl2-modules-gssapi-mit as it's needed for kerberos to work with ldap (apparently)
Arran Cudbard-Bell [Tue, 11 May 2021 19:27:20 +0000 (21:27 +0200)]
Failure is unlikely...
Alan T. DeKok [Wed, 12 May 2021 20:21:01 +0000 (16:21 -0400)]
walk back up to rules parent when processing parent attr ref
so that things inside of "subrequest" can refer to the dictionary
used by the parent. This change doesn't solve all of the issues,
but it does address some of the more straightforward ones
Alan T. DeKok [Wed, 12 May 2021 12:52:51 +0000 (08:52 -0400)]
limited macro support for sheer simplicity
Alan T. DeKok [Tue, 11 May 2021 19:21:36 +0000 (15:21 -0400)]
follow refs for ALIASes and add tests for it