On Jul 5, 2017, at 3:07 AM, <adrian.p.smith@bt.com> <adrian.p.smith@bt.com> wrote:
We have config similar to:
if ( !(Cisco-SSG-Service-Info) && ("%{Tunnel-Type}" != "VLAN") ) {
First, you don't have to quote everything. Just: ... (Tunnel-Type != VLAN) will work.
and
if ( ("%{Acct-Status-Type}" == "Stop") && ("%{Tunnel-Type}" == "VLAN") && ("%{client:operator}" != "WLC") ) { ...
The same applies here. Attributes and their values don't need to be quoted. Only string expansions.
But are seeing error messages such as:
ERROR: Failed retrieving values required to evaluate condition
Then the attributes being looked at don't exist in the packet
So questions are:
1. Testing presence of an attribute I think is now "if ( &Cisco-SSG-Service-Info )" ?
Yes.
2. Can I test presence of and value of an attribute of a variable at the same time, i.e. "if (&Cisco-SSG-Service-Info = "fred" )" ?
You can do that, but if Cisco-SSG-Service-Info doesn'tt exist, it will result in the above error.
3. How can I now do "client:operator" ?
That still works. Alan DeKok.