mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-25 19:25:43 +00:00
8e41b15452
MozReview-Commit-ID: 8tSl2kIQc1w --HG-- extra : rebase_source : c10839a0df68716b2370e15645470442b0b69922
93 lines
2.7 KiB
Plaintext
93 lines
2.7 KiB
Plaintext
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
/* 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 protocol PGMPContent;
|
|
include GMPTypes;
|
|
|
|
using GMPSessionMessageType from "gmp-decryption.h";
|
|
using GMPSessionType from "gmp-decryption.h";
|
|
using GMPDOMException from "gmp-decryption.h";
|
|
using GMPErr from "gmp-errors.h";
|
|
|
|
namespace mozilla {
|
|
namespace gmp {
|
|
|
|
async protocol PGMPDecryptor
|
|
{
|
|
manager PGMPContent;
|
|
child:
|
|
|
|
async Init(bool aDistinctiveIdentifierRequired,
|
|
bool aPersistentStateRequired);
|
|
|
|
async CreateSession(uint32_t aCreateSessionToken,
|
|
uint32_t aPromiseId,
|
|
nsCString aInitDataType,
|
|
uint8_t[] aInitData,
|
|
GMPSessionType aSessionType);
|
|
|
|
async LoadSession(uint32_t aPromiseId,
|
|
nsCString aSessionId);
|
|
|
|
async UpdateSession(uint32_t aPromiseId,
|
|
nsCString aSessionId,
|
|
uint8_t[] aResponse);
|
|
|
|
async CloseSession(uint32_t aPromiseId,
|
|
nsCString aSessionId);
|
|
|
|
async RemoveSession(uint32_t aPromiseId,
|
|
nsCString aSessionId);
|
|
|
|
async SetServerCertificate(uint32_t aPromiseId,
|
|
uint8_t[] aServerCert);
|
|
|
|
async Decrypt(uint32_t aId,
|
|
uint8_t[] aBuffer,
|
|
GMPDecryptionData aMetadata);
|
|
|
|
async DecryptingComplete();
|
|
|
|
parent:
|
|
async __delete__();
|
|
|
|
async SetDecryptorId(uint32_t aId);
|
|
|
|
async SetSessionId(uint32_t aCreateSessionToken,
|
|
nsCString aSessionId);
|
|
|
|
async ResolveLoadSessionPromise(uint32_t aPromiseId,
|
|
bool aSuccess);
|
|
|
|
async ResolvePromise(uint32_t aPromiseId);
|
|
|
|
async RejectPromise(uint32_t aPromiseId,
|
|
GMPDOMException aDOMExceptionCode,
|
|
nsCString aMessage);
|
|
|
|
async SessionMessage(nsCString aSessionId,
|
|
GMPSessionMessageType aMessageType,
|
|
uint8_t[] aMessage);
|
|
|
|
async ExpirationChange(nsCString aSessionId, double aSecondsSinceEpoch);
|
|
|
|
async SessionClosed(nsCString aSessionId);
|
|
|
|
async SessionError(nsCString aSessionId,
|
|
GMPDOMException aDOMExceptionCode,
|
|
uint32_t aSystemCode,
|
|
nsCString aMessage);
|
|
|
|
async Decrypted(uint32_t aId, GMPErr aResult, uint8_t[] aBuffer);
|
|
|
|
async Shutdown();
|
|
|
|
async BatchedKeyStatusChanged(nsCString aSessionId,
|
|
GMPKeyInformation[] aKeyInfos);
|
|
};
|
|
|
|
} // namespace gmp
|
|
} // namespace mozilla
|