For more information regarding the security incident at F5, the actions we are taking to address it, and our ongoing efforts to protect our customers, click here.

Forum Discussion

Stan_Ward's avatar
Stan_Ward
Icon for Altocumulus rankAltocumulus
Oct 07, 2016

Build up client proxy in APM VPE

How can I build the string in the APM VPE from a passed variable? I can get the string without the value, or the value without the string, or the string with the [mcget...] text imbedded, or a TCL error... (I'm pretty sure that TCL quoting is FM)

session.custom.client_proxy contains either a 0 or a 1, and the resulting string should be:

 1 

I currently have this as the expression in the VPE for the resource assignment:

config.connectivity_resource_network_access./Common/GE_VPN_ST_na_res.client_proxy_settings =
expr { " [mcget {session.custom.client_proxy}] "}

or this:

config.connectivity_resource_network_access./Common/GE_VPN_ST_na_res.client_proxy_settings =
expr { " "[mcget {session.custom.client_proxy}]" " }

or this:

config.connectivity_resource_network_access./Common/GE_VPN_ST_na_res.client_proxy_settings =
expr {  [mcget {session.custom.client_proxy}] }

or this:

config.connectivity_resource_network_access./Common/GE_VPN_ST_na_res.client_proxy_settings =
return {  [mcget {session.custom.client_proxy}]  }

All result in the following error in the APM log:

Variable Assignment Agent: In agent '/Common/GE_VPN_IC_v7-assign_resources_act_variable_assign_ag',
session variable 'config.connectivity_resource_network_access.VPN_res.client_proxy_settings' 
not created due to invalid TCL Expression

Whereas this:

config.connectivity_resource_network_access./Common/GE_VPN_ST_na_res.client_proxy_settings =
return { " [mcget {session.custom.client_proxy}] " }

Returns:

"[mcget {session.custom.client_proxy}]"

(I suspect that the XML tags get eaten by the browser displaying the Message Box it was in)

Help!

-- Stan

1 Reply

  • I recommend assigning the results of [mcget {session.custom.client_proxy}] to a variable, then using that variable in the return statement.

    set client_proxy [mcget {session.custom.client_proxy}]
    return "$client_proxy"