Firefox

Used by: Firefox, Thunderbird, Tor Browser.

Helper library

The checker runs this engine's own PAC helper library, copied verbatim at 3f73c528a1ae (MPL-2.0). Upstream source.

Version ranges and quirks

Later ranges list only what changes compared with the range before.

Firefox (all)

Profile of current Firefox releases; older versions are not modelled separately.

BehaviourValueSource
alert() outputconsolecode, verified 2026-10-04
Non-ASCII result rejectedfalse
The returned string is used as is; non-ASCII characters are not rejected.
code, verified 2026-10-04
DNS lookupssynccode, verified 2026-10-04
dnsResolve is IPv4 onlyfalse
Whether dnsResolve can return IPv6 addresses in current Firefox has not been checked.
expert, unverified
JavaScript level acceptedlatestcode, verified 2026-10-04
Calls FindProxyForURLEx if definedfalsecode, verified 2026-10-04
Microsoft *Ex functionsfalsecode, verified 2026-10-04
Global variables persist between callstrueexpert, unverified
Host lower-cased by the enginetrue
The host comes from the parsed request URL, which is lower-case.
expert, unverified
myIpAddress() sourcerouting_ipv4code, verified 2026-10-04
Native (C++) bindingsdnsResolve, myIpAddress, alertcode, verified 2026-10-04
On exceptiondirect
If FindProxyForURL throws, the request goes DIRECT.
code, verified 2026-10-04
On non-string / undefined resultdirect
A result that is not a string (for example a missing return) makes the request go DIRECT.
code, verified 2026-10-04
URL passed to FindProxyForURLall_path_query
Firefox removes path and query for every scheme, not only https (preference network.proxy.autoconfig_url.include_path, default false).
code, verified 2026-10-04

Function availability

Derived from each engine's vendored helper library plus its native bindings (see engines).
Functionchromium
<=51
chromium
>=52
firefox
all
pacparser
<=1.4.6
pacparser
1.5.0
pacparser
>=1.5.1
reference
all
isPlainHostNameyesyesyesyesyesyesyes
dnsDomainIsyesyesyesyesyesyesyes
localHostOrDomainIsyesyesyesyesyesyesyes
isResolvableyesyesyesyesyesyesyes
isInNetyesyesyesyesyesyesyes
dnsResolveyesyesyesyesyesyesyes
myIpAddressyesyesyesyesyesyesyes
dnsDomainLevelsyesyesyesyesyesyesyes
shExpMatchyesyesyesyesyesyesyes
weekdayRangeyesyesyesyesyesyesyes
dateRangeyesyesyesyesyesyesyes
timeRangeyesyesyesyesyesyesyes
alertyesyesyesnonoyesyes
dnsResolveExyesyesnoyesyesyesno
myIpAddressExyesyesnoyesyesyesno
isResolvableExyesyesnoyesyesyesno
isInNetExyesyesnoyesyesyesno
sortIpAddressListyesyesnonononono

Rules with notes for firefox