mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-12-01 00:32:11 +00:00
59ecb94eef
The DNS cache will have a bunch of extra keys we use to separate entries in the hashtable. If these flags are not displayed in about:networking it will appear as though we have multiple entries for the same key in the cache, which is not true. They will differ based on these extra flags/keys. Differential Revision: https://phabricator.services.mozilla.com/D128888
156 lines
3.4 KiB
Plaintext
156 lines
3.4 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/. */
|
|
|
|
// This file defines dictionaries used by about:networking page.
|
|
|
|
dictionary SocketElement {
|
|
DOMString host = "";
|
|
unsigned long port = 0;
|
|
boolean active = false;
|
|
DOMString type = "";
|
|
double sent = 0;
|
|
double received = 0;
|
|
};
|
|
|
|
[GenerateConversionToJS]
|
|
dictionary SocketsDict {
|
|
sequence<SocketElement> sockets;
|
|
double sent = 0;
|
|
double received = 0;
|
|
};
|
|
|
|
dictionary HttpConnInfo {
|
|
unsigned long rtt = 0;
|
|
unsigned long ttl = 0;
|
|
DOMString protocolVersion = "";
|
|
};
|
|
|
|
dictionary DnsAndSockInfoDict {
|
|
boolean speculative = false;
|
|
};
|
|
|
|
dictionary HttpConnectionElement {
|
|
DOMString host = "";
|
|
unsigned long port = 0;
|
|
DOMString httpVersion = "";
|
|
boolean ssl = false;
|
|
sequence<HttpConnInfo> active;
|
|
sequence<HttpConnInfo> idle;
|
|
sequence<DnsAndSockInfoDict> dnsAndSocks;
|
|
};
|
|
|
|
[GenerateConversionToJS]
|
|
dictionary HttpConnDict {
|
|
sequence<HttpConnectionElement> connections;
|
|
};
|
|
|
|
dictionary WebSocketElement {
|
|
DOMString hostport = "";
|
|
unsigned long msgsent = 0;
|
|
unsigned long msgreceived = 0;
|
|
double sentsize = 0;
|
|
double receivedsize = 0;
|
|
boolean encrypted = false;
|
|
};
|
|
|
|
[GenerateConversionToJS]
|
|
dictionary WebSocketDict {
|
|
sequence<WebSocketElement> websockets;
|
|
};
|
|
|
|
dictionary DnsCacheEntry {
|
|
DOMString hostname = "";
|
|
sequence<DOMString> hostaddr;
|
|
DOMString family = "";
|
|
double expiration = 0;
|
|
boolean trr = false;
|
|
DOMString originAttributesSuffix = "";
|
|
DOMString flags = "";
|
|
};
|
|
|
|
[GenerateConversionToJS]
|
|
dictionary DNSCacheDict {
|
|
sequence<DnsCacheEntry> entries;
|
|
};
|
|
|
|
[GenerateConversionToJS]
|
|
dictionary DNSLookupDict {
|
|
sequence<DOMString> address;
|
|
DOMString error = "";
|
|
boolean answer = false;
|
|
};
|
|
|
|
dictionary SVCParam {
|
|
unsigned short type = 0;
|
|
};
|
|
|
|
dictionary SVCParamAlpn : SVCParam {
|
|
DOMString alpn = "";
|
|
};
|
|
|
|
dictionary SVCParamNoDefaultAlpn : SVCParam {
|
|
};
|
|
|
|
dictionary SVCParamPort : SVCParam {
|
|
unsigned short port = 0;
|
|
};
|
|
|
|
dictionary SVCParamIPv4Hint : SVCParam {
|
|
sequence<DOMString> address;
|
|
};
|
|
|
|
dictionary SVCParamIPv6Hint : SVCParam {
|
|
sequence<DOMString> address;
|
|
};
|
|
|
|
dictionary SVCParamEchConfig : SVCParam {
|
|
DOMString echConfig = "";
|
|
};
|
|
|
|
dictionary SVCParamODoHConfig : SVCParam {
|
|
DOMString ODoHConfig = "";
|
|
};
|
|
|
|
dictionary HTTPSRecord {
|
|
unsigned short priority = 0;
|
|
DOMString targetName = "";
|
|
SVCParamAlpn alpn;
|
|
SVCParamNoDefaultAlpn noDefaultAlpn;
|
|
SVCParamPort port;
|
|
SVCParamIPv4Hint ipv4Hint;
|
|
SVCParamIPv6Hint ipv6Hint;
|
|
SVCParamEchConfig echConfig;
|
|
SVCParamODoHConfig ODoHConfig;
|
|
};
|
|
|
|
[GenerateConversionToJS]
|
|
dictionary HTTPSRRLookupDict {
|
|
DOMString error = "";
|
|
boolean answer = false;
|
|
sequence<HTTPSRecord> records;
|
|
};
|
|
|
|
[GenerateConversionToJS]
|
|
dictionary ConnStatusDict {
|
|
DOMString status = "";
|
|
};
|
|
|
|
dictionary RcwnPerfStats {
|
|
unsigned long avgShort = 0;
|
|
unsigned long avgLong = 0;
|
|
unsigned long stddevLong = 0;
|
|
};
|
|
|
|
[GenerateConversionToJS]
|
|
dictionary RcwnStatus {
|
|
unsigned long totalNetworkRequests = 0;
|
|
unsigned long rcwnCacheWonCount = 0;
|
|
unsigned long rcwnNetWonCount = 0;
|
|
unsigned long cacheSlowCount = 0;
|
|
unsigned long cacheNotSlowCount = 0;
|
|
// Sequence is indexed by CachePerfStats::EDataType
|
|
sequence<RcwnPerfStats> perfStats;
|
|
};
|