| assets |
|
|
- |
| content |
|
|
- |
| docs |
|
|
- |
| GuardianClient.sys.mjs |
An HTTP Client to talk to the Guardian service.
Allows to enroll FxA users to the proxy service,
fetch a proxy pass and check if the user is a proxy user.
|
23628 |
- |
| 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.
|
3987 |
- |
| 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.
|
5041 |
- |
| IPPChannelFilter.sys.mjs |
IPPChannelFilter is a class that implements the nsIProtocolProxyChannelFilter
when active it will funnel all requests to its provided proxy.
the connection can be stopped
|
14278 |
- |
| IPPEnrollAndEntitleManager.sys.mjs |
This class manages the enrolling and entitlement.
|
9938 |
- |
| 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.
|
3754 |
- |
| 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 |
- |
| IPPOnboardingMessageHelper.sys.mjs |
This class handles in-panel continuous onboarding messages, including setting
the browser.ipProtection.onboardingMessageMask, a pref that gates messages
according to feature (general VPN, autostart, site exceptions) through bit mask
|
3237 |
- |
| IPPOptOutHelper.sys.mjs |
This class monitors the optedOut pref and if it sees an opted-out state, it
sets the state on IPProtectionService
|
1021 |
- |
| 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
Error
@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.
|
20784 |
- |
| IPProtection.sys.mjs |
IPProtectionWidget is the class for the singleton IPProtection.
It is a minimal manager for creating and removing a CustomizableUI widget
for IP protection features.
It maintains the state of the panels and updates them when the
panel is shown or hidden.
|
8957 |
- |
| IPProtectionAlertManager.sys.mjs |
Manages showing alerts for different VPN states
|
6725 |
- |
| IPProtectionHelpers.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.
|
3605 |
- |
| IPProtectionInfobarManager.sys.mjs |
Manages displaying bandwidth warning infobars when usage reaches
75% or 90% thresholds based on remaining bandwidth percentage.
|
3270 |
- |
| IPProtectionPanel.sys.mjs |
Manages updates for a IP Protection panelView in a given browser window.
|
24427 |
- |
| IPProtectionServerlist.sys.mjs |
This file contains functions that work on top of the RemoteSettings
Bucket for the IP Protection server list.
|
8547 |
- |
| 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} OPTED_OUT
The user has opted out from using VPN. The toolbar icon and panel should not be visible.
@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.
|
6738 |
- |
| IPProtectionToolbarButton.sys.mjs |
IPProtectionToolbarButton manages the IP Protection toolbar button
for a single browser window.
Each instance:
- Tracks location changes via a progress listener
- Updates the button icon according to the proxy state, proxy errors,
offline status, and site exclusions
- Handles the visual state of the toolbar button
|
11710 |
- |
| IPProtectionUsage.sys.mjs |
Service Class to observe and record IP protection usage.
When started it will observe all HTTP requests and record the
transfer sizes of requests and responses that are proxied through
the IP protection proxy.
It should be started when the IP protection proxy is active.
It should be stopped when we know all proxy requests have been completed.
It will record all Proxied Requests that match the isolation keys.
So after a connection is established, the isolation key should be added.
|
3141 |
- |
| IPPSignInWatcher.sys.mjs |
This class monitors the Sign-In state and triggers the update of the service
if needed.
|
1985 |
- |
| IPPStartupCache.sys.mjs |
Type Imports
@typedef {import("./GuardianClient.sys.mjs").Entitlement} Entitlement
@typedef {import("./GuardianClient.sys.mjs").ProxyUsage} ProxyUsage
|
6476 |
- |
| jar.mn |
|
1334 |
- |
| metrics.yaml |
|
3141 |
- |
| moz.build |
|
1374 |
- |
| tests |
|
|
- |