mirror of
https://github.com/classilla/tenfourfox.git
synced 2025-02-20 20:29:15 +00:00
93 lines
2.4 KiB
Plaintext
93 lines
2.4 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 GMPMediaKeyStatus 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:
|
||
|
|
||
|
Init();
|
||
|
|
||
|
CreateSession(uint32_t aCreateSessionToken,
|
||
|
uint32_t aPromiseId,
|
||
|
nsCString aInitDataType,
|
||
|
uint8_t[] aInitData,
|
||
|
GMPSessionType aSessionType);
|
||
|
|
||
|
LoadSession(uint32_t aPromiseId,
|
||
|
nsCString aSessionId);
|
||
|
|
||
|
UpdateSession(uint32_t aPromiseId,
|
||
|
nsCString aSessionId,
|
||
|
uint8_t[] aResponse);
|
||
|
|
||
|
CloseSession(uint32_t aPromiseId,
|
||
|
nsCString aSessionId);
|
||
|
|
||
|
RemoveSession(uint32_t aPromiseId,
|
||
|
nsCString aSessionId);
|
||
|
|
||
|
SetServerCertificate(uint32_t aPromiseId,
|
||
|
uint8_t[] aServerCert);
|
||
|
|
||
|
Decrypt(uint32_t aId,
|
||
|
uint8_t[] aBuffer,
|
||
|
GMPDecryptionData aMetadata);
|
||
|
|
||
|
DecryptingComplete();
|
||
|
|
||
|
parent:
|
||
|
__delete__();
|
||
|
|
||
|
SetSessionId(uint32_t aCreateSessionToken,
|
||
|
nsCString aSessionId);
|
||
|
|
||
|
ResolveLoadSessionPromise(uint32_t aPromiseId,
|
||
|
bool aSuccess);
|
||
|
|
||
|
ResolvePromise(uint32_t aPromiseId);
|
||
|
|
||
|
RejectPromise(uint32_t aPromiseId,
|
||
|
GMPDOMException aDOMExceptionCode,
|
||
|
nsCString aMessage);
|
||
|
|
||
|
SessionMessage(nsCString aSessionId,
|
||
|
GMPSessionMessageType aMessageType,
|
||
|
uint8_t[] aMessage);
|
||
|
|
||
|
ExpirationChange(nsCString aSessionId, double aExpiryTime);
|
||
|
|
||
|
SessionClosed(nsCString aSessionId);
|
||
|
|
||
|
SessionError(nsCString aSessionId,
|
||
|
GMPDOMException aDOMExceptionCode,
|
||
|
uint32_t aSystemCode,
|
||
|
nsCString aMessage);
|
||
|
|
||
|
KeyStatusChanged(nsCString aSessionId, uint8_t[] aKey,
|
||
|
GMPMediaKeyStatus aStatus);
|
||
|
|
||
|
SetCaps(uint64_t aCaps);
|
||
|
|
||
|
Decrypted(uint32_t aId, GMPErr aResult, uint8_t[] aBuffer);
|
||
|
|
||
|
async Shutdown();
|
||
|
};
|
||
|
|
||
|
} // namespace gmp
|
||
|
} // namespace mozilla
|