]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Remove & where &foo = bar &
authornolade <nola.aunger@inkbridge.io>
Thu, 13 Mar 2025 15:03:26 +0000 (11:03 -0400)
committerAlan T. DeKok <aland@freeradius.org>
Sat, 15 Mar 2025 13:12:27 +0000 (15:12 +0200)
perl -p -i -e 's/&([^\s]+\s+(=|.=))/$1/g' $(git grep -lE '^&|[^&]&[a-zA-Z]' doc/antora/modules | egrep -v 'raddb|developers|interpreter.adoc|assets')

46 files changed:
doc/antora/modules/howto/pages/eduroam_config.adoc
doc/antora/modules/howto/pages/eduroam_logging.adoc
doc/antora/modules/howto/pages/installation/upgrade.adoc
doc/antora/modules/howto/pages/modules/chap/index.adoc
doc/antora/modules/howto/pages/modules/ldap/authentication.adoc
doc/antora/modules/howto/pages/modules/ldap/authorization/groups.adoc
doc/antora/modules/howto/pages/modules/ldap/base_configuration/index.adoc
doc/antora/modules/howto/pages/modules/ldap_authentication_testing.adoc
doc/antora/modules/howto/pages/modules/rest/configuration.adoc
doc/antora/modules/howto/pages/modules/sqlippool/index.adoc
doc/antora/modules/howto/pages/protocols/dhcp/policy_common_options.adoc
doc/antora/modules/howto/pages/protocols/dhcp/policy_device_options.adoc
doc/antora/modules/howto/pages/protocols/dhcp/test.adoc
doc/antora/modules/howto/pages/protocols/proxy/radsec_client.adoc
doc/antora/modules/reference/pages/unlang/break.adoc
doc/antora/modules/reference/pages/unlang/caller.adoc
doc/antora/modules/reference/pages/unlang/condition/cmp.adoc
doc/antora/modules/reference/pages/unlang/condition/index.adoc
doc/antora/modules/reference/pages/unlang/condition/regex.adoc
doc/antora/modules/reference/pages/unlang/detach.adoc
doc/antora/modules/reference/pages/unlang/edit.adoc
doc/antora/modules/reference/pages/unlang/else.adoc
doc/antora/modules/reference/pages/unlang/elsif.adoc
doc/antora/modules/reference/pages/unlang/expression.adoc
doc/antora/modules/reference/pages/unlang/filter.adoc
doc/antora/modules/reference/pages/unlang/foreach.adoc
doc/antora/modules/reference/pages/unlang/if.adoc
doc/antora/modules/reference/pages/unlang/index.adoc
doc/antora/modules/reference/pages/unlang/local.adoc
doc/antora/modules/reference/pages/unlang/map.adoc
doc/antora/modules/reference/pages/unlang/module.adoc
doc/antora/modules/reference/pages/unlang/module_builtin.adoc
doc/antora/modules/reference/pages/unlang/parallel.adoc
doc/antora/modules/reference/pages/unlang/return.adoc
doc/antora/modules/reference/pages/unlang/subrequest.adoc
doc/antora/modules/reference/pages/unlang/transaction.adoc
doc/antora/modules/reference/pages/unlang/update.adoc
doc/antora/modules/reference/pages/xlat/builtin.adoc
doc/antora/modules/reference/pages/xlat/concat.adoc
doc/antora/modules/reference/pages/xlat/conversion.adoc
doc/antora/modules/reference/pages/xlat/dict.adoc
doc/antora/modules/reference/pages/xlat/function.adoc
doc/antora/modules/reference/pages/xlat/hash.adoc
doc/antora/modules/reference/pages/xlat/protocol.adoc
doc/antora/modules/tutorials/pages/unlang_policies.adoc
doc/antora/modules/tutorials/pages/virtual.adoc

index 6017cff8c0b5f30b5b30000dad026050304c1764..2e5d96906f43f0c11afd58a55b565b99ff526dfc 100644 (file)
@@ -121,7 +121,7 @@ server eduroam {
                # You can make this condition as complex as you like, to 
                # include additional subdomains just concatenate the conditions
                # with &&.
-               if (&Stripped-User-Domain != "${operator_name}") {
+               if (Stripped-User-Domain != "${operator_name}") {
                        update {
                                control:Load-Balance-Key := &Calling-Station-ID
                                control:Proxy-To-Realm := 'eduroam_flr'
@@ -438,7 +438,7 @@ server eduroam-inner {
                # the domain portion of the outer and inner identities must match.
                split_username_nai
                if (noop || (&Stripped-User-Domain && \
-                   (&outer.Stripped-User-Domain != &Stripped-User-Domain))) {
+                   (outer.Stripped-User-Domain != &Stripped-User-Domain))) {
                        reject
                }
 
@@ -446,7 +446,7 @@ server eduroam-inner {
                # it in the outer server.
                if (&outer.session-state:)
                        update {
-                               &outer.session-state:Stripped-User-Name := &Stripped-User-Name
+                               outer.session-state:Stripped-User-Name := &Stripped-User-Name
                        }
                }
 
index c727142ce53b727af11929664a07e6c676c00551..2de4626490e64aed6fac9973d0f40679a853f6f5 100644 (file)
@@ -61,7 +61,7 @@ Make these changes in the default server (`raddb/sites-enabled/default`).
     authorize {
         if (!&session-state:) {
             update session-state {
-                &Tmp-String-1 := "request"
+                Tmp-String-1 := "request"
             }
             linelog
         }
@@ -79,13 +79,13 @@ update `post-auth`:
         post-auth {
             ...
             update outer.session-state {
-                &User-Name := &User-Name
+                User-Name := &User-Name
             }
 
             Post-Auth-Type REJECT {
                 ...
                 update outer.session-state {
-                    &User-Name := &User-Name
+                    User-Name := &User-Name
                 }
             }
         }
@@ -101,14 +101,14 @@ log the reply with the required attributes.
         post-auth {
             ...
             update session-state {
-                &Tmp-String-1 := "accept"
+                Tmp-String-1 := "accept"
             }
             linelog
 
             Post-Auth-Type REJECT {
                 ...
                 update session-state {
-                    &Tmp-String-1 := "reject"
+                    Tmp-String-1 := "reject"
                 }
                 linelog
             }
index 8876fa64d885c579673b23a7fcd4abc94d1ad375..2265cd2fa8f5ec329b00aa04b3b3e5c2055249fd 100644 (file)
@@ -318,9 +318,9 @@ For example, instead of doing this:
 
 [source,unlang]
 ----
-if (&User-Name == "bob") {
+if (User-Name == "bob") {
     update reply {
-        &Reply-Message := "Hello, %{User-Name}"
+        Reply-Message := "Hello, %{User-Name}"
     }
 }
 ----
@@ -329,8 +329,8 @@ You can now do this:
 
 [source,unlang]
 ----
-if (&User-Name == "bob") {
-    &reply.Reply-Message := "Hello, %{User-Name}"
+if (User-Name == "bob") {
+    reply.Reply-Message := "Hello, %{User-Name}"
 }
 ----
 
@@ -613,7 +613,7 @@ you should edit the `reply` list, using the `+=` operator:
 
 ```
 reply += {
-    &Reply-Message = "foo"
+    Reply-Message = "foo"
 }
 ```
 
@@ -626,7 +626,7 @@ For example, in v3 you would do:
 
 ```
 update reply {
-       &Framed-IP-Address := "%{sql:SELECT ...}"
+       Framed-IP-Address := "%{sql:SELECT ...}"
 }
 ```
 
@@ -1126,7 +1126,7 @@ In v3, many people had a habit of just adding `"..."` around _everything_.  For
 [source,unlang]
 ----
 update reply {
-       &Reply-Message := "%{User-Name}"
+       Reply-Message := "%{User-Name}"
 }
 
 ...
@@ -1148,7 +1148,7 @@ reply.Reply-Message := &User-Name
 
 ...
 
-if (&User-Name == "bob") {
+if (User-Name == "bob") {
    ...
 }
 ----
index d8a9f209f67c263b795bc9edcf8192f87866ffe5..0baec65cda2705b79cc7e8ecd1b04badf530270c 100644 (file)
@@ -78,7 +78,7 @@ containing `ERROR` or `WARNING`, or the `chap` module name.
 (0)    CHAP-Password = 0x3549a4e40fc76e876499badf736712c951
 ...
 (0)    chap - Creating &CHAP-Challenge from request authenticator
-(0)    chap - Setting &control.Auth-Type = chap
+(0)    chap - Setting control.Auth-Type = chap
 (0)    chap (ok)
 ...
 (0)  Found "known good" password in &control.Password.Cleartext
index 1c2c56cf8bc674866efc798784d5d9e0a56de272..c10e3f3753432cda1fb39ff229effa9a66cb2b78 100644 (file)
@@ -39,14 +39,14 @@ On the FreeRADIUS debug terminal side, you should see something like:
 (0)    ldap - Waiting for search result...
 (0)    ldap - User object found at DN "uid=john,ou=people,dc=example,dc=com"
 (0)    ldap - Processing user attributes
-(0)    ldap -   &control.Password.With-Header += password
+(0)    ldap -   control.Password.With-Header += password
 (0)    ldap - Released connection (0)
 (0)    ldap (updated)
 ...
 (0)    pap - No {...} in &Password.With-Header, re-writing to Password.Cleartext
 (0)    pap - Normalized &control.Password.With-Header -> &control.Password.Cleartext
 (0)    pap - Removing &control.Password.With-Header
-(0)    pap - Setting &control.Auth-Type = pap
+(0)    pap - Setting control.Auth-Type = pap
 (0)    pap (updated)
 (0)  } # recv Access-Request (updated)
 (0)  Running 'authenticate pap' from file /usr/local/etc/raddb/sites-enabled/default
@@ -149,7 +149,7 @@ You have two options available to you here (`Ctrl-C` the running FreeRADIUS serv
 ----
 -ldap
 if ((ok || updated) && &User-Password) {
-  &control.Auth-Type := ldap
+  control.Auth-Type := ldap
 }
 ----
  ** FreeRADIUS is now configured to attempt to LDAP bind if the `ldap` module finds a user and the RADIUS request contains a `User-Password` RADIUS attribute
@@ -168,7 +168,7 @@ If you use LDAP bind'ing to perform user authentication, then when `radclient` r
 (0)    ldap - Released connection (0)
 (0)    ldap (ok)
 (0)    if ((ok || updated) && &User-Password) {
-(0)      &control.Auth-Type := ldap
+(0)      control.Auth-Type := ldap
 (0)    } # if ((ok || updated) && &User-Password) (noop)
 (0)    expiration (noop)
 (0)    pap - WARNING: No "known good" password found for the user.  Not setting Auth-Type
index a2e945924f4944a514816f5941979ee13332da68..2b2b6e72a2be958af1eab3863fbce755a1f72d05 100644 (file)
@@ -144,7 +144,7 @@ appropriately.
 [source,unlang]
 ----
 if (%ldap.group("cn=foo,ou=groups,dc=example,dc=com") == true) {
-       &reply.Reply-Message := "Welcome member of group 'foo'"
+       reply.Reply-Message := "Welcome member of group 'foo'"
 }
 ----
 
@@ -153,7 +153,7 @@ if (%ldap.group("cn=foo,ou=groups,dc=example,dc=com") == true) {
 [source,unlang]
 ----
 if (%ldap.group("foo") == true) {
-       &reply.Reply-Message := "Welcome member of group 'foo'"
+       reply.Reply-Message := "Welcome member of group 'foo'"
 }
 ----
 
index 831ecee0136ebf8b200141ed527a32f021c4da9c..bed2feabf571582aa1b31db3c97fc504d9ced335 100644 (file)
@@ -154,7 +154,7 @@ server default {
        recv Access-Request {
                ldap
                if (ok || updated) {
-                       &control.Auth-Type := ldap
+                       control.Auth-Type := ldap
                }
        }
 
index 908d197242cd591cc410052a4490d9de8c979f3f..3a5e5af31afe56355fb235b1b03cb01def2b1e36 100644 (file)
@@ -35,14 +35,14 @@ On the FreeRADIUS debug terminal side, you should see something like:
 (0)    ldap - Waiting for search result...
 (0)    ldap - User object found at DN "uid=john,ou=people,dc=example,dc=com"
 (0)    ldap - Processing user attributes
-(0)    ldap -   &control:Password-With-Header += password
+(0)    ldap -   control:Password-With-Header += password
 (0)    ldap - Released connection (0)
 (0)    ldap (updated)
 ...
 (0)    pap - No {...} in &Password-With-Header, re-writing to Cleartext-Password
 (0)    pap - Normalized &control:Password-With-Header -> &control:Cleartext-Password
 (0)    pap - Removing &control:Password-With-Header
-(0)    pap - Setting &control:Auth-Type = pap
+(0)    pap - Setting control:Auth-Type = pap
 (0)    pap (updated)
 (0)  } # recv Access-Request (updated)
 (0)  Running 'authenticate pap' from file /usr/local/etc/raddb/sites-enabled/default
@@ -148,7 +148,7 @@ You have two options avaliable to you here (`Ctrl-C` the running FreeRADIUS serv
 -ldap
 if ((ok || updated) && &User-Password) {
     update {
-        &control:Auth-Type := ldap
+        control:Auth-Type := ldap
     }
 }
 ----
@@ -169,7 +169,7 @@ If you use LDAP bind'ing to perform user authentication, then when `radclient` r
 (0)    ldap (ok)
 (0)    if ((ok || updated) && &User-Password) {
 (0)      update {
-(0)        &control:Auth-Type := ldap
+(0)        control:Auth-Type := ldap
 (0)      } # update (noop)
 (0)    } # if ((ok || updated) && &User-Password) (noop)
 (0)    expiration (noop)
index 146afe99b330663efcaa263b0d70eb0e119b5147..8cf74f3e62210d87f04b7d12649ff531bd87d119 100644 (file)
@@ -111,7 +111,7 @@ server default {
        ...
        recv Access-Request {
                if (&User-Password) {
-                       &control.Auth-Type := rest
+                       control.Auth-Type := rest
                }
        }
 
index 190eb800950d2c3cd7303003726f87c5980c293f..f968e92105cfcbd8eb5d529b3999bedef6120122 100644 (file)
@@ -306,7 +306,7 @@ send Access-Accept {
                         noop = return
                 }
                 # On failure for any reason, reject
-                &reply += {
+                reply += {
                        Reply-Message = Module-Failure-Message
                }
                 reject
@@ -550,7 +550,7 @@ echo "INSERT INTO radcheck (username,attribute,op,value)   \
 ----
 send Access-Accept {
 ...
-        &control.IP-Pool.Name := 'internet'
+        control.IP-Pool.Name := 'internet'
         sqlippool
 ...
 }
index ca4d98fee5266c73701255db9e94f566f56c226d..9fd7aaf530a84d9b464b8804eb75ceaffcfd3da5 100644 (file)
@@ -31,10 +31,10 @@ applicable to all clients in this policy.
 ----
 dhcp_common {
     update reply {
-        &DHCP-Domain-Name-Server := 8.8.8.8
-        &DHCP-Domain-Name-Server += 8.8.4.4
-        &DHCP-Subnet-Mask := 255.255.255.0
-        &DHCP-Router-Address := 192.0.2.1
+        DHCP-Domain-Name-Server := 8.8.8.8
+        DHCP-Domain-Name-Server += 8.8.4.4
+        DHCP-Subnet-Mask := 255.255.255.0
+        DHCP-Router-Address := 192.0.2.1
         ...
     }
 }
@@ -64,7 +64,7 @@ the block:
 [source,unlang]
 ----
 update control {
-    &Pool-Name := "local"
+    Pool-Name := "local"
 }
 dhcp_sqlippool
 ----
index 05845ea8934101f0c75de02ee50204b721f992b2..34539613491ac25d425b2f98cc68153e79c14bc1 100644 (file)
@@ -80,11 +80,11 @@ above:
 ----
 if (&DHCP-User-Class && "%{substring:&DHCP-User-Class 0 4}" == "iPXE") {
     update reply {
-        &DHCP-Boot-Filename := "http://my.web.server/boot_script.php"
+        DHCP-Boot-Filename := "http://my.web.server/boot_script.php"
     }
 } else {
     update reply {
-        &DHCP-Boot-Filename := "undionly.kpxe"
+        DHCP-Boot-Filename := "undionly.kpxe"
     }
 }
 ----
@@ -99,7 +99,7 @@ provided that it matches the given format:
 if (&DHCP-Client-Identifier && \
         "%{string:DHCP-Client-Identifier}" =~ /^RAS([0-9])-site([A-Z])$/) {
     update reply {
-        &DHCP-Boot-Filename := "rasboot-%{1}-%{2}.kpxe"
+        DHCP-Boot-Filename := "rasboot-%{1}-%{2}.kpxe"
     }
 }
 ----
@@ -214,8 +214,8 @@ context:
 [source,unlang]
 ----
 update control {
-        &DHCP-SQL-Option-Context := "by-mac"
-        &DHCP-SQL-Option-Identifier := &request:DHCP-Client-Hardware-Address
+        DHCP-SQL-Option-Context := "by-mac"
+        DHCP-SQL-Option-Identifier := &request:DHCP-Client-Hardware-Address
 }
 dhcp_sql.authorize
 ----
@@ -266,8 +266,8 @@ sample data you could invoke an SQL lookup as shown:
 [source,unlang]
 ----
 update control {
-        &DHCP-SQL-Option-Context := "class-vendor"
-        &DHCP-SQL-Option-Identifier := \
+        DHCP-SQL-Option-Context := "class-vendor"
+        DHCP-SQL-Option-Identifier := \
             "%{substring:%{hex:&DHCP-Client-Hardware-Address} 0 6}"
 }
 dhcp_sql.authorize
index 322de08fa99149cdff9fce793b9187758667a441..c9783562861a915cb772a3d47a20cb290f7ed58d 100644 (file)
@@ -10,7 +10,7 @@ server to include the following:
 [source,unlang]
 ----
 update reply {
-    &DHCP-Your-IP-Address := 1.2.3.4
+    DHCP-Your-IP-Address := 1.2.3.4
 }
 ----
 
index d92345e9e820ab6f57e2ccb181f2f69ac23a5e3c..163eac51d1d36cf661aa074c5af6298cbd981d3e 100644 (file)
@@ -72,7 +72,7 @@ the `authorize` and `preacct` sections looks as follows:
 
  authorize {
      update control {
-         &Proxy-To-Realm := tls
+         Proxy-To-Realm := tls
      }
      handled
      ...
@@ -80,7 +80,7 @@ the `authorize` and `preacct` sections looks as follows:
  ...
  preacct {
      update control {
-         &Proxy-To-Realm := tls
+         Proxy-To-Realm := tls
      }
      handled
      ...
index c15adcb926e62921b7ed9e09d8710f1d96270924..cf8b382a6505358acfb2cff4dee83ca7910bd03e 100644 (file)
@@ -14,11 +14,11 @@ inside of a xref:unlang/foreach.adoc[foreach] loop.
 [source,unlang]
 ----
 foreach &Class {
-    if (&Foreach-Variable-0 == 0xabcdef) {
+    if (Foreach-Variable-0 == 0xabcdef) {
         break
     }
 
-    &reply += {
+    reply += {
         Reply-Message = "Contains %{Foreach-Variable-0}"
     }
 }
index 0e8ce2dc3182c01392f073b67a34b8be98dd7376..3086ef9659472d402640460b5cc5bfce11b3bf1f 100644 (file)
@@ -61,8 +61,8 @@ request to the current RADIUS reply packet, as the contents of the
 [source,unlang]
 ----
 caller dhcpv4 {
-    &reply += {
-        &Filter-Id = &parent.request.Client-Identifier
+    reply += {
+        Filter-Id = &parent.request.Client-Identifier
     }
 }
 ----
index 8bc778aacff50924150125099b75b0f731666fc4..634325cb93ad2e023a0fd61e17f008c1d465c9de 100644 (file)
@@ -81,7 +81,7 @@ types, as with the following example:
 .Example
 [source,unlang]
 ----
-(ipaddr)&Class == 127.0.0.1
+(ipaddr)Class == 127.0.0.1
 ----
 
 In this example, the `Class` attribute is treated as if it was an IPv4
index fb633eff576bb1cfe7a7e5ec5c6dbca6ac7eebd4..5fbbd2fdc8c57659dcf95a1620be050a362083f5 100644 (file)
@@ -32,15 +32,15 @@ Conditions are expressed using the following syntax:
 .Examples
 [source,unlang]
 ----
-if ( &User-Name == "bob" ) {
+if ( User-Name == "bob" ) {
     ...
 }
 
-if ( &Framed-IP-Address == 127.0.0.1 ) {
+if ( Framed-IP-Address == 127.0.0.1 ) {
     ...
 }
 
-if ( &Calling-Station-Id == "%sql("SELECT ...") ) {
+if ( Calling-Station-Id == "%sql("SELECT ...") ) {
     ...
 }
 ----
@@ -102,7 +102,7 @@ It should instead be written as:
 .Simplified Example
 [source,unlang]
 ----
-if (&Framed-IP-Address == 192.0.2.1) {
+if (Framed-IP-Address == 192.0.2.1) {
     ...
 }
 ----
index 31784bd037ff68b516c6f5157154ad88ca6a3ba7..9e4b11f9da0d4f85c63c7872882bcf6b5080e871 100644 (file)
@@ -36,7 +36,7 @@ resulting string.
 ====
 [source,unlang]
 ----
-if (&User-Name =~ /@example\.com$/) {
+if (User-Name =~ /@example\.com$/) {
     ...
 }
 ----
@@ -128,8 +128,8 @@ more information on regular expression matching.
 ====
 [source,unlang]
 ----
-if (&User-Name =~ /^(.*)@example\.com$/) {
-    &reply += {
+if (User-Name =~ /^(.*)@example\.com$/) {
+    reply += {
         Reply-Message = "Hello %{1}"
     }
 }
@@ -163,7 +163,7 @@ switch (realm) {
     }
 }
 
-if (&Stripped-User-Name =~ /^%{pattern}$/) {
+if (Stripped-User-Name =~ /^%{pattern}$/) {
     ...
 }
 ----
@@ -185,7 +185,7 @@ saved during evaluation.
 ====
 [source,unlang]
 ----
-if (&User-Name =~ /^@%{Tmp-String-0}$/) {
+if (User-Name =~ /^@%{Tmp-String-0}$/) {
     ...
 }
 ----
@@ -200,7 +200,7 @@ using the PCRE alternation '|' operator.
 ====
 [source,unlang]
 ----
-if (&User-Name =~ /^@(%{Tmp-String-0}|%{Tmp-String-1})$/) {
+if (User-Name =~ /^@(%{Tmp-String-0}|%{Tmp-String-1})$/) {
     ...
 }
 ----
index 417e73a4e3ec4654d3a38eb8bc042b087e224928..959e6834a7d4663330630fc77eab9a5be4b76c31 100644 (file)
@@ -19,10 +19,10 @@ access any attributes in the parent.
 [source,unlang]
 ----
 subrequest Disconnect-Request {
-    &User-Name := &parent.request.User-Name
-    &NAS-IP-Address := &parent.request.NAS-IP-Address
-    &NAS-Port := &parent.request.NAS-Port
-    &Acct-Session-Id := &parent.request.Acct-Session-Id
+    User-Name := &parent.request.User-Name
+    NAS-IP-Address := &parent.request.NAS-IP-Address
+    NAS-Port := &parent.request.NAS-Port
+    Acct-Session-Id := &parent.request.Acct-Session-Id
 
     detach
     radius
@@ -50,12 +50,12 @@ seconds.  Only integer seconds can be set.
 [source,unlang]
 ----
 subrequest Disconnect-Request {
-    &User-Name := &parent.request.User-Name
-    &NAS-IP-Address := &parent.request.NAS-IP-Address
-    &NAS-Port := &parent.request.NAS-Port
-    &Acct-Session-Id := &parent.request.Acct-Session-Id
+    User-Name := &parent.request.User-Name
+    NAS-IP-Address := &parent.request.NAS-IP-Address
+    NAS-Port := &parent.request.NAS-Port
+    Acct-Session-Id := &parent.request.Acct-Session-Id
 
-    &control.Request-Lifetime := 60
+    control.Request-Lifetime := 60
 
     detach
     radius
index 04ae581f6d6b37c757d5f6adef7cedc7c5dd11ea..0e3674268f08c13c551dfaf6e03cafbec56d45fe 100644 (file)
@@ -15,7 +15,7 @@ attribute -= <expression>
 ...
 
 list1 := &list2
-list1 += { &attribute = value, ... }
+list1 += { attribute = value, ... }
 list1 += " attribute = value, ... "
 ...
 ----
@@ -198,7 +198,7 @@ given.
 [source,unlang]
 ----
 reply += {
-       &Filter-Id = "foo"
+       Filter-Id = "foo"
 }
 ----
 ====
@@ -228,7 +228,7 @@ overriding the contents of a list.
 [source,unlang]
 ----
 reply := {
-       &Filter-Id = "foo"
+       Filter-Id = "foo"
 }
 ----
 ====
@@ -261,7 +261,7 @@ reply -= &Filter-Id[*]
 [source,unlang]
 ----
 reply -= {
-    &Filter-Id == "bar"
+    Filter-Id == "bar"
 }
 ----
 ====
index e61643817186996ecc69d0fe5075a867e8111a26..0c7cd6420e0631289ceebb1ebace5637a0b2d49a 100644 (file)
@@ -18,7 +18,7 @@ and the statements within the `else` subsection are executed.
 .Example
 [source,unlang]
 ----
-if (&User-Name == "bob") {
+if (User-Name == "bob") {
     reject
 }
 else {
index dcc3ab33e1238a119afc00d1bc112cb26cc93f50..ac2e15b0ca231085b447f9b0ff845bf3a1b0fcc3 100644 (file)
@@ -31,10 +31,10 @@ conditional checks and statements.
 .Example
 [source,unlang]
 ----
-if (&User-Name == "bob") {
+if (User-Name == "bob") {
     reject
 }
-elsif (&User-Name == "doug") {
+elsif (User-Name == "doug") {
     ok
 }
 ----
index a4f1a952d3397034611d4552d6485fd5007dcb57..99986386c3b7300ab0d627bd5458b8aefb048e6a 100644 (file)
@@ -11,7 +11,7 @@ Expressions can be used inside of xref:xlat/index.adoc[dynamic expansions], or i
 .Expression in a Condition
 [source,unlang]
 ----
-(&NAS-Port == 1 + 2)
+(NAS-Port == 1 + 2)
 ----
 
 .Expression in an assignment
@@ -62,7 +62,7 @@ supported.  For example:
 
 [source,unlang]
 ----
-NAS-Port = 5 + (&User-Name == "bob")
+NAS-Port = 5 + (User-Name == "bob")
 ----
 
 This expression will return `6` if the users name is `bob`, and `5` otherwise.
index 814d2d155ed3073506ddcccfd1fcd9c6d09686e1..77dc2711e76ecdd11ae74c15b1c38fe07ebee38c 100644 (file)
@@ -10,13 +10,13 @@ group {
        uint32 small
        uint32 large
 
-       &large = 10000
-       &small = 10
+       large = 10000
+       small = 10
 
        #
        #  Enforce it
        #
-       &large <= &small
+       large <= &small
 
        # &large now has value '10'
 
index 16b99a82515bfa4f9eeb1ea70f80067cc5a6728e..99ed1126a391953d3b4a441690c7d283cef5bb4c 100644 (file)
@@ -70,7 +70,7 @@ the execution of the loop.
 Tmp-Integer-0 := { 1, 3, 5, 11 }
 
 foreach self (&Tmp-Integer-0) {
-       &self += 19
+       self += 19
 }
 ----
 
@@ -149,8 +149,8 @@ In this example, we have to explicitly give a data type `string`.  The data type
 [source,unlang]
 ----
 foreach string child (&TLV-Thing.[*]) {
-       &out += &child
-       &out += " "
+       out += &child
+       out += " "
 }
 ----
 
@@ -162,8 +162,8 @@ examined, but cannot be changed.  This is a limitation of the current interprete
 [source,unlang]
 ----
 foreach thing (&Tmp-TLV-0[*]) {
-       &out += &thing.c
-       &out += " "
+       out += &thing.c
+       out += " "
 }
 ----
 
index 86cfe3f0204ab0c8f17d7a7c3aeb235fe2bf26b3..add4e13cccedfdd65c65ac5f461d4862699fc519 100644 (file)
@@ -20,7 +20,7 @@ an xref:unlang/elsif.adoc[elsif] statement.
 .Example
 [source,unlang]
 ----
-if (&User-Name == "bob") {
+if (User-Name == "bob") {
     reject
 }
 ----
@@ -36,7 +36,7 @@ There is no need to put brackets around a _<condition>_.  The following two exam
 .Example With Brackets
 [source,unlang]
 ----
-if (&User-Name == "bob") {
+if (User-Name == "bob") {
     reject
 }
 ----
@@ -46,7 +46,7 @@ And without:
 .Example Without Brackes
 [source,unlang]
 ----
-if &User-Name == "bob" {
+if User-Name == "bob" {
     reject
 }
 ----
@@ -62,7 +62,7 @@ A _<condition>_ can span multiple lines.  There is no need to use `\\` at the en
 .Example With Brackets
 [source,unlang]
 ----
-if (&User-Name ==
+if (User-Name ==
      "bob") {
     reject
 }
index 1393217dbb3d58adc2799f306534be21fb9fc4e4..4bcc321895d3e835d48b9b2d77b074af78b53163 100644 (file)
@@ -62,7 +62,7 @@ can be used to control the flow of processing.
 .Example
 [source,unlang]
 ----
-if ((&User-Name == "bob") && (&Calling-Station-Id == "00:01:03:04:05")) {
+if ((User-Name == "bob") && (Calling-Station-Id == "00:01:03:04:05")) {
        ...
 }
 ----
@@ -116,9 +116,9 @@ error.
 [source,unlang]
 ----
 reply += {
-       &Framed-IP-Address = 192.0.2.4
-       &Session-Timeout = 5
-       &Reply-Message = "hello"
+       Framed-IP-Address = 192.0.2.4
+       Session-Timeout = 5
+       Reply-Message = "hello"
 }
 ----
 
@@ -157,12 +157,12 @@ attribute contents or lists of attributes.
 # followed by condition which checks that the User-Name
 # attribute has value "bob"
 
-if (&User-Name == "bob") {
+if (User-Name == "bob") {
     # followed by instructions to add the Reply-Message
     # attribute to the "reply" list, with contents
     # "Hello, bob"
 
-    &reply.Reply-Message := "Hello, bob"
+    reply.Reply-Message := "Hello, bob"
 }
 ----
 
index cbe7f0dca3e6b4badbdb66a4776847c6fbff810d..3a737059ba4c5978f653c17f58fb7a6b2f2484f4 100644 (file)
@@ -51,12 +51,12 @@ Local variables _cannot_ be deleted.  When the current scope exits, the local va
 .Example
 [source,unlang]
 ----
-if (&User-Name == "bob") {
+if (User-Name == "bob") {
     uint32 len
 
-    &len := %length(%{User-Name})
+    len := %length(%{User-Name})
 
-    &Reply-Message := "Length of %{User-Name} is %{len}"
+    Reply-Message := "Length of %{User-Name} is %{len}"
 }
 ----
 
@@ -66,7 +66,7 @@ attributes.  These are no longer necessary, and should not be used.
 .Local variables exist on only if they have been created
 [source,unlang]
 ----
-if (&User-Name == "bob") {
+if (User-Name == "bob") {
     # declare "len" as ALLOWED to be used
     uint32 len
 
@@ -76,9 +76,9 @@ if (&User-Name == "bob") {
     }
 
     #  "len" is created, and can now be used
-    &len := %length(%{User-Name})
+    len := %length(%{User-Name})
 
-    &Reply-Message := "Length of %{User-Name} is %{len}"
+    Reply-Message := "Length of %{User-Name} is %{len}"
 }
 ----
 
index 32931f4034fe767f23d2aed4238a7fa672e3112c..2a1139037c178483912d4af6134faee728af4c98 100644 (file)
@@ -46,9 +46,9 @@ are affected.
 [source,unlang]
 ----
 map sql "SELECT column1, column2, column3 from table WHERE user=%{User-Name}" {
-    &reply.Framed-IP-Address := 'column1'
-    &reply.Filter-Id := 'column2'
-    &reply.Reply-Message := 'column3'
+    reply.Framed-IP-Address := 'column1'
+    reply.Filter-Id := 'column2'
+    reply.Reply-Message := 'column3'
 }
 ----
 
index 643e6af4fc73bfaf9a28d123fce030462b906d66..66800ff6c3560dac4ffeea0863c518463b14a039 100644 (file)
@@ -45,8 +45,8 @@ perform different actions based on the behaviour of the modules.
 ----
 sql
 if (notfound) {
-    &reply += {
-        &Reply-Message = "We don't know who you are"
+    reply += {
+        Reply-Message = "We don't know who you are"
     }
     reject
 }
index 9b8620727bb1f1190752cf8d82717aef81716a7b..4a857cbe1a76871ce45252edc0189d711385d21b 100644 (file)
@@ -31,8 +31,8 @@ Causes the request to be immediately rejected.
 [source,unlang]
 ----
 if (!&User-Name) {
-    &reply += {
-        &Reply-Message = "We don't know who you are"
+    reply += {
+        Reply-Message = "We don't know who you are"
     }
     reject
 }
index ed53d25f3fd99a5d1269bc1cc3ec86dd85168876..28c4ee4677b9b541ddb25a41fb5078f2482f98db 100644 (file)
@@ -84,8 +84,8 @@ parallel {
         radius1
         if (fail) {
            linelog1
-           &parent.reply += {
-               &Reply-Message = "radius1 failed"
+           parent.reply += {
+               Reply-Message = "radius1 failed"
            }
         }
     }
@@ -93,8 +93,8 @@ parallel {
         radius2
         if (fail) {
            linelog2
-           &parent.reply += {
-               &Reply-Message = "radius2 failed"
+           parent.reply += {
+               Reply-Message = "radius2 failed"
            }
         }
     }
@@ -136,16 +136,16 @@ a different way from the parent `User-Name`, and it sees a
 ----
 parallel empty {
     group {
-        &request := {
-            &User-Name = "%{&parent.request.User-Name}@example.org"
-            &User-Password = "hello"
+        request := {
+            User-Name = "%{&parent.request.User-Name}@example.org"
+            User-Password = "hello"
         }
         radius1
     }
     group {
-        &request := {
-            &User-Name = "%{&parent.request.User-Name}@example.com"
-            &User-Password = &parent.request.User-Password
+        request := {
+            User-Name = "%{&parent.request.User-Name}@example.com"
+            User-Password = &parent.request.User-Password
         }
         radius2
     }
index 97e388835e7bd2185f7de0932f220cf228b32256..a658ee32acb435c8d4ffc300ad1e0fc33236adae 100644 (file)
@@ -26,7 +26,7 @@ from the enclosing processing section which called the policy.
 [source,unlang]
 ----
 sql
-if (&reply.Filter-Id == "hello") {
+if (reply.Filter-Id == "hello") {
     return
 }
 ...
index f06a0ce8ef03709eae3460f06b6692687dcc7214..41a11a0404d841b3d99613f2aa7b685bc22a0b3b 100644 (file)
@@ -68,10 +68,10 @@ the last statement that was executed.
 [source,unlang]
 ----
 subrequest ::Disconnect-Request {
-    &User-Name := &parent.request.User-Name
-    &NAS-IP-Address := &parent.request.NAS-IP-Address
-    &NAS-Port := &parent.request.NAS-Port
-    &Acct-Session-Id := &parent.request.Acct-Session-Id
+    User-Name := &parent.request.User-Name
+    NAS-IP-Address := &parent.request.NAS-IP-Address
+    NAS-Port := &parent.request.NAS-Port
+    Acct-Session-Id := &parent.request.Acct-Session-Id
 
     radius
 }
@@ -89,7 +89,7 @@ parsed in the context of the new protocol.
 [source,unlang]
 ----
 subrequest @dhcpv4::Discover {
-    &Your-IP-Address := &parent.request.Framed-IP-Address
+    Your-IP-Address := &parent.request.Framed-IP-Address
 
     ...
 }
@@ -169,10 +169,10 @@ request, the child can no longer access any attributes in the parent.
 [source,unlang]
 ----
 subrequest ::Disconnect-Request {
-    &User-Name := &parent.request.User-Name
-    &NAS-IP-Address := &parent.request.NAS-IP-Address
-    &NAS-Port := &parent.request.NAS-Port
-    &Acct-Session-Id := &parent.request.Acct-Session-Id
+    User-Name := &parent.request.User-Name
+    NAS-IP-Address := &parent.request.NAS-IP-Address
+    NAS-Port := &parent.request.NAS-Port
+    Acct-Session-Id := &parent.request.Acct-Session-Id
 
     detach
     radius
index 89747b340cdcc58dd771110162dfda2bfc635005..4cee695b8f2a3926b2324a2306fe55c73b3f8cb1 100644 (file)
@@ -41,8 +41,8 @@ In this example, if the SQL `select` statement fails, then the
 [source,unlang]
 ----
 transaction {
-    &reply.Filter-Id := %sql("SELECT ...")
-    &reply.Framed-IP-Address := 192.0.2.1
+    reply.Filter-Id := %sql("SELECT ...")
+    reply.Framed-IP-Address := 192.0.2.1
 }
 ----
 
index c500daf3cf9f6e3999df3dddbea8987715174af9..9ab8735aedb3060c66ba7ddb67245956b2be2a01 100644 (file)
@@ -38,10 +38,10 @@ The following example creates four attributes, and appends them to the
 [source,unlang]
 ----
 update request {
-       &User-Name += "foo"
-       &Filter-Id += "bar"
-       &NAS-IP-Address += 127.0.0.1
-       &NAS-Port += 5
+       User-Name += "foo"
+       Filter-Id += "bar"
+       NAS-IP-Address += 127.0.0.1
+       NAS-Port += 5
 }
 ----
 
@@ -50,10 +50,10 @@ This example should be converted to the following syntax:
 [source,unlang]
 ----
 request += {
-       &User-Name = "foo"
-       &Filter-Id = "bar"
-       &NAS-IP-Address = 127.0.0.1
-       &NAS-Por = 5
+       User-Name = "foo"
+       Filter-Id = "bar"
+       NAS-IP-Address = 127.0.0.1
+       NAS-Por = 5
 }
 ----
 
@@ -73,8 +73,8 @@ The following example over-writes the values for two attributes in the
 [source,unlang]
 ----
 update request {
-       &User-Name := "foo"
-       &Filter-Id := "bar"
+       User-Name := "foo"
+       Filter-Id := "bar"
 }
 ----
 
@@ -95,8 +95,8 @@ assigned to it.
 [source,unlang]
 ----
 request := {
-       &User-Name = "foo"
-       &Filter-Id = "bar"
+       User-Name = "foo"
+       Filter-Id = "bar"
 }
 ----
 === Conditionally Over-writing attributes in a list: =
@@ -107,8 +107,8 @@ The following example conditionally over-writes the values for two attributes in
 [source,unlang]
 ----
 update request {
-       &User-Name = "foo"
-       &Filter-Id = "bar"
+       User-Name = "foo"
+       Filter-Id = "bar"
 }
 ----
 
index 57cefa864462291a9d0e1765b8d1cd39738bacb6..daf41ca59af96eea9a9292afa98fa771242a6664 100644 (file)
@@ -25,8 +25,8 @@ Tmp-String-0 := "Caipirinha"
 Framed-IP-Address := 192.0.2.1
 
 reply += {
-       &Reply-Message = "The length of %{control.Tmp-String-0} is %length(&control.Tmp-String-0)"
-       &Reply-Message = "The length of %{control.Framed-IP-Address} is %length(&control.Framed-IP-Address)"
+       Reply-Message = "The length of %{control.Tmp-String-0} is %length(&control.Tmp-String-0)"
+       Reply-Message = "The length of %{control.Framed-IP-Address} is %length(&control.Framed-IP-Address)"
 }
 ----
 
@@ -130,10 +130,10 @@ Evaluates the string as an expansion, and returns the result.  The main differen
 
 [source,unlang]
 ----
-if (&User-Name == "bob") {
-    &request.Tmp-String-0 := "&User-Name"
+if (User-Name == "bob") {
+    request.Tmp-String-0 := "&User-Name"
 } else {
-    &request.Tmp-String-0 := "not bob!"
+    request.Tmp-String-0 := "not bob!"
 }
 
 reply.Reply-Message := "%eval(&request.Tmp-String-0}"
@@ -276,13 +276,13 @@ group {
     date tomorrow
     time_delta time_of_day
 
-    &now := %time('request')
+    now := %time('request')
 
     #  We are this many seconds into one day
-    &time_of_day := &now % (time_delta) 1d
+    time_of_day := &now % (time_delta) 1d
 
     # calculate the start of today, and then add one day to that
-    &tomorrow := &now - &time_of_day + (time_delta) 1d
+    tomorrow := &now - &time_of_day + (time_delta) 1d
 }
 ----
 
@@ -298,16 +298,16 @@ group {
     date tomorrow
     time_delta time_of_day
 
-    &now := %time('request')
+    now := %time('request')
 
     #  We are this many seconds into one day
-    &time_of_day := &now % (time_delta) 1d
+    time_of_day := &now % (time_delta) 1d
 
     # calculate the start of today, and then add one day to that
-    &tomorrow := &now - &time_of_day + (time_delta) 1d
+    tomorrow := &now - &time_of_day + (time_delta) 1d
 
     #  add in the time zone offset
-    &tomorrow += %time('offset')
+    tomorrow += %time('offset')
 }
 ----
 
index 520016e2d62c81f4dce6072a3a354400ab734e0d..b4666cb56024643e6e94095dad92c7a110787b9b 100644 (file)
@@ -14,14 +14,14 @@ expanded string.  If you need to concatenate strings together in a policy, just
 [source,unlang]
 ----
 control += {
-       &Tmp-String-0 = "aaa"
-       &Tmp-String-0 = "bb"
-       &Tmp-String-0 = "c"
+       Tmp-String-0 = "aaa"
+       Tmp-String-0 = "bb"
+       Tmp-String-0 = "c"
 }
 
 reply += {
-    &Reply-Message = "%concat(%{control.Tmp-String-0[*]}, ', ')"
-    &Reply-Message = "%concat(%{control.Tmp-String-0[*]}, ',')"
+    Reply-Message = "%concat(%{control.Tmp-String-0[*]}, ', ')"
+    Reply-Message = "%concat(%{control.Tmp-String-0[*]}, ',')"
 }
 ----
 
index 701a3e1918d3b75cbd37d872e5a680d881853c2b..34a7034aafc238022ffd467b3bcedb1eb4e74328 100644 (file)
@@ -94,7 +94,7 @@ Quote URL special characters.
 ----
 control.Tmp-String-0 := "http://example.org/"
 reply += {
-       &Reply-Message = "The urlquote of %{control.Tmp-String-0} is %urlquote(%{control.Tmp-String-0})"
+       Reply-Message = "The urlquote of %{control.Tmp-String-0} is %urlquote(%{control.Tmp-String-0})"
 }
 ----
 
@@ -116,7 +116,7 @@ Unquote URL special characters.
 ----
 control.Tmp-String-0 := "http%%3A%%2F%%2Fexample.org%%2F" # Attention for the double %.
 reply += {
-       &Reply-Message = "The urlunquote of %{control.Tmp-String-0} is %urlunquote(%{control.Tmp-String-0})"
+       Reply-Message = "The urlunquote of %{control.Tmp-String-0} is %urlunquote(%{control.Tmp-String-0})"
 }
 ----
 
index fde19d7052c74bda2ef243186ef67894d59f1b54..b0770e28c388e02bf9a42823b575e61f021aabe4 100644 (file)
@@ -19,14 +19,14 @@ expanded string.  If you need to concatenate strings together in a policy, just
 [source,unlang]
 ----
 control += {
-       &Tmp-String-0 = "aaa"
-       &Tmp-String-0 = "bb"
-       &Tmp-String-0 = "c"
+       Tmp-String-0 = "aaa"
+       Tmp-String-0 = "bb"
+       Tmp-String-0 = "c"
 }
 
 reply += {
-    &Reply-Message = "%concat(%{control.Tmp-String-0[*]}, ', ')"
-    &Reply-Message = "%concat(%{control.Tmp-String-0[*]}, ',')"
+    Reply-Message = "%concat(%{control.Tmp-String-0[*]}, ', ')"
+    Reply-Message = "%concat(%{control.Tmp-String-0[*]}, ',')"
 }
 ----
 
index e46236a632a465ffe34b71306a645f85ba79d49f..ce8cdf74a86f1591ca56fa4f0fd999668f88a3d5 100644 (file)
@@ -27,7 +27,7 @@ call syntax is for that function.
 .Example
 [source,unlang]
 ----
-if (&User-Name == %md5(&NAS-Identifier)) {
+if (User-Name == %md5(&NAS-Identifier)) {
     reject
 }
 ----
index 59b442d8ecf81de8a3ab50ec75ebb63b657db03a..6a0511768e08f503954a3c22da779cef1bd57b7a 100644 (file)
@@ -21,8 +21,8 @@ control.Tmp-String-1 := "Caipirinha"
 reply.control.Tmp-Octets-0 := "%hmacmd5(%{control.Tmp-String-0} %{control.Tmp-String-1})"
 
 reply += {
-    &Reply-Message = "The HMAC-MD5 of %{control.Tmp-String-1} in octets is %{control.Tmp-Octets-0}"
-    &Reply-Message = "The HMAC-MD5 of %{control.Tmp-String-1} in hex is %hex(control.Tmp-Octets-0)"
+    Reply-Message = "The HMAC-MD5 of %{control.Tmp-String-1} in octets is %{control.Tmp-Octets-0}"
+    Reply-Message = "The HMAC-MD5 of %{control.Tmp-String-1} in hex is %hex(control.Tmp-Octets-0)"
 }
 ----
 
@@ -48,8 +48,8 @@ control.Tmp-String-1 := "Caipirinha"
 control.Tmp-Octets-0 := "%hmacsha1(%{control.Tmp-String-0}, %{control.Tmp-String-1})"
 
 reply += {
-    &Reply-Message = "The HMAC-SHA1 of %{control.Tmp-String-1} in octets is %{control.Tmp-Octets-0}"
-    &Reply-Message = "The HMAC-SHA1 of %{control.Tmp-String-1} in hex is %hex(control.Tmp-Octets-0}"
+    Reply-Message = "The HMAC-SHA1 of %{control.Tmp-String-1} in octets is %{control.Tmp-Octets-0}"
+    Reply-Message = "The HMAC-SHA1 of %{control.Tmp-String-1} in hex is %hex(control.Tmp-Octets-0}"
 }
 ----
 
@@ -73,8 +73,8 @@ result is binary data.
 ----
 control.Tmp-String-0 := "Caipirinha"
 reply += {
-    &Reply-Message = "md5 of %{control.Tmp-String-0} is octal=%md5(%{control.Tmp-String-0})"
-    &Reply-Message = "md5 of %{control.Tmp-String-0} is hex=%hex(%md5(%{control.Tmp-String-0}))"
+    Reply-Message = "md5 of %{control.Tmp-String-0} is octal=%md5(%{control.Tmp-String-0})"
+    Reply-Message = "md5 of %{control.Tmp-String-0} is hex=%hex(%md5(%{control.Tmp-String-0}))"
 }
 ----
 
@@ -121,8 +121,8 @@ families of digest functions.
 ----
 control.Tmp-String-0 := "Caipirinha"
 reply += {
-    &Reply-Message = "The md5 of %{control.Tmp-String-0} in octal is %md5(%{control.Tmp-String-0}}"
-    &Reply-Message = "The md5 of %{control.Tmp-String-0} in hex is %hex(%md5(%{control.Tmp-String-0}}}"
+    Reply-Message = "The md5 of %{control.Tmp-String-0} in octal is %md5(%{control.Tmp-String-0}}"
+    Reply-Message = "The md5 of %{control.Tmp-String-0} in hex is %hex(%md5(%{control.Tmp-String-0}}}"
 }
 ----
 
index dfbf48b6e6767c6e29179f3fb46a8d66d522c327..ac31cca2b56216b55ef9c68293af2faade4a8add 100644 (file)
@@ -50,7 +50,7 @@ It returns the number of attributes which were decoded.
 .Output
 
 ```
-Relay-Agent-Information.Circuit-Id = 0xabcdef, &Relay-Agent-Information.Remote-Id = 0x010203040506
+Relay-Agent-Information.Circuit-Id = 0xabcdef, Relay-Agent-Information.Remote-Id = 0x010203040506
 User-Name = "ABCD"
 ```
 
@@ -69,8 +69,8 @@ It returns the raw encoded data
 
 [source,unlang]
 ----
-%dhcpv4.encode("&Relay-Agent-Information.Circuit-Id = 0xabcdef, &Relay-Agent-Information.Remote-Id = 0x010203040506")
-%radius.encode("&User-Name = 'ABCD'")
+%dhcpv4.encode("Relay-Agent-Information.Circuit-Id = 0xabcdef, Relay-Agent-Information.Remote-Id = 0x010203040506")
+%radius.encode("User-Name = 'ABCD'")
 Tmp-Octets-1 := %dhcpv4.encode(&request.Relay-Agent-Information.[*])
 ----
 
index e4363ff1baadf70568832a5b8b9fee93c74bafaf..2472fa665050e451d6c0954d0d9a6b7735c8922a 100644 (file)
@@ -21,8 +21,8 @@ braces containing the body of the policy
 
 ------------------------------------------------
 a_policy {
-       if (&User-Name =~ /@([\w.+])/) {
-               &reply.Reply-Message := "Hello remote %{User-Name}"
+       if (User-Name =~ /@([\w.+])/) {
+               reply.Reply-Message := "Hello remote %{User-Name}"
        }
 }
 ------------------------------------------------
index 04bc770a39d6f8b1a21c4c75127618646179c271..697735299c598c1c35ca437ac8c203e59dda184e 100644 (file)
@@ -33,7 +33,7 @@ listen {
 }
 
 authorize {
-    &control.Clearext-Password := "hello"
+    control.Clearext-Password := "hello"
     pap
 }