SQL Custom - MySQL
Rodrigo Prazim
rodrigoprazim at hotmail.com
Fri Sep 12 13:24:35 UTC 2025
Hello,
I am attempting to create a query to retrieve the last piece of information from a REGEX:
input_circuitid {
if ("%{reply:Packet-Type}" == 'Access-Accept') {
"%{sql:INSERT INTO ...
CASE \
WHEN '%{string:ADSL-Agent-Circuit-Id}' \
REGEXP '^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[0-9]{1,2})\\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[0-9]{1,2})/[0-9]+/[0-9]+/[A-Za-z0-9]+$' \
THEN SUBSTRING_INDEX('%{string:ADSL-Agent-Circuit-Id}', '/', -1) \
ELSE NULL \
END \
) \
ON DUPLICATE KEY UPDATE \
...
sn = CASE \
WHEN '%{string:ADSL-Agent-Circuit-Id}' \
REGEXP '^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[0-9]{1,2})\\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[0-9]{1,2})/[0-9]+/[0-9]+/[A-Za-z0-9]+$' \
THEN SUBSTRING_INDEX('%{string:ADSL-Agent-Circuit-Id}', '/', -1) \
ELSE sn \
END \
}"
}
}
However, FreeRadius interprets the curly braces "}" as the end of the statement.
REGEXP '^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[0-9]{1,2}
Is there any way for FreeRadius to understand that this does not close the instruction?
Sincerely,
Rodrigo Prazim
More information about the Freeradius-Users
mailing list