]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
more remove `raddb/...`
authorAlan T. DeKok <aland@freeradius.org>
Fri, 23 Jan 2026 23:35:19 +0000 (18:35 -0500)
committerAlan T. DeKok <aland@freeradius.org>
Fri, 23 Jan 2026 23:37:20 +0000 (18:37 -0500)
The various OS packages use /etc/freeradius/3.x for example, so
the "raddb" name is considerably out of date.

41 files changed:
doc/antora/modules/reference/pages/raddb/certs/index.adoc
doc/antora/modules/reference/pages/raddb/mods-available/client.adoc
doc/antora/modules/reference/pages/raddb/mods-available/cui.adoc
doc/antora/modules/reference/pages/raddb/mods-available/detail.adoc
doc/antora/modules/reference/pages/raddb/mods-available/detail.example.com.adoc
doc/antora/modules/reference/pages/raddb/mods-available/detail.log.adoc
doc/antora/modules/reference/pages/raddb/mods-available/eap.adoc
doc/antora/modules/reference/pages/raddb/mods-available/eap_inner.adoc
doc/antora/modules/reference/pages/raddb/mods-available/files.adoc
doc/antora/modules/reference/pages/raddb/mods-available/kv.adoc
doc/antora/modules/reference/pages/raddb/mods-available/ldap.adoc
doc/antora/modules/reference/pages/raddb/mods-available/perl.adoc
doc/antora/modules/reference/pages/raddb/mods-available/python.adoc
doc/antora/modules/reference/pages/raddb/mods-available/sqlcounter.adoc
doc/antora/modules/reference/pages/raddb/mods-available/sqlippool.adoc
doc/antora/modules/reference/pages/raddb/mods-available/unpack.adoc
doc/antora/modules/reference/pages/raddb/mods-available/wimax.adoc
doc/antora/modules/reference/pages/raddb/radiusd.conf.adoc
doc/antora/modules/reference/pages/raddb/radrelay.conf.adoc
doc/antora/modules/reference/pages/raddb/sites-available/bfd.adoc
doc/antora/modules/reference/pages/raddb/sites-available/bfd2.adoc
doc/antora/modules/reference/pages/raddb/sites-available/default.adoc
doc/antora/modules/reference/pages/raddb/sites-available/vmps.adoc
raddb/mods-available/client
raddb/mods-available/cui
raddb/mods-available/detail
raddb/mods-available/detail.example.com
raddb/mods-available/detail.log
raddb/mods-available/eap
raddb/mods-available/eap_inner
raddb/mods-available/files
raddb/mods-available/perl
raddb/mods-available/python
raddb/mods-available/sqlcounter
raddb/mods-available/sqlippool
raddb/mods-available/unpack
raddb/mods-available/wimax
raddb/radiusd.conf.in
raddb/radrelay.conf.in
raddb/sites-available/bfd
raddb/sites-available/vmps

index ba27a8466cfc9a25b086314d3ce344dc5d1cd643..a9710a6fe5678b7ce1b8637ffd37ca638287e179 100644 (file)
@@ -35,7 +35,7 @@ users, and to issue client certificates for `EAP-TLS`.
 If you already have CA and server certificates, rename (or delete) this
 directory, and create a new `certs` directory containing your
 certificates. Note that the `make install` command will NOT over-write
-your existing `raddb/certs` directory, which means that the
+your existing `certs` directory, which means that the
 `bootstrap` command will not be run.
 
 == New Installations
@@ -55,10 +55,10 @@ Then, follow the instructions below for creating real certificates.
 Once the final certificates have been created, you can delete the
 `bootstrap` command from this directory, and delete the
 `make_cert_command` configuration from the `tls` sub-section of
-`raddb/mods-available/eap`.
+`mods-available/eap`.
 
 If you do not want to enable EAP-TLS, PEAP, or EAP-TTLS, then delete the
-relevant sub-sections from the `raddb/mods-available/eap` file.
+relevant sub-sections from the `mods-available/eap` file.
 
 == Root Certificate
 
@@ -196,7 +196,7 @@ with ALL operating systems. Some common issues are:
   them, it will stop doing EAP. The most visible effect is that the client
   starts EAP, gets a few `Access-Challenge` packets, and then a little while
   later re-starts EAP. If this happens, see the FAQ, and the comments in
-  `raddb/mods-available/eap` for how to fix it.
+  `mods-available/eap` for how to fix it.
 
 * Windows requires the root certificates to be on the client PC. If it
   doesn’t have them, you will see the same issue as above.
index 69c8ad15778f68bf79f23c7d45d99587e50893f8..fe59830c23c41f4bd9e77464161ec7719d66cc86 100644 (file)
@@ -21,9 +21,9 @@ configuration.
 
 You must:
 
-1. Link `raddb/sites-enabled/dynamic_clients` to `raddb/sites-available/dynamic_clients`.
+1. Link `sites-enabled/dynamic_clients` to xref:reference:raddb/sites-available/dynamic_clients.adoc[sites-available/dynamic_clients].
 
-2. Define a client network/mask (see the top of `raddb/sites-enabled/dynamic_clients).
+2. Define a client network/mask (see the top of `sites-enabled/dynamic_clients).
 
 3. Uncomment the `directory` entry in that client definition.
 
@@ -34,7 +34,7 @@ The default example already does this.
 a normal client definition
 for a client with IP address `192.0.2.1`.
 
-NOTE: For more documentation, see the file `raddb/sites-available/dynamic-clients`
+NOTE: For more documentation, see the file xref:reference:raddb/sites-available/dynamic-clients.adoc[sites-available/dynamic-clients]
 
 
 
@@ -91,5 +91,5 @@ client {
 }
 ```
 
-// Copyright (C) 2025 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
+// Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index c7480b37847bdcc2123786c894d7fcb9f87dc16f..0486667ced4de7724c856746e7a5b60e4138b7c7 100644 (file)
@@ -9,8 +9,8 @@ The module `cui` (`link:https://freeradius.org/rfc/rfc6572.html#Chargeable-User-
 module to do the bulk of the work, but has custom schemas and
 queries.
 
-  * Schema is in `raddb/sql/cui/<DB>/schema.sql`
-  * Queries are in `raddb/sql/cui/<DB>/queries.conf`
+  * Schema is in `sql/cui/<DB>/schema.sql`
+  * Queries are in `sql/cui/<DB>/queries.conf`
 
 
 
@@ -105,5 +105,5 @@ sql cuisql {
 }
 ```
 
-// Copyright (C) 2025 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
+// Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 0964d06489ae51c545c5d8e67e658c3c19af5adf..6bd0faad0291ba002bdd554063451d48ab8372a9 100644 (file)
@@ -35,7 +35,7 @@ e.g.:
 This will create a new `detail` file for every hour.
 
 If you are reading detail files via the `listen { ... }` section
-(e.g. as in `raddb/sites-available/robust-proxy-accounting`),
+(e.g. as in xref:reference:raddb/sites-available/robust-proxy-accounting.adoc[sites-available/robust-proxy-accounting]),
 you MUST use a unique directory for each combination of a `detail`
 file writer, and reader.
 
@@ -129,5 +129,5 @@ detail {
 }
 ```
 
-// Copyright (C) 2025 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
+// Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index d384d9cde21f18c5315ef3b09da6aad35f61c3c0..7b04179de11ec6bee7936e154f58425beef6a8b3 100644 (file)
@@ -8,8 +8,8 @@ Please see the `detail` module for full documentation.
 
 Detail file writer, used in the following examples:
 
-  * `raddb/sites-available/robust-proxy-accounting`
-  * `raddb/sites-available/decoupled-accounting`
+  * xref:reference:raddb/sites-available/robust-proxy-accounting.adoc[sites-available/robust-proxy-accounting]
+  * xref:reference:raddb/sites-available/decoupled-accounting.adoc[sites-available/decoupled-accounting]
 
 NOTE: This module can write detail files that are read by
 only ONE `listen { ... }` section. If you use BOTH of the examples
@@ -39,5 +39,5 @@ detail detail.example.com {
 }
 ```
 
-// Copyright (C) 2025 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
+// Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index bddc2b1cc33efe6291477b128568c1af14d5a399..c26b41167849c894b8061f26cd227740066de12d 100644 (file)
@@ -21,7 +21,7 @@ instances of the `detail` module can be used to log the
 authentication requests to one or more files.
 
 NOTE: You will also need to un-comment the `auth_log` line in the
-`recv Access-Request` section of `raddb/sites-enabled/default`.
+`recv Access-Request` section of `sites-enabled/default`.
 
 
 
@@ -36,7 +36,7 @@ This module logs authentication reply packets sent to a NAS.
 Both `link:https://freeradius.org/rfc/rfc2865.html#Access-Accept[Access-Accept]` and `link:https://freeradius.org/rfc/rfc2865.html#Access-Reject[Access-Reject]` packets are logged.
 
 NOTE: You will also need to un-comment the 'reply_log' line in the
-`send Access-Accept` section of `raddb/sites-enabled/default`.
+`send Access-Accept` section of `sites-enabled/default`.
 
 
 
@@ -56,5 +56,5 @@ detail reply_log {
 }
 ```
 
-// Copyright (C) 2025 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
+// Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 461d7cb3169ad7671b34836d2ee6160908757357..676faca6a22fba308fceb54150df1c108156a118 100644 (file)
@@ -77,6 +77,11 @@ request will still end up being rejected.
 
 type:: Only EAP types listed below with a `type = <EAP-Type>` pair will be allowed.
 
+In addition, setting `type = md5` will load the configuration section `md5 { ... }`.
+There is no need to "comment out" the entire configuration section for EAP types
+which are not used.  Instead, simply comment out or delete the `type = ..` entry
+for that EAP method, and the entire configuration section will be ignored.
+
 If the `control.EAP-Type` attribute is set, then that is used to form the list of
 allowed EAP types, with the first instance being the default type and others also
 being allowed.
@@ -95,7 +100,6 @@ keys or WPA enterprise.
 
 
 
-
 ### EAP-PWD (Secure password-based authentication)
 
 In v4, the "known good" password is taken from the `request.control.Password.Cleartext` list,
@@ -138,14 +142,14 @@ the authentication itself.
 
 ## Common TLS configuration for TLS-based EAP types
 
-See `raddb/certs/index.adoc` for additional comments on certificates.
+See `certs/index.adoc` for additional comments on certificates.
 
 If OpenSSL was not found at the time the server was built, the `tls`,
 `ttls`, and `peap` sections will be ignored.
 
 If you do not currently have certificates signed by a trusted CA you
 may use the 'snakeoil' certificates. Included with the server in
-`raddb/certs`.
+`certs`.
 
 If these certificates have not been auto-generated:
 
@@ -1381,11 +1385,11 @@ eap {
 #      type = sim
        md5 {
        }
-#      pwd {
-#              group = 19
-#              server_id = theserver@example.com
-#              fragment_size = 1020
-#      }
+       pwd {
+               group = 19
+               server_id = theserver@example.com
+               fragment_size = 1020
+       }
        gtc {
 #              challenge = "Password: "
                auth_type = PAP
@@ -1482,5 +1486,5 @@ eap {
 }
 ```
 
-// Copyright (C) 2025 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
+// Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index cdc36b21f32db145ddaf80773da7d4ef1fa14fe5..ae112bd0735bd2dbb50b44ebc1a9d6a57c7b8592 100644 (file)
@@ -8,7 +8,7 @@ The `eap_inner` module provides a sample configuration for an `EAP`
 module that occurs *inside* of a tunneled method. It is used to limit
 the `EAP` types that can occur inside of the inner tunnel.
 
-See also `raddb/sites-available/inner-tunnel`
+See also xref:reference:raddb/sites-available/inner-tunnel.adoc[sites-available/inner-tunnel]
 
 See the `eap` module for full documentation on the meaning of these
 configuration entries.
@@ -174,5 +174,5 @@ eap inner-eap {
 }
 ```
 
-// Copyright (C) 2025 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
+// Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index a0a39d0ee7ea7d64633767acd913c7333140e2f9..f13158a3fdfb5cb42de8cee7ecace336166c2c44 100644 (file)
@@ -4,9 +4,9 @@
 
 = Files Module
 
-The `users` file as located in `raddb/mods-config/files/authorize`. (Livingston-style format).
+The `users` file as located in `mods-config/files/authorize`. (Livingston-style format).
 
-See the xref:reference:raddb/mods-config/files/users.adoc[users] file for information
+See the raddb/mods-config/files/users.adoc file for information
 on the format of the input file, and how it operates.
 
 
@@ -73,5 +73,5 @@ files files_accounting {
 }
 ```
 
-// Copyright (C) 2025 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
+// Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index b481dfa553d228f98bc3905d90502ab448990359..e2183a3fc46806df824247c5e103efb3372fad83 100644 (file)
@@ -74,6 +74,10 @@ The module will automatically choose a data structure based
 on the data type. It will be a hash table, rbtree or
 patricia trie store depending on the data type of the key.
 
+Any `key` which is passed to the `kv` functions
+(`%kv.write()`, `%kv.read()`, or `%kv.delete()`) must be
+the same data type as is given in `key_type`.
+
 
 
 max_entries:: Maximum entries allowed.
@@ -96,7 +100,7 @@ unused) key is deleted every time a new key is inserted.
 ```
 kv {
        key_type = string
-#      max_entries = 0
+#      max_entries = 1024
 }
 ```
 
index 479b86b8e5f3a79c52c54eaad560fbe473fc7b5a..73e9c5b0153417a31dd57fe2fe776c4b859a838e 100644 (file)
@@ -342,6 +342,10 @@ do not (e.g. mixed IPoE and PPPoE).
 
 
 
+dn_attribute:: Where to cache the user's DN for use in authentication.
+
+
+
 ### User membership checking
 
 
@@ -953,7 +957,6 @@ my_profile = 'cn=profile1,ou=profiles,dc=example,dc=com'
 %ldap.profile(my_profile)
 ----
 
-
 == Default Configuration
 
 ```
@@ -1002,6 +1005,7 @@ ldap {
 #              access_value_negate = 'false'
 #              access_value_suspend = 'suspended'
 #              expect_password = no
+#              dn_attribute = 'LDAP-UserDN'
        }
        group {
                base_dn = "${..base_dn}"
@@ -1106,5 +1110,5 @@ ldap {
 #}
 ```
 
-// Copyright (C) 2025 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
+// Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index a274f244386be44e41c36b2197a3c82df61270c8..dce52656cdece7dc1431950dd641cf65a97697f8 100644 (file)
@@ -6,7 +6,7 @@
 
 The `perl` module processes attributes through a Perl interpreter.
 
-  * Please see the `raddb/mods-config/perl/example.pl` sample.
+  * Please see the `mods-config/perl/example.pl` sample.
   * Please see http://www.perl.org/docs.html for more information about the
 Perl language.
 
@@ -144,5 +144,5 @@ perl {
 }
 ```
 
-// Copyright (C) 2025 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
+// Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index e28ce1610389db719163c5c5b23143d022667071..1553ff3a6fa2a68300053053e7825a113fcaba40 100644 (file)
@@ -37,7 +37,7 @@ items which control the Python path.
 
 [NOTE]
 ====
-See `raddb/global.d/python` for configuration items that affect the
+See `global.d/python` for configuration items that affect the
 python interpreter globally, such as the Python path.
 ====
 
@@ -105,5 +105,5 @@ python {
 }
 ```
 
-// Copyright (C) 2025 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
+// Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 05c827246f697e415ae4161d037d59920c3c81bf..b4e95aacdfbc4e5c44c614065dc43121fe321d57 100644 (file)
@@ -134,7 +134,7 @@ utc:: Use UTC for calculating the period start and end values.
 Set an account to expire T seconds after first login. Requires the `Expire-After`
 attribute to be set, in seconds.
 
-NOTE: You may need to edit `raddb/dictionary` to add the `Expire-After` attribute.
+NOTE: You may need to edit `dictionary` to add the `Expire-After` attribute.
 
 
 
@@ -196,5 +196,5 @@ sqlcounter expire_on_login {
 }
 ```
 
-// Copyright (C) 2025 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
+// Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index e3cba45c9948f9a8fac64ae99fdd22c807d93bbb..4ffcc9550390e8eb2355e67f41563e59bc2a2585 100644 (file)
@@ -6,12 +6,12 @@
 
 The module `sqlippool` provide configuration for the SQL based IP Pool module.
 
-NOTE: The database schemas are available at `raddb/sql/ippool/<DB>/schema.sql`.
+NOTE: The database schemas are available at `sql/ippool/<DB>/schema.sql`.
 
 ## Configuration Settings
 
 
-sql_module_instance:: SQL instance to use (from `raddb/mods-available/sql`)
+sql_module_instance:: SQL instance to use (from xref:reference:raddb/mods-available/sql.adoc[mods-available/sql])
 
 If you have multiple sql instances, such as `sql sql1 {...}`,
 use the *instance* name here: `sql1`.
@@ -152,5 +152,5 @@ sqlippool {
 }
 ```
 
-// Copyright (C) 2025 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
+// Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 637d3f1201093e678c0f1bbef7289e64a4c5a737..d6049647ba1aaa7d29f7fa01ef293c5c2ecb2720 100644 (file)
@@ -16,7 +16,7 @@ NOTE: The module is useful only for `xlat`.
 
 ## Syntax
 
-To use it, add it to the `raddb/mods-enabled/` directory.  Then,
+To use it, add it to the `mods-enabled/` directory.  Then,
 use it on the right-hand side of a variable assignment.
 
  %unpack(<data>, <offset>, <data_type>[, <repeat>])
@@ -67,5 +67,5 @@ unpack {
 }
 ```
 
-// Copyright (C) 2025 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
+// Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index a7ece606032dbce007b3239399c44b2f3236d845..55bbb12a13d8bd5ee22385eaff3e2a175e941f40 100644 (file)
@@ -137,7 +137,7 @@ attributes are NOT sent in the `link:https://freeradius.org/rfc/rfc2865.html#Acc
 
 By default, the EAP modules sends `MS-MPPE-*-Key` attributes.
 
-The default virtual server (`raddb/sites-available/default`)
+The default virtual server (xref:reference:raddb/sites-available/default.adoc[sites-available/default])
 contains examples of adding the `WiMAX-MSK`.
 
 This configuration option makes the WiMAX module delete
@@ -182,5 +182,5 @@ wimax {
 }
 ```
 
-// Copyright (C) 2025 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
+// Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 738f0f75629a32d462349a6afeb1b5208f27a186..1f46c38557195785e97f2a75b086572a573271ac 100644 (file)
@@ -689,7 +689,7 @@ All of the other configuration sections like:
 
 Have been moved to the the file:
 
-`raddb/sites-available/default`
+`sites-available/default`
 
 This is the `default` virtual server that has the same
 configuration as in version 1.0.x and 1.1.x.  The default
@@ -698,7 +698,7 @@ edit it to create policies for your local site.
 
 For more documentation on virtual servers, see:
 
-`raddb/sites-available/index.adoc`
+`sites-available/index.adoc`
 
 
 == Default Configuration
index 5a8d71fcba0e3f18c0839302fff3ea170b7f8eb8..97875ac8970e5102d0b73f422124a2631cd9f90c 100644 (file)
@@ -15,7 +15,7 @@ packets to a home server.  If you need it to do more than
 just replace `radrelay`, you will need to add additional
 configuration.
 
-See `raddb/sites-available/copy-acct-to-home-server` for a
+See `sites-available/copy-acct-to-home-server` for a
 more complete example.  That example is intended to be run
 as part of a larger RADIUS configuration, where the server
 also listens on ports 1812, etc.  The example given here
@@ -223,7 +223,7 @@ type::
 filename:: The filename here should be the same as the one used by the
 main `radiusd` program.
 
-It writes the file using the `detail` module (see `raddb/modules/detail`).
+It writes the file using the `detail` module (see `modules/detail`).
 
 
 
@@ -235,7 +235,7 @@ This section is called when the server receives an
 Accounting-Request packet (which will be from the
 "detail" reader above.
 
-See also `raddb/sites-available/copy-acct-to-home-server`
+See also `sites-available/copy-acct-to-home-server`
 for additional description.
 
 
index 16666f5fb4e292dacc8f22ee5c479196f7600e9f..26b1c68f4aad6809e8b7846ff85e3c942cb5a71f 100644 (file)
@@ -15,7 +15,7 @@ The code is in FreeRADIUS because we want to know if the *application*
 is running. It doesn't matter if the link is up, or if the host system
 is running. If the FreeRADIUS daemon is down, then we want to know ASAP.
 
-NOTE: See also `raddb/trigger.conf`.  There are BFD-specific triggers
+NOTE: See also `trigger.conf`.  There are BFD-specific triggers
 which are executed when the link is started, goes up, down, or is
 administratively down.
 
@@ -296,5 +296,5 @@ Sneak in more data after a BFD packet!
 ```
 ```
 
-// Copyright (C) 2025 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
+// Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 89d7f1425a7244cec5e207fbc28361f7561f2edd..68154c9af42a2e0ff0c3f014376a49f0018f64b1 100644 (file)
@@ -15,7 +15,7 @@ The code is in FreeRADIUS because we want to know if the *application*
 is running. It doesn't matter if the link is up, or if the host system
 is running. If the FreeRADIUS daemon is down, then we want to know ASAP.
 
-NOTE: See also `raddb/trigger.conf`.  There are BFD-specific triggers
+NOTE: See also `trigger.conf`.  There are BFD-specific triggers
 which are executed when the link is started, goes up, down, or is
 administratively down.
 
index 4c632185c7019a9b0567c15e8a561347df1962f5..e8fde7278fb5ea10b7fcdd59058469524ec94f98 100644 (file)
@@ -1752,41 +1752,29 @@ Filter attributes from the accounting response.
 
 ```
 
-## Timeouts
+## Finally
 
-A virtual server can have a `catch timeout` section.  The format and
-contents are the same as the normal `catch timeout`.
-
-This section limits the total processing time for a request.  The
-values given here should be less than `request.timeout`.
-
-When a request reaches `request.timeout`, it is forcibly stopped.
-No further processing takes place.
-
-When a request reaches the time specified in this `timeout` section,
-all normal processing is stopped.  The `timeout` section is then run.
-
-This configuration allows the server to take action when a request
-is taking too long.  For example, it could write a failure message
-to a log file.
-
-The `timeout` section can contain any `unlang` keyword, including
-`call`, and other `timeout` sections.  If you need to have a
-"timeout for the timeout", then just add anoither `timeout` section
-inside of this one.
-
-Note that `request.timeout` still applies.  So the timeout value
-given here should be less than the value given by
-`request.timeout`.
+If a `finally` section is defined, then all packets will be processed
+through it.
 
+This includes packets whose processing has been stopped due to reaching
+`request.timeout`.  Such packets can be detected by testing for the
+`timeout` rcode.
 
+The `finally` section can be used as a common logging section for
+all packets, allowing their final state to be captured.
 
 ```
-#      catch timeout {
-#              do_logging_here
-#              ...
+#finally {
+#      if (timeout) {
+#              logging relating to timeouts
+#              return
 #      }
+```
 
+```
+#      normal packet logging
+#}
 }
 ```
 
@@ -1795,5 +1783,5 @@ given here should be less than the value given by
 ```
 ```
 
-// Copyright (C) 2025 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
+// Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 193e04a449940a72c4b7b3302b8038b07739ebe5..34ffe614fb8c32fca389f5588ef5b4d1feb04ebb 100644 (file)
@@ -86,7 +86,7 @@ create one using other attributes.
 ```
                if (!MAC-Address) {
                        if (Ethernet-Frame =~ /0x.{12}(..)(..)(..)(..)(..)(..).*/) {
-                               request.MAC-Address = "%regex.match(1):%regex.match(2):%regex.match(3):%regex.match(4):%regex.match(5):%regex.match(6)"
+                               request.MAC-Address = "%{1}:%{2}:%{3}:%{4}:%{5}:%{6}"
                        }
                        else {
                                request.MAC-Address = Cookie
@@ -97,7 +97,7 @@ create one using other attributes.
 
 Do a simple mapping of MAC to VLAN.
 
-See `raddb/mods-available/mac2vlan` for the definition of the "mac2vlan"
+See xref:reference:raddb/mods-available/mac2vlan.adoc[mods-available/mac2vlan] for the definition of the "mac2vlan"
 module.
 
 ```
@@ -176,5 +176,5 @@ This section is called when not responding to packets.
 ```
 ```
 
-// Copyright (C) 2025 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
+// Copyright (C) 2026 Network RADIUS SAS.  Licenced under CC-by-NC 4.0.
 // This documentation was developed by Network RADIUS SAS.
index 3f64dbd845b4218a413dc6aa60f6681d4cbe0e10..8c59036bd0cf53fdb72d7a25dc38b146ccceb3ca 100644 (file)
@@ -24,9 +24,9 @@
 #
 #  You must:
 #
-#  1. Link `raddb/sites-enabled/dynamic_clients` to `raddb/sites-available/dynamic_clients`.
+#  1. Link `sites-enabled/dynamic_clients` to `sites-available/dynamic_clients`.
 #
-#  2. Define a client network/mask (see the top of `raddb/sites-enabled/dynamic_clients).
+#  2. Define a client network/mask (see the top of `sites-enabled/dynamic_clients).
 #
 #  3. Uncomment the `directory` entry in that client definition.
 #
@@ -37,7 +37,7 @@
 #  a normal client definition
 #  for a client with IP address `192.0.2.1`.
 #
-#  NOTE: For more documentation, see the file `raddb/sites-available/dynamic-clients`
+#  NOTE: For more documentation, see the file `sites-available/dynamic-clients`
 #
 
 #
index 60ba0ed06c1189d324d1480203d8594428b7cc61..1fdf7300330816ba212052527795de5f900a66f2 100644 (file)
@@ -12,8 +12,8 @@
 #  module to do the bulk of the work, but has custom schemas and
 #  queries.
 #
-#  * Schema is in `raddb/sql/cui/<DB>/schema.sql`
-#  * Queries are in `raddb/sql/cui/<DB>/queries.conf`
+#  * Schema is in `sql/cui/<DB>/schema.sql`
+#  * Queries are in `sql/cui/<DB>/queries.conf`
 #
 
 #
index 168b25c6da8c54920ff1d9f2233cbf8c9ab00b38..0ed8c4841febd92926aca32013e64363893f4efe 100644 (file)
@@ -39,7 +39,7 @@ detail {
        #  This will create a new `detail` file for every hour.
        #
        #  If you are reading detail files via the `listen { ... }` section
-       #  (e.g. as in `raddb/sites-available/robust-proxy-accounting`),
+       #  (e.g. as in `sites-available/robust-proxy-accounting`),
        #  you MUST use a unique directory for each combination of a `detail`
        #  file writer, and reader.
        #
index c9f2c4ac7d293419fad6b197926636f04ae5fdc9..dde53a299f06ed06da478e5c456431d338a3bfe4 100644 (file)
@@ -11,8 +11,8 @@
 #
 #  Detail file writer, used in the following examples:
 #
-#  * `raddb/sites-available/robust-proxy-accounting`
-#  * `raddb/sites-available/decoupled-accounting`
+#  * `sites-available/robust-proxy-accounting`
+#  * `sites-available/decoupled-accounting`
 #
 #  NOTE: This module can write detail files that are read by
 #  only ONE `listen { ... }` section. If you use BOTH of the examples
index 705120015b3994e715a4ad4a7d1b82490ecf6395..bb87370bd37b351252cd7e3afc0036fa91bdc180 100644 (file)
@@ -24,7 +24,7 @@
 #  authentication requests to one or more files.
 #
 #  NOTE: You will also need to un-comment the `auth_log` line in the
-#  `recv Access-Request` section of `raddb/sites-enabled/default`.
+#  `recv Access-Request` section of `sites-enabled/default`.
 #
 detail auth_log {
        filename = "${radacctdir}/%{Net.Src.IP}/auth-detail-%Y-%m-%d"
@@ -46,7 +46,7 @@ detail auth_log {
 #  Both `Access-Accept` and `Access-Reject` packets are logged.
 #
 #  NOTE: You will also need to un-comment the 'reply_log' line in the
-#  `send Access-Accept` section of `raddb/sites-enabled/default`.
+#  `send Access-Accept` section of `sites-enabled/default`.
 #
 detail reply_log {
        filename = "${radacctdir}/%{Net.Src.IP}/reply-detail-%Y-%m-%d"
index 7681610d9154ec1b312c456e0d3906aba29515e5..e429a8da3446190af0f890fbcfd52a41c0cf4849 100644 (file)
@@ -170,14 +170,14 @@ eap {
        #
        #  ## Common TLS configuration for TLS-based EAP types
        #
-       #  See `raddb/certs/index.adoc` for additional comments on certificates.
+       #  See `certs/index.adoc` for additional comments on certificates.
        #
        #  If OpenSSL was not found at the time the server was built, the `tls`,
        #  `ttls`, and `peap` sections will be ignored.
        #
        #  If you do not currently have certificates signed by a trusted CA you
        #  may use the 'snakeoil' certificates. Included with the server in
-       #  `raddb/certs`.
+       #  `certs`.
        #
        #  If these certificates have not been auto-generated:
        #
index c89d474862bc1521f5029a6084f6b828b0ded70b..ac0d17afe936f5b7414501f7c356764772b27227 100644 (file)
@@ -11,7 +11,7 @@
 #  module that occurs *inside* of a tunneled method. It is used to limit
 #  the `EAP` types that can occur inside of the inner tunnel.
 #
-#  See also `raddb/sites-available/inner-tunnel`
+#  See also `sites-available/inner-tunnel`
 #
 #  See the `eap` module for full documentation on the meaning of these
 #  configuration entries.
index 01bd78759c01304b7b675b2a6c94028392901ae9..410a55ddad3fc5397a22c728c942035852b7bca7 100644 (file)
@@ -7,7 +7,7 @@
 #
 #  = Files Module
 #
-#  The `users` file as located in `raddb/mods-config/files/authorize`. (Livingston-style format).
+#  The `users` file as located in `mods-config/files/authorize`. (Livingston-style format).
 #
 #  See the raddb/mods-config/files/users.adoc file for information
 #  on the format of the input file, and how it operates.
index 8c751ddb7da7921ceeed0b1bf0a7225bb283dcc5..e4bdd33cbb45b21e4ab0241f2d970e37b3a51190 100644 (file)
@@ -9,7 +9,7 @@
 #
 #  The `perl` module processes attributes through a Perl interpreter.
 #
-#  * Please see the `raddb/mods-config/perl/example.pl` sample.
+#  * Please see the `mods-config/perl/example.pl` sample.
 #  * Please see http://www.perl.org/docs.html for more information about the
 #  Perl language.
 #
index df363df9844aa7a146b9d779baf20c5b2ecc38bd..7170b2553a4f99bb621d7b13dea8c095b60214f0 100644 (file)
@@ -40,7 +40,7 @@
 #
 #  [NOTE]
 #  ====
-#  See `raddb/global.d/python` for configuration items that affect the
+#  See `global.d/python` for configuration items that affect the
 #  python interpreter globally, such as the Python path.
 #  ====
 #
index c30ee5db194f464da9f6a5e528870245b63d1917..826fc177bef976fd46e48be718d52ed85df74297 100644 (file)
@@ -179,7 +179,7 @@ sqlcounter noresetcounter {
 #  Set an account to expire T seconds after first login. Requires the `Expire-After`
 #  attribute to be set, in seconds.
 #
-#  NOTE: You may need to edit `raddb/dictionary` to add the `Expire-After` attribute.
+#  NOTE: You may need to edit `dictionary` to add the `Expire-After` attribute.
 #
 sqlcounter expire_on_login {
        sql_module_instance = sql
index 4ba8d056c6d782db955484cf512c1f63cf1aaab2..939cb18224026b6452070b2030d60e152a7de4c9 100644 (file)
@@ -9,13 +9,13 @@
 #
 #  The module `sqlippool` provide configuration for the SQL based IP Pool module.
 #
-#  NOTE: The database schemas are available at `raddb/sql/ippool/<DB>/schema.sql`.
+#  NOTE: The database schemas are available at `sql/ippool/<DB>/schema.sql`.
 #
 #  ## Configuration Settings
 #
 sqlippool {
        #
-       #  sql_module_instance:: SQL instance to use (from `raddb/mods-available/sql`)
+       #  sql_module_instance:: SQL instance to use (from `mods-available/sql`)
        #
        #  If you have multiple sql instances, such as `sql sql1 {...}`,
        #  use the *instance* name here: `sql1`.
index 07085f617312d2729b5eef9266d6ecd727ed59db..7c3e7c1f44a5026315b082d385645a024d142b71 100644 (file)
@@ -19,7 +19,7 @@
 #
 #  ## Syntax
 #
-#  To use it, add it to the `raddb/mods-enabled/` directory.  Then,
+#  To use it, add it to the `mods-enabled/` directory.  Then,
 #  use it on the right-hand side of a variable assignment.
 #
 #   %unpack(<data>, <offset>, <data_type>[, <repeat>])
index 1bf61e39099c7f62152eabfb45b782394c1694ea..fe99d3bf94d01016f9b64a1355aa5e54d83435df 100644 (file)
@@ -166,7 +166,7 @@ wimax {
        #
        #  By default, the EAP modules sends `MS-MPPE-*-Key` attributes.
        #
-       #  The default virtual server (`raddb/sites-available/default`)
+       #  The default virtual server (`sites-available/default`)
        #  contains examples of adding the `WiMAX-MSK`.
        #
        #  This configuration option makes the WiMAX module delete
index 7461bc5c56c68e729091dbbdf89e4f30400e56e3..b62c618aa1b3d6a6b5fbcd06d43b6825ef64e473 100644 (file)
@@ -773,7 +773,7 @@ policy {
 #
 #  Have been moved to the the file:
 #
-#  `raddb/sites-available/default`
+#  `sites-available/default`
 #
 #  This is the `default` virtual server that has the same
 #  configuration as in version 1.0.x and 1.1.x.  The default
@@ -782,6 +782,6 @@ policy {
 #
 #  For more documentation on virtual servers, see:
 #
-#  `raddb/sites-available/index.adoc`
+#  `sites-available/index.adoc`
 #
 $INCLUDE sites-enabled/
index fde3f3acc146fe117b84f92d8459818317a56439..6425f4e23fc87e935dae0722e8d770361b4ce707 100644 (file)
@@ -18,7 +18,7 @@
 #  just replace `radrelay`, you will need to add additional
 #  configuration.
 #
-#  See `raddb/sites-available/copy-acct-to-home-server` for a
+#  See `sites-available/copy-acct-to-home-server` for a
 #  more complete example.  That example is intended to be run
 #  as part of a larger RADIUS configuration, where the server
 #  also listens on ports 1812, etc.  The example given here
@@ -263,7 +263,7 @@ server radrelay {
                #  filename:: The filename here should be the same as the one used by the
                #  main `radiusd` program.
                #
-               #  It writes the file using the `detail` module (see `raddb/modules/detail`).
+               #  It writes the file using the `detail` module (see `modules/detail`).
                #
                filename = ${radacctdir}/detail
 
@@ -278,7 +278,7 @@ server radrelay {
        #  Accounting-Request packet (which will be from the
        #  "detail" reader above.
        #
-       #  See also `raddb/sites-available/copy-acct-to-home-server`
+       #  See also `sites-available/copy-acct-to-home-server`
        #  for additional description.
        #
        recv Accounting-Request {
index dbdb8e328e184c8079745885677fcc470d009e34..7bffaba7c20dba3b84ea8e84c4ecc08d2f539d5e 100644 (file)
@@ -18,7 +18,7 @@
 #  is running. It doesn't matter if the link is up, or if the host system
 #  is running. If the FreeRADIUS daemon is down, then we want to know ASAP.
 #
-#  NOTE: See also `raddb/trigger.conf`.  There are BFD-specific triggers
+#  NOTE: See also `trigger.conf`.  There are BFD-specific triggers
 #  which are executed when the link is started, goes up, down, or is
 #  administratively down.
 #
index d34bf94c8d71a1b4821f8a4aa7e88a66b42b4b53..753b2e9877be50e201518aaac8f389aab41e2753 100644 (file)
@@ -81,7 +81,7 @@ server vmps {
                #
                #  Do a simple mapping of MAC to VLAN.
                #
-               #  See `raddb/mods-available/mac2vlan` for the definition of the "mac2vlan"
+               #  See `mods-available/mac2vlan` for the definition of the "mac2vlan"
                #  module.
                #
 #              mac2vlan