}
# Check failure when no previous capture - full capture
-if ("%{regex:}") {
+if (%regex()) {
test_fail
}
&request -= &Module-Failure-Message[*]
# Check failure when no previous capture - named group
-if ("%regex(foo)") {
+if (%regex(foo)) {
test_fail
}
&request -= &Module-Failure-Message[*]
# Check failure when no previous capture - numbered group
-if ("%regex(%{Tmp-Integer-1})") {
+if (%regex(%{Tmp-Integer-1})) {
test_fail
}
# PRE: if
#
-"%{map:&TLS-Certificate.Issuer = 'foo'}"
+%map("&TLS-Certificate.Issuer = 'foo'")
-if (!&TLS-Certificate.Issuer) {
+if !(&TLS-Certificate.Issuer == 'foo') {
test_fail
}
#
&Tmp-String-0 := "request.Tmp-Group-0.Tmp-String-0 := 'testing123'"
-if (!("%map(%{Tmp-String-0})" == 1)) {
+if (!(%map("%{Tmp-String-0}") == 1)) {
test_fail
}
-if (!("%map(%{Tmp-String-0})" == 1)) {
+if (!(%map("%{Tmp-String-0}") == 1)) {
test_fail
}
-if (!(%{map:request.Tmp-Group-0.Tmp-String-1 := 'testing000'} == 1)) {
+if (!(%map("request.Tmp-Group-0.Tmp-String-1 := 'testing000'") == 1)) {
test_fail
}
}
-&Tmp-Octets-0 := "%{pack:%{Framed-IP-Address}%{NAS-Port}%{NAS-IP-Address}}"
+&Tmp-Octets-0 := %pack(%{Framed-IP-Address}%{NAS-Port}%{NAS-IP-Address})
+
+if (!(&Tmp-Octets-0 == 0x7f000001000008407f000002)) {
+ test_fail
+}
+
+#
+# With octet addition, we don't need %pack() any more!
+#
+&Tmp-Octets-0 := (octets) &Framed-IP-Address + (octets) &NAS-Port + (octets) &NAS-IP-Address
if (!(&Tmp-Octets-0 == 0x7f000001000008407f000002)) {
test_fail
# Hex encoded SSHA password
#
&control := {
- &Password.With-Header = "{ssha}%{hex:%{sha1:%{User-Password}%{Tmp-String-0}}}%hex(%{Tmp-String-0})"
+ &Password.With-Header = "{ssha}%hex(%sha1(%{User-Password}%{Tmp-String-0}))%hex(%{Tmp-String-0})"
}
pap.authorize
# Base64 encoded SSHA password
#
&control := {
- &Tmp-String-1 = "%{hex:%{sha1:%{User-Password}%{Tmp-String-0}}}%hex(%{Tmp-String-0})"
+ &Tmp-String-1 = "%hex(%sha1(%{User-Password}%{Tmp-String-0}))%hex(%{Tmp-String-0})"
}
# To Binary
&control.Tmp-Octets-0 := "%bin(%{control.Tmp-String-1})"
# To Base64
-&control.Tmp-String-1 := "%(base64.encode:%{control.Tmp-Octets-0})"
+&control.Tmp-String-1 := "%base64.encode(%{control.Tmp-Octets-0})"
&control.Password.With-Header := "{ssha}%{control.Tmp-String-1}"
pap.authorize
# Base64 of Base64 encoded SSHA password
#
&control := {
- &Tmp-String-1 = "%{hex:%{sha1:%{User-Password}%{Tmp-String-0}}}%hex(%{Tmp-String-0})"
+ &Tmp-String-1 = "%hex(%sha1(%{User-Password}%{Tmp-String-0}))%hex(%{Tmp-String-0})"
}
# To Binary
&control.Tmp-Octets-0 := "%bin(%{control.Tmp-String-1})"
# To Base64
-&control.Tmp-String-1 := "{ssha}%(base64.encode:%{control.Tmp-Octets-0})"
-&control.Password.With-Header := "%(base64.encode:%{control.Tmp-String-1})"
+&control.Tmp-String-1 := "{ssha}%base64.encode(%{control.Tmp-Octets-0})"
+&control.Password.With-Header := "%base64.encode(%{control.Tmp-String-1})"
pap.authorize
pap.authenticate {
# Hex encoded SSHA2-512 password
#
&control += {
- &Password.With-Header = "{ssha512}%{hex:%{sha2_512:%{User-Password}%{Tmp-String-0}}}%hex(%{Tmp-String-0})"
+ &Password.With-Header = "{ssha512}%hex(%sha2_512(%{User-Password}%{Tmp-String-0}))%hex(%{Tmp-String-0})"
}
pap.authorize
#
# Base64 encoded SSHA2-512 password
#
-&control.Tmp-String-1 := "%{hex:%{sha2_512:%{User-Password}%{Tmp-String-0}}}%hex(%{Tmp-String-0})"
+&control.Tmp-String-1 := "%hex(%sha2_512(%{User-Password}%{Tmp-String-0}))%hex(%{Tmp-String-0})"
# To Binary
&control.Tmp-Octets-0 := "%bin(%{control.Tmp-String-1})"
# To Base64
-&control.Tmp-String-1 := "%(base64.encode:%{control.Tmp-Octets-0})"
+&control.Tmp-String-1 := "%base64.encode(%{control.Tmp-Octets-0})"
&control += {
&Password.With-Header = "{ssha512}%{control.Tmp-String-1}"
#
# Base64 of Base64 encoded SSHA2-512 password
#
-&control.Tmp-String-1 := "%{hex:%{sha2_512:%{User-Password}%{Tmp-String-0}}}%hex(%{Tmp-String-0})"
+&control.Tmp-String-1 := "%hex(%sha2_512(%{User-Password}%{Tmp-String-0}))%hex(%{Tmp-String-0})"
# To Binary
&control.Tmp-Octets-0 := "%bin(%{control.Tmp-String-1})"
&control.Tmp-String-1 := "{ssha512}%(base64.encode:%{control.Tmp-Octets-0})"
&control += {
- &Password.With-Header = "%(base64.encode:%{control.Tmp-String-1})"
+ &Password.With-Header = "%base64.encode(%{control.Tmp-String-1})"
}
pap.authorize
#
# Base64 of SHA2-384 password (in SHA2-Password)
#
-&control.Password.SHA2 := "%{hex:%sha2_384(%{User-Password})}"
+&control.Password.SHA2 := %hex(%sha2_384(%{User-Password}))
pap.authorize
pap.authenticate {
#
# Base64 of SHA2-256 password (in SHA2-256-Password)
#
-&control.Password.SHA2-256 := "%{hex:%sha2_256(%{User-Password})}"
+&control.Password.SHA2-256 := "%hex(%sha2_256(%{User-Password}))"
pap.authorize
pap.authenticate {
&Tmp-String-1 := "%urlunquote(%{Tmp-String-0})"
&request -= &Tmp-String-2[*]
-&Tmp-String-2 := "%{urlunquote:%%E,123}"
+&Tmp-String-2 := "%urlunquote(%%E,123)"
if (!(&Tmp-String-1 == &Tmp-String-0)) {
test_fail
test_fail
}
-if (!("%{eval:%{Tmp-Integer-0[1]}}" == 8)) {
+if (!(%eval(%{Tmp-Integer-0[1]}) == 8)) {
test_fail
}
#
# Check double expansion works
#
-if (!("%eval(%{Tmp-String-0})" == 'foo')) {
+if (!(%eval(%{Tmp-String-0}) == 'foo')) {
test_fail
}
#
# Using an attribute as a dynamic index for another attribute
#
-if (!("%{eval:\%{Tmp-String-1[%{Tmp-Integer-0[2]}]\}}" == 'bar')) {
+if (!(%eval("\%{Tmp-String-1[%{Tmp-Integer-0[2]}]}") == 'bar')) {
test_fail
}