Remove some junk

This commit is contained in:
Fedor 2023-10-06 19:15:01 +03:00
parent 5e770f1c1b
commit a2bb15d20c
43 changed files with 10 additions and 1042 deletions

View File

@ -1,3 +0,0 @@
.title {
background-image: url("chrome://browser/content/aboutRobots-icon.png");
}

View File

@ -1,11 +0,0 @@
var buttonClicked = false;
var button = document.getElementById("errorTryAgain");
button.onclick = function() {
if (buttonClicked) {
button.style.visibility = "hidden";
} else {
var newLabel = button.getAttribute("label2");
button.textContent = newLabel;
buttonClicked = true;
}
};

View File

@ -1,62 +0,0 @@
<!-- 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/. -->
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Security-Policy" content="default-src chrome:" />
<title data-l10n-id="page-title"></title>
<link rel="stylesheet" href="chrome://global/skin/in-content/info-pages.css" media="all"/>
<link rel="icon" type="image/png" id="favicon" href="chrome://browser/content/robot.ico"/>
<link rel="stylesheet" href="chrome://browser/content/aboutRobots.css"/>
<linkset>
<link rel="localization" href="browser/aboutRobots.ftl"/>
</linkset>
</head>
<body>
<!-- PAGE CONTAINER (for styling purposes only) -->
<div class="container">
<!-- Error Title -->
<div class="title">
<h1 class="title-text" data-l10n-id="error-title-text"></h1>
</div>
<!-- LONG CONTENT (the section most likely to require scrolling) -->
<div class="description">
<!-- Short Description -->
<div>
<p id="errorShortDescText" data-l10n-id="error-short-desc-text"></p>
</div>
<!-- Long Description -->
<div>
<ul>
<li data-l10n-id="error-long-desc1"></li>
<li data-l10n-id="error-long-desc2"></li>
<li data-l10n-id="error-long-desc3"></li>
<li data-l10n-id="error-long-desc4"></li>
</ul>
</div>
<!-- Short Description -->
<div>
<small data-l10n-id="error-trailer-desc-text"></small>
</div>
</div>
<!-- Button -->
<div class="button-container">
<button id="errorTryAgain"
data-l10n-id="error-try-again"
data-l10n-attrs="label2"></button>
</div>
</div>
</body>
<script src="chrome://browser/content/aboutRobots.js"/>
</html>

View File

@ -50,7 +50,7 @@ var gIdentityHandler = {
* RegExp used to decide if an about url should be shown as being part of
* the browser UI.
*/
_secureInternalUIWhitelist: /^(?:accounts|addons|cache|config|crashes|customizing|downloads|healthreport|license|permissions|preferences|rights|sessionrestore|support|welcomeback)(?:[?#]|$)/i,
_secureInternalUIWhitelist: /^(?:accounts|addons|cache|config|crashes|customizing|downloads|healthreport|license|permissions|preferences|rights|sessionrestore|support)(?:[?#]|$)/i,
get _isBroken() {
return this._state & Ci.nsIWebProgressListener.STATE_IS_BROKEN;

View File

@ -608,9 +608,7 @@ var gInitialPages = [
"about:newtab",
"about:home",
"about:privatebrowsing",
"about:welcomeback",
"about:sessionrestore",
"about:welcome",
"about:newinstall",
];

View File

@ -3,7 +3,7 @@
*/
const OPEN_LOCATION_PREF = "browser.link.open_newwindow";
const NON_REMOTE_PAGE = "about:welcomeback";
const NON_REMOTE_PAGE = "about:support";
const { PrivateBrowsingUtils } = ChromeUtils.import(
"resource://gre/modules/PrivateBrowsingUtils.jsm"

View File

@ -10,9 +10,6 @@ browser.jar:
content/browser/aboutDialog.css (content/aboutDialog.css)
content/browser/aboutRestartRequired.js (content/aboutRestartRequired.js)
content/browser/aboutRestartRequired.xhtml (content/aboutRestartRequired.xhtml)
content/browser/aboutRobots.xhtml (content/aboutRobots.xhtml)
content/browser/aboutRobots.js (content/aboutRobots.js)
content/browser/aboutRobots.css (content/aboutRobots.css)
content/browser/illustrations/error-connection-failure.svg (content/illustrations/error-connection-failure.svg)
content/browser/illustrations/error-server-not-found.svg (content/illustrations/error-server-not-found.svg)
@ -21,7 +18,6 @@ browser.jar:
content/browser/illustrations/blue-berror.svg (content/illustrations/blue-berror.svg)
content/browser/aboutNetError.xhtml (content/aboutNetError.xhtml)
content/browser/aboutNetError.js (content/aboutNetError.js)
content/browser/aboutRobots-icon.png (content/aboutRobots-icon.png)
content/browser/aboutFrameCrashed.html (content/aboutFrameCrashed.html)
content/browser/aboutTabCrashed.css (content/aboutTabCrashed.css)
content/browser/aboutTabCrashed.js (content/aboutTabCrashed.js)

View File

@ -70,13 +70,8 @@ static const RedirEntry kRedirMap[] = {
{"rights", "chrome://global/content/aboutRights.xhtml",
nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
nsIAboutModule::ALLOW_SCRIPT},
{"robots", "chrome://browser/content/aboutRobots.xhtml",
nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
nsIAboutModule::ALLOW_SCRIPT},
{"sessionrestore", "chrome://browser/content/aboutSessionRestore.xhtml",
nsIAboutModule::ALLOW_SCRIPT | nsIAboutModule::HIDE_FROM_ABOUTABOUT},
{"welcomeback", "chrome://browser/content/aboutWelcomeBack.xhtml",
nsIAboutModule::ALLOW_SCRIPT | nsIAboutModule::HIDE_FROM_ABOUTABOUT},
// Actual activity stream URL for home and newtab are set in channel
// creation
{"home", "about:blank", ACTIVITY_STREAM_FLAGS},

View File

@ -18,11 +18,9 @@ pages = [
'reader',
'restartrequired',
'rights',
'robots',
'sessionrestore',
'tabcrashed',
'welcome',
'welcomeback',
]
if defined('NIGHTLY_BUILD'):

View File

@ -1,75 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
# 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/.
-->
<!DOCTYPE html [
<!ENTITY % htmlDTD PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
%htmlDTD;
]>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<head>
<title data-l10n-id="welcome-back-tab-title"></title>
<link rel="stylesheet" href="chrome://global/skin/in-content/info-pages.css" type="text/css" media="all"/>
<link rel="stylesheet" href="chrome://browser/skin/aboutWelcomeBack.css" type="text/css" media="all"/>
<link rel="icon" type="image/png" href="chrome://browser/skin/info.svg"/>
<link rel="localization" href="browser/aboutSessionRestore.ftl"/>
<link rel="localization" href="branding/brand.ftl"/>
<script src="chrome://browser/content/aboutSessionRestore.js"/>
</head>
<body>
<div class="container">
<div class="title">
<h1 class="title-text" data-l10n-id="welcome-back-page-title"></h1>
</div>
<div class="description">
<p data-l10n-id="welcome-back-page-info"></p>
<!-- Note a href in the anchor below is added by JS -->
<p data-l10n-id="welcome-back-page-info-link"><a id="linkMoreTroubleshooting" target="_blank" data-l10n-name="link-more"></a></p>
<div>
<div class="radioRestoreContainer">
<input class="radioRestoreButton" id="radioRestoreAll" type="radio"
name="restore" checked="checked"/>
<label class="radioRestoreLabel" for="radioRestoreAll" data-l10n-id="welcome-back-restore-all-label"></label>
</div>
<div class="radioRestoreContainer">
<input class="radioRestoreButton" id="radioRestoreChoose" type="radio"
name="restore"/>
<label class="radioRestoreLabel" for="radioRestoreChoose" data-l10n-id="welcome-back-restore-some-label"></label>
</div>
</div>
</div>
<div class="tree-container">
<xul:tree id="tabList" flex="1" seltype="single" hidecolumnpicker="true"
onclick="onListClick(event);" onkeydown="onListKeyDown(event);">
<xul:treecols>
<xul:treecol cycler="true" id="restore" type="checkbox" data-l10n-id="restore-page-restore-header"/>
<xul:splitter class="tree-splitter"/>
<xul:treecol primary="true" id="title" data-l10n-id="restore-page-list-header" flex="1"/>
</xul:treecols>
<xul:treechildren flex="1"/>
</xul:tree>
</div>
<div class="button-container">
<xul:button class="primary"
id="errorTryAgain"
data-l10n-id="welcome-back-restore-button"
oncommand="restoreSession();"/>
</div>
<input type="text" id="sessionData" style="display: none;"/>
</div>
</body>
</html>

View File

@ -5,4 +5,3 @@
browser.jar:
* content/browser/migration/migration.xul (content/migration.xul)
content/browser/migration/migration.js (content/migration.js)
content/browser/aboutWelcomeBack.xhtml (content/aboutWelcomeBack.xhtml)

View File

@ -346,7 +346,7 @@ class TestFirefoxRefresh(MarionetteTestCase):
tabURIs = self.runCode("""
return [... gBrowser.browsers].map(b => b.currentURI && b.currentURI.spec)
""")
self.assertSequenceEqual(tabURIs, ["about:welcomeback"])
self.assertSequenceEqual(tabURIs, ["about:welcome"])
# Dismiss modal dialog if any. This is mainly to dismiss the check for
# default browser dialog if it shows up.

View File

@ -66,7 +66,7 @@ var SessionMigrationInternal = {
win._closedTabs = [];
return win;
});
let url = "about:welcomeback";
let url = "about:welcome";
let formdata = { id: { sessionData: state }, url };
let entry = {
url,

View File

@ -730,14 +730,6 @@ var SessionStoreInternal = {
E10SUtils.SERIALIZED_SYSTEMPRINCIPAL,
};
state = { windows: [{ tabs: [{ entries: [entry], formdata }] }] };
} else if (
this._hasSingleTabWithURL(state.windows, "about:welcomeback")
) {
// On a single about:welcomeback URL that crashed, replace about:welcomeback
// with about:sessionrestore, to make clear to the user that we crashed.
state.windows[0].tabs[0].entries[0].url = "about:sessionrestore";
state.windows[0].tabs[0].entries[0].triggeringPrincipal_base64 =
E10SUtils.SERIALIZED_SYSTEMPRINCIPAL;
}
}
@ -5288,8 +5280,7 @@ var SessionStoreInternal = {
// don't wrap a single about:sessionrestore page
if (
this._hasSingleTabWithURL(winData, "about:sessionrestore") ||
this._hasSingleTabWithURL(winData, "about:welcomeback")
this._hasSingleTabWithURL(winData, "about:sessionrestore")
) {
return false;
}

View File

@ -1,28 +0,0 @@
# 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/.
### These strings are used in the about:robots page, which ties in with the
### robots theme used in the Firefox 3 Beta 2/3 first run pages.
### They're just meant to be fun and whimsical, with references to some geeky
### but well-known robots in movies and books. Be creative with translations!
# Nonsense line from the movie "The Day The Earth Stood Still". No translation needed.
page-title = Gort! Klaatu barada nikto!
# Movie: Logan's Run... Box (cyborg): "Welcome Humans! I am ready for you."
error-title-text = Welcome Humans!
# Movie: The Day The Earth Stood Still. Spoken by Klaatu.
error-short-desc-text = We have come to visit you in peace and with goodwill!
# Various books by Isaac Asimov. http://en.wikipedia.org/wiki/Three_Laws_of_Robotics
error-long-desc1 = Robots may not injure a human being or, through inaction, allow a human being to come to harm.
# Movie: Blade Runner. Batty: "I've seen things you people wouldnt believe..."
error-long-desc2 = Robots have seen things you people wouldnt believe.
# Book: Hitchhikers Guide To The Galaxy. What the Sirius Cybernetics Corporation calls robots.
error-long-desc3 = Robots are Your Plastic Pal Whos Fun To Be With.
# TV: Futurama. Bender's first line is "Bite my shiny metal ass."
error-long-desc4 = Robots have shiny metal posteriors which should not be bitten.
# TV: Battlestar Galactica (2004 series). From the opening text.
error-trailer-desc-text = And they have a plan.
# Book: Hitchhiker's Guide To The Galaxy. Arthur presses a button and it warns him.
error-try-again = Try Again
.label2 = Please do not press this button again.

View File

@ -33,18 +33,3 @@ restore-page-try-again-button =
restore-page-close-button =
.label = Start New Session
.accesskey = N
## The following strings are used in about:welcomeback
welcome-back-tab-title = Success!
welcome-back-page-title = Success!
welcome-back-page-info = { -brand-short-name } is ready to go.
welcome-back-restore-button =
.label = Lets go!
.accesskey = L
welcome-back-restore-all-label = Restore all windows & tabs
welcome-back-restore-some-label = Restore only the ones you want
welcome-back-page-info-link = Your add-ons and customizations have been removed and your browser settings have been restored to their defaults. If this didnt fix your issue, <a data-l10n-name="link-more">learn more about what you can do.</a>

View File

@ -3,7 +3,6 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
imply_option('MOZ_PLACES', True)
imply_option('MOZ_SERVICES_HEALTHREPORT', True)
imply_option('MOZ_SERVICES_SYNC', True)
imply_option('MOZ_DEDICATED_PROFILES', True)
imply_option('MOZ_BLOCK_PROFILE_DOWNGRADE', True)

View File

@ -1,55 +0,0 @@
/* 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/. */
.title {
background-image: url("chrome://browser/skin/welcome-back.svg");
}
.radioRestoreContainer:not(:last-child) {
margin-bottom: 0.2em;
}
/* tablist starts out hidden, but JS may make it visible in response to
clicks on the radio buttons by setting an "available" attribute.
*/
.tree-container:not([available]) {
display: none;
}
treechildren::-moz-tree-image(icon),
treechildren::-moz-tree-image(noicon) {
padding-right: 2px;
margin: 0 2px;
width: 16px;
height: 16px;
}
treechildren::-moz-tree-image(noicon) {
list-style-image: url("chrome://mozapps/skin/places/defaultFavicon.svg");
-moz-context-properties: fill;
fill: currentColor;
}
treechildren::-moz-tree-image(container, noicon) {
list-style-image: url("chrome://browser/skin/window.svg");
}
treechildren::-moz-tree-image(checked) {
list-style-image: url("chrome://global/skin/icons/check.svg");
-moz-context-properties: fill, stroke;
fill: #2292d0;
}
treechildren::-moz-tree-image(checked, selected) {
fill: white;
stroke: #0095dd;
}
treechildren::-moz-tree-image(partial) {
list-style-image: url("chrome://global/skin/icons/check-partial.svg");
-moz-context-properties: fill, stroke;
fill: #2292d0;
}
treechildren::-moz-tree-image(partial, selected) {
fill: white;
stroke: #0095dd;
}

View File

@ -1,13 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- 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/. -->
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 60 60">
<defs>
<linearGradient id="gradient" gradientUnits="userSpaceOnUse" x1="0" y1="30" x2="60" y2="30">
<stop offset="0" style="stop-color: #fd6b0c"/>
<stop offset="1" style="stop-color: #e65206"/>
</linearGradient>
</defs>
<path fill="url(#gradient)" d="M45.844,41.272c0.018-0.08,0.039-0.156,0.055-0.239c0.097-0.35,0.164-0.735,0.215-1.136 c0.375-0.835,0.747-2.172,0.5-3.936c-0.021-0.326-0.073-0.669-0.14-1.018c4.957-3.957,24.499-20.957,5.137-29.039 c0,0,4.23,6.9-2.898,13.92c-4.332,4.266-5.37,8.436-5.058,11.538c0,0,0.036,0.21,0.096,0.564c-1.62-2.178-5.652-4.53-14.256-2.022 c-8.736,2.544-7.476,4.518-9.234,3.606c0,0-0.93-2.166-3.564-4.452c0,0,0.726-4.416-0.42-5.472 c-1.146-1.062-2.628,2.244-5.346,3.432c-2.712,1.188-6.234,2.928-6.57,6.024l-3.39,2.328c0,0-1.446,0.684-0.81,1.32 c0.636,0.636,1.698,1.44,3.012,1.314c1.314-0.126,2.928-0.51,4.158-0.168c1.23,0.336,2.202,2.67,4.872,6.102 c0,0,2.142,4.542,6.936,5.412c0.036,0.024,0.072,0.054,0.108,0.078c1.404,1.026,4.584,3.336,5.148,3.834 c0.744,0.636,7.422,1.158,9.486,0.474c0,0-0.6-3.408-5.04-1.944c0,0-2.082,0.078-4.59-2.892c0.228-0.072,0.456-0.156,0.69-0.252 c1.056-0.402,2.184-0.966,3.39-1.728c0,0,1.542-0.774,3.846-1.356c0,0,2.497-0.555,4.376,0.455c2.542,1.829,6.483,2.442,12.58-0.566 c0,0,5.357,5.102,7.575,8.644c0,0,4.916-1.89-5.065-11.76C51.643,42.336,47.455,42.801,45.844,41.272z"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -15,7 +15,6 @@
skin/classic/browser/aboutLibrary.css (../shared/aboutLibrary.css)
skin/classic/browser/aboutFrameCrashed.css (../shared/aboutFrameCrashed.css)
skin/classic/browser/aboutTabCrashed.css (../shared/aboutTabCrashed.css)
skin/classic/browser/aboutWelcomeBack.css (../shared/aboutWelcomeBack.css)
skin/classic/browser/setDesktopBackground.css (../shared/setDesktopBackground.css)
skin/classic/browser/addons/addon-install-blocked.svg (../shared/addons/addon-install-blocked.svg)
skin/classic/browser/addons/addon-install-confirm.svg (../shared/addons/addon-install-confirm.svg)
@ -249,7 +248,6 @@
skin/classic/browser/cert-error.svg (../shared/incontent-icons/cert-error.svg)
skin/classic/browser/wifi.svg (../shared/incontent-icons/wifi.svg)
skin/classic/browser/tab-crashed.svg (../shared/incontent-icons/tab-crashed.svg)
skin/classic/browser/welcome-back.svg (../shared/incontent-icons/welcome-back.svg)
skin/classic/browser/readerMode.svg (../shared/reader/readerMode.svg)
skin/classic/browser/panic-panel/header.png (../shared/panic-panel/header.png)
skin/classic/browser/panic-panel/header@2x.png (../shared/panic-panel/header@2x.png)

View File

@ -89,8 +89,6 @@ static const RedirEntry kRedirMap[] = {
nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
nsIAboutModule::URI_MUST_LOAD_IN_CHILD |
nsIAboutModule::URI_CAN_LOAD_IN_PRIVILEGED_CHILD},
{"mozilla", "chrome://global/content/mozilla.xhtml",
nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT},
{"neterror", "chrome://global/content/netError.xhtml",
nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
nsIAboutModule::URI_CAN_LOAD_IN_CHILD | nsIAboutModule::ALLOW_SCRIPT |

View File

@ -120,7 +120,6 @@ def fennec_nightly(nightly):
return bool(nightly)
imply_option('MOZ_SERVICES_HEALTHREPORT', True)
imply_option('MOZ_ANDROID_HISTORY', True)
imply_option('--enable-small-chunk-size', True)

View File

@ -6218,12 +6218,6 @@
value: false
mirror: always
# Telemetry of traffic categories. Whether or not to enable HttpTrafficAnalyzer.
- name: network.traffic_analyzer.enabled
type: RelaxedAtomicBool
value: false
mirror: always
- name: network.delay.tracking.load
type: uint32_t
value: 0

View File

@ -2197,7 +2197,7 @@ pref("security.dialog_enable_delay", 1000);
pref("security.notification_enable_delay", 500);
#if defined(DEBUG) && !defined(ANDROID)
pref("csp.about_uris_without_csp", "blank,printpreview,srcdoc,about,addons,cache-entry,config,crashes,debugging,devtools,downloads,home,memory,networking,newtab,performance,plugins,policies,profiles,restartrequired,serviceworkers,sessionrestore,support,sync-log,telemetry,url-classifier,welcomeback");
pref("csp.about_uris_without_csp", "blank,printpreview,srcdoc,about,addons,cache-entry,config,crashes,debugging,devtools,downloads,home,memory,networking,newtab,performance,plugins,policies,profiles,restartrequired,serviceworkers,sessionrestore,support,sync-log,telemetry,url-classifier");
// the following prefs are for testing purposes only.
pref("csp.overrule_about_uris_without_csp_whitelist", false);
pref("csp.skip_about_page_has_csp_assert", false);

View File

@ -1,254 +0,0 @@
/* 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 "HttpTrafficAnalyzer.h"
#include "HttpLog.h"
#include "mozilla/StaticPrefs_network.h"
#include "mozilla/Telemetry.h"
#include "mozilla/Unused.h"
namespace mozilla {
namespace net {
#define DEFINE_CATEGORY(_name, _idx) NS_LITERAL_CSTRING("Y" #_idx "_" #_name),
static const nsCString gKeyName[] = {
#include "HttpTrafficAnalyzer.inc"
};
#undef DEFINE_CATEGORY
#define DEFINE_CATEGORY(_name, _idx) \
Telemetry::LABELS_HTTP_TRAFFIC_ANALYSIS_3::Y##_idx##_##_name,
static const Telemetry::LABELS_HTTP_TRAFFIC_ANALYSIS_3 gTelemetryLabel[] = {
#include "HttpTrafficAnalyzer.inc"
};
#undef DEFINE_CATEGORY
// ----------------------------------------------------
// | Flags | Load Type |
// ----------------------------------------------------
// | nsIClassOfService::Leader | A |
// | w/o nsIRequest::LOAD_BACKGROUND | B |
// | w/ nsIRequest::LOAD_BACKGROUND | C |
// ----------------------------------------------------
// | Category | List Category |
// ----------------------------------------------------
// | Basic Disconnected List | I |
// | Content | II |
// | Fingerprinting | III |
// ----------------------------------------------------
// ====================================================
// | Normal Mode |
// ----------------------------------------------------
// | Y = 0 for system principals |
// | Y = 1 for first party |
// | Y = 2 for non-listed third party type |
// ----------------------------------------------------
// | \Y\ | Type A | Type B | Type C |
// ----------------------------------------------------
// | Category I | 3 | 4 | 5 |
// | Category II | 6 | 7 | 8 |
// | Category III | 9 | 10 | 11 |
// ====================================================
// | Private Mode |
// ----------------------------------------------------
// | Y = 12 for system principals |
// | Y = 13 for first party |
// | Y = 14 for non-listed third party type |
// ----------------------------------------------------
// | \Y\ | Type A | Type B | Type C |
// ----------------------------------------------------
// | Category I | 15 | 16 | 17 |
// | Category II | 18 | 19 | 20 |
// | Category III | 21 | 22 | 23 |
// ====================================================
HttpTrafficCategory HttpTrafficAnalyzer::CreateTrafficCategory(
bool aIsPrivateMode, bool aIsSystemPrincipal, bool aIsThirdParty,
ClassOfService aClassOfService, TrackingClassification aClassification) {
uint8_t category = aIsPrivateMode ? 12 : 0;
if (aIsSystemPrincipal) {
MOZ_ASSERT_IF(!aIsPrivateMode,
gKeyName[category].EqualsLiteral("Y0_N1Sys"));
MOZ_ASSERT_IF(aIsPrivateMode,
gKeyName[category].EqualsLiteral("Y12_P1Sys"));
return static_cast<HttpTrafficCategory>(category);
}
++category;
if (!aIsThirdParty) {
MOZ_ASSERT_IF(!aIsPrivateMode, gKeyName[category].EqualsLiteral("Y1_N1"));
MOZ_ASSERT_IF(aIsPrivateMode, gKeyName[category].EqualsLiteral("Y13_P1"));
return static_cast<HttpTrafficCategory>(category);
}
switch (aClassification) {
case TrackingClassification::eNone:
++category;
MOZ_ASSERT_IF(!aIsPrivateMode,
gKeyName[category].EqualsLiteral("Y2_N3Oth"));
MOZ_ASSERT_IF(aIsPrivateMode,
gKeyName[category].EqualsLiteral("Y14_P3Oth"));
return static_cast<HttpTrafficCategory>(category);
case TrackingClassification::eBasic:
category += 2;
break;
case TrackingClassification::eContent:
category += 5;
break;
case TrackingClassification::eFingerprinting:
category += 8;
break;
default:
MOZ_ASSERT(false, "incorrect classification");
return HttpTrafficCategory::eInvalid;
}
switch (aClassOfService) {
case ClassOfService::eLeader:
MOZ_ASSERT_IF(
!aIsPrivateMode,
(aClassification == TrackingClassification::eBasic &&
gKeyName[category].EqualsLiteral("Y3_N3BasicLead")) ||
(aClassification == TrackingClassification::eContent &&
gKeyName[category].EqualsLiteral("Y6_N3ContentLead")) ||
(aClassification == TrackingClassification::eFingerprinting &&
gKeyName[category].EqualsLiteral("Y9_N3FpLead")));
MOZ_ASSERT_IF(
aIsPrivateMode,
(aClassification == TrackingClassification::eBasic &&
gKeyName[category].EqualsLiteral("Y15_P3BasicLead")) ||
(aClassification == TrackingClassification::eContent &&
gKeyName[category].EqualsLiteral("Y18_P3ContentLead")) ||
(aClassification == TrackingClassification::eFingerprinting &&
gKeyName[category].EqualsLiteral("Y21_P3FpLead")));
return static_cast<HttpTrafficCategory>(category);
case ClassOfService::eBackground:
++category;
MOZ_ASSERT_IF(
!aIsPrivateMode,
(aClassification == TrackingClassification::eBasic &&
gKeyName[category].EqualsLiteral("Y4_N3BasicBg")) ||
(aClassification == TrackingClassification::eContent &&
gKeyName[category].EqualsLiteral("Y7_N3ContentBg")) ||
(aClassification == TrackingClassification::eFingerprinting &&
gKeyName[category].EqualsLiteral("Y10_N3FpBg")));
MOZ_ASSERT_IF(
aIsPrivateMode,
(aClassification == TrackingClassification::eBasic &&
gKeyName[category].EqualsLiteral("Y16_P3BasicBg")) ||
(aClassification == TrackingClassification::eContent &&
gKeyName[category].EqualsLiteral("Y19_P3ContentBg")) ||
(aClassification == TrackingClassification::eFingerprinting &&
gKeyName[category].EqualsLiteral("Y22_P3FpBg")));
return static_cast<HttpTrafficCategory>(category);
case ClassOfService::eOther:
category += 2;
MOZ_ASSERT_IF(
!aIsPrivateMode,
(aClassification == TrackingClassification::eBasic &&
gKeyName[category].EqualsLiteral("Y5_N3BasicOth")) ||
(aClassification == TrackingClassification::eContent &&
gKeyName[category].EqualsLiteral("Y8_N3ContentOth")) ||
(aClassification == TrackingClassification::eFingerprinting &&
gKeyName[category].EqualsLiteral("Y11_N3FpOth")));
MOZ_ASSERT_IF(
aIsPrivateMode,
(aClassification == TrackingClassification::eBasic &&
gKeyName[category].EqualsLiteral("Y17_P3BasicOth")) ||
(aClassification == TrackingClassification::eContent &&
gKeyName[category].EqualsLiteral("Y20_P3ContentOth")) ||
(aClassification == TrackingClassification::eFingerprinting &&
gKeyName[category].EqualsLiteral("Y23_P3FpOth")));
return static_cast<HttpTrafficCategory>(category);
}
MOZ_ASSERT(false, "incorrect class of service");
return HttpTrafficCategory::eInvalid;
}
nsresult HttpTrafficAnalyzer::IncrementHttpTransaction(
HttpTrafficCategory aCategory) {
MOZ_ASSERT(OnSocketThread(), "not on socket thread");
MOZ_ASSERT(StaticPrefs::network_traffic_analyzer_enabled());
MOZ_ASSERT(aCategory != HttpTrafficCategory::eInvalid, "invalid category");
LOG(("HttpTrafficAnalyzer::IncrementHttpTransaction [%s] [this=%p]\n",
gKeyName[aCategory].get(), this));
Telemetry::AccumulateCategoricalKeyed(NS_LITERAL_CSTRING("Transaction"),
gTelemetryLabel[aCategory]);
return NS_OK;
}
nsresult HttpTrafficAnalyzer::IncrementHttpConnection(
HttpTrafficCategory aCategory) {
MOZ_ASSERT(OnSocketThread(), "not on socket thread");
MOZ_ASSERT(StaticPrefs::network_traffic_analyzer_enabled());
MOZ_ASSERT(aCategory != HttpTrafficCategory::eInvalid, "invalid category");
LOG(("HttpTrafficAnalyzer::IncrementHttpConnection [%s] [this=%p]\n",
gKeyName[aCategory].get(), this));
Telemetry::AccumulateCategoricalKeyed(NS_LITERAL_CSTRING("Connection"),
gTelemetryLabel[aCategory]);
return NS_OK;
}
nsresult HttpTrafficAnalyzer::IncrementHttpConnection(
nsTArray<HttpTrafficCategory>&& aCategories) {
MOZ_ASSERT(OnSocketThread(), "not on socket thread");
MOZ_ASSERT(StaticPrefs::network_traffic_analyzer_enabled());
MOZ_ASSERT(!aCategories.IsEmpty(), "empty category");
nsTArray<HttpTrafficCategory> categories(std::move(aCategories));
LOG(("HttpTrafficAnalyzer::IncrementHttpConnection size=%" PRIuPTR
" [this=%p]\n",
categories.Length(), this));
// divide categories into 4 parts:
// 1) normal 1st-party (Y = 0)
// 2) normal 3rd-party (0 < Y < 11)
// 3) private 1st-party (Y = 11)
// 4) private 3rd-party (11 < Y < 22)
// Normal and private transaction should not share the same connection,
// and we choose 3rd-party prior than 1st-party.
HttpTrafficCategory best = categories[0];
if ((best == 0 || best == 11) && categories.Length() > 1) {
best = categories[1];
}
Unused << IncrementHttpConnection(best);
return NS_OK;
}
#define CLAMP_U32(num) \
Clamp<uint32_t>(num, 0, std::numeric_limits<uint32_t>::max())
nsresult HttpTrafficAnalyzer::AccumulateHttpTransferredSize(
HttpTrafficCategory aCategory, uint64_t aBytesRead, uint64_t aBytesSent) {
MOZ_ASSERT(OnSocketThread(), "not on socket thread");
MOZ_ASSERT(StaticPrefs::network_traffic_analyzer_enabled());
MOZ_ASSERT(aCategory != HttpTrafficCategory::eInvalid, "invalid category");
LOG(("HttpTrafficAnalyzer::AccumulateHttpTransferredSize [%s] rb=%" PRIu64 " "
"sb=%" PRIu64 " [this=%p]\n",
gKeyName[aCategory].get(), aBytesRead, aBytesSent, this));
// Telemetry supports uint32_t only, and we send KB here.
auto total = CLAMP_U32((aBytesRead >> 10) + (aBytesSent >> 10));
if (aBytesRead || aBytesSent) {
Telemetry::ScalarAdd(Telemetry::ScalarID::NETWORKING_DATA_TRANSFERRED_V3_KB,
NS_ConvertUTF8toUTF16(gKeyName[aCategory]), total);
}
return NS_OK;
}
} // namespace net
} // namespace mozilla

View File

@ -1,48 +0,0 @@
/* 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/. */
#ifndef mozilla_netwerk_protocol_http_HttpTrafficAnalyzer_h
#define mozilla_netwerk_protocol_http_HttpTrafficAnalyzer_h
namespace mozilla {
namespace net {
#define DEFINE_CATEGORY(_name, _idx) e##_name = _idx##u,
enum HttpTrafficCategory : uint8_t {
#include "HttpTrafficAnalyzer.inc"
eInvalid = 255,
};
#undef DEFINE_CATEGORY
class HttpTrafficAnalyzer final {
public:
enum ClassOfService : uint8_t {
eLeader = 0,
eBackground = 1,
eOther = 255,
};
enum TrackingClassification : uint8_t {
eNone = 0,
eBasic = 1,
eContent = 2,
eFingerprinting = 3,
};
static HttpTrafficCategory CreateTrafficCategory(
bool aIsPrivateMode, bool aIsSystemPrincipal, bool aIsThirdParty,
ClassOfService aClassOfService, TrackingClassification aClassification);
nsresult IncrementHttpTransaction(HttpTrafficCategory aCategory);
nsresult IncrementHttpConnection(HttpTrafficCategory aCategory);
nsresult IncrementHttpConnection(nsTArray<HttpTrafficCategory>&& aCategories);
nsresult AccumulateHttpTransferredSize(HttpTrafficCategory aCategory,
uint64_t aBytesRead,
uint64_t aBytesSent);
};
} // namespace net
} // namespace mozilla
#endif // mozilla_netwerk_protocol_http_HttpTrafficAnalyzer_h

View File

@ -1,106 +0,0 @@
// Type A) Parser blocking script loads will have an mContentPolicyType
// indicating a script load and a nsIClassOfService::Leader class of service.
// Type B) I couldnt find a class flag that corresponds to synchronous loads
// that block the load event, but I think a simple way to determine
// which ones they are is to examine whether the channel belongs to a
// load group and do not have a LOAD_BACKGROUND load flag.
// If that condition holds, then it is blocking the load event of some document.
// Type C) I think a simple way to find channels that dont block document loads
// (e.g. XHR and fetch) is to look for those which are in a load group
// and have a LOAD_BACKGROUND load flag.
// Y=0 - all system principal connections.
DEFINE_CATEGORY(N1Sys, 0)
// Y=1 - all requests/connections/bytes that are first party.
DEFINE_CATEGORY(N1, 1)
// Y=2 - all requests/connections/bytes that are third party
// but dont fall into other categories
DEFINE_CATEGORY(N3Oth, 2)
// Y=3 - all requests/connections/bytes associated with third party loads that
// match the Analytics/Social/Advertising (Basic) Category and have a load of type (A)
DEFINE_CATEGORY(N3BasicLead, 3)
// Y=4 - all requests/connections/bytes associated with third party loads that
// match the Analytics/Social/Advertising (Basic) Category and have a load of type (B)
DEFINE_CATEGORY(N3BasicBg, 4)
// Y=5 - all requests/connections/bytes associated with third party loads that
// match the Analytics/Social/Advertising (Basic) Category and have a load of type (C)
DEFINE_CATEGORY(N3BasicOth, 5)
// Y=6 - all requests/connections/bytes associated with third party loads that
// match the Content Category and have a load of type (A)
DEFINE_CATEGORY(N3ContentLead, 6)
// Y=7 - all requests/connections/bytes associated with third party loads that
// match the Content Category and have a load of type (B)
DEFINE_CATEGORY(N3ContentBg, 7)
// Y=8 - all requests/connections/bytes associated with third party loads that
// match the Content Category and have a load of type (C)
DEFINE_CATEGORY(N3ContentOth, 8)
// Y=9 - all requests/connections/bytes associated with third party loads that
// match the Fingerprinting Category and have a load of type (A)
DEFINE_CATEGORY(N3FpLead, 9)
// Y=10 - all requests/connections/bytes associated with third party loads that
// match the Fingerprinting Category and have a load of type (B)
DEFINE_CATEGORY(N3FpBg, 10)
// Y=11 - all requests/connections/bytes associated with third party loads that
// match the Fingerprinting Category and have a load of type (C)
DEFINE_CATEGORY(N3FpOth, 11)
// Y=12 - private mode system principal connections.
DEFINE_CATEGORY(P1Sys, 12)
// Y=13 - private mode and all requests/connections/bytes that are first party.
DEFINE_CATEGORY(P1, 13)
// Y=14 - private mode and all requests/connections/bytes that are third party
// but dont fall into other categories
DEFINE_CATEGORY(P3Oth, 14)
// Y=15 - private mode and all requests/connections/bytes associated with
// third party loads that match the Analytics/Social/Advertising (Basic) Category
// and have a load of type (A)
DEFINE_CATEGORY(P3BasicLead, 15)
// Y=16 - private mode and all requests/connections/bytes associated with
// third party loads that match the Analytics/Social/Advertising (Basic) Category
// and have a load of type (B)
DEFINE_CATEGORY(P3BasicBg, 16)
// Y=17 - private mode and all requests/connections/bytes associated with
// third party loads that match the Analytics/Social/Advertising (Basic) Category
// and have a load of type (C)
DEFINE_CATEGORY(P3BasicOth, 17)
// Y=18 - private mode and all requests/connections/bytes associated with
// third party loads that match the Content Category and have a load of type (A)
DEFINE_CATEGORY(P3ContentLead, 18)
// Y=19 - private mode and all requests/connections/bytes associated with
// third party loads that match the Content Category and have a load of type (B)
DEFINE_CATEGORY(P3ContentBg, 19)
// Y=20 - private mode and all requests/connections/bytes associated with
// third party loads that match the Content Category and have a load of type (C)
DEFINE_CATEGORY(P3ContentOth, 20)
// Y=21 - private mode and all requests/connections/bytes associated with
// third party loads that match the Fingerprinting Category and have a load of type (A)
DEFINE_CATEGORY(P3FpLead, 21)
// Y=22 - private mode and all requests/connections/bytes associated with
// third party loads that match the Fingerprinting Category and have a load of type (B)
DEFINE_CATEGORY(P3FpBg, 22)
// Y=23 - private mode and all requests/connections/bytes associated with
// third party loads that match the Fingerprinting Category and have a load of type (C)
DEFINE_CATEGORY(P3FpOth, 23)

View File

@ -82,7 +82,6 @@ UNIFIED_SOURCES += [
'HttpChannelParent.cpp',
'HttpChannelParentListener.cpp',
'HttpInfo.cpp',
'HttpTrafficAnalyzer.cpp',
'InterceptedChannel.cpp',
'InterceptedHttpChannel.cpp',
'nsCORSListenerProxy.cpp',

View File

@ -149,10 +149,6 @@ class nsAHttpConnection : public nsISupports {
// A notification of the current active tab id change.
virtual void TopLevelOuterContentWindowIdChanged(uint64_t windowId) = 0;
// categories set by nsHttpTransaction to identify how this connection is
// being used.
virtual void SetTrafficCategory(HttpTrafficCategory) = 0;
};
NS_DEFINE_STATIC_IID_ACCESSOR(nsAHttpConnection, NS_AHTTPCONNECTION_IID)
@ -229,9 +225,6 @@ NS_DEFINE_STATIC_IID_ACCESSOR(nsAHttpConnection, NS_AHTTPCONNECTION_IID)
} \
void SetSecurityCallbacks(nsIInterfaceRequestor* aCallbacks) override { \
if (fwdObject) (fwdObject)->SetSecurityCallbacks(aCallbacks); \
} \
void SetTrafficCategory(HttpTrafficCategory aCategory) override { \
if (fwdObject) (fwdObject)->SetTrafficCategory(aCategory); \
}
// ThrottleResponse deliberately ommited since we want different implementation

View File

@ -113,7 +113,6 @@
#include "mozilla/net/CookieSettings.h"
#include "mozilla/net/NeckoChannelParams.h"
#include "mozilla/net/UrlClassifierFeatureFactory.h"
#include "HttpTrafficAnalyzer.h"
#include "mozilla/dom/CanonicalBrowsingContext.h"
#include "mozilla/dom/WindowGlobalParent.h"
@ -1267,13 +1266,11 @@ nsresult nsHttpChannel::SetupTransaction() {
EnsureTopLevelOuterContentWindowId();
HttpTrafficCategory category = CreateTrafficCategory();
nsCOMPtr<nsIAsyncInputStream> responseStream;
rv = mTransaction->Init(
mCaps, mConnectionInfo, &mRequestHead, mUploadStream, mReqContentLength,
mUploadStreamHasHeaders, GetCurrentThreadEventTarget(), callbacks, this,
mTopLevelOuterContentWindowId, category, getter_AddRefs(responseStream));
mTopLevelOuterContentWindowId, getter_AddRefs(responseStream));
if (NS_FAILED(rv)) {
mTransaction = nullptr;
return rv;
@ -1289,54 +1286,6 @@ nsresult nsHttpChannel::SetupTransaction() {
return rv;
}
HttpTrafficCategory nsHttpChannel::CreateTrafficCategory() {
MOZ_ASSERT(!mFirstPartyClassificationFlags ||
!mThirdPartyClassificationFlags);
if (!StaticPrefs::network_traffic_analyzer_enabled()) {
return HttpTrafficCategory::eInvalid;
}
HttpTrafficAnalyzer::ClassOfService cos;
{
if ((mClassOfService & nsIClassOfService::Leader) &&
mLoadInfo->GetExternalContentPolicyType() ==
nsIContentPolicy::TYPE_SCRIPT) {
cos = HttpTrafficAnalyzer::ClassOfService::eLeader;
} else if (mLoadFlags & nsIRequest::LOAD_BACKGROUND) {
cos = HttpTrafficAnalyzer::ClassOfService::eBackground;
} else {
cos = HttpTrafficAnalyzer::ClassOfService::eOther;
}
}
bool isThirdParty =
nsContentUtils::IsThirdPartyWindowOrChannel(nullptr, this, mURI);
HttpTrafficAnalyzer::TrackingClassification tc;
{
uint32_t flags = isThirdParty ? mThirdPartyClassificationFlags
: mFirstPartyClassificationFlags;
using CF = nsIHttpChannel::ClassificationFlags;
using TC = HttpTrafficAnalyzer::TrackingClassification;
if (flags & CF::CLASSIFIED_TRACKING_CONTENT) {
tc = TC::eContent;
} else if (flags & CF::CLASSIFIED_FINGERPRINTING_CONTENT) {
tc = TC::eFingerprinting;
} else if (flags & CF::CLASSIFIED_ANY_BASIC_TRACKING) {
tc = TC::eBasic;
} else {
tc = TC::eNone;
}
}
bool isSystemPrincipal = mLoadInfo->LoadingPrincipal() &&
mLoadInfo->LoadingPrincipal()->IsSystemPrincipal();
return HttpTrafficAnalyzer::CreateTrafficCategory(
NS_UsePrivateBrowsing(this), isSystemPrincipal, isThirdParty, cos, tc);
}
enum class Report { Error, Warning };
// Helper Function to report messages to the console when the loaded

View File

@ -447,8 +447,6 @@ class nsHttpChannel final : public HttpBaseChannel,
MOZ_MUST_USE nsresult ContinueAsyncRedirectChannelToURI(nsresult rv);
MOZ_MUST_USE nsresult OpenRedirectChannel(nsresult rv);
HttpTrafficCategory CreateTrafficCategory();
/**
* A function that takes care of reading STS and PKP headers and enforcing
* STS and PKP load rules. After a secure channel is erected, STS and PKP

View File

@ -159,13 +159,8 @@ nsHttpConnection::~nsHttpConnection() {
auto total =
Clamp<uint32_t>((mTotalBytesRead >> 10) + (mTotalBytesWritten >> 10),
0, std::numeric_limits<uint32_t>::max());
Telemetry::ScalarAdd(
Telemetry::ScalarID::NETWORKING_DATA_TRANSFERRED_CAPTIVE_PORTAL,
total);
}
Telemetry::ScalarAdd(
Telemetry::ScalarID::NETWORKING_HTTP_CONNECTIONS_CAPTIVE_PORTAL, 1);
}
if (mForceSendTimer) {
@ -987,14 +982,6 @@ void nsHttpConnection::Close(nsresult reason, bool aIsShutdown) {
mForceSendTimer = nullptr;
}
if (!mTrafficCategory.IsEmpty()) {
HttpTrafficAnalyzer* hta = gHttpHandler->GetHttpTrafficAnalyzer();
if (hta) {
hta->IncrementHttpConnection(std::move(mTrafficCategory));
MOZ_ASSERT(mTrafficCategory.IsEmpty());
}
}
if (NS_FAILED(reason)) {
if (mIdleMonitoring) EndIdleMonitoring();
@ -2713,14 +2700,5 @@ bool nsHttpConnection::CanAcceptWebsocket() {
return mSpdySession->CanAcceptWebsocket();
}
void nsHttpConnection::SetTrafficCategory(HttpTrafficCategory aCategory) {
MOZ_ASSERT(OnSocketThread(), "not on socket thread");
if (aCategory == HttpTrafficCategory::eInvalid ||
mTrafficCategory.Contains(aCategory)) {
return;
}
Unused << mTrafficCategory.AppendElement(aCategory);
}
} // namespace net
} // namespace mozilla

View File

@ -16,7 +16,6 @@
#include "mozilla/Mutex.h"
#include "ARefBase.h"
#include "TimingStruct.h"
#include "HttpTrafficAnalyzer.h"
#include "nsIAsyncInputStream.h"
#include "nsIAsyncOutputStream.h"
@ -251,8 +250,6 @@ class nsHttpConnection final : public nsAHttpSegmentReader,
// HTTP/2 websocket support
bool CanAcceptWebsocket();
void SetTrafficCategory(HttpTrafficCategory aCategory);
private:
// Value (set in mTCPKeepaliveConfig) indicates which set of prefs to use.
enum TCPKeepaliveConfig {
@ -439,7 +436,6 @@ class nsHttpConnection final : public nsAHttpSegmentReader,
TimingStruct mBootstrappedTimings;
bool mBootstrappedTimingsSet;
nsTArray<HttpTrafficCategory> mTrafficCategory;
bool mThroughCaptivePortal;
};

View File

@ -2678,15 +2678,5 @@ bool nsHttpHandler::IsSpdyBlacklisted(const nsHttpConnectionInfo* ci) {
return mBlacklistedSpdyOrigins.Contains(ci->GetOrigin());
}
HttpTrafficAnalyzer* nsHttpHandler::GetHttpTrafficAnalyzer() {
MOZ_ASSERT(OnSocketThread(), "not on socket thread");
if (!StaticPrefs::network_traffic_analyzer_enabled()) {
return nullptr;
}
return &mHttpTrafficAnalyzer;
}
} // namespace net
} // namespace mozilla

View File

@ -11,7 +11,6 @@
#include "nsHttpAuthCache.h"
#include "nsHttpConnectionMgr.h"
#include "ASpdySession.h"
#include "HttpTrafficAnalyzer.h"
#include "mozilla/Mutex.h"
#include "mozilla/StaticPtr.h"
@ -454,8 +453,6 @@ class nsHttpHandler final : public nsIHttpProtocolHandler,
bool DumpHpackTables() { return mDumpHpackTables; }
HttpTrafficAnalyzer* GetHttpTrafficAnalyzer();
bool GetThroughCaptivePortal() { return mThroughCaptivePortal; }
private:
@ -704,8 +701,6 @@ class nsHttpHandler final : public nsIHttpProtocolHandler,
// If true, the transactions from active tab will be dispatched first.
bool mActiveTabPriority;
HttpTrafficAnalyzer mHttpTrafficAnalyzer;
private:
// For Rate Pacing Certain Network Events. Only assign this pointer on
// socket thread.

View File

@ -126,8 +126,7 @@ nsHttpTransaction::nsHttpTransaction()
m0RTTInProgress(false),
mDoNotTryEarlyData(false),
mEarlyDataDisposition(EARLY_NONE),
mFastOpenStatus(TFO_NOT_TRIED),
mTrafficCategory(HttpTrafficCategory::eInvalid) {
mFastOpenStatus(TFO_NOT_TRIED) {
this->mSelfAddr.inet = {};
this->mPeerAddr.inet = {};
LOG(("Creating nsHttpTransaction @%p\n", this));
@ -245,8 +244,7 @@ nsresult nsHttpTransaction::Init(
nsIInputStream* requestBody, uint64_t requestContentLength,
bool requestBodyHasHeaders, nsIEventTarget* target,
nsIInterfaceRequestor* callbacks, nsITransportEventSink* eventsink,
uint64_t topLevelOuterContentWindowId, HttpTrafficCategory trafficCategory,
nsIAsyncInputStream** responseBody) {
uint64_t topLevelOuterContentWindowId, nsIAsyncInputStream** responseBody) {
nsresult rv;
LOG1(("nsHttpTransaction::Init [this=%p caps=%x]\n", this, caps));
@ -259,8 +257,6 @@ nsresult nsHttpTransaction::Init(
mTopLevelOuterContentWindowId = topLevelOuterContentWindowId;
LOG((" window-id = %" PRIx64, mTopLevelOuterContentWindowId));
mTrafficCategory = trafficCategory;
mActivityDistributor = services::GetActivityDistributor();
if (!mActivityDistributor) {
return NS_ERROR_NOT_AVAILABLE;
@ -520,16 +516,6 @@ void nsHttpTransaction::OnActivated() {
return;
}
if (mTrafficCategory != HttpTrafficCategory::eInvalid) {
HttpTrafficAnalyzer* hta = gHttpHandler->GetHttpTrafficAnalyzer();
if (hta) {
hta->IncrementHttpTransaction(mTrafficCategory);
}
if (mConnection) {
mConnection->SetTrafficCategory(mTrafficCategory);
}
}
if (mConnection && mRequestHead &&
mConnection->Version() >= HttpVersion::v2_0) {
// So this is fun. On http/2, we want to send TE: Trailers, to be
@ -1194,19 +1180,6 @@ void nsHttpTransaction::Close(nsresult reason) {
}
}
if (mTrafficCategory != HttpTrafficCategory::eInvalid) {
HttpTrafficAnalyzer* hta = gHttpHandler->GetHttpTrafficAnalyzer();
if (hta) {
hta->AccumulateHttpTransferredSize(mTrafficCategory, mTransferSize,
mContentRead);
}
}
if (mThroughCaptivePortal) {
Telemetry::ScalarAdd(
Telemetry::ScalarID::NETWORKING_HTTP_TRANSACTIONS_CAPTIVE_PORTAL, 1);
}
if (relConn && mConnection) {
MutexAutoLock lock(mLock);
mConnection = nullptr;

View File

@ -85,7 +85,7 @@ class nsHttpTransaction final : public nsAHttpTransaction,
uint64_t reqContentLength, bool reqBodyIncludesHeaders,
nsIEventTarget* consumerTarget, nsIInterfaceRequestor* callbacks,
nsITransportEventSink* eventsink, uint64_t topLevelOuterContentWindowId,
HttpTrafficCategory trafficCategory, nsIAsyncInputStream** responseBody);
nsIAsyncInputStream** responseBody);
void OnActivated() override;
@ -484,7 +484,6 @@ class nsHttpTransaction final : public nsAHttpTransaction,
// H2 websocket support
RefPtr<SpdyConnectTransaction> mH2WSTransaction;
HttpTrafficCategory mTrafficCategory;
bool mThroughCaptivePortal;
};

View File

@ -13998,45 +13998,5 @@
],
"keyed": true,
"description": "Getting the number of errors in QuotaManager initialization."
},
"HTTP_TRAFFIC_ANALYSIS_3": {
"record_in_processes": ["main"],
"alert_emails": ["gachen@mozilla.com"],
"bug_numbers": [1533363, 1546796, 1546906, 1550756],
"expires_in_version": "73",
"kind": "categorical",
"n_values": 50,
"labels": [
"Y0_N1Sys",
"Y1_N1",
"Y2_N3Oth",
"Y3_N3BasicLead",
"Y4_N3BasicBg",
"Y5_N3BasicOth",
"Y6_N3ContentLead",
"Y7_N3ContentBg",
"Y8_N3ContentOth",
"Y9_N3FpLead",
"Y10_N3FpBg",
"Y11_N3FpOth",
"Y12_P1Sys",
"Y13_P1",
"Y14_P3Oth",
"Y15_P3BasicLead",
"Y16_P3BasicBg",
"Y17_P3BasicOth",
"Y18_P3ContentLead",
"Y19_P3ContentBg",
"Y20_P3ContentOth",
"Y21_P3FpLead",
"Y22_P3FpBg",
"Y23_P3FpOth"
],
"keyed": true,
"keys": [
"Connection",
"Transaction"
],
"description": "Numbers of HTTP transactions and connections by type. There are some categories separated by labels based on 5 parameters: 1. normal browsing or private browsing 2. system principal or not 3. first party or third party 4. class of service (Leader/Background/Others) 5. tracking classification (Basic/Content/FingerprintingContent)."
}
}

View File

@ -3387,112 +3387,6 @@ script.preloader:
- 'main'
- 'content'
networking:
data_transferred_v3_kb:
bug_numbers:
- 1533363
- 1546903
- 1546796
- 1546906
- 1550756
description: >
How many KB of HTTP data transferred by type, there are some categories
separated by keys based on 5 parameters:
1. normal browsing or private browsing
2. system principal or not
3. first party or third party
4. class of service (Leader/Background/Others)
5. tracking classification (Basic/Content/FingerprintingContent)
Available keys are:
"Y0_N1Sys",
"Y1_N1",
"Y2_N3Oth",
"Y3_N3BasicLead",
"Y4_N3BasicBg",
"Y5_N3BasicOth",
"Y6_N3ContentLead",
"Y7_N3ContentBg",
"Y8_N3ContentOth",
"Y9_N3FpLead",
"Y10_N3FpBg",
"Y11_N3FpOth",
"Y12_P1Sys",
"Y13_P1",
"Y14_P3Oth",
"Y15_P3BasicLead",
"Y16_P3BasicBg",
"Y17_P3BasicOth",
"Y18_P3ContentLead",
"Y19_P3ContentBg",
"Y20_P3ContentOth",
"Y21_P3FpLead",
"Y22_P3FpBg",
"Y23_P3FpOth"
expires: "73"
keyed: true
kind: uint
notification_emails:
- gachen@mozilla.com
record_in_processes:
- 'main'
data_transferred_captive_portal:
bug_numbers:
- 1543005
description: >
Hom many KB has been transfer over a captive portal during a subsession.
expires: "73"
keyed: false
kind: uint
notification_emails:
- ddamjanovic@mozilla.com
record_in_processes:
- 'main'
http_transactions_captive_portal:
bug_numbers:
- 1543005
description: >
Number of http transactions transfer over a captive portal during a subsession.
expires: "73"
keyed: false
kind: uint
notification_emails:
- ddamjanovic@mozilla.com
record_in_processes:
- 'main'
http_connections_captive_portal:
bug_numbers:
- 1543005
description: >
Number of http connections transfer over a captive portal during a subsession.
expires: "73"
keyed: false
kind: uint
notification_emails:
- ddamjanovic@mozilla.com
record_in_processes:
- 'main'
policies:
count:
bug_numbers:
- 1432897
description: >-
A uint with the number of active enterprise policies, collected once at
startup.
expires: never
kind: uint
notification_emails:
- mkaply@mozilla.com
release_channel_collection: opt-out
products:
- 'firefox'
record_in_processes:
- main
# The following section is for probes testing the Telemetry system. They will not be
# submitted in pings and are only used for testing.
telemetry.test:

View File

@ -46,7 +46,6 @@ toolkit.jar:
content/global/filepicker.properties
content/global/customElements.js
content/global/globalOverlay.js
content/global/mozilla.xhtml
content/global/aboutMozilla.css
content/global/preferencesBindings.js
content/global/process-content.js

View File

@ -1,34 +0,0 @@
<!DOCTYPE html
[
<!ENTITY % mozillaDTD SYSTEM "chrome://global/locale/mozilla.dtd" >
%mozillaDTD;
<!ENTITY % directionDTD SYSTEM "chrome://global/locale/global.dtd" >
%directionDTD;
]>
<!-- 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/. -->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Security-Policy" content="default-src 'none'; style-src chrome:" />
<meta charset='utf-8' />
<title>&mozilla.title.11.14;</title>
<link rel="stylesheet" href="chrome://global/content/aboutMozilla.css"/>" type="text/css"/>
</head>
<body dir="&locale.dir;">
<section>
<p id="moztext">
&mozilla.quote.11.14;
</p>
<p id="from">
&mozilla.from.11.14;
</p>
</section>
</body>
</html>

View File

@ -1,15 +0,0 @@
<!-- 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/. -->
<!ENTITY mozilla.title.11.14
'The Book of Mozilla, 11:14'>
<!ENTITY mozilla.quote.11.14
'The Beast adopted <em>new raiment</em> and studied the ways of <em>Time</em> and <em>Space</em>
and <em>Light</em> and the <em>Flow</em> of energy through the Universe. From its studies,
the Beast fashioned new structures from <em>oxidised metal</em> and proclaimed their glories.
And the Beasts followers rejoiced, finding renewed purpose in these <em>teachings</em>.'>
<!ENTITY mozilla.from.11.14
'from <strong>The Book of Mozilla,</strong> 11:14'>

View File

@ -36,7 +36,6 @@
locale/@AB_CD@/global/intl.css (%chrome/global/intl.css)
locale/@AB_CD@/global/intl.properties (%chrome/global/intl.properties)
locale/@AB_CD@/global/keys.properties (%chrome/global/keys.properties)
locale/@AB_CD@/global/mozilla.dtd (%chrome/global/mozilla.dtd)
#ifndef MOZ_FENNEC
locale/@AB_CD@/global/narrate.properties (%chrome/global/narrate.properties)
#endif