Type: Boolean
Returns True if the visitor is behind a firewall (either hardware or software based) that is blocking most ports from outbound traffic on the visitor’s machine. Returns False if the visitor’s machine is allowing outbound traffic on most ports.
This property is especially handy if your web site or application requires communication through ports other than the default HTTP ports, as is common with advanced streaming technologies.
Note: You must call the GetExtPropertiesEx method before checking the value of this property. This property requires the Enterprise Edition of BrowserHawk.
Important Note: A return value of False for this property does not necessarily mean that that visitor is not behind a hardware or software based firewall. What it means is that the visitor is not behind a firewall that is blocking outbound traffic from most ports. For example, it is possible the visitor is on a network protected by a firewall, but that their network is still allowing outbound traffic on most ports – in this case the return value is False even though there is a firewall present. For our purposes, you can think of the Firewall property as an indicator of whether you can likely stream content on various ports to the visitor.
Tip: See the portcheck.asp example located in your BrowserHawk directory for detailed information and examples on using this property.
Example:
<% set bhObj = Server.CreateObject("cyScape.browserObj")
bhObj.SetExtProperties "Firewall"
bhObj.GetExtPropertiesEx
%>
<html> A firewall is blocking outbound traffic on most ports?
<% = bhObj.Firewall %>
</html>
Special notes for this property:
The user must have images enabled for this check to work properly, otherwise the return value will be True regardless of the real setting for this property. You can also check the ImagesEnabled property if you wish to account for that situation.
This test relies on a properly configured Port Check Server.
Checking this property will result in a delay of approximately 3 seconds in the event that the visitor’s outbound ports are blocked (and in which case the return value will be True). You can change this timeout using the ExtPropFWTimeout property.
If the user’s JavaScript is disabled this property will not be available.
See Also: