Bug 1822876: Add H3 ECH Telemetry. r=kershaw,necko-reviewers
This patch adds telemetry which records when H3 connections succeed / fail
and what kind of ECH they used. Our H3 ECH tests are extended to test these
different modes and that the telemetry is recorded correctly.
Differential Revision:
https://phabricator.services.mozilla.com/D172813
/* -*- 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
* https://w3c.github.io/IndexedDB/#idbtransaction
* https://w3c.github.io/IndexedDB/#enumdef-idbtransactionmode
*/
enum IDBTransactionMode {
"readonly",
"readwrite",
// The "readwriteflush" mode is only available when the
// |dom.indexedDB.experimental| pref returns
// true. This mode is not yet part of the standard.
"readwriteflush",
"cleanup",
"versionchange"
};
[Exposed=(Window,Worker)]
interface IDBTransaction : EventTarget {
[Throws]
readonly attribute IDBTransactionMode mode;
[SameObject] readonly attribute IDBDatabase db;
readonly attribute DOMException? error;
[Throws]
IDBObjectStore objectStore (DOMString name);
[Throws]
undefined commit();
[Throws]
undefined abort();
attribute EventHandler onabort;
attribute EventHandler oncomplete;
attribute EventHandler onerror;
};
// This seems to be custom
partial interface IDBTransaction {
readonly attribute DOMStringList objectStoreNames;
};