tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

PWebIdentity.ipdl (2215B)


      1 /* This Source Code Form is subject to the terms of the Mozilla Public
      2  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
      3  * You can obtain one at http://mozilla.org/MPL/2.0/. */
      4 
      5 /*
      6  * IPC Transaction protocol for the FedCM DOM API.
      7  */
      8 
      9 include protocol PWindowGlobal;
     10 
     11 include "mozilla/dom/IdentityCredentialSerializationHelpers.h";
     12 
     13 using mozilla::dom::CredentialMediationRequirement from "mozilla/dom/CredentialManagementBinding.h";
     14 using mozilla::dom::IdentityCredentialDisconnectOptions from "mozilla/dom/IdentityCredentialBinding.h";
     15 using mozilla::dom::IdentityCredentialRequestOptions from "mozilla/dom/IdentityCredentialBinding.h";
     16 using mozilla::dom::IdentityProviderConfig from "mozilla/dom/IdentityCredentialBinding.h";
     17 using mozilla::dom::IdentityResolveOptions from "mozilla/dom/IdentityCredentialBinding.h";
     18 using mozilla::dom::LoginStatus from "mozilla/dom/LoginStatusBinding.h";
     19 
     20 [RefCounted] using class nsIURI from "mozilla/ipc/URIUtils.h";
     21 
     22 
     23 namespace mozilla {
     24 namespace dom {
     25 
     26 struct IPCIdentityCredential
     27 {
     28   nsString id;
     29   nsCString? token;
     30   bool isAutoSelected;
     31   nsCString configURL;
     32 };
     33 
     34 
     35 union WebIdentityGetCredentialResponse {
     36   nsresult;
     37   IPCIdentityCredential;
     38 };
     39 
     40 union OpenContinuationWindowResponse {
     41   nsresult;
     42   uint64_t;
     43 };
     44 
     45 async protocol PWebIdentity {
     46   manager PWindowGlobal;
     47 
     48   parent:
     49     async RequestCancel();
     50 
     51     async GetIdentityCredential(IdentityCredentialRequestOptions aOptions,
     52                                 CredentialMediationRequirement aMediationRequirement,
     53                                 bool aHasUserActivation)
     54       returns (WebIdentityGetCredentialResponse response);
     55 
     56     async DisconnectIdentityCredential(IdentityCredentialDisconnectOptions aOptions) returns (nsresult rv);
     57 
     58     async PreventSilentAccess() returns (nsresult rv);
     59 
     60     async SetLoginStatus(LoginStatus foo) returns (nsresult rv);
     61 
     62     async ResolveContinuationWindow(nsCString token, IdentityResolveOptions options) returns (nsresult rv);
     63 
     64     async IsActiveContinuationWindow() returns (bool result);
     65 
     66   child:
     67     async OpenContinuationWindow(nsIURI aContinueURI) returns (OpenContinuationWindowResponse response);
     68 
     69     async __delete__();
     70 };
     71 
     72 }
     73 }