/* This Source Code Form is subject to the terms of the Mozilla Public
* License , v . 2 . 0 . If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "nsISupports.idl"
[scriptable, uuid(b5fd5629-d04c-
4138 -
9529 -
9311 f291ecd4)]
interface nsICaptivePortalServiceCallback : nsISupports
{
/**
* Invoke callbacks after captive portal detection finished .
*/
void complete(in boolean success, in nsresult error);
};
/**
* Service used for captive portal detection .
* The service is only active in the main process . It is also available in the
* content process , but only to mirror the captive portal state from the main
* process .
*/
[scriptable, uuid(bdbe0555-fc3d-
4 f7b-
9205 -c309ceb2d641)]
interface nsICaptivePortalService : nsISupports
{
const long UNKNOWN =
0 ;
const long NOT_CAPTIVE =
1 ;
const long UNLOCKED_PORTAL =
2 ;
const long LOCKED_PORTAL =
3 ;
/**
* Called from XPCOM to trigger a captive portal recheck .
* A network request will only be performed if no other checks are currently
* ongoing .
* Will not do anything if called in the content process .
*/
void recheckCaptivePortal();
/**
* Returns the state of the captive portal .
*/
readonly attribute
long state;
%{C++
int32_t State() {
int32_t result = nsICaptivePortalService::UNKNOWN;
GetState(&result);
return result;
}
%}
/**
* Returns the time difference between NOW and the last time a request was
* completed in milliseconds .
*/
readonly attribute
unsigned long long lastChecked;
};
%{C++
/**
* This observer notification will be emitted when the captive portal state
* changes . After receiving it , the ContentParent will send an IPC message
* to the ContentChild , which will set the state in the captive portal service
* in the child .
*/
#define NS_IPC_CAPTIVE_PORTAL_SET_STATE
"ipc:network:captive-portal-set-state"
/**
* This notification will be emitted when the captive portal service has
* determined that we can connect to the internet .
* The service will pass either " captive " if there is an unlocked captive portal
* present , or " clear " if no captive portal was detected .
* Note : this notification only gets sent in the parent process .
*/
#define NS_CAPTIVE_PORTAL_CONNECTIVITY
"network:captive-portal-connectivity"
/**
* Similar to NS_CAPTIVE_PORTAL_CONNECTIVITY but only gets dispatched when
* the connectivity changes from UNKNOWN to NOT_CAPTIVE or from LOCKED_PORTAL
* to UNLOCKED_PORTAL .
*/
#define NS_CAPTIVE_PORTAL_CONNECTIVITY_CHANGED
"network:captive-portal-connectivity-changed"
%}
Messung V0.5 in Prozent C=97 H=97 G=96
¤ Dauer der Verarbeitung: 0.14 Sekunden
(vorverarbeitet am 2026-09-28)
¤
*© Formatika GbR, Deutschland