FreeRADIUS InkBridge

The return Statement

Syntax
return

The return statement is used to exit a processing section such as recv Access-Request. Unlike the break statement, which only exits the current foreach loop, return unwinds past any enclosing foreach loop and exits the entire processing section or policy.

The return statement is not strictly necessary. It is mainly used to simplify the layout of unlang policies. If the return statement did not exist, then every if statement might need to have a matching else statement.

The return statement will also exit a policy which is defined in the policy { …​ } ` subsection. This behaviour allows policies to be treated as a function call. Any `return inside of the policy section will only return from that policy. The return will not return from the enclosing processing section which called the policy.

Example
sql
if (reply.Filter-Id == "hello") {
    return
}
...