From: Alan T. DeKok Date: Fri, 6 Oct 2023 11:50:34 +0000 (-0400) Subject: more remove alternation X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8e900e4e6249da454a6ecf5413fc5da3cf9ea2ed;p=thirdparty%2Ffreeradius-server.git more remove alternation this time where the second argument is just a string, and not an attribute reference perl -p -i -e 's/%{%{([^%{}]+)}:-([^%{}]+)}/%{\&$1 || $2}/g' $(git grep -l ':-' raddb/) and then re-build the antora docs from the raddb sources --- diff --git a/doc/antora/modules/raddb/pages/mods-available/delay.adoc b/doc/antora/modules/raddb/pages/mods-available/delay.adoc index 33b40441fa..6cdf56a3cf 100644 --- a/doc/antora/modules/raddb/pages/mods-available/delay.adoc +++ b/doc/antora/modules/raddb/pages/mods-available/delay.adoc @@ -78,7 +78,7 @@ delay { # relative = no } delay delay_reject { - delay = "%{%{reply.FreeRADIUS-Response-Delay}:-1}" + delay = "%{&reply.FreeRADIUS-Response-Delay || 1}" relative = yes } ``` diff --git a/doc/antora/modules/raddb/pages/mods-available/linelog.adoc b/doc/antora/modules/raddb/pages/mods-available/linelog.adoc index cdea40763b..e5331c8665 100644 --- a/doc/antora/modules/raddb/pages/mods-available/linelog.adoc +++ b/doc/antora/modules/raddb/pages/mods-available/linelog.adoc @@ -349,7 +349,7 @@ Don't log anything for other `link:https://freeradius.org/rfc/rfc2866.html#Acct- linelog { # delimiter = "\n" format = "This is a log message for %{User-Name}" - reference = "messages.%{%{reply.Packet-Type}:-default}" + reference = "messages.%{&reply.Packet-Type || default}" messages { default = "Unknown packet type %{Packet-Type}" Access-Accept = "Sent accept: %{User-Name}" @@ -402,7 +402,7 @@ linelog log_accounting { filename = ${logdir}/linelog-accounting permissions = 0600 } - reference = "Accounting-Request.%{%{Acct-Status-Type}:-unknown}" + reference = "Accounting-Request.%{&Acct-Status-Type || unknown}" Accounting-Request { Start = "Connect: [%{User-Name}] (did %{Called-Station-Id} cli %{Calling-Station-Id} port %{NAS-Port} ip %{Framed-IP-Address})" Stop = "Disconnect: [%{User-Name}] (did %{Called-Station-Id} cli %{Calling-Station-Id} port %{NAS-Port} ip %{Framed-IP-Address}) %{Acct-Session-Time} seconds" diff --git a/doc/antora/modules/raddb/pages/mods-available/rediswho.adoc b/doc/antora/modules/raddb/pages/mods-available/rediswho.adoc index 54e99fe7a8..4ab8d4dc40 100644 --- a/doc/antora/modules/raddb/pages/mods-available/rediswho.adoc +++ b/doc/antora/modules/raddb/pages/mods-available/rediswho.adoc @@ -104,17 +104,17 @@ rediswho { trim_count = 15 expire_time = 86400 Start { - insert = "LPUSH %{User-Name} %l,%{Acct-Session-Id},%{&NAS-IP-Address || &NAS-IPv6-Address},%{Acct-Session-Time},%{Framed-IP-Address},%{%{Acct-Input-Gigawords}:-0},%{%{Acct-Output-Gigawords}:-0},%{%{Acct-Input-Octets}:-0},%{%{Acct-Output-Octets}:-0}" + insert = "LPUSH %{User-Name} %l,%{Acct-Session-Id},%{&NAS-IP-Address || &NAS-IPv6-Address},%{Acct-Session-Time},%{Framed-IP-Address},%{&Acct-Input-Gigawords || 0},%{&Acct-Output-Gigawords || 0},%{&Acct-Input-Octets || 0},%{&Acct-Output-Octets || 0}" trim = "LTRIM %{User-Name} 0 ${..trim_count}" expire = "EXPIRE %{User-Name} ${..expire_time}" } Interim-Update { - insert = "LPUSH %{User-Name} %l,%{Acct-Session-Id},%{&NAS-IP-Address || &NAS-IPv6-Address},%{Acct-Session-Time},%{Framed-IP-Address},%{%{Acct-Input-Gigawords}:-0},%{%{Acct-Output-Gigawords}:-0},%{%{Acct-Input-Octets}:-0},%{%{Acct-Output-Octets}:-0}" + insert = "LPUSH %{User-Name} %l,%{Acct-Session-Id},%{&NAS-IP-Address || &NAS-IPv6-Address},%{Acct-Session-Time},%{Framed-IP-Address},%{&Acct-Input-Gigawords || 0},%{&Acct-Output-Gigawords || 0},%{&Acct-Input-Octets || 0},%{&Acct-Output-Octets || 0}" trim = "LTRIM %{User-Name} 0 ${..trim_count}" expire = "EXPIRE %{User-Name} ${..expire_time}" } Stop { - insert = "LPUSH %{User-Name} %l,%{Acct-Session-Id},%{&NAS-IP-Address || &NAS-IPv6-Address},%{Acct-Session-Time},%{Framed-IP-Address},%{%{Acct-Input-Gigawords}:-0},%{%{Acct-Output-Gigawords}:-0},%{%{Acct-Input-Octets}:-0},%{%{Acct-Output-Octets}:-0}" + insert = "LPUSH %{User-Name} %l,%{Acct-Session-Id},%{&NAS-IP-Address || &NAS-IPv6-Address},%{Acct-Session-Time},%{Framed-IP-Address},%{&Acct-Input-Gigawords || 0},%{&Acct-Output-Gigawords || 0},%{&Acct-Input-Octets || 0},%{&Acct-Output-Octets || 0}" trim = "LTRIM %{User-Name} 0 ${..trim_count}" expire = "EXPIRE %{User-Name} ${..expire_time}" } diff --git a/raddb/mods-available/delay b/raddb/mods-available/delay index 7b6a052854..f951e2ffcb 100644 --- a/raddb/mods-available/delay +++ b/raddb/mods-available/delay @@ -77,6 +77,6 @@ delay { # received. # delay delay_reject { - delay = "%{%{reply.FreeRADIUS-Response-Delay}:-1}" + delay = "%{&reply.FreeRADIUS-Response-Delay || 1}" relative = yes } diff --git a/raddb/mods-available/linelog b/raddb/mods-available/linelog index d123d9a563..81e89c1cca 100644 --- a/raddb/mods-available/linelog +++ b/raddb/mods-available/linelog @@ -66,7 +66,7 @@ linelog { # # May be an attribute reference, e.g. `&User-Name`, or `xlat`, `literal` or `exec`. # - reference = "messages.%{%{reply.Packet-Type}:-default}" + reference = "messages.%{&reply.Packet-Type || default}" # # messages { ... }:: @@ -392,7 +392,7 @@ linelog log_accounting { permissions = 0600 } - reference = "Accounting-Request.%{%{Acct-Status-Type}:-unknown}" + reference = "Accounting-Request.%{&Acct-Status-Type || unknown}" # # Example for `Accounting-Request`. diff --git a/raddb/mods-available/rediswho b/raddb/mods-available/rediswho index 6dc6c13657..8e0777eede 100644 --- a/raddb/mods-available/rediswho +++ b/raddb/mods-available/rediswho @@ -83,7 +83,7 @@ rediswho { # ### Start # Start { - insert = "LPUSH %{User-Name} %l,%{Acct-Session-Id},%{&NAS-IP-Address || &NAS-IPv6-Address},%{Acct-Session-Time},%{Framed-IP-Address},%{%{Acct-Input-Gigawords}:-0},%{%{Acct-Output-Gigawords}:-0},%{%{Acct-Input-Octets}:-0},%{%{Acct-Output-Octets}:-0}" + insert = "LPUSH %{User-Name} %l,%{Acct-Session-Id},%{&NAS-IP-Address || &NAS-IPv6-Address},%{Acct-Session-Time},%{Framed-IP-Address},%{&Acct-Input-Gigawords || 0},%{&Acct-Output-Gigawords || 0},%{&Acct-Input-Octets || 0},%{&Acct-Output-Octets || 0}" trim = "LTRIM %{User-Name} 0 ${..trim_count}" expire = "EXPIRE %{User-Name} ${..expire_time}" } @@ -92,7 +92,7 @@ rediswho { # ### Interim-Update # Interim-Update { - insert = "LPUSH %{User-Name} %l,%{Acct-Session-Id},%{&NAS-IP-Address || &NAS-IPv6-Address},%{Acct-Session-Time},%{Framed-IP-Address},%{%{Acct-Input-Gigawords}:-0},%{%{Acct-Output-Gigawords}:-0},%{%{Acct-Input-Octets}:-0},%{%{Acct-Output-Octets}:-0}" + insert = "LPUSH %{User-Name} %l,%{Acct-Session-Id},%{&NAS-IP-Address || &NAS-IPv6-Address},%{Acct-Session-Time},%{Framed-IP-Address},%{&Acct-Input-Gigawords || 0},%{&Acct-Output-Gigawords || 0},%{&Acct-Input-Octets || 0},%{&Acct-Output-Octets || 0}" trim = "LTRIM %{User-Name} 0 ${..trim_count}" expire = "EXPIRE %{User-Name} ${..expire_time}" } @@ -101,7 +101,7 @@ rediswho { # ### Stop # Stop { - insert = "LPUSH %{User-Name} %l,%{Acct-Session-Id},%{&NAS-IP-Address || &NAS-IPv6-Address},%{Acct-Session-Time},%{Framed-IP-Address},%{%{Acct-Input-Gigawords}:-0},%{%{Acct-Output-Gigawords}:-0},%{%{Acct-Input-Octets}:-0},%{%{Acct-Output-Octets}:-0}" + insert = "LPUSH %{User-Name} %l,%{Acct-Session-Id},%{&NAS-IP-Address || &NAS-IPv6-Address},%{Acct-Session-Time},%{Framed-IP-Address},%{&Acct-Input-Gigawords || 0},%{&Acct-Output-Gigawords || 0},%{&Acct-Input-Octets || 0},%{&Acct-Output-Octets || 0}" trim = "LTRIM %{User-Name} 0 ${..trim_count}" expire = "EXPIRE %{User-Name} ${..expire_time}" } diff --git a/raddb/mods-config/sql/main/mysql/extras/wimax/queries.conf b/raddb/mods-config/sql/main/mysql/extras/wimax/queries.conf index 47443bd772..ed902410dd 100644 --- a/raddb/mods-config/sql/main/mysql/extras/wimax/queries.conf +++ b/raddb/mods-config/sql/main/mysql/extras/wimax/queries.conf @@ -22,7 +22,7 @@ # Use Stripped-User-Name, if it's there. # Else use User-Name, if it's there, # Else use hard-coded string "DEFAULT" as the user name. -#sql_user_name = "%{%{Stripped-User-Name}:-%{%{User-Name}:-DEFAULT}}" +#sql_user_name = "%{%{Stripped-User-Name}:-%{&User-Name || DEFAULT}}" # sql_user_name = "%{User-Name}" @@ -37,4 +37,4 @@ postauth_query = "INSERT INTO wimax \ VALUES ( \ '%{User-Name}', '%S' \ '%{&reply.WiMAX.MN-hHA-MIP4-SPI || &reply.WiMAX.MN-hHA-MIP6-SPI}', \ - '%{&reply.WiMAX.MN-hHA-MIP4-Key || &reply.WiMAX.MN-hHA-MIP6-Key}', '%{%{reply.Session-Timeout}:-86400}' )" + '%{&reply.WiMAX.MN-hHA-MIP4-Key || &reply.WiMAX.MN-hHA-MIP6-Key}', '%{&reply.Session-Timeout || 86400}' )" diff --git a/raddb/mods-config/sql/main/postgresql/queries.conf b/raddb/mods-config/sql/main/postgresql/queries.conf index 1344d017ea..c8cfad6b30 100644 --- a/raddb/mods-config/sql/main/postgresql/queries.conf +++ b/raddb/mods-config/sql/main/postgresql/queries.conf @@ -247,7 +247,7 @@ accounting { AcctStopTime = ${....event_timestamp}, \ AcctUpdateTime = ${....event_timestamp}, \ AcctSessionTime = (${....event_timestamp_epoch} - EXTRACT(EPOCH FROM(AcctStartTime))), \ - AcctTerminateCause = '%{%{Acct-Terminate-Cause}:-NAS-Reboot}', \ + AcctTerminateCause = '%{&Acct-Terminate-Cause || NAS-Reboot}', \ Class = '%{Class}' \ WHERE AcctStopTime IS NULL \ AND NASIPAddress= '%{&NAS-IPv6-Address || &NAS-IP-Address}' \ @@ -353,7 +353,7 @@ accounting { FramedIPv6Prefix = NULLIF('%{Framed-IPv6-Prefix}', '')::inet, \ FramedInterfaceId = NULLIF('%{Framed-Interface-Id}', ''), \ DelegatedIPv6Prefix = NULLIF('%{Delegated-IPv6-Prefix}', '')::inet, \ - AcctSessionTime = %{%{Acct-Session-Time}:-NULL}, \ + AcctSessionTime = %{&Acct-Session-Time || NULL}, \ AcctInterval = (${....event_timestamp_epoch} - EXTRACT(EPOCH FROM (COALESCE(AcctUpdateTime, AcctStartTime)))), \ AcctUpdateTime = ${....event_timestamp}, \ AcctInputOctets = %{(((uint64) &Acct-Input-Gigawords) << 32) | (uint64) &Acct-Input-Octets}, \ @@ -376,7 +376,7 @@ accounting { ${....event_timestamp}, \ ${....event_timestamp}, \ NULL, \ - %{%{Acct-Session-Time}:-NULL}, \ + %{&Acct-Session-Time || NULL}, \ '%{Acct-Authentic}', \ '%{Connect-Info}', \ NULL, \ @@ -403,7 +403,7 @@ accounting { SET \ AcctStopTime = ${....event_timestamp}, \ AcctUpdateTime = ${....event_timestamp}, \ - AcctSessionTime = COALESCE(%{%{Acct-Session-Time}:-NULL}, \ + AcctSessionTime = COALESCE(%{&Acct-Session-Time || NULL}, \ (${....event_timestamp_epoch} - EXTRACT(EPOCH FROM(AcctStartTime)))), \ AcctInputOctets = %{(((uint64) &Acct-Input-Gigawords) << 32) | (uint64) &Acct-Input-Octets}, \ AcctOutputOctets = %{(((uint64) &Acct-Output-Gigawords) << 32) | (uint64) &Acct-Output-Octets}, \ @@ -429,7 +429,7 @@ accounting { '%{&NAS-IPv6-Address || &NAS-IP-Address}', \ NULLIF('%{&NAS-Port-ID || &NAS-Port}', ''), \ '%{NAS-Port-Type}', \ - TO_TIMESTAMP(${....event_timestamp_epoch} - %{%{Acct-Session-Time}:-0}), \ + TO_TIMESTAMP(${....event_timestamp_epoch} - %{&Acct-Session-Time || 0}), \ ${....event_timestamp}, \ ${....event_timestamp}, \ NULLIF('%{Acct-Session-Time}', '')::bigint, \ @@ -458,7 +458,7 @@ accounting { SET \ AcctStopTime = ${....event_timestamp}, \ AcctUpdateTime = ${....event_timestamp}, \ - AcctSessionTime = COALESCE(%{%{Acct-Session-Time}:-NULL}, \ + AcctSessionTime = COALESCE(%{&Acct-Session-Time || NULL}, \ (${....event_timestamp_epoch} - EXTRACT(EPOCH FROM(AcctStartTime)))), \ AcctInputOctets = (%{(((uint64) &Acct-Input-Gigawords) << 32) | (uint64) &Acct-Input-Octets})::bigint, \ AcctOutputOctets = (%{(((uint64) &Acct-Output-Gigawords) << 32) | (uint64) &Acct-Output-Octets})::bigint, \ diff --git a/raddb/mods-config/sql/main/sqlite/queries.conf b/raddb/mods-config/sql/main/sqlite/queries.conf index 11aaa4fda0..1afd1d3200 100644 --- a/raddb/mods-config/sql/main/sqlite/queries.conf +++ b/raddb/mods-config/sql/main/sqlite/queries.conf @@ -22,7 +22,7 @@ # Use Stripped-User-Name, if it's there. # Else use User-Name, if it's there, # Else use hard-coded string "DEFAULT" as the user name. -#sql_user_name = "%{%{Stripped-User-Name}:-%{%{User-Name}:-DEFAULT}}" +#sql_user_name = "%{%{Stripped-User-Name}:-%{&User-Name || DEFAULT}}" # sql_user_name = "%{User-Name}" @@ -345,15 +345,15 @@ accounting { '%{NAS-IP-Address}', \ '%{&NAS-Port-ID || &NAS-Port}', \ '%{NAS-Port-Type}', \ - (${....event_timestamp_epoch} - %{%{Acct-Session-Time}:-0}), \ + (${....event_timestamp_epoch} - %{&Acct-Session-Time || 0}), \ ${....event_timestamp}, \ NULL, \ - %{%{Acct-Session-Time}:-NULL}, \ + %{&Acct-Session-Time || NULL}, \ '%{Acct-Authentic}', \ '%{Connect-Info}', \ '', \ - %{%{Acct-Input-Gigawords}:-0} << 32 | %{%{Acct-Input-Octets}:-0}, \ - %{%{Acct-Output-Gigawords}:-0} << 32 | %{%{Acct-Output-Octets}:-0}, \ + %{&Acct-Input-Gigawords || 0} << 32 | %{&Acct-Input-Octets || 0}, \ + %{&Acct-Output-Gigawords || 0} << 32 | %{&Acct-Output-Octets || 0}, \ '%{Called-Station-Id}', \ '%{Calling-Station-Id}', \ '', \ @@ -374,7 +374,7 @@ accounting { query = "\ UPDATE ${....acct_table2} SET \ acctstoptime = ${....event_timestamp}, \ - acctsessiontime = %{%{Acct-Session-Time}:-NULL}, \ + acctsessiontime = %{&Acct-Session-Time || NULL}, \ acctinputoctets = %{(((uint64) &Acct-Input-Gigawords) << 32) | (uint64) &Acct-Input-Octets}, \ acctoutputoctets = %{(((uint64) &Acct-Output-Gigawords) << 32) | (uint64) &Acct-Output-Octets}, \ acctterminatecause = '%{Acct-Terminate-Cause}', \ @@ -397,10 +397,10 @@ accounting { '%{NAS-IP-Address}', \ '%{&NAS-Port-ID || &NAS-Port}', \ '%{NAS-Port-Type}', \ - (${....event_timestamp_epoch} - %{%{Acct-Session-Time}:-0}), \ + (${....event_timestamp_epoch} - %{&Acct-Session-Time || 0}), \ ${....event_timestamp}, \ ${....event_timestamp}, \ - %{%{Acct-Session-Time}:-NULL}, \ + %{&Acct-Session-Time || NULL}, \ '%{Acct-Authentic}', \ '', \ '%{Connect-Info}', \ diff --git a/raddb/policy.d/accounting b/raddb/policy.d/accounting index a52679ca54..6471da6f28 100644 --- a/raddb/policy.d/accounting +++ b/raddb/policy.d/accounting @@ -85,13 +85,13 @@ insert_acct_class { # acct_counters64.preacct { if (!&Acct-Input-Gigawords) { - &request.Acct-Input-Octets64 := "%{%{Acct-Input-Octets}:-0}" + &request.Acct-Input-Octets64 := "%{&Acct-Input-Octets || 0}" } else { &request.Acct-Input-Octets64 = (((uint64) &Acct-Input-Gigawords) << 32) | (uint64) &Acct-Input-Octets } if (!&Acct-Output-Gigawords) { - &request.Acct-Output-Octets64 := "%{%{Acct-Output-Octets}:-0}" + &request.Acct-Output-Octets64 := "%{&Acct-Output-Octets || 0}" } else { &request.Acct-Output-Octets64 = (((uint64) &Acct-Output-Gigawords) << 32) | (uint64) &Acct-Output-Octets