mirror of
https://github.com/roytam1/palemoon27.git
synced 2026-05-26 14:18:48 +00:00
76c2cfb906
- Bug 1232902. Update ANGLE to chromium/2592 (89d3d3cfad) - Bug 1251375. Update to ANGLE/2653 (98691dfd84) - bits of Bug 1225280. Update ANGLE to chromium/2572. (b5eeadcb4e) - Bug 1251375 - Cross compilation fixup. r=upstream (737d8f8554) - rename back (e1ef46b16a) - Bug 1261129: Make VP9 sample data const. r=kentuckyfriedtakahe (811eead31b) - Bug 1263839 - WebM is now actually a VP9 sample; r=me (c6568d6d98) - Bug 1263839: P2. Force re-run of VP9 benchmark based on a version check. r=kentuckyfriedtakahe (358409a235) - Bug 1235503 - Fix -Wunreachable-code warnings in dom/media/. r=jya (dc6bebb141) - Bug 1251184: [quicktime] P1. Report video/quicktime mimetype when sniffing. r=cpearce (056dda066a) - Bug 1251184: [quicktime] P2. Use external plugin if available over native playback. r=cpearce (6f34c09ab6) - Bug 1255050 - [1.1] Restrict media plugin decoder usage to Android ICS. r=snorp (ae801e040c) - Bug 1229657: [MSE] Returns NotSupportedError if mimetype is invalid or not supported. r=gerald (a81df7babf) - change errors returns (18b81f684e) - rearrange to match gecko code (333c4c5f3a) - Bug 1239607 - Let platform layer decide which codec to support and how to configure it. r=sotaro (63812a44d1) - Bug 1248507 - p1. Pass DecoderDoctorDiagnostics to PDMs&more - r=jya (4175551833) - Bug 1248507 - p2. DecoderDoctorDiagnostics boilerplate - r=jya (cb25b71956) - Bug 1208371 - Forward declare DOMMediaStream in HTMLMediaElement.h. r=jesup (896080a020) - Bug 1248507 - p3. Use DecoderDoctorDiagnostics - r=jya,bz (181966589e) - Bug 1248507 - p4. DecoderDoctor base console message - r=bz (c5704ad2fe) - Bug 1055776 - Move namespaceURI, prefix, localName from Node to Element; r=bz (ba7a18385d) - Bug 842818 - Expose WebCrypto API to workers r=baku (966e5f3e75) - Bug 1227790 - Update MediaKeyStatuses to include "released", "output-restricted" and "status-pending". r=bz (d9e7ddb298) - Bug 1256046 - Hide MozPowerManager from the Web; r=khuey,bzbarsky (ec1da24251) - Bug 1259581: Remove MOZ_MEDIA_NAVIGATOR. r=jesup (023a114462) - Bug 1254956 - Implement Node.rootNode. r=Ms2ger,smaug (0133a41059) - Bug 1264409 - Make last transaction ID available via nsIDOMWindowUtils, and pass transaction ID through MozAfterPaint. r=mattwoodrow,mrbkap (51184de1af)
233 lines
6.1 KiB
Plaintext
233 lines
6.1 KiB
Plaintext
/* -*- Mode: IDL; 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/.
|
|
*
|
|
* The origin of this IDL file is
|
|
* http://www.w3.org/TR/WebCryptoAPI/
|
|
*/
|
|
|
|
typedef DOMString KeyType;
|
|
typedef DOMString KeyUsage;
|
|
typedef DOMString NamedCurve;
|
|
typedef Uint8Array BigInteger;
|
|
|
|
/***** Algorithm dictionaries *****/
|
|
|
|
dictionary Algorithm {
|
|
required DOMString name;
|
|
};
|
|
|
|
dictionary AesCbcParams : Algorithm {
|
|
required BufferSource iv;
|
|
};
|
|
|
|
dictionary AesCtrParams : Algorithm {
|
|
required BufferSource counter;
|
|
[EnforceRange] required octet length;
|
|
};
|
|
|
|
dictionary AesGcmParams : Algorithm {
|
|
required BufferSource iv;
|
|
BufferSource additionalData;
|
|
[EnforceRange] octet tagLength;
|
|
};
|
|
|
|
dictionary HmacImportParams : Algorithm {
|
|
required AlgorithmIdentifier hash;
|
|
};
|
|
|
|
dictionary Pbkdf2Params : Algorithm {
|
|
required BufferSource salt;
|
|
[EnforceRange] required unsigned long iterations;
|
|
required AlgorithmIdentifier hash;
|
|
};
|
|
|
|
dictionary RsaHashedImportParams {
|
|
required AlgorithmIdentifier hash;
|
|
};
|
|
|
|
dictionary AesKeyGenParams : Algorithm {
|
|
[EnforceRange] required unsigned short length;
|
|
};
|
|
|
|
dictionary HmacKeyGenParams : Algorithm {
|
|
required AlgorithmIdentifier hash;
|
|
[EnforceRange] unsigned long length;
|
|
};
|
|
|
|
dictionary RsaHashedKeyGenParams : Algorithm {
|
|
[EnforceRange] required unsigned long modulusLength;
|
|
required BigInteger publicExponent;
|
|
required AlgorithmIdentifier hash;
|
|
};
|
|
|
|
dictionary RsaOaepParams : Algorithm {
|
|
BufferSource label;
|
|
};
|
|
|
|
dictionary RsaPssParams : Algorithm {
|
|
[EnforceRange] required unsigned long saltLength;
|
|
};
|
|
|
|
dictionary DhKeyGenParams : Algorithm {
|
|
required BigInteger prime;
|
|
required BigInteger generator;
|
|
};
|
|
|
|
dictionary EcKeyGenParams : Algorithm {
|
|
required NamedCurve namedCurve;
|
|
};
|
|
|
|
dictionary AesDerivedKeyParams : Algorithm {
|
|
[EnforceRange] required unsigned long length;
|
|
};
|
|
|
|
dictionary HmacDerivedKeyParams : HmacImportParams {
|
|
[EnforceRange] unsigned long length;
|
|
};
|
|
|
|
dictionary EcdhKeyDeriveParams : Algorithm {
|
|
required CryptoKey public;
|
|
};
|
|
|
|
dictionary DhKeyDeriveParams : Algorithm {
|
|
required CryptoKey public;
|
|
};
|
|
|
|
dictionary DhImportKeyParams : Algorithm {
|
|
required BigInteger prime;
|
|
required BigInteger generator;
|
|
};
|
|
|
|
dictionary EcdsaParams : Algorithm {
|
|
required AlgorithmIdentifier hash;
|
|
};
|
|
|
|
dictionary EcKeyImportParams : Algorithm {
|
|
NamedCurve namedCurve;
|
|
};
|
|
|
|
dictionary HkdfParams : Algorithm {
|
|
required AlgorithmIdentifier hash;
|
|
required BufferSource salt;
|
|
required BufferSource info;
|
|
};
|
|
|
|
/***** JWK *****/
|
|
|
|
dictionary RsaOtherPrimesInfo {
|
|
// The following fields are defined in Section 6.3.2.7 of JSON Web Algorithms
|
|
required DOMString r;
|
|
required DOMString d;
|
|
required DOMString t;
|
|
};
|
|
|
|
dictionary JsonWebKey {
|
|
// The following fields are defined in Section 3.1 of JSON Web Key
|
|
required DOMString kty;
|
|
DOMString use;
|
|
sequence<DOMString> key_ops;
|
|
DOMString alg;
|
|
|
|
// The following fields are defined in JSON Web Key Parameters Registration
|
|
boolean ext;
|
|
|
|
// The following fields are defined in Section 6 of JSON Web Algorithms
|
|
DOMString crv;
|
|
DOMString x;
|
|
DOMString y;
|
|
DOMString d;
|
|
DOMString n;
|
|
DOMString e;
|
|
DOMString p;
|
|
DOMString q;
|
|
DOMString dp;
|
|
DOMString dq;
|
|
DOMString qi;
|
|
sequence<RsaOtherPrimesInfo> oth;
|
|
DOMString k;
|
|
};
|
|
|
|
|
|
/***** The Main API *****/
|
|
|
|
interface CryptoKey {
|
|
readonly attribute KeyType type;
|
|
readonly attribute boolean extractable;
|
|
[Cached, Constant, Throws] readonly attribute object algorithm;
|
|
[Cached, Constant, Frozen] readonly attribute sequence<KeyUsage> usages;
|
|
};
|
|
|
|
dictionary CryptoKeyPair {
|
|
required CryptoKey publicKey;
|
|
required CryptoKey privateKey;
|
|
};
|
|
|
|
typedef DOMString KeyFormat;
|
|
typedef (object or DOMString) AlgorithmIdentifier;
|
|
|
|
[Exposed=(Window,Worker)]
|
|
interface SubtleCrypto {
|
|
[Throws]
|
|
Promise<any> encrypt(AlgorithmIdentifier algorithm,
|
|
CryptoKey key,
|
|
BufferSource data);
|
|
[Throws]
|
|
Promise<any> decrypt(AlgorithmIdentifier algorithm,
|
|
CryptoKey key,
|
|
BufferSource data);
|
|
[Throws]
|
|
Promise<any> sign(AlgorithmIdentifier algorithm,
|
|
CryptoKey key,
|
|
BufferSource data);
|
|
[Throws]
|
|
Promise<any> verify(AlgorithmIdentifier algorithm,
|
|
CryptoKey key,
|
|
BufferSource signature,
|
|
BufferSource data);
|
|
[Throws]
|
|
Promise<any> digest(AlgorithmIdentifier algorithm,
|
|
BufferSource data);
|
|
|
|
[Throws]
|
|
Promise<any> generateKey(AlgorithmIdentifier algorithm,
|
|
boolean extractable,
|
|
sequence<KeyUsage> keyUsages );
|
|
[Throws]
|
|
Promise<any> deriveKey(AlgorithmIdentifier algorithm,
|
|
CryptoKey baseKey,
|
|
AlgorithmIdentifier derivedKeyType,
|
|
boolean extractable,
|
|
sequence<KeyUsage> keyUsages );
|
|
[Throws]
|
|
Promise<any> deriveBits(AlgorithmIdentifier algorithm,
|
|
CryptoKey baseKey,
|
|
unsigned long length);
|
|
|
|
[Throws]
|
|
Promise<any> importKey(KeyFormat format,
|
|
object keyData,
|
|
AlgorithmIdentifier algorithm,
|
|
boolean extractable,
|
|
sequence<KeyUsage> keyUsages );
|
|
[Throws]
|
|
Promise<any> exportKey(KeyFormat format, CryptoKey key);
|
|
|
|
[Throws]
|
|
Promise<any> wrapKey(KeyFormat format,
|
|
CryptoKey key,
|
|
CryptoKey wrappingKey,
|
|
AlgorithmIdentifier wrapAlgorithm);
|
|
|
|
[Throws]
|
|
Promise<any> unwrapKey(KeyFormat format,
|
|
BufferSource wrappedKey,
|
|
CryptoKey unwrappingKey,
|
|
AlgorithmIdentifier unwrapAlgorithm,
|
|
AlgorithmIdentifier unwrappedKeyAlgorithm,
|
|
boolean extractable,
|
|
sequence<KeyUsage> keyUsages );
|
|
};
|
|
|