Forum Discussion

Brent_Beachem_1's avatar
Brent_Beachem_1
Icon for Nimbostratus rankNimbostratus
Jun 06, 2006

Client API to determine if the SSL VPN connection is established

I have a customer that needs to make changes on a endpoint (computer) dependent upon the connection status of the F5 SSL VPN. In short, all I need to do is determine if the F5 SSL VPN (virtual modem doing PPP) is connected or not.

 

 

My idea was to use the Client SDK and windows scripting (JScript) to do an ActiveXObject on Firepass client API. I cannot find the object name anywhere in the documentation so it doesn't find the COM interface (IAppTunnelEx) any where. I hoped to used the CheckSession method to validate the connection was established.

 

 

I've even used the reference C++ code (build the VPNDisp.exe) and it fails to find the COM Object as well (VPNdisp resources->Dialog->IDD_VPNDISP_DIALOG gets an error: The ActiveX control “{F4B28355-8DA2-404C-BD96-B528BB4FEC5F }” is not registered on this computer. Register the control and try again.) OLE/COM browsers don't find this anywhere, although it may be hidden.

 

 

Again the customer (and my development setup) just goes to the SSL website and logs in. If the F5 virtual modem adapter is NOT present, it downloads and installs one. The web login creates the connection. I then run the various tests above and they all fail to get the ActiveX object.

 

 

All I need to do is validate the connection is up and running so if this won't work, does anyone have any other idea of how to do it?

 

 

Quick responses are greatly appreciated since this is time sensitive (tight deadline). Thanks!!!

 

 

  • For the unreferenced com object, you'll need to do a regsvr32 on the f5fpapi.dll thats included in the SDK.

     

     

    c:/> regsvr32 path_to_library\f5fpapi.dll

     

     

    This will add the interfaces into the registery and you'll be able to view them in your object browser or include them in your projects.

     

     

    As for the feasibility of your request though. I've looked a bit at the CheckSession command and I don't believe it does what you are wanting it to. I believe it is just a ping to keep a current session from timing out. I believe that if you load up an instance of the control into your application, you can only query the status of the existing control, not any other control loaded by other processes. I could be wrong about this but that's how it's looking to me.

     

     

    I'm forwarding this request on to the firepass team to get more info. We'll keep you posted.

     

     

    -Joe