]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
more documentation updates
authorAlan T. DeKok <aland@freeradius.org>
Tue, 16 Aug 2022 21:55:03 +0000 (17:55 -0400)
committerAlan T. DeKok <aland@freeradius.org>
Tue, 16 Aug 2022 21:55:03 +0000 (17:55 -0400)
doc/antora/modules/installation/pages/upgrade.adoc
raddb/radiusd.conf.in

index 6a07603ded757b720aed5ce81a922d4b52325ce3..300c0d81e75d90bbefb9c25621c350e8d4a652a4 100644 (file)
@@ -132,18 +132,27 @@ packets.
 
 The `instantiate` section has been removed.  It originally started out
 as a way to ensure that modules were instantiated in a particular
-order.  As of 3.0.9, listing modules in the `instantiate` section was
-no longer necessary.  The functionality was left in version 3 for
-compatibility, but has now been removed from version 4.
-
-The other use of the `instantiate` section was to define "virtual"
-modules for dynamic expansion.  That functionality has been moved to
-the `mods-available/` and `mods-enabled/` directories.  i.e. in
-version 4, just list the virtual module in a file, as if it was a real
-module.
+order.  A later use of the `instantiate` section was to define
+"virtual modules" for dynamic expansion.  That functionality has been
+moved to the `mods-available/` and `mods-enabled/` directories.
+i.e. in version 4, just list the virtual module in a file, as if it
+was a real module.
 
 See the xref:mods-available/redundantsql.adoc[redundant_sql module]
-for more information.
+for more information.  In short, a virtual module can be put into the
+`mods-enabled` directory as with any other module, as with the
+following text:
+
+[source,unlang]
+----
+redundant redundant_sql {
+       sql1
+       sql2
+}
+----
+
+In this case, this definition creates a `redundant_sql` virtual module.
+
 
 == Virtual Servers
 
@@ -162,14 +171,13 @@ namespace = radius
 
 This tells the server what protocol is being used in that virtual
 server. This configuration was not necessary in v3, because each
-protocol was pretending to be RADIUS. That was simple to do and worked
-for some things, but it was not the best approach.
+protocol was pretending to be RADIUS. That was simple to program at
+the time and worked for some things, but it was not the best approach.
 
 In v4, each protocol is completely independent, and RADIUS is no
-longer welded into the server core.  i.e. The server core does
-modules, configuration files, policies, etc.  RADIUS has been
-relegated to just another plug-in protocol, with the same status as
-DHCPv4 and DHCPv6.
+longer built into the server core.  i.e. The server core does modules,
+configuration files, policies, etc.  RADIUS has been relegated to just
+another plug-in protocol, with the same status as DHCPv4 and DHCPv6.
 
 Every example virtual server in the `sites-enabled/` directory
 contains a `namespace` parameter.  Please look at those files for
@@ -296,6 +304,40 @@ here is to allow a common pre-processing of accounting packets in the
 in `accounting %{Acct-Status-Type}`. See sites-available/default for
 examples and more information.
 
+=== update sections
+
+A major difference between v3 and v4 is that `update` sections are no
+longer necessary.  It is now possible to just edit attributes "in
+place", as with:
+
+See the xref:reference:unlang/update.adoc[update] documentation for a
+description of what has changed, and how to use the attribute new
+xref:reference:unlang/edit.adoc[edit] functionality.
+
+For example, instead of doing this:
+
+[source,unlang]
+----
+if (&User-Name == "bob") {
+    update reply {
+        &Reply-Message := "Hello, %{User-Name}"
+    }
+}
+----
+
+You can now do this:
+
+[source,unlang]
+----
+if (&User-Name == "bob") {
+    &reply.Reply-Message := "Hello, %{User-Name}"
+}
+----
+
+As with any upgrade across major version numbers, there are caveats.
+See the full xref:reference:unlang/update.adoc[update] documentation
+and xref:reference:unlang/edit.adoc[edit] documentation for details.
+
 == Proxying
 
 Proxying has undergone massive changes. The `proxy.conf` file no
index 539832e46fbbe358d2ec1ccfb92973802c0d372b..6e7a8a83c2743e21e05134a2e0cce15f0f87f66c 100644 (file)
@@ -634,8 +634,7 @@ modules {
 #
 #  .Policies
 #
-#  Policies are virtual modules, similar to those defined in the
-#  `instantiate` section above.
+#  Policies are virtual modules.
 #
 #  Defining a policy in one of the `policy.d` files means that it can be
 #  referenced in multiple places as a *name*, rather than as a series of