Name Description Size Coverage
android -
docs -
fxa -
GuardianClient.sys.mjs An HTTP Client to talk to the Guardian service. Allows to enroll users to the proxy service, fetch a proxy pass and check if the user is a proxy user. 21329 -
IPPAuthProvider.sys.mjs Base class for IPProtection authentication providers. Subclasses should override all methods to provide a real implementation. The default implementations are safe no-ops that keep the service in an unauthenticated/inactive state. 1411 -
IPPAutoRestore.sys.mjs A helper that manages the auto-restore of the VPN connection on session restore. If the user had the VPN active before closing the browser and the session is being restored, this class will start the VPN again once the IPProtectionService reaches the READY state. 4131 -
IPPAutoStart.sys.mjs This class monitors the auto-start pref and if it sees a READY state, it calls `start()`. This is done only if the previous state was not a ACTIVE because, in that case, more likely the VPN on/off state is an user decision. 5198 -
IPPChannelFilter.sys.mjs The IPP Mode the default behavior of Channels 15763 -
IPPExceptionsManager.sys.mjs Manages site exceptions for IP Protection. It communicates with Services.perms to update the ipp-vpn permission type. Site exclusions are marked as permissions with DENY capabilities. While permissions related UI (eg. panels and dialogs) already handle changes to ipp-vpn, the intention of this class is to abstract methods for updating ipp-vpn as needed from other non-permissions related UI. 5572 -
IPPNetworkErrorObserver.sys.mjs Service Class to observe and record proxy-errors related to IP-Protection @fires IPPNetworkErrorObserver#"proxy-http-error" Fired when the Proxy has recieved the Connect Request and responded with a non-2xx HTTP status code 3701 -
IPPNetworkUtils.sys.mjs Provides network connectivity detection utilities for IP Protection. This class implements a comprehensive offline check using: - Services.io.offline (user-set offline mode) - CaptivePortalService (connected but captive portal blocking internet) - NetworkLinkService (physical network link status) 1738 -
IPPNimbusHelper.sys.mjs Note: If you add or modify the list of helpers, make sure to update the corresponding documentation in the `docs` folder as well. 1433 -
IPPProxyManager.sys.mjs A Type containing the states of the IPPProxyManager. @typedef {"not-ready" | "ready" | "activating" | "active" | "error" | "paused"} IPPProxyState An Object containing instances of the IPPProxyState @typedef {object} IPPProxyStates @property {string} NOT_READY The proxy is not ready because the main state machine is not in the READY state. @property {string} READY The proxy is ready to be activated. @property {string} ACTIVE The proxy is active. @property {string} ERROR An error occurred while the proxy was active. @property {string} PAUSED The VPN is paused i.e when the bandwidth limit is reached. Note: If you update this list of states, make sure to update the corresponding documentation in the `docs` folder as well. 23238 -
IPProtectionActivator.sys.mjs 1704 -
IPProtectionServerlist.sys.mjs This file contains functions that work on top of the RemoteSettings Bucket for the IP Protection server list. 10715 -
IPProtectionService.sys.mjs @typedef {object} IPProtectionStates List of the possible states of the IPProtectionService. @property {string} UNINITIALIZED The service has not been initialized yet. @property {string} UNAVAILABLE The user is not eligible (via nimbus) or still not signed in. No UI is available. @property {string} UNAUTHENTICATED The user is signed out but eligible (via nimbus). The panel should show the login view. @property {string} READY Ready to be activated. Note: If you update this list of states, make sure to update the corresponding documentation in the `docs` folder as well. 6062 -
IPPSessionPrefManager.sys.mjs @typedef {object} LazyModules @property {import("./IPPProxyManager.sys.mjs").IPPProxyManager} IPPProxyManager // ProxyManager @property {import("./IPPProxyManager.sys.mjs").IPPProxyStates} IPPProxyStates // Proxy States @property {import("../../modules/Preferences.sys.mjs").Preferences} Preferences // Pref Service 3014 -
IPPStartupCache.sys.mjs Type Imports @typedef {import("./GuardianClient.sys.mjs").Entitlement} Entitlement @typedef {import("./GuardianClient.sys.mjs").ProxyUsage} ProxyUsage 6687 -
metrics.yaml 3092 -
moz.build 1293 -
tests -