diff --git a/chrome/src/nsChromeRegistryChrome.cpp b/chrome/src/nsChromeRegistryChrome.cpp index 047e8d290..148a91538 100644 --- a/chrome/src/nsChromeRegistryChrome.cpp +++ b/chrome/src/nsChromeRegistryChrome.cpp @@ -993,6 +993,29 @@ nsChromeRegistryChrome::ManifestOverride(ManifestProcessingContext& cx, int line return; } + if (cx.mType == NS_SKIN_LOCATION) { + bool chromeSkinOnly = false; + nsresult rv = chromeuri->SchemeIs("chrome", &chromeSkinOnly); + chromeSkinOnly = chromeSkinOnly && NS_SUCCEEDED(rv); + if (chromeSkinOnly) { + rv = resolveduri->SchemeIs("chrome", &chromeSkinOnly); + chromeSkinOnly = chromeSkinOnly && NS_SUCCEEDED(rv); + } + if (chromeSkinOnly) { + nsAutoCString chromePath, resolvedPath; + chromeuri->GetPath(chromePath); + resolveduri->GetPath(resolvedPath); + chromeSkinOnly = StringBeginsWith(chromePath, NS_LITERAL_CSTRING("/skin/")) && + StringBeginsWith(resolvedPath, NS_LITERAL_CSTRING("/skin/")); + } + if (!chromeSkinOnly) { + LogMessageWithContext(cx.GetManifestURI(), lineno, nsIScriptError::warningFlag, + "Cannot register non-chrome://.../skin/ URIs '%s' and '%s' as overrides and/or to be overridden from a skin manifest.", + chrome, resolved); + return; + } + } + if (!CanLoadResource(resolveduri)) { LogMessageWithContext(cx.GetManifestURI(), lineno, nsIScriptError::warningFlag, "Cannot register non-local URI '%s' for an override.", resolved); diff --git a/content/base/src/nsGkAtomList.h b/content/base/src/nsGkAtomList.h index bb58081c0..86ea98b6e 100644 --- a/content/base/src/nsGkAtomList.h +++ b/content/base/src/nsGkAtomList.h @@ -2018,6 +2018,14 @@ GK_ATOM(windows_theme_royale, "windows-theme-royale") GK_ATOM(windows_theme_zune, "windows-theme-zune") GK_ATOM(windows_theme_generic, "windows-theme-generic") +// windows version info selector metrics, helpful in removing ambiguity +// in theme selectors. +GK_ATOM(windows_version_xp, "windows-version-xp") +GK_ATOM(windows_version_vista, "windows-version-vista") +GK_ATOM(windows_version_win7, "windows-version-win7") +GK_ATOM(windows_version_win8, "windows-version-win8") +GK_ATOM(windows_version_win10, "windows-version-win10") + // And the same again, as media query keywords. GK_ATOM(_moz_scrollbar_start_backward, "-moz-scrollbar-start-backward") GK_ATOM(_moz_scrollbar_start_forward, "-moz-scrollbar-start-forward") @@ -2034,6 +2042,7 @@ GK_ATOM(_moz_windows_compositor, "-moz-windows-compositor") GK_ATOM(_moz_windows_classic, "-moz-windows-classic") GK_ATOM(_moz_windows_glass, "-moz-windows-glass") GK_ATOM(_moz_windows_theme, "-moz-windows-theme") +GK_ATOM(_moz_os_version, "-moz-os-version") GK_ATOM(_moz_touch_enabled, "-moz-touch-enabled") GK_ATOM(_moz_maemo_classic, "-moz-maemo-classic") GK_ATOM(_moz_menubar_drag, "-moz-menubar-drag") diff --git a/content/base/src/nsXMLHttpRequest.cpp b/content/base/src/nsXMLHttpRequest.cpp index df24f5766..7f0a82243 100644 --- a/content/base/src/nsXMLHttpRequest.cpp +++ b/content/base/src/nsXMLHttpRequest.cpp @@ -6,6 +6,7 @@ #include "mozilla/Util.h" +#include "mozilla/CheckedInt.h" #include "nsXMLHttpRequest.h" #include "nsISimpleEnumerator.h" #include "nsIXPConnect.h" @@ -667,14 +668,21 @@ nsXMLHttpRequest::AppendToResponseText(const char * aSrcBuffer, nsresult rv = mDecoder->GetMaxLength(aSrcBuffer, aSrcBufferLen, &destBufferLen); NS_ENSURE_SUCCESS(rv, rv); - - if (!mResponseText.SetCapacity(mResponseText.Length() + destBufferLen, fallible_t())) { + + uint32_t size = mResponseText.Length() + destBufferLen; + + // Sanity check + if (size < (uint32_t)destBufferLen) { + return NS_ERROR_OUT_OF_MEMORY; + } + + if (!mResponseText.SetCapacity(size, fallible_t())) { return NS_ERROR_OUT_OF_MEMORY; } PRUnichar* destBuffer = mResponseText.BeginWriting() + mResponseText.Length(); - int32_t totalChars = mResponseText.Length(); + CheckedInt32 totalChars = mResponseText.Length(); // This code here is basically a copy of a similar thing in // nsScanner::Append(const char* aBuffer, uint32_t aLen). @@ -687,8 +695,11 @@ nsXMLHttpRequest::AppendToResponseText(const char * aSrcBuffer, MOZ_ASSERT(NS_SUCCEEDED(rv)); totalChars += destlen; + if (!totalChars.isValid()) { + return NS_ERROR_OUT_OF_MEMORY; + } - mResponseText.SetLength(totalChars); + mResponseText.SetLength(totalChars.value()); return NS_OK; } diff --git a/content/media/webaudio/MediaBufferDecoder.cpp b/content/media/webaudio/MediaBufferDecoder.cpp index 3997653be..144e745f2 100644 --- a/content/media/webaudio/MediaBufferDecoder.cpp +++ b/content/media/webaudio/MediaBufferDecoder.cpp @@ -341,13 +341,6 @@ public: { MOZ_ASSERT(aBuffer); MOZ_ASSERT(NS_IsMainThread()); - - nsCOMPtr pWindow = do_QueryInterface(mDecodeJob.mContext->GetParentObject()); - nsCOMPtr scriptPrincipal = - do_QueryInterface(pWindow); - if (scriptPrincipal) { - mPrincipal = scriptPrincipal->GetPrincipal(); - } } NS_IMETHOD Run(); @@ -389,7 +382,6 @@ private: WebAudioDecodeJob& mDecodeJob; PhaseEnum mPhase; nsCOMPtr mThreadPool; - nsCOMPtr mPrincipal; nsRefPtr mBufferDecoder; nsAutoPtr mDecoderReader; }; @@ -418,9 +410,15 @@ MediaDecodeTask::CreateReader() { MOZ_ASSERT(NS_IsMainThread()); + nsCOMPtr principal; + nsCOMPtr sop = do_QueryInterface(mDecodeJob.mContext->GetParentObject()); + if (sop) { + principal = sop->GetPrincipal(); + } + nsRefPtr resource = new BufferMediaResource(static_cast (mBuffer), - mLength, mPrincipal, mContentType); + mLength, principal, mContentType); MOZ_ASSERT(!mBufferDecoder); mBufferDecoder = new BufferDecoder(resource); diff --git a/dom/file/ArchiveZipFile.cpp b/dom/file/ArchiveZipFile.cpp index cc0b09174..405ccf971 100644 --- a/dom/file/ArchiveZipFile.cpp +++ b/dom/file/ArchiveZipFile.cpp @@ -102,7 +102,8 @@ ArchiveInputStream::Init() uint32_t offset = ArchiveZipItem::StrToInt32(mCentral.localhdr_offset); // The file is corrupt - if (offset + ZIPLOCAL_SIZE > mData.parentSize) { + if (mData.parentSize < ZIPLOCAL_SIZE || + offset > mData.parentSize - ZIPLOCAL_SIZE) { return NS_ERROR_UNEXPECTED; } @@ -137,7 +138,8 @@ ArchiveInputStream::Init() ArchiveZipItem::StrToInt16(local.extrafield_len); // The file is corrupt if there is not enough data - if (offset + mData.sizeToBeRead > mData.parentSize) { + if (mData.parentSize < mData.sizeToBeRead || + offset > mData.parentSize - mData.sizeToBeRead) { return NS_ERROR_UNEXPECTED; } diff --git a/dom/workers/ScriptLoader.cpp b/dom/workers/ScriptLoader.cpp index 5f03adbf4..a6ae2b179 100644 --- a/dom/workers/ScriptLoader.cpp +++ b/dom/workers/ScriptLoader.cpp @@ -425,22 +425,6 @@ public: rv = ssm->GetChannelPrincipal(channel, getter_AddRefs(channelPrincipal)); NS_ENSURE_SUCCESS(rv, rv); - // See if this is a resource URI. Since JSMs usually come from resource:// - // URIs we're currently considering all URIs with the URI_IS_UI_RESOURCE - // flag as valid for creating privileged workers. - if (!nsContentUtils::IsSystemPrincipal(channelPrincipal)) { - bool isResource; - rv = NS_URIChainHasFlags(finalURI, - nsIProtocolHandler::URI_IS_UI_RESOURCE, - &isResource); - NS_ENSURE_SUCCESS(rv, rv); - - if (isResource) { - rv = ssm->GetSystemPrincipal(getter_AddRefs(channelPrincipal)); - NS_ENSURE_SUCCESS(rv, rv); - } - } - // If the load principal is the system principal then the channel // principal must also be the system principal (we do not allow chrome // code to create workers with non-chrome scripts). Otherwise this channel @@ -448,14 +432,25 @@ public: // here in case redirects changed the location of the script). if (nsContentUtils::IsSystemPrincipal(loadPrincipal)) { if (!nsContentUtils::IsSystemPrincipal(channelPrincipal)) { - return NS_ERROR_DOM_BAD_URI; + // See if this is a resource URI. Since JSMs usually come from + // resource:// URIs we're currently considering all URIs with the + // URI_IS_UI_RESOURCE flag as valid for creating privileged workers. + bool isResource; + rv = NS_URIChainHasFlags(finalURI, + nsIProtocolHandler::URI_IS_UI_RESOURCE, + &isResource); + NS_ENSURE_SUCCESS(rv, rv); + + if (isResource) { + // Assign the system principal to the resource:// worker only if it + // was loaded from code using the system principal. + channelPrincipal = loadPrincipal; + } else { + return NS_ERROR_DOM_BAD_URI; + } } } else { - nsCString scheme; - rv = finalURI->GetScheme(scheme); - NS_ENSURE_SUCCESS(rv, rv); - // We exempt data urls and other URI's that inherit their // principal again. if (NS_FAILED(loadPrincipal->CheckMayLoad(finalURI, false, true))) { diff --git a/dom/workers/XMLHttpRequest.cpp b/dom/workers/XMLHttpRequest.cpp index 9299cadad..17feb708e 100644 --- a/dom/workers/XMLHttpRequest.cpp +++ b/dom/workers/XMLHttpRequest.cpp @@ -116,6 +116,7 @@ public: bool mLastUploadLengthComputable; bool mSeenLoadStart; bool mSeenUploadLoadStart; + bool mOpening; // Only touched on the main thread. uint32_t mSyncQueueKey; @@ -135,7 +136,7 @@ public: mOuterEventStreamId(0), mOuterChannelId(0), mLastLoaded(0), mLastTotal(0), mLastUploadLoaded(0), mLastUploadTotal(0), mIsSyncXHR(false), mLastLengthComputable(false), mLastUploadLengthComputable(false), - mSeenLoadStart(false), mSeenUploadLoadStart(false), + mSeenLoadStart(false), mSeenUploadLoadStart(false), mOpening(false), mSyncQueueKey(UINT32_MAX), mSyncEventResponseSyncQueueKey(UINT32_MAX), mUploadEventListenersAttached(false), mMainThreadSeenLoadStart(false), @@ -199,7 +200,7 @@ public: } void - Teardown(); + Teardown(bool aSendUnpin); bool AddRemoveEventListeners(bool aUpload, bool aAdd); @@ -367,7 +368,9 @@ public: { AssertIsOnMainThread(); - mProxy->Teardown(); + // This means the XHR was GCed, so we can't be pinned here, + // and we don't need to try to unpin. + mProxy->Teardown(/* aSendUnpin */ false); mProxy = nullptr; return NS_OK; @@ -857,7 +860,7 @@ public: { AssertIsOnMainThread(); - mProxy->Teardown(); + mProxy->Teardown(/* aSendUnpin */ true); return NS_OK; } @@ -1162,7 +1165,10 @@ public: variant = wvariant; } - NS_ASSERTION(!mProxy->mWorkerPrivate, "Should be null!"); + // Send() has already been called if this is not null, so bail. + if (mProxy->mWorkerPrivate) { + return NS_ERROR_FAILURE; + } mProxy->mWorkerPrivate = mWorkerPrivate; NS_ASSERTION(mProxy->mSyncQueueKey == UINT32_MAX, "Should be unset!"); @@ -1259,7 +1265,7 @@ private: } // anonymous namespace void -Proxy::Teardown() +Proxy::Teardown(bool aSendUnpin) { AssertIsOnMainThread(); @@ -1272,10 +1278,12 @@ Proxy::Teardown() mXHR->Abort(); if (mOutstandingSendCount) { - nsRefPtr runnable = - new XHRUnpinRunnable(mWorkerPrivate, mXMLHttpRequestPrivate); - if (!runnable->Dispatch(nullptr)) { - NS_RUNTIMEABORT("We're going to hang at shutdown anyways."); + if (aSendUnpin) { + nsRefPtr runnable = + new XHRUnpinRunnable(mWorkerPrivate, mXMLHttpRequestPrivate); + if (!runnable->Dispatch(nullptr)) { + NS_RUNTIMEABORT("We're going to hang at shutdown anyways."); + } } mWorkerPrivate = nullptr; @@ -1650,6 +1658,12 @@ XMLHttpRequest::SendInternal(const nsAString& aStringBody, ErrorResult& aRv) { mWorkerPrivate->AssertIsOnWorkerThread(); + + // Hold off on send() calls when open is running. + if (mProxy->mOpening) { + aRv.Throw(NS_ERROR_FAILURE); + return; + } bool hasUploadListeners = mUpload ? mUpload->HasListeners() : false; @@ -1744,12 +1758,15 @@ XMLHttpRequest::Open(const nsACString& aMethod, const nsAString& aUrl, mBackgroundRequest, mWithCredentials, mTimeout); + mProxy->mOpening = true; if (!runnable->Dispatch(GetJSContext())) { ReleaseProxy(); + mProxy->mOpening = false; aRv.Throw(NS_ERROR_FAILURE); return; } - + + mProxy->mOpening = false; mProxy->mIsSyncXHR = !aAsync; } diff --git a/gfx/2d/SourceSurfaceD2D.cpp b/gfx/2d/SourceSurfaceD2D.cpp index c6ff601aa..005a6901e 100644 --- a/gfx/2d/SourceSurfaceD2D.cpp +++ b/gfx/2d/SourceSurfaceD2D.cpp @@ -156,13 +156,13 @@ DataSourceSurfaceD2D::DataSourceSurfaceD2D(SourceSurfaceD2D* aSourceSurface) return; } - D2D1_RENDER_TARGET_PROPERTIES rtProps = D2D1::RenderTargetProperties( - D2D1_RENDER_TARGET_TYPE_DEFAULT, + D2D1_RENDER_TARGET_PROPERTIES rtProps = D2D1::RenderTargetProperties( + D2D1_RENDER_TARGET_TYPE_DEFAULT, D2D1::PixelFormat(DXGI_FORMAT_UNKNOWN, D2D1_ALPHA_MODE_PREMULTIPLIED)); RefPtr renderTarget; - hr = DrawTargetD2D::factory()->CreateDxgiSurfaceRenderTarget(dxgiSurface, - &rtProps, + hr = DrawTargetD2D::factory()->CreateDxgiSurfaceRenderTarget(dxgiSurface, + &rtProps, byRef(renderTarget)); if (FAILED(hr)) { gfxWarning() << "Failed to create render target. Code: " << hr; diff --git a/gfx/layers/d3d9/ImageLayerD3D9.cpp b/gfx/layers/d3d9/ImageLayerD3D9.cpp index 389a7d91b..aa96daae1 100644 --- a/gfx/layers/d3d9/ImageLayerD3D9.cpp +++ b/gfx/layers/d3d9/ImageLayerD3D9.cpp @@ -65,8 +65,11 @@ DataToTexture(IDirect3DDevice9 *aDevice, } tmpTexture->GetSurfaceLevel(0, getter_AddRefs(surface)); - surface->LockRect(&lockedRect, NULL, 0); - NS_ASSERTION(lockedRect.pBits, "Could not lock surface"); + HRESULT hr = surface->LockRect(&lockedRect, NULL, 0); + if (FAILED(hr) || !lockedRect.pBits) { + NS_WARNING("Imagelayer D3D9: Could not lock surface"); + return NULL; + } } else { if (FAILED(aDevice-> CreateTexture(aSize.width, aSize.height, diff --git a/gfx/layers/d3d9/LayerManagerD3D9.cpp b/gfx/layers/d3d9/LayerManagerD3D9.cpp index fb5ef2f2c..d7d3fceef 100644 --- a/gfx/layers/d3d9/LayerManagerD3D9.cpp +++ b/gfx/layers/d3d9/LayerManagerD3D9.cpp @@ -341,7 +341,11 @@ LayerManagerD3D9::PaintToTarget() device()->GetRenderTargetData(backBuff, destSurf); D3DLOCKED_RECT rect; - destSurf->LockRect(&rect, NULL, D3DLOCK_READONLY); + HRESULT hr = destSurf->LockRect(&rect, NULL, D3DLOCK_READONLY); + if (FAILED(hr) || !rect.pBits) { + NS_WARNING("Failed to lock rect in paint to target D3D9"); + return; + } nsRefPtr imageSurface = new gfxImageSurface((unsigned char*)rect.pBits, diff --git a/gfx/thebes/gfxPlatform.cpp b/gfx/thebes/gfxPlatform.cpp index dfbc90008..6377c33b0 100644 --- a/gfx/thebes/gfxPlatform.cpp +++ b/gfx/thebes/gfxPlatform.cpp @@ -108,6 +108,8 @@ static PRLogModuleInfo *sTextrunuiLog = nullptr; static PRLogModuleInfo *sCmapDataLog = nullptr; #endif +void InitLayersAccelerationPrefs(); + /* Class to listen for pref changes so that chrome code can dynamically force sRGB as an output profile. See Bug #452125. */ class SRGBOverrideObserver MOZ_FINAL : public nsIObserver, @@ -328,6 +330,8 @@ gfxPlatform::Init() mozilla::gl::GLContext::StaticInit(); #endif + InitLayersAccelerationPrefs(); + bool useOffMainThreadCompositing = GetPrefLayersOffMainThreadCompositionEnabled() || Preferences::GetBool("browser.tabs.remote", false); useOffMainThreadCompositing &= GetPlatform()->SupportsOffMainThreadCompositing(); diff --git a/layout/style/nsCSSRuleProcessor.cpp b/layout/style/nsCSSRuleProcessor.cpp index 3da788a60..808c9f812 100644 --- a/layout/style/nsCSSRuleProcessor.cpp +++ b/layout/style/nsCSSRuleProcessor.cpp @@ -1237,6 +1237,29 @@ InitSystemMetrics() } #endif + // OS version metrics, currently only defined for Windows. + if (NS_SUCCEEDED( + LookAndFeel::GetInt(LookAndFeel::eIntID_OperatingSystemVersionIdentifier, + &metricResult))) { + switch(metricResult) { + case LookAndFeel::eOperatingSystemVersion_WindowsXP: + sSystemMetrics->AppendElement(nsGkAtoms::windows_version_xp); + break; + case LookAndFeel::eOperatingSystemVersion_WindowsVista: + sSystemMetrics->AppendElement(nsGkAtoms::windows_version_vista); + break; + case LookAndFeel::eOperatingSystemVersion_Windows7: + sSystemMetrics->AppendElement(nsGkAtoms::windows_version_win7); + break; + case LookAndFeel::eOperatingSystemVersion_Windows8: + sSystemMetrics->AppendElement(nsGkAtoms::windows_version_win8); + break; + case LookAndFeel::eOperatingSystemVersion_Windows10: + sSystemMetrics->AppendElement(nsGkAtoms::windows_version_win10); + break; + } + } + return true; } diff --git a/layout/style/nsMediaFeatures.cpp b/layout/style/nsMediaFeatures.cpp index 62180bbfa..9733078fe 100644 --- a/layout/style/nsMediaFeatures.cpp +++ b/layout/style/nsMediaFeatures.cpp @@ -45,6 +45,20 @@ const WindowsThemeName themeStrings[] = { { LookAndFeel::eWindowsTheme_Zune, L"zune" }, { LookAndFeel::eWindowsTheme_Generic, L"generic" } }; + +struct OperatingSystemVersionInfo { + LookAndFeel::OperatingSystemVersion id; + const wchar_t* name; +}; + +// OS version identities used in the -moz-os-version media query. +const OperatingSystemVersionInfo osVersionStrings[] = { + { LookAndFeel::eOperatingSystemVersion_WindowsXP, L"windows-xp" }, + { LookAndFeel::eOperatingSystemVersion_WindowsVista, L"windows-vista" }, + { LookAndFeel::eOperatingSystemVersion_Windows7, L"windows-win7" }, + { LookAndFeel::eOperatingSystemVersion_Windows8, L"windows-win8" }, + { LookAndFeel::eOperatingSystemVersion_Windows10, L"windows-win10" } +}; #endif // A helper for four features below @@ -327,6 +341,28 @@ GetWindowsTheme(nsPresContext* aPresContext, const nsMediaFeature* aFeature, return NS_OK; } +static nsresult +GetOperatinSystemVersion(nsPresContext* aPresContext, const nsMediaFeature* aFeature, + nsCSSValue& aResult) +{ + aResult.Reset(); +#ifdef XP_WIN + int32_t metricResult; + if (NS_SUCCEEDED( + LookAndFeel::GetInt(LookAndFeel::eIntID_OperatingSystemVersionIdentifier, + &metricResult))) { + for (size_t i = 0; i < ArrayLength(osVersionStrings); ++i) { + if (metricResult == osVersionStrings[i].id) { + aResult.SetStringValue(nsDependentString(osVersionStrings[i].name), + eCSSUnit_Ident); + break; + } + } + } +#endif + return NS_OK; +} + static nsresult GetIsGlyph(nsPresContext* aPresContext, const nsMediaFeature* aFeature, nsCSSValue& aResult) @@ -586,6 +622,13 @@ nsMediaFeatures::features[] = { { nullptr }, GetWindowsTheme }, + { + &nsGkAtoms::_moz_os_version, + nsMediaFeature::eMinMaxNotAllowed, + nsMediaFeature::eIdent, + { nullptr }, + GetOperatinSystemVersion + }, { &nsGkAtoms::_moz_swipe_animation_enabled, diff --git a/modules/libjar/nsZipArchive.cpp b/modules/libjar/nsZipArchive.cpp index ff92d98ff..cee0b10d5 100644 --- a/modules/libjar/nsZipArchive.cpp +++ b/modules/libjar/nsZipArchive.cpp @@ -612,8 +612,13 @@ MOZ_WIN_MEM_TRY_BEGIN if (!centralOffset) return NS_ERROR_FILE_CORRUPTED; - //-- Read the central directory headers buf = startp + centralOffset; + + // avoid overflow of startp + centralOffset. + if (buf < startp) + return NS_ERROR_FILE_CORRUPTED; + + //-- Read the central directory headers uint32_t sig = 0; while (buf + int32_t(sizeof(uint32_t)) <= endp && (sig = xtolong(buf)) == CENTRALSIG) { @@ -627,18 +632,20 @@ MOZ_WIN_MEM_TRY_BEGIN uint16_t namelen = xtoint(central->filename_len); uint16_t extralen = xtoint(central->extrafield_len); uint16_t commentlen = xtoint(central->commentfield_len); - - // Point to the next item at the top of loop - buf += ZIPCENTRAL_SIZE + namelen + extralen + commentlen; + uint32_t diff = ZIPCENTRAL_SIZE + namelen + extralen + commentlen; // Sanity check variable sizes and refuse to deal with // anything too big: it's likely a corrupt archive. if (namelen < 1 || namelen > kMaxNameLength || - buf >= endp) { + buf >= buf + diff || // No overflow + buf >= endp - diff) { return NS_ERROR_FILE_CORRUPTED; } + // Point to the next item at the top of loop + buf += diff; + nsZipItem* item = CreateZipItem(); if (!item) return NS_ERROR_OUT_OF_MEMORY; @@ -769,7 +776,7 @@ MOZ_WIN_MEM_TRY_BEGIN uint32_t len = mFd->mLen; const uint8_t* data = mFd->mFileData; uint32_t offset = aItem->LocalOffset(); - if (offset + ZIPLOCAL_SIZE > len) + if (len < ZIPLOCAL_SIZE || offset > len - ZIPLOCAL_SIZE) return nullptr; // -- check signature before using the structure, in case the zip file is corrupt @@ -785,7 +792,8 @@ MOZ_WIN_MEM_TRY_BEGIN xtoint(Local->extrafield_len); // -- check if there is enough source data in the file - if (offset + aItem->Size() > len) + if (len < aItem->Size() || + offset > len - aItem->Size()) return nullptr; return data + offset; diff --git a/modules/libpref/src/init/all.js b/modules/libpref/src/init/all.js index a348b2a96..03663123a 100644 --- a/modules/libpref/src/init/all.js +++ b/modules/libpref/src/init/all.js @@ -839,7 +839,7 @@ pref("security.fileuri.strict_origin_policy", true); // Allow necko to do A/B testing. Will generally only happen if // telemetry is also enabled as otherwise there is no way to report // the results -pref("network.allow-experiments", true); +pref("network.allow-experiments", false); // Turn off interprocess security checks. Needed to run xpcshell tests. pref("network.disable.ipc.security", false); @@ -1507,7 +1507,7 @@ pref("security.notification_enable_delay", 500); pref("security.csp.enable", true); pref("security.csp.debug", false); -pref("security.csp.experimentalEnabled", false); +pref("security.csp.experimentalEnabled", true); // Mixed content blocking pref("security.mixed_content.block_active_content", false); diff --git a/security/manager/boot/src/nsSTSPreloadList.errors b/security/manager/boot/src/nsSTSPreloadList.errors index 127229daa..f3293c97d 100644 --- a/security/manager/boot/src/nsSTSPreloadList.errors +++ b/security/manager/boot/src/nsSTSPreloadList.errors @@ -2,16 +2,17 @@ 56ct.com: could not connect to host activiti.alfresco.com: did not receive HSTS header adamkostecki.de: could not connect to host -adamstas.com: could not connect to host admin.google.com: did not receive HSTS header (error ignored - included regardless) adsfund.org: could not connect to host aes256.ru: could not connect to host afp548.tk: could not connect to host agrimap.com: did not receive HSTS header +agrios.de: did not receive HSTS header airbnb.com: did not receive HSTS header aiticon.de: did not receive HSTS header akselimedia.fi: did not receive HSTS header -alpha.irccloud.com: did not receive HSTS header +alecvannoten.be: did not receive HSTS header +alpha.irccloud.com: could not connect to host alphabit-secure.com: could not connect to host altmv.com: max-age too low: 7776000 amigogeek.net: could not connect to host @@ -25,7 +26,7 @@ app.manilla.com: could not connect to host appengine.google.com: did not receive HSTS header (error ignored - included regardless) appseccalifornia.org: could not connect to host arrayify.com: did not receive HSTS header -astaxi.net: could not connect to host +astaxi.net: did not receive HSTS header at.search.yahoo.com: did not receive HSTS header atavio.at: could not connect to host atavio.ch: could not connect to host @@ -55,24 +56,28 @@ bigshinylock.minazo.net: could not connect to host bitfarm-archiv.com: did not receive HSTS header bitfarm-archiv.de: did not receive HSTS header bitgo.com: max-age too low: 0 +bitvigor.com: did not receive HSTS header bizon.sk: did not receive HSTS header blacklane.com: did not receive HSTS header blog.lookout.com: did not receive HSTS header blubbablasen.de: could not connect to host +bluetenmeer.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] +bochs.info: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] bonigo.de: did not receive HSTS header br.search.yahoo.com: did not receive HSTS header braintreepayments.com: did not receive HSTS header brainvation.de: did not receive HSTS header bran.cc: could not connect to host +brks.xyz: could not connect to host browserid.org: did not receive HSTS header -brunosouza.org: could not connect to host business.medbank.com.mt: did not receive HSTS header buttercoin.com: did not receive HSTS header +bysymphony.com: did not receive HSTS header ca.search.yahoo.com: did not receive HSTS header cake.care: could not connect to host calibreapp.com: did not receive HSTS header calyxinstitute.org: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] -carbonmade.com: max-age too low: 2592000 +carbonmade.com: max-age too low: 5184000 carlolly.co.uk: could not connect to host cd.search.yahoo.com: did not receive HSTS header celltek-server.de: did not receive HSTS header @@ -88,13 +93,11 @@ chippy.ch: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_ chit.search.yahoo.com: did not receive HSTS header chm.vn: did not receive HSTS header chontalpa.pw: did not receive HSTS header -chriswarrick.com: did not receive HSTS header chrome-devtools-frontend.appspot.com: did not receive HSTS header (error ignored - included regardless) chrome.google.com: did not receive HSTS header (error ignored - included regardless) cimballa.com: did not receive HSTS header cl.search.yahoo.com: did not receive HSTS header climaprecio.es: did not receive HSTS header -cloudns.com.au: could not connect to host cn.search.yahoo.com: did not receive HSTS header co.search.yahoo.com: did not receive HSTS header code.google.com: did not receive HSTS header (error ignored - included regardless) @@ -120,12 +123,12 @@ datasnitch.co.uk: could not connect to host daylightcompany.com: did not receive HSTS header de.search.yahoo.com: did not receive HSTS header decibelios.li: did not receive HSTS header +dedeo.tk: max-age too low: 0 destinationbijoux.fr: max-age too low: 2678400 devh.de: did not receive HSTS header diedrich.co: did not receive HSTS header digitaldaddy.net: could not connect to host discovery.lookout.com: did not receive HSTS header -dixmag.com: could not connect to host dk.search.yahoo.com: did not receive HSTS header dl.google.com: did not receive HSTS header (error ignored - included regardless) do.search.yahoo.com: did not receive HSTS header @@ -134,8 +137,10 @@ domaris.de: did not receive HSTS header download.jitsi.org: did not receive HSTS header drive.google.com: did not receive HSTS header (error ignored - included regardless) dropcam.com: did not receive HSTS header +dymersion.com: did not receive HSTS header dzlibs.io: could not connect to host e-aut.net: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] +ebaymotorssucks.com: max-age too low: 0 ecdn.cz: could not connect to host edelsteincosmetic.com: did not receive HSTS header edmodo.com: did not receive HSTS header @@ -160,23 +165,31 @@ fatzebra.com.au: did not receive HSTS header feminists.co: could not connect to host festember.com: did not receive HSTS header fi.search.yahoo.com: did not receive HSTS header +fiftyshadesofluca.ml: could not connect to host firebaseio.com: could not connect to host fixingdns.com: did not receive HSTS header fj.search.yahoo.com: did not receive HSTS header -floweslawncare.com: could not connect to host +floweslawncare.com: did not receive HSTS header fm83.nl: did not receive HSTS header fonetiq.io: could not connect to host foreignexchangeresource.com: did not receive HSTS header +foro.io: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] +fotiu.com: could not connect to host fr.search.yahoo.com: did not receive HSTS header fsma.pl: did not receive HSTS header +futos.de: did not receive HSTS header +g2g.com: did not receive HSTS header gamesdepartment.co.uk: did not receive HSTS header +gaptek.id: did not receive HSTS header geekandi.com: max-age too low: 7776000 +genuxation.com: could not connect to host getlantern.org: did not receive HSTS header getssl.uz: could not connect to host gl.search.yahoo.com: did not receive HSTS header glass.google.com: did not receive HSTS header (error ignored - included regardless) gm.search.yahoo.com: did not receive HSTS header gmail.com: did not receive HSTS header (error ignored - included regardless) +gnetwork.eu: did not receive HSTS header goodwin43.ru: did not receive HSTS header googlemail.com: did not receive HSTS header (error ignored - included regardless) googleplex.com: could not connect to host @@ -194,12 +207,16 @@ gvt2.com: could not connect to host gvt2.com: could not connect to host (error ignored - included regardless) gvt3.com: could not connect to host gvt3.com: could not connect to host (error ignored - included regardless) +haber1903.com: max-age too low: 0 hangouts.google.com: did not receive HSTS header (error ignored - included regardless) hatoko.net: could not connect to host hda.me: did not receive HSTS header +heart.ge: did not receive HSTS header +heijblok.com: could not connect to host hk.search.yahoo.com: did not receive HSTS header hn.search.yahoo.com: did not receive HSTS header hoerbuecher-und-hoerspiele.de: did not receive HSTS header +homa.website: did not receive HSTS header honeytracks.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] horosho.in: could not connect to host horseboners.xxx: did not receive HSTS header @@ -226,6 +243,7 @@ itshost.ru: could not connect to host izdiwho.com: could not connect to host j0s.at: did not receive HSTS header jamesdoylephoto.com: did not receive HSTS header +janoberst.com: could not connect to host janus-engineering.de: did not receive HSTS header jelmer.co.uk: could not connect to host jkb.pics: could not connect to host @@ -235,20 +253,23 @@ jottit.com: could not connect to host julian-kipka.de: did not receive HSTS header justlikethat.hosting: did not receive HSTS header k-dev.de: could not connect to host -kamikano.com: did not receive HSTS header +kamikano.com: max-age too low: 0 +kdm-online.de: did not receive HSTS header keeley.gq: could not connect to host keeley.ml: could not connect to host keepclean.me: could not connect to host +keybase.io: could not connect to host keymaster.lookout.com: did not receive HSTS header kirkforcongress.com: could not connect to host kirkforsenate.com: did not receive HSTS header kitsta.com: could not connect to host kiwiirc.com: max-age too low: 5256000 -klausbrinch.dk: could not connect to host klaxn.com: could not connect to host klaxn.org: could not connect to host komandakovalchuk.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] koop-bremen.de: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] +korinar.com: could not connect to host +korni22.org: did not receive HSTS header kr.search.yahoo.com: did not receive HSTS header krouzkyliduska.cz: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] kryptera.se: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] @@ -261,7 +282,6 @@ li.search.yahoo.com: did not receive HSTS header library.linode.com: did not receive HSTS header libraryfreedomproject.org: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] lifeguard.aecom.com: max-age too low: 86400 -linguaquote.com: did not receive HSTS header lists.fedoraproject.org: did not receive HSTS header login.corp.google.com: max-age too low: 7776000 (error ignored - included regardless) logotype.se: did not receive HSTS header @@ -282,26 +302,31 @@ market.android.com: did not receive HSTS header (error ignored - included regard markprof.ru: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] marshut.net: could not connect to host martijnvhoof.nl: could not connect to host +mattsvensson.com: could not connect to host mccrypto.de: could not connect to host +mebio.us: did not receive HSTS header medallia.io: could not connect to host mediacru.sh: could not connect to host meetingmanage.nl: did not receive HSTS header megashur.se: did not receive HSTS header megaxchange.com: did not receive HSTS header meinebo.it: could not connect to host +miasarafina.de: did not receive HSTS header micropple.net: could not connect to host miketabor.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] minikneet.nl: could not connect to host minora.io: did not receive HSTS header mirindadomo.ru: did not receive HSTS header mirrorx.com: did not receive HSTS header +mistacms.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] mnemotiv.com: could not connect to host mobilethreat.net: could not connect to host mobilethreatnetwork.net: could not connect to host -mocloud.eu: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] +mojapraca.sk: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] mqas.net: could not connect to host mt.search.yahoo.com: did not receive HSTS header mu.search.yahoo.com: did not receive HSTS header +mustika.cf: max-age too low: 0 mutamatic.com: could not connect to host mw.search.yahoo.com: did not receive HSTS header mx.search.yahoo.com: did not receive HSTS header @@ -314,7 +339,7 @@ myni.io: could not connect to host neftaly.com: did not receive HSTS header nemovement.org: did not receive HSTS header neonisi.com: could not connect to host -netzbit.de: did not receive HSTS header +netzbit.de: could not connect to host netzpolitik.org: did not receive HSTS header netztest.at: did not receive HSTS header newkaliningrad.ru: did not receive HSTS header @@ -323,18 +348,14 @@ nexth.net: could not connect to host nexth.us: could not connect to host ng-security.com: could not connect to host ni.search.yahoo.com: did not receive HSTS header -nijm.nl: max-age too low: 0 nl.search.yahoo.com: did not receive HSTS header no.search.yahoo.com: did not receive HSTS header noexpect.org: could not connect to host noobs-r-us.co.uk: did not receive HSTS header np.search.yahoo.com: did not receive HSTS header -npw.net: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] -null-sec.ru: did not receive HSTS header -nwa.xyz: could not connect to host nz.search.yahoo.com: did not receive HSTS header nzb.cat: did not receive HSTS header -offshore-firma.org: could not connect to host +onedot.nl: could not connect to host ooonja.de: could not connect to host opendesk.cc: did not receive HSTS header openshift.redhat.com: did not receive HSTS header @@ -350,6 +371,7 @@ pe.search.yahoo.com: did not receive HSTS header ph.search.yahoo.com: did not receive HSTS header phcorner.net: max-age too low: 0 phurl.de: could not connect to host +pieterhordijk.com: could not connect to host piratenlogin.de: could not connect to host pisidia.de: did not receive HSTS header pk.search.yahoo.com: did not receive HSTS header @@ -372,9 +394,8 @@ rasing.me: could not connect to host redlatam.org: did not receive HSTS header redports.org: did not receive HSTS header regar42.fr: could not connect to host -reishunger.de: did not receive HSTS header reserve-online.net: did not receive HSTS header -rid-wan.com: max-age too low: 0 +rika.me: could not connect to host riseup.net: did not receive HSTS header rme.li: did not receive HSTS header ro.search.yahoo.com: did not receive HSTS header @@ -383,9 +404,9 @@ roddis.net: did not receive HSTS header ru.search.yahoo.com: did not receive HSTS header rw.search.yahoo.com: did not receive HSTS header sah3.net: could not connect to host -sanatfilan.com: could not connect to host saturngames.co.uk: could not connect to host savetheinternet.eu: did not receive HSTS header +schoop.me: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] script.google.com: did not receive HSTS header (error ignored - included regardless) sdsl-speedtest.de: could not connect to host se.search.yahoo.com: did not receive HSTS header @@ -409,10 +430,12 @@ sistemy48.ru: did not receive HSTS header sites.google.com: did not receive HSTS header (error ignored - included regardless) smartlend.se: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] soccergif.com: could not connect to host +sockeye.cc: did not receive HSTS header sol.io: could not connect to host souyar.de: could not connect to host souyar.net: could not connect to host souyar.us: could not connect to host +spartantheatre.org: did not receive HSTS header spdysync.com: did not receive HSTS header spreadsheets.google.com: did not receive HSTS header (error ignored - included regardless) square.com: did not receive HSTS header @@ -420,13 +443,12 @@ ssl.google-analytics.com: did not receive HSTS header (error ignored - included ssl.panoramio.com: did not receive HSTS header stillyarts.com: did not receive HSTS header stocktrade.de: could not connect to host -streamingmagazin.de: did not receive HSTS header +streamingmagazin.de: could not connect to host suite73.org: could not connect to host sunshinepress.org: could not connect to host surfeasy.com: did not receive HSTS header suzukikenichi.com: did not receive HSTS header sv.search.yahoo.com: did not receive HSTS header -syzygy-tables.info: did not receive HSTS header t.facebook.com: did not receive HSTS header tablet.facebook.com: did not receive HSTS header taglondon.org: did not receive HSTS header @@ -435,31 +457,32 @@ talk.google.com: could not connect to host (error ignored - included regardless) tallr.se: could not connect to host tandarts-haarlem.nl: did not receive HSTS header tapka.cz: did not receive HSTS header -taxsquirrel.com: could not connect to host tc-bonito.de: did not receive HSTS header -tdrs.info: could not connect to host -tektoria.de: did not receive HSTS header +tektoria.de: could not connect to host temehu.com: did not receive HSTS header temp.pm: did not receive HSTS header terrax.berlin: could not connect to host terrax.info: could not connect to host +terrax.net: could not connect to host th.search.yahoo.com: did not receive HSTS header the-sky-of-valkyries.com: could not connect to host therapyportal.com: did not receive HSTS header theshadestore.com: did not receive HSTS header -thomasgriffin.io: did not receive HSTS header +thomasgriffin.io: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] thorncreek.net: did not receive HSTS header tipsyk.ru: did not receive HSTS header tirex.media: did not receive HSTS header +titties.ml: did not receive HSTS header +tobias-kluge.de: did not receive HSTS header tollmanz.com: did not receive HSTS header tomfisher.eu: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] tr.search.yahoo.com: did not receive HSTS header tradingcentre.com.au: did not receive HSTS header translate.googleapis.com: did not receive HSTS header (error ignored - included regardless) translatoruk.co.uk: did not receive HSTS header +travador.com: did not receive HSTS header triop.se: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] tuturulianda.com: did not receive HSTS header -tuxgeo.com: did not receive HSTS header tv.search.yahoo.com: could not connect to host tw.search.yahoo.com: did not receive HSTS header tzappa.net: did not receive HSTS header @@ -479,6 +502,7 @@ vhost.co.id: could not connect to host viennan.net: did not receive HSTS header vn.search.yahoo.com: did not receive HSTS header vyncke.org: max-age too low: 2678400 +vzk.io: could not connect to host webeau.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] webmail.mayfirst.org: did not receive HSTS header when-release.com: did not receive HSTS header @@ -491,6 +515,7 @@ www.calyxinstitute.org: [Exception... "Component returned failure code: 0x800040 www.cueup.com: could not connect to host www.developer.mydigipass.com: could not connect to host www.elanex.biz: did not receive HSTS header +www.etsy.com: did not receive HSTS header www.gmail.com: did not receive HSTS header (error ignored - included regardless) www.googlemail.com: did not receive HSTS header (error ignored - included regardless) www.greplin.com: could not connect to host @@ -509,9 +534,12 @@ xtream-hosting.com: could not connect to host xtream-hosting.de: could not connect to host xtream-hosting.eu: could not connect to host xtreamhosting.eu: could not connect to host +yokeepo.com: max-age too low: 0 za.search.yahoo.com: did not receive HSTS header zarooba.com: did not receive HSTS header zeitpunkt-kulturmagazin.de: did not receive HSTS header zenpayroll.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 134" data: no] +zeplin.io: did not receive HSTS header zh.search.yahoo.com: did not receive HSTS header +zixiao.wang: could not connect to host zoo24.de: could not connect to host diff --git a/security/manager/boot/src/nsSTSPreloadList.inc b/security/manager/boot/src/nsSTSPreloadList.inc index d7a464922..407cb2cce 100644 --- a/security/manager/boot/src/nsSTSPreloadList.inc +++ b/security/manager/boot/src/nsSTSPreloadList.inc @@ -8,7 +8,7 @@ /*****************************************************************************/ #include "mozilla/StandardInteger.h" -const PRTime gPreloadListExpirationTime = INT64_C(1446287099409000); +const PRTime gPreloadListExpirationTime = INT64_C(1447496672780000); class nsSTSPreload { @@ -30,12 +30,16 @@ static const nsSTSPreload kSTSPreloadList[] = { { "1a-werkstattgeraete.de", true }, { "2048game.co.uk", true }, { "2600hq.com", true }, + { "2bis10.de", true }, { "301.website", true }, { "302.nyc", true }, { "314chan.org", true }, + { "3473-wiki.de", true }, { "3do3dont.com", true }, { "47ronin.com", false }, + { "4eyes.ch", true }, { "4g-server.eu", true }, + { "4mm.org", true }, { "4sqsu.eu", true }, { "5apps.com", false }, { "7183.org", true }, @@ -43,15 +47,21 @@ static const nsSTSPreload kSTSPreloadList[] = { { "9point6.com", true }, { "abecodes.net", false }, { "abiapp.net", true }, + { "abioniere.de", true }, + { "abiturma.de", true }, { "abmahnhelfer.de", true }, + { "access-sofia.org", true }, { "accounts.firefox.com", true }, { "accounts.google.com", true }, { "aclu.org", false }, + { "acorns.com", true }, { "acuica.co.uk", false }, { "acus.gov", true }, + { "ada.is", true }, { "adambyers.com", true }, { "adamkostecki.de", true }, { "adamstas.com", true }, + { "adblockextreme.com", true }, { "addvocate.com", true }, { "adlershop.ch", true }, { "admin.fedoraproject.org", true }, @@ -60,12 +70,13 @@ static const nsSTSPreload kSTSPreloadList[] = { { "adorai.tk", true }, { "adsfund.org", true }, { "advanced-online.eu", true }, + { "adviespuntklokkenluiders.nl", true }, { "aerolog.co", true }, { "aes256.ru", true }, { "aeyoun.com", true }, + { "affinitysync.com", true }, { "afp548.com", true }, { "afrodigital.uk", true }, - { "agrios.de", true }, { "ahoyconference.com", true }, { "ahwatukeefoothillsmontessori.com", true }, { "aids.gov", true }, @@ -75,18 +86,23 @@ static const nsSTSPreload kSTSPreloadList[] = { { "aiticon.com", true }, { "ajouin.com", true }, { "akachanikuji.com", true }, + { "akclinics.org", true }, { "akselinurmio.fi", true }, + { "aktiv-naturheilmittel.at", true }, + { "aktiv-naturheilmittel.ch", true }, + { "aktiv-naturheilmittel.de", true }, { "al-shami.net", true }, { "aladdinschools.appspot.com", true }, { "alainwolf.net", true }, { "alaninkenya.org", true }, { "alanrickmanflipstable.com", true }, - { "alecvannoten.be", true }, { "alethearose.com", true }, + { "alex-ross.co.uk", true }, { "alexgaynor.net", true }, { "alexsexton.com", true }, { "alexyang.me", true }, { "allinonecyprus.com", true }, + { "alocato.com", true }, { "alza.cz", true }, { "alza.de", true }, { "alza.sk", true }, @@ -98,11 +114,13 @@ static const nsSTSPreload kSTSPreloadList[] = { { "anakros.me", true }, { "andere-gedanken.net", true }, { "andreasbreitenlohner.de", true }, + { "andreasolsson.se", true }, { "andrewimeson.com", true }, { "andymartin.cc", true }, { "anetaben.nl", true }, { "angularjs.org", true }, { "anime.my", false }, + { "animesharp.com", true }, { "animurecs.com", true }, { "ankakaak.com", true }, { "ankarakart.com.tr", true }, @@ -146,17 +164,24 @@ static const nsSTSPreload kSTSPreloadList[] = { { "arlen.io", true }, { "armytricka.cz", true }, { "aroonchande.com", true }, + { "artegusto.ru", true }, { "arteseideias.com.pt", true }, { "arty.name", true }, { "ask.fedoraproject.org", true }, { "ask.stg.fedoraproject.org", true }, + { "asm-x.com", true }, + { "ass.org.au", true }, { "atc.io", true }, { "athenelive.com", true }, { "atishchenko.com", true }, { "atlantischild.hu", true }, { "atlassian.net", true }, + { "atlex.nl", true }, + { "atop.io", true }, { "atte.fi", true }, + { "auditmatrix.com", true }, { "auf-feindgebiet.de", true }, + { "augustian-life.cz", true }, { "aurainfosec.com", true }, { "aurainfosec.com.au", true }, { "auraredeye.com", true }, @@ -165,6 +190,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "autoledky.sk", true }, { "axka.com", false }, { "azirevpn.com", true }, + { "backschues.net", true }, { "badges.fedoraproject.org", true }, { "badges.stg.fedoraproject.org", true }, { "baer.im", true }, @@ -172,6 +198,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "bagelsbakery.com", true }, { "balcan-underground.net", true }, { "balikonos.cz", true }, + { "ball.holdings", true }, { "bank.simple.com", false }, { "bardiharborow.com", true }, { "barslecht.com", true }, @@ -189,6 +216,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "bedeta.de", true }, { "bedreid.dk", true }, { "beercandle.com", true }, + { "belairsewvac.com", true }, { "ben-energy.com", true }, { "benchling.com", true }, { "beneathvt.com", true }, @@ -196,6 +224,8 @@ static const nsSTSPreload kSTSPreloadList[] = { { "benjamins.com", true }, { "bentertain.de", true }, { "best-wedding-quotes.com", true }, + { "betaworx.de", true }, + { "betaworx.eu", true }, { "bfelob.gov", true }, { "bgneuesheim.de", true }, { "bhatia.at", true }, @@ -216,6 +246,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "bitmon.net", true }, { "bitnet.io", true }, { "bitpod.de", true }, + { "bjornhelmersson.se", true }, { "bjornjohansen.no", true }, { "bl4ckb0x.com", true }, { "bl4ckb0x.de", true }, @@ -255,6 +286,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "boiseonlinemall.com", true }, { "bonitabrazilian.co.nz", true }, { "bookingapp.nl", true }, + { "bouncyball.eu", true }, { "bownty.dk", true }, { "boxcryptor.com", true }, { "boypoint.de", true }, @@ -268,6 +300,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "branchtrack.com", false }, { "brandbuilderwebsites.com", true }, { "breeswish.org", true }, + { "brianmwaters.net", true }, { "brks.xyz", true }, { "broeselei.at", true }, { "brossmanit.com", true }, @@ -286,43 +319,55 @@ static const nsSTSPreload kSTSPreloadList[] = { { "bustimes.org", true }, { "buzzconcert.com", true }, { "bygningsregistrering.dk", true }, - { "bysymphony.com", true }, { "bytepark.de", false }, { "bzv-fr.eu", true }, { "ca.gparent.org", true }, { "cackette.com", true }, + { "calgaryconstructionjobs.com", true }, { "call.me", true }, { "calomel.org", true }, { "calories.org", true }, { "calvin.me", true }, { "camolist.com", true }, { "canhazip.com", true }, + { "canyonshoa.com", true }, { "cao.gov", true }, { "capitaltg.com", true }, { "cardoni.net", true }, { "caremad.io", true }, { "carezone.com", false }, + { "cargobay.net", true }, { "carlosalves.info", true }, { "cartouche24.eu", true }, { "cartucce24.it", true }, { "casa-su.casa", true }, { "catnapstudios.com", true }, { "cbhq.net", true }, + { "ccblog.de", true }, + { "ccsys.com", true }, { "cdlcenter.com", true }, { "cdnb.co", true }, { "cdt.org", true }, + { "centralvacsunlimited.net", true }, { "certible.com", true }, { "certly.io", true }, + { "cesal.net", true }, + { "cesidianroot.eu", true }, { "cfo.gov", true }, { "chahub.com", true }, { "chainmonitor.com", true }, { "chartstoffarm.de", false }, { "chatbot.me", true }, + { "cheapgeekts.com", true }, { "check.torproject.org", false }, { "checkout.google.com", true }, { "cheesetart.my", false }, + { "chiralsoftware.com", true }, { "chrisirwin.ca", true }, { "chrisjean.com", true }, + { "chrismckee.co.uk", true }, + { "chrisupjohn.com", true }, + { "chriswarrick.com", true }, { "chrome-devtools-frontend.appspot.com", true }, { "chrome.com", false }, { "chrome.google.com", true }, @@ -334,31 +379,38 @@ static const nsSTSPreload kSTSPreloadList[] = { { "ckliemann.com", true }, { "ckliemann.net", true }, { "cktennis.com", true }, + { "claimconnect.us", true }, { "clan-ww.com", true }, { "clapping-rhymes.com", true }, { "classdojo.com", true }, { "clerkendweller.uk", true }, + { "clevertarget.ru", true }, { "clevisto.com", true }, { "climateinteractive.org", true }, { "clintwilson.technology", true }, { "cloud.google.com", true }, { "cloudcert.org", true }, + { "cloudflareonazure.com", true }, + { "cloudimag.es", true }, { "cloudns.com.au", true }, { "cloudpebble.net", true }, { "cloudsecurityalliance.org", true }, { "cloudstoragemaus.com", true }, { "cloudup.com", true }, + { "cobalt.io", false }, { "code-poets.co.uk", true }, { "code.facebook.com", false }, { "code.google.com", true }, { "codepoints.net", true }, { "codepref.com", true }, + { "codepult.com", true }, { "codepx.com", true }, { "codereview.appspot.com", false }, { "codereview.chromium.org", true }, { "coinapult.com", true }, { "coinbase.com", true }, { "coindam.com", false }, + { "collabornation.net", true }, { "collinmbarrett.com", true }, { "coloradocomputernetworking.net", true }, { "comdurav.com", true }, @@ -367,6 +419,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "comssa.org.au", true }, { "config.schokokeks.org", false }, { "conformal.com", true }, + { "connext.de", false }, { "conrad-kostecki.de", true }, { "console.support", true }, { "consumersentinel.gov", true }, @@ -374,6 +427,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "controlcenter.gigahost.dk", true }, { "cor-ser.es", true }, { "cordial-restaurant.com", true }, + { "core.mx", true }, { "costablancavoorjou.com", true }, { "cotonea.de", true }, { "courtlistener.com", true }, @@ -381,6 +435,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "covoiturage.fr", true }, { "cpvmatch.eu", true }, { "cracker.in.th", true }, + { "craftbeerbarn.co.uk", true }, { "crm.onlime.ch", false }, { "crowdjuris.com", true }, { "crute.me", true }, @@ -393,6 +448,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "csacongress.org", true }, { "cspbuilder.info", true }, { "csuw.net", true }, + { "ctns.de", true }, { "cube.de", true }, { "cupcake.io", true }, { "cupcake.is", true }, @@ -404,6 +460,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "cybozu.com", true }, { "cybozulive.com", true }, { "cycleluxembourg.lu", true }, + { "cydia-search.io", true }, { "cyon.ch", true }, { "cyphertite.com", true }, { "cyprus-company-service.com", true }, @@ -438,29 +495,37 @@ static const nsSTSPreload kSTSPreloadList[] = { { "dbgamestudio.com", true }, { "dccode.gov", true }, { "deadbeef.ninja", true }, + { "dealbanana.com", true }, + { "dealbanana.it", true }, { "dealcruiser.nl", true }, { "debtkit.co.uk", true }, { "dedimax.de", true }, { "dee.pe", true }, { "defcon.org", true }, { "dekasan.ru", true }, + { "delbart.se", true }, { "deliverance.co.uk", false }, { "denh.am", true }, { "depechemode-live.com", true }, { "derevtsov.com", false }, { "derhil.de", true }, + { "derp.army", true }, { "desmaakvanplanten.be", true }, { "detectify.com", false }, { "developer.mydigipass.com", false }, { "developers.facebook.com", false }, { "devinfo.net", false }, { "devklog.net", true }, + { "diablotine.rocks", true }, { "diamante.ro", true }, { "die-besten-weisheiten.de", true }, { "digital1st.co.uk", true }, + { "digitalskillswap.com", true }, { "dillonkorman.com", true }, { "dinamoelektrik.com", true }, + { "discoveringdocker.com", true }, { "disking.co.uk", true }, + { "disorderboutique.com", true }, { "dist.torproject.org", false }, { "dixmag.com", false }, { "dl.google.com", true }, @@ -479,10 +544,12 @@ static const nsSTSPreload kSTSPreloadList[] = { { "donmez.uk", true }, { "donmez.ws", true }, { "donotcall.gov", true }, + { "dorianmuthig.com", true }, { "doridian.com", true }, { "doridian.de", true }, { "doridian.net", true }, { "doridian.org", true }, + { "dotsiam.com", true }, { "dpsg-roden.de", true }, { "dragons-of-highlands.cz", true }, { "dreadbyte.com", true }, @@ -492,11 +559,13 @@ static const nsSTSPreload kSTSPreloadList[] = { { "dropboxer.net", true }, { "drtroyhendrickson.com", true }, { "drumbandesperanto.nl", true }, + { "dsebastien.net", true }, { "dubrovskiy.net", true }, { "ducohosting.com", true }, { "dyeager.org", true }, { "dylanscott.com.au", true }, { "dynaloop.net", true }, + { "dynamicsnetwork.net", true }, { "dzlibs.io", true }, { "e-kontakti.fi", true }, { "e.mail.ru", true }, @@ -508,7 +577,9 @@ static const nsSTSPreload kSTSPreloadList[] = { { "ecdn.cz", true }, { "ecfs.link", true }, { "ecg.fr", false }, + { "eckel.co", true }, { "ecosystem.atlassian.net", true }, + { "ecrimex.net", true }, { "ectora.com", true }, { "ed.gs", true }, { "edge-cloud.net", true }, @@ -525,8 +596,10 @@ static const nsSTSPreload kSTSPreloadList[] = { { "ego4u.de", true }, { "eksisozluk.com", true }, { "electronic-ignition-system.com", true }, + { "elitegameservers.net", true }, { "ellegaard.dk", true }, { "elliquiy.com", true }, + { "elvidence.com.au", true }, { "emailprivacytester.com", true }, { "emptypath.com", true }, { "encircleapp.com", true }, @@ -538,6 +611,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "enskat.de", true }, { "enskatson-sippe.de", true }, { "entropia.de", false }, + { "eqorg.com", true }, { "erisrenee.com", true }, { "eromixx.com", true }, { "erotische-aanbiedingen.nl", true }, @@ -556,9 +630,11 @@ static const nsSTSPreload kSTSPreloadList[] = { { "everhome.de", true }, { "eveshamglass.co.uk", true }, { "evstatus.com", true }, + { "exceltobarcode.com", true }, { "exiahost.com", false }, { "exon.io", true }, { "expatads.com", true }, + { "experienceoz.com.au", true }, { "explodie.org", true }, { "expoundite.net", true }, { "extendwings.com", true }, @@ -568,6 +644,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "f2f.cash", true }, { "fa-works.com", true }, { "fabhub.io", true }, + { "fabse.net", true }, { "facebook.com", false }, { "factor.cc", false }, { "fairbill.com", true }, @@ -590,8 +667,10 @@ static const nsSTSPreload kSTSPreloadList[] = { { "ferienhaus-polchow-ruegen.de", false }, { "fewo-thueringer-wald.de", true }, { "ffbans.org", true }, + { "fidanza.eu", true }, { "fidelapp.com", true }, { "fiftyshadesofluca.ml", true }, + { "fightr.co", true }, { "fiken.no", true }, { "filedir.com", false }, { "filip-prochazka.com", true }, @@ -614,13 +693,14 @@ static const nsSTSPreload kSTSPreloadList[] = { { "florian-lillpopp.de", true }, { "florianlillpopp.de", true }, { "florianmitrea.uk", true }, - { "floweslawncare.com", true }, + { "flra.gov", true }, { "flushstudios.com", true }, { "fluxfingers.net", true }, { "flynn.io", true }, { "fniephaus.com", true }, { "food4health.guide", true }, { "foodwise.marketing", true }, + { "footballmapped.com", true }, { "forewordreviews.com", true }, { "forgix.com", true }, { "forodeespanol.com", true }, @@ -634,7 +714,9 @@ static const nsSTSPreload kSTSPreloadList[] = { { "freesounding.com", true }, { "freesounding.ru", true }, { "freethought.org.au", true }, + { "freifunk-essen.de", true }, { "fretscha.com", true }, + { "friendica.ch", true }, { "froggstack.de", true }, { "fronteers.nl", true }, { "fruchthof24.de", true }, @@ -643,10 +725,9 @@ static const nsSTSPreload kSTSPreloadList[] = { { "ftccomplaintassistant.gov", true }, { "fteproxy.org", true }, { "fundingempire.com", true }, - { "futos.de", true }, + { "furkancaliskan.com", true }, { "fuzzing-project.org", true }, { "fx5.de", true }, - { "g2g.com", true }, { "gallery44.org", true }, { "gambit.pro", true }, { "gambitnash.co.uk", true }, @@ -660,6 +741,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "gaytorrent.ru", true }, { "gc.net", true }, { "ge3k.net", true }, + { "geblitzt.de", true }, { "gemeinfreie-lieder.de", true }, { "genuxation.com", true }, { "genuxtsg.com", true }, @@ -672,18 +754,22 @@ static const nsSTSPreload kSTSPreloadList[] = { { "getbambu.com", false }, { "getcloak.com", false }, { "getcolor.com", true }, + { "getdash.io", true }, { "getdigitized.net", true }, { "getfedora.org", true }, { "getfittedstore.com", true }, { "getmango.com", true }, { "getnikola.com", true }, - { "getsello.com", true }, + { "getsello.com", false }, + { "getspire.com", true }, { "getssl.uz", true }, { "gheorghesarcov.ga", true }, { "giacomopelagatti.it", true }, + { "gipsamsfashion.com", true }, { "github.com", true }, { "github.party", false }, { "gizzo.sk", true }, + { "glasgestaltung.biz", true }, { "glass.google.com", true }, { "globalittech.com", false }, { "globuli-info.de", true }, @@ -691,7 +777,6 @@ static const nsSTSPreload kSTSPreloadList[] = { { "gmail.com", false }, { "gmantra.org", true }, { "gmcd.co", true }, - { "gnetwork.eu", true }, { "go-zh.org", true }, { "go.xero.com", false }, { "gocardless.com", true }, @@ -710,6 +795,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "gra2.com", true }, { "grandcapital.id", true }, { "grandcapital.ru", true }, + { "grandlinecsk.ru", true }, { "grc.com", false }, { "greensolid.biz", true }, { "gregorytlee.me", true }, @@ -720,10 +806,11 @@ static const nsSTSPreload kSTSPreloadList[] = { { "groetzner.net", true }, { "groszek.pl", true }, { "groups.google.com", true }, + { "gtmetrix.com", true }, { "gtraxapp.com", true }, { "gudini.net", true }, { "gugga.dk", false }, - { "guidetoiceland.is", true }, + { "guidetoiceland.is", false }, { "gunnarhafdal.com", true }, { "guphi.net", true }, { "guru-naradi.cz", true }, @@ -734,11 +821,11 @@ static const nsSTSPreload kSTSPreloadList[] = { { "gw2treasures.com", true }, { "gwijaya.com", true }, { "h2check.org", true }, - { "haber1903.com", true }, { "hachre.de", false }, { "hack.li", true }, { "hackerone-user-content.com", true }, { "hackerone.com", true }, + { "hafniatimes.com", true }, { "haircrazy.com", true }, { "hangouts.google.com", true }, { "hansvaneijsden.com", true }, @@ -746,6 +833,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "happyteamlabs.com", true }, { "harvestapp.com", true }, { "hash-list.com", true }, + { "hashplex.com", true }, { "hasilocke.de", true }, { "haste.ch", true }, { "haufschild.de", true }, @@ -756,6 +844,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "heartlandrentals.com", true }, { "heavystresser.com", true }, { "heftkaufen.de", true }, + { "heh.ee", true }, { "heha.co", false }, { "heid.ws", true }, { "heijblok.com", true }, @@ -782,6 +871,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "holymoly.lu", true }, { "honeybadger.io", false }, { "horza.org", true }, + { "hoshinplan.com", true }, { "hostedtalkgadget.google.com", true }, { "hostinginnederland.nl", true }, { "hostix.de", true }, @@ -797,12 +887,14 @@ static const nsSTSPreload kSTSPreloadList[] = { { "hstsfail.appspot.com", true }, { "html5.org", true }, { "httpswatch.com", true }, + { "humblefinances.com", true }, { "hushfile.it", true }, { "i10z.com", true }, { "i5y.co.uk", true }, { "iamcarrico.com", true }, { "ian.sh", true }, { "iban.is", true }, + { "icq-project.net", true }, { "id-co.in", true }, { "id-conf.com", true }, { "id.atlassian.com", true }, @@ -810,18 +902,24 @@ static const nsSTSPreload kSTSPreloadList[] = { { "ideaweb.de", true }, { "ieval.ro", true }, { "ihrlotto.de", true }, + { "iispeed.com", true }, { "ijohan.nl", true }, + { "ijsclubtilburg.nl", true }, { "ikkatsu-satei.jp", true }, { "ilbuongiorno.it", true }, { "ilikerainbows.co", true }, { "ilikerainbows.co.uk", false }, { "imaginary.ca", true }, { "imagr.io", true }, + { "imbrian.org", true }, { "imgg.es", true }, + { "immoverkauf24.at", true }, + { "immoverkauf24.de", true }, { "imouto.my", false }, { "impex.com.bd", true }, { "in.xero.com", false }, { "inb4.us", true }, + { "inbounder.io", true }, { "inbox.google.com", true }, { "indiecert.net", true }, { "indovinabank.com.vn", true }, @@ -829,9 +927,11 @@ static const nsSTSPreload kSTSPreloadList[] = { { "infogrfx.com", true }, { "informnapalm.org", true }, { "iniiter.com", true }, + { "initq.net", true }, { "initrd.net", true }, { "inkbunny.net", true }, { "inleaked.com", true }, + { "inmyarea.com", true }, { "innophate-security.com", true }, { "innophate-security.nl", true }, { "insighti.org", true }, @@ -839,10 +939,14 @@ static const nsSTSPreload kSTSPreloadList[] = { { "instasex.ch", true }, { "integromat.com", true }, { "interasistmen.se", true }, + { "internetbugbounty.org", true }, { "interserved.com", true }, + { "interviewpipeline.co.uk", true }, + { "intim-uslugi-kazan.net", true }, { "iostips.ru", true }, { "ipomue.com", false }, { "ipsec.pl", true }, + { "ipv6-handbuch.de", true }, { "iqualtech.com", true }, { "iranianlawschool.com", true }, { "iridiumbrowser.de", true }, @@ -864,18 +968,22 @@ static const nsSTSPreload kSTSPreloadList[] = { { "jacobparry.ca", false }, { "jacuzziprozone.com", true }, { "jahliveradio.com", false }, + { "jakenbake.com", true }, { "jakub-boucek.cz", true }, { "jamesbywater.co.uk", true }, { "jamesbywater.com", true }, { "jamesbywater.me", true }, + { "jamesbywater.me.uk", true }, { "jamesbywater.uk", true }, { "jamielinux.com", true }, + { "jamiemagee.co.uk", true }, { "janoberst.com", true }, { "jbn.mx", true }, + { "jeff393.com", true }, { "jelmer.co.uk", true }, { "jelmer.uk", true }, { "jeremyness.com", true }, - { "jetaprices.com", true }, + { "jetaprices.com", false }, { "jettshome.org", true }, { "jfreitag.de", true }, { "jh-media.eu", false }, @@ -886,9 +994,11 @@ static const nsSTSPreload kSTSPreloadList[] = { { "jkbuster.com", true }, { "jmdekker.it", true }, { "jmedved.com", true }, + { "jn1.me", true }, { "jogorama.com.br", true }, { "johannes.io", true }, { "johners.me", true }, + { "johnguant.com", true }, { "johnmichel.org", true }, { "jonas-keidel.de", true }, { "jonaswitmer.ch", true }, @@ -900,6 +1010,8 @@ static const nsSTSPreload kSTSPreloadList[] = { { "jrc9.ca", true }, { "julianmeyer.de", true }, { "juliansimioni.com", true }, + { "junqtion.com", false }, + { "jurriaan.ninja", true }, { "jwilsson.com", true }, { "jwilsson.me", true }, { "jwnotifier.org", true }, @@ -908,13 +1020,17 @@ static const nsSTSPreload kSTSPreloadList[] = { { "kalevlamps.co.uk", true }, { "kalmar.com", true }, { "kaneo-gmbh.de", true }, + { "kantorosobisty.pl", true }, { "kanzashi.com", true }, { "karaoketonight.com", true }, { "kardize24.pl", true }, { "karmaspa.se", true }, { "kartonmodellbau.org", true }, + { "kau-boys.com", true }, + { "kau-boys.de", true }, { "kaufberatung.community", true }, { "kavovary-kava.cz", true }, + { "kbit.dk", true }, { "kdex.de", true }, { "kdyby.org", true }, { "kedarastudios.com", true }, @@ -934,7 +1050,11 @@ static const nsSTSPreload kSTSPreloadList[] = { { "khipu.com", true }, { "khmath.com", true }, { "ki-on.net", true }, + { "kick-in.nl", true }, + { "kickass.al", true }, + { "kinderbasar-luhe.de", true }, { "kinderbuecher-kostenlos.de", true }, + { "kingant.net", true }, { "kinganywhere.eu", true }, { "kingmanhall.org", true }, { "kinogb.net", false }, @@ -945,7 +1065,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "kitsta.com", true }, { "klarmobil-empfehlen.de", true }, { "klatschreime.de", true }, - { "klausbrinch.dk", true }, + { "klausbrinch.dk", false }, { "klaxn.com", true }, { "kleidertauschpartys.de", true }, { "kliemann.me", true }, @@ -959,20 +1079,25 @@ static const nsSTSPreload kSTSPreloadList[] = { { "kollawat.me", true }, { "komandakovalchuk.com", false }, { "konklone.com", true }, + { "konsertoversikt.no", true }, { "koop-bremen.de", true }, { "koordinate.net", true }, { "korinar.com", true }, + { "korobi.io", true }, { "kosho.org", true }, { "kpdyer.com", true }, { "kpebetka.net", true }, { "kraken.io", true }, + { "kreativstrecke.de", true }, { "kredite.sale", true }, { "kredite24.de", true }, { "ks-watch.de", true }, + { "kschv-rdeck.de", true }, { "kuppingercole.com", true }, { "kupschke.net", true }, { "kura.io", true }, { "labaia.info", true }, + { "lachlankidson.net", true }, { "laf.in.net", true }, { "lagerauftrag.info", true }, { "lancejames.com", true }, @@ -988,6 +1113,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "leakedminecraft.net", true }, { "leanclub.org", true }, { "ledhouse.sk", true }, + { "leerliga.de", true }, { "legoutdesplantes.be", true }, { "leibniz-remscheid.de", true }, { "leifdreizler.com", true }, @@ -1010,21 +1136,26 @@ static const nsSTSPreload kSTSPreloadList[] = { { "limitededitionsolutions.com", true }, { "limpid.nl", true }, { "lingolia.com", true }, + { "linguaquote.com", true }, + { "linguatrip.com", false }, { "linode.com", false }, { "linorman1997.me", true }, { "linux-admin-california.com", true }, { "linx.li", true }, { "linx.net", true }, + { "liquorsanthe.in", true }, { "lists.mayfirst.org", false }, { "lists.stg.fedoraproject.org", true }, { "livej.am", true }, { "livekaarten.nl", true }, + { "liverewrite.com", true }, { "ljs.io", true }, { "lloyd-day.me", true }, { "lmmtfy.io", true }, { "lnx.li", true }, { "lobste.rs", true }, { "lockify.com", true }, + { "locktheirphone.com", true }, { "lodash.com", true }, { "loenshotel.de", true }, { "loftboard.eu", true }, @@ -1043,6 +1174,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "lore.azurewebsites.net", true }, { "ludwig.im", true }, { "luelistan.net", true }, + { "lukasztkacz.com", true }, { "lumi.do", false }, { "luneta.nearbuysystems.com", false }, { "luxwatch.com", true }, @@ -1075,11 +1207,14 @@ static const nsSTSPreload kSTSPreloadList[] = { { "malwre.io", true }, { "mammaw.com", true }, { "man3s.jp", true }, + { "manage.cm", true }, { "manage.zenpayroll.com", false }, { "manageprojects.com", true }, { "manager.linode.com", false }, { "mandala-ausmalbilder.de", true }, + { "manfredimatteo.com", true }, { "manicode.com", true }, + { "mark-semmler.de", true }, { "markayapilandirma.com", true }, { "market.android.com", true }, { "markhaehnel.de", true }, @@ -1096,7 +1231,9 @@ static const nsSTSPreload kSTSPreloadList[] = { { "max.gov", true }, { "maximelouet.me", true }, { "mbasic.facebook.com", false }, + { "mblankhorst.nl", true }, { "mbp.banking.co.at", false }, + { "mc-venture.net", false }, { "mcard.vn", true }, { "mccrypto.de", true }, { "mcnext.net", true }, @@ -1104,7 +1241,6 @@ static const nsSTSPreload kSTSPreloadList[] = { { "mdfnet.se", false }, { "me.net.nz", true }, { "meamod.com", true }, - { "mebio.us", true }, { "medallia.io", true }, { "mediacru.sh", true }, { "medium.com", true }, @@ -1113,6 +1249,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "meetfinch.com", true }, { "meetings2.com", true }, { "mega.co.nz", true }, + { "mega.nz", true }, { "megaplan.cz", true }, { "megaplan.ru", true }, { "mehmetince.net", true }, @@ -1120,12 +1257,15 @@ static const nsSTSPreload kSTSPreloadList[] = { { "members.mayfirst.org", false }, { "members.nearlyfreespeech.net", false }, { "mercuryamericas.com", true }, + { "mercurystorm.co.za", true }, { "meritz.rocks", true }, { "mertcangokgoz.com", true }, + { "mesvt.com", true }, + { "meta-db.com", true }, { "metrobriefs.com", true }, { "mevs.cz", true }, { "mh-bloemen.co.jp", true }, - { "miasarafina.de", true }, + { "mhx.pw", true }, { "michalspacek.cz", true }, { "miconcinemas.com", true }, { "mig5.net", true }, @@ -1134,6 +1274,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "miketabor.com", true }, { "mikewest.org", true }, { "miku.hatsune.my", false }, + { "millistream.com", true }, { "mim.properties", true }, { "mimeit.de", true }, { "mimovrste.com", true }, @@ -1143,6 +1284,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "mineover.es", true }, { "minez-nightswatch.com", false }, { "minikneet.com", true }, + { "minkondom.nu", true }, { "minnesotadata.com", true }, { "mironet.cz", true }, { "miskatonic.org", true }, @@ -1158,16 +1300,20 @@ static const nsSTSPreload kSTSPreloadList[] = { { "mobile.usaa.com", false }, { "mobilux.lv", true }, { "mobobe.com", true }, + { "mocloud.eu", true }, { "modeldimension.com", true }, + { "modmountain.com", true }, { "mokote.com", true }, { "mondwandler.de", true }, { "morethanadream.lv", true }, { "moriz.de", true }, { "moriz.net", true }, { "mothereff.in", true }, + { "moula.com.au", true }, { "mountainmusicpromotions.com", true }, { "mountainroseherbs.com", true }, { "movlib.org", true }, + { "mp3gratuiti.com", true }, { "mp3juices.is", true }, { "mpreserver.com", true }, { "mqas.net", true }, @@ -1184,10 +1330,11 @@ static const nsSTSPreload kSTSPreloadList[] = { { "munich-rage.de", true }, { "munki.org", true }, { "munuc.org", true }, + { "muscleangels.com", true }, { "musi.cx", true }, { "musicgamegalaxy.de", true }, + { "musicwear.cz", true }, { "musmann.io", true }, - { "mustika.cf", true }, { "mutamatic.com", true }, { "mutantmonkey.in", true }, { "mutantmonkey.info", true }, @@ -1216,6 +1363,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "nanderson.me", true }, { "narodniki.com", true }, { "nationalpriorities.org", true }, + { "navycs.com", true }, { "nayahe.ru", true }, { "nbl.org.tw", true }, { "nctx.co.uk", true }, @@ -1233,18 +1381,22 @@ static const nsSTSPreload kSTSPreloadList[] = { { "netbox.cc", true }, { "netera.se", true }, { "netrelay.email", true }, - { "netrider.net.au", true }, + { "netrider.net.au", false }, + { "new-black-order.com", true }, { "newstarnootropics.com", true }, { "nextend.net", true }, { "ng-security.com", true }, { "nginxnudes.com", true }, + { "nicky.io", true }, { "nicolaw.uk", true }, { "nieselregen.com", true }, + { "nijm.nl", true }, { "niloxy.com", true }, { "nmctest.net", true }, { "nmd.so", true }, { "nodari.com.ar", true }, { "noemax.com", true }, + { "noname-ev.de", true }, { "noob-box.net", true }, { "nopex.no", true }, { "northernmuscle.ca", true }, @@ -1266,7 +1418,9 @@ static const nsSTSPreload kSTSPreloadList[] = { { "nu3.fr", true }, { "nu3.no", true }, { "nu3.se", true }, + { "null-sec.ru", true }, { "null.tips", true }, + { "nuos.org", true }, { "nutsandboltsmedia.com", true }, { "nuvini.com", true }, { "nwa.xyz", true }, @@ -1279,12 +1433,15 @@ static const nsSTSPreload kSTSPreloadList[] = { { "ohling.org", true }, { "ohnemusik.com", true }, { "okmx.de", true }, + { "okonetwork.org.uk", true }, { "olivierlemoal.fr", true }, { "omitech.co.uk", true }, { "onedot.nl", true }, { "onedrive.com", true }, { "onedrive.live.com", false }, + { "onewpst.com", false }, { "onsitemassageco.com", true }, + { "ontimestamp.com", true }, { "ooonja.de", true }, { "openacademies.com", true }, { "oplop.appspot.com", true }, @@ -1292,6 +1449,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "optimus.io", true }, { "orbograph-hrcm.com", true }, { "orcahq.com", true }, + { "organic-superfood.net", true }, { "orhideous.name", true }, { "oscarvk.ch", true }, { "osquery.io", true }, @@ -1302,12 +1460,14 @@ static const nsSTSPreload kSTSPreloadList[] = { { "oversight.io", true }, { "ownmovies.fr", true }, { "p.linode.com", false }, + { "p8r.de", true }, { "packagist.org", false }, { "pactf.com", true }, { "pajonzeck.de", true }, { "palava.tv", true }, { "pap.la", false }, { "parent5446.us", true }, + { "parsemail.org", true }, { "partyvan.eu", true }, { "partyvan.it", true }, { "partyvan.nl", true }, @@ -1328,6 +1488,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "patechmasters.com", true }, { "patriksimek.cz", true }, { "patt.us", true }, + { "patterson.mp", true }, { "pauladamsmith.com", true }, { "paulschreiber.com", true }, { "pay.gigahost.dk", true }, @@ -1338,6 +1499,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "paypal.com", false }, { "payroll.xero.com", false }, { "pbprint.ru", false }, + { "pcfeuerwehr.de", true }, { "pclob.gov", true }, { "pdf.yt", true }, { "peercraft.com", true }, @@ -1346,6 +1508,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "personaldatabasen.no", true }, { "pestici.de", true }, { "petplum.com", true }, + { "petrachuk.ru", true }, { "petrolplus.ru", true }, { "pharmaboard.de", true }, { "phil.tw", true }, @@ -1364,9 +1527,12 @@ static const nsSTSPreload kSTSPreloadList[] = { { "piratedb.com", true }, { "piratedot.com", true }, { "pirateproxy.sx", true }, + { "pirlitu.com", true }, + { "pirxpilot.me", true }, { "pixel.facebook.com", false }, { "pixi.me", true }, { "play.google.com", true }, + { "playkh.com", true }, { "plothost.com", true }, { "plus.google.com", false }, { "plus.sandbox.google.com", false }, @@ -1374,15 +1540,20 @@ static const nsSTSPreload kSTSPreloadList[] = { { "pmg-offshore-company.com", true }, { "pmg-purchase.com", true }, { "pmg-purchase.net", true }, + { "poed.com.au", true }, { "poedgirl.com", true }, { "pollpodium.nl", true }, { "polymathematician.com", true }, { "polypho.nyc", true }, { "ponythread.com", true }, + { "poolvilla-margarita.net", true }, { "portal.tirol.gv.at", true }, + { "portalplatform.net", true }, { "posteo.de", false }, { "postfinance.ch", true }, { "posttigo.com", true }, + { "pothe.com", true }, + { "pothe.de", true }, { "prakharprasad.com", true }, { "prefontaine.name", true }, { "preissler.co.uk", true }, @@ -1390,6 +1561,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "presidentials2016.com", true }, { "privategiant.com", true }, { "profiles.google.com", true }, + { "progg.no", true }, { "progressiveplanning.com", true }, { "projectascension.io", true }, { "projektzentrisch.de", true }, @@ -1416,17 +1588,21 @@ static const nsSTSPreload kSTSPreloadList[] = { { "qa.fedoraproject.org", true }, { "qa.stg.fedoraproject.org", true }, { "qetesh.de", true }, + { "qixxit.de", true }, { "qualityhomesystems.com", true }, { "quebecmailbox.com", true }, { "quli.nl", true }, { "quuz.org", true }, + { "qvitoo.com", true }, { "r3s1stanc3.me", true }, { "rad-route.de", true }, { "radiormi.com", true }, + { "radtke.bayern", true }, { "rafaelcz.de", true }, { "ragingserenity.com", true }, { "railgun.ac", true }, { "raiseyourflag.com", true }, + { "rambitteh.ru", true }, { "ramsor-gaming.de", true }, { "rasing.me", true }, { "raspass.me", true }, @@ -1445,6 +1621,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "refundo.cz", true }, { "refundo.sk", true }, { "reg.ru", false }, + { "reishunger.de", true }, { "release-monitoring.org", true }, { "reliable-mail.de", true }, { "renem.net", true }, @@ -1453,28 +1630,37 @@ static const nsSTSPreload kSTSPreloadList[] = { { "research.md", true }, { "residentsinsurance.co.uk", true }, { "resources.flowfinity.com", true }, + { "retroarms.com", true }, + { "retroarms.cz", true }, { "reviews.anime.my", true }, { "riccy.org", true }, + { "richardwarrender.com", true }, { "richiemail.net", true }, { "ricochet.im", true }, + { "rid-wan.com", true }, { "riesenmagnete.de", true }, + { "rigolitch.fr", false }, { "rika.me", true }, { "rippleunion.com", true }, { "rischard.org", true }, { "rlalique.com", true }, { "rmmanfredi.com", true }, + { "robertglastra.com", true }, { "robertof.ovh", true }, { "robinadr.com", true }, { "robinsonyu.com", true }, { "robteix.com", true }, { "robtex.com", true }, + { "robtex.net", true }, { "rodosto.com", true }, { "roeper.party", true }, + { "rohlik.cz", true }, { "roland.io", true }, { "romab.com", true }, { "roman-pavlik.cz", true }, { "romans-place.me.uk", true }, { "romulusapp.com", false }, + { "ronvandordt.info", true }, { "room-checkin24.de", true }, { "roosterpgplus.nl", true }, { "roots.io", true }, @@ -1490,9 +1676,11 @@ static const nsSTSPreload kSTSPreloadList[] = { { "rubendv.be", true }, { "rubyshop.nl", true }, { "rudloff.pro", true }, + { "rugirlfriend.com", true }, { "rusadmin.biz", true }, { "ruudkoot.nl", true }, { "rws-vertriebsportal.de", true }, + { "rxbusiness.com", true }, { "ryan-goldstein.com", true }, { "s-c.se", true }, { "sabahattin-gucukoglu.com", true }, @@ -1516,14 +1704,19 @@ static const nsSTSPreload kSTSPreloadList[] = { { "saveaward.gov", true }, { "savvytime.com", true }, { "schachburg.de", true }, + { "schlarp.com", true }, { "schokokeks.org", true }, + { "schorel.ovh", true }, + { "schorelweb.nl", true }, { "schreiber-netzwerk.eu", true }, { "schreibnacht.de", true }, { "schwarzer.it", true }, { "sciencex.com", true }, { "scotthel.me", true }, { "scotthelme.co.uk", true }, + { "scotthelme.com", true }, { "scoutdb.ch", true }, + { "scp-trens.notaires.fr", true }, { "scrambl.is", true }, { "scrambler.in", false }, { "scrap.tf", true }, @@ -1532,6 +1725,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "script.google.com", true }, { "sdsl-speedtest.de", true }, { "search-one.de", true }, + { "searchbrothers.com", true }, { "sec.gd", true }, { "secretserveronline.com", true }, { "secure.facebook.com", false }, @@ -1541,10 +1735,13 @@ static const nsSTSPreload kSTSPreloadList[] = { { "security-carpet.com", true }, { "security.google.com", true }, { "securityheaders.com", true }, + { "securityheaders.io", true }, { "securitysnobs.com", false }, { "secuvera.de", true }, + { "seele.ca", true }, { "seifried.org", true }, { "sellocdn.com", true }, + { "seminariruum.ee", true }, { "servergno.me", true }, { "servertastic.com", true }, { "servethecity-karlsruhe.de", false }, @@ -1560,6 +1757,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "shellsec.pw", true }, { "shenyuqi.com", true }, { "sherbers.de", true }, + { "shft.cl", true }, { "shiinko.com", false }, { "shipard.com", true }, { "shodan.io", true }, @@ -1593,6 +1791,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "sleio.com", true }, { "slever.cz", true }, { "slevomat.cz", true }, + { "slicketl.com", true }, { "slidebatch.com", true }, { "slope.haus", true }, { "slse.ca", true }, @@ -1600,18 +1799,23 @@ static const nsSTSPreload kSTSPreloadList[] = { { "smartcoin.com.br", true }, { "smartlend.se", true }, { "smartship.co.jp", true }, + { "smiatek.name", true }, { "smith.is", true }, { "snailing.org", true }, { "snakehosting.dk", true }, { "snazel.co.uk", true }, + { "sneakynote.com", true }, + { "sneberger.cz", false }, { "sneezry.com", true }, { "sny.no", true }, { "soccergif.com", true }, { "soci.ml", true }, - { "sockeye.cc", true }, + { "socialrank.com", true }, + { "socialspirit.com.br", false }, { "soia.ca", true }, { "solihullcarnival.co.uk", true }, { "solihulllionsclub.org.uk", true }, + { "sonafe.info", true }, { "sorz.org", true }, { "souki.cz", true }, { "soulfulglamour.uk", true }, @@ -1620,7 +1824,6 @@ static const nsSTSPreload kSTSPreloadList[] = { { "sourceway.de", true }, { "southside-crew.com", true }, { "souvik.me", true }, - { "spartantheatre.org", true }, { "spawn.cz", true }, { "speedcounter.net", true }, { "spencerbaer.com", true }, @@ -1645,6 +1848,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "static.wepay.com", false }, { "staticanime.net", false }, { "stationary-traveller.eu", true }, + { "stemsims.com", true }, { "stereo.lu", true }, { "stereochro.me", true }, { "stesti.cz", true }, @@ -1654,6 +1858,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "sticklerjs.org", true }, { "stirling.co", true }, { "stocktrade.de", false }, + { "stolkschepen.nl", true }, { "storedsafe.com", true }, { "stormhub.org", true }, { "strasweb.fr", false }, @@ -1661,6 +1866,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "stripe.com", true }, { "strongest-privacy.com", true }, { "stuartbaxter.co", false }, + { "student.andover.edu", true }, { "studienportal.eu", true }, { "studydrive.net", true }, { "stulda.cz", true }, @@ -1679,9 +1885,13 @@ static const nsSTSPreload kSTSPreloadList[] = { { "swehack.org", false }, { "sychov.pro", true }, { "sylaps.com", true }, + { "syncappate.com", true }, { "sysctl.se", true }, { "sysdb.io", true }, + { "syso.name", true }, { "syss.de", true }, + { "system.is", true }, + { "syzygy-tables.info", true }, { "t23m-navi.jp", false }, { "tadigitalstore.com", true }, { "tageau.com", true }, @@ -1696,6 +1906,8 @@ static const nsSTSPreload kSTSPreloadList[] = { { "taskotron.stg.fedoraproject.org", true }, { "tatort-fanpage.de", true }, { "tauchkater.de", true }, + { "taxsquirrel.com", true }, + { "tbarter.com", true }, { "tbspace.de", true }, { "tcgrepublic.com", true }, { "tdelmas.ovh", true }, @@ -1708,6 +1920,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "techllage.com", true }, { "techloaner.com", true }, { "technotonic.com.au", false }, + { "techvalue.gr", true }, { "tegelsensanitaironline.nl", true }, { "tekshrek.com", true }, { "tempus-aquilae.de", true }, @@ -1727,6 +1940,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "theescapistswiki.com", true }, { "thefrozenfire.com", true }, { "thehiddenbay.net", true }, + { "themarshallproject.org", true }, { "themoep.at", true }, { "thepaymentscompany.com", true }, { "thepiratebay.al", true }, @@ -1734,8 +1948,11 @@ static const nsSTSPreload kSTSPreloadList[] = { { "thetomharling.com", true }, { "theunitedstates.io", true }, { "theweilai.com", true }, + { "thom4s.info", true }, { "thomastimepieces.com.au", true }, + { "thorgames.nl", true }, { "thouni.de", true }, + { "throwpass.com", true }, { "thumbtack.com", true }, { "thusoy.com", true }, { "thyngster.com", false }, @@ -1751,11 +1968,9 @@ static const nsSTSPreload kSTSPreloadList[] = { { "tintenfix.net", true }, { "tipps-fuer-den-haushalt.de", true }, { "tittelbach.at", true }, - { "titties.ml", true }, { "tls.li", true }, { "tmtopup.com", true }, { "tno.io", true }, - { "tobias-kluge.de", true }, { "todesschaf.org", true }, { "todoist.com", true }, { "tollsjekk.no", true }, @@ -1782,6 +1997,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "tonex.de", true }, { "tonex.nl", true }, { "tonytan.cn", true }, + { "tonytan.io", true }, { "tonywebster.com", true }, { "topbargains.com.au", true }, { "topodin.com", true }, @@ -1796,7 +2012,9 @@ static const nsSTSPreload kSTSPreloadList[] = { { "touch.facebook.com", false }, { "touch.mail.ru", true }, { "tox.im", true }, + { "tpbcdn.com", true }, { "tpbproxy.co", true }, + { "tppleague.me", true }, { "traas.org", true }, { "tracktivity.com.au", true }, { "translate.fedoraproject.org", true }, @@ -1812,6 +2030,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "tucuxi.org", true }, { "tuitle.com", true }, { "tunebitfm.de", true }, + { "tuxgeo.com", true }, { "tuxplace.nl", true }, { "twentymilliseconds.com", true }, { "twisto.cz", true }, @@ -1823,12 +2042,14 @@ static const nsSTSPreload kSTSPreloadList[] = { { "uae-company-service.com", true }, { "ub3rk1tten.com", false }, { "ubanquity.com", true }, + { "uber.com", true }, { "ubertt.org", true }, { "ucfirst.nl", true }, { "ukdefencejournal.org.uk", true }, { "ukhas.net", true }, { "ukrainians.ch", true }, { "ulabox.com", true }, + { "uniekglas.nl", true }, { "unison.com", true }, { "unitedadmins.com", true }, { "unknownphenomena.net", true }, @@ -1846,12 +2067,20 @@ static const nsSTSPreload kSTSPreloadList[] = { { "utilityapi.com", true }, { "utleieplassen.no", true }, { "vaddder.com", true }, + { "vanhoutte.be", true }, + { "vapemania.eu", true }, + { "varden.info", true }, { "vasanth.org", true }, { "vbh2o.com", true }, + { "vbhelp.org", true }, + { "vbulletin-russia.com", true }, + { "vbulletinrussia.com", true }, + { "vcsjones.com", true }, { "vechkasov.ru", true }, { "venicerealdeal.com", true }, { "vhost.co.id", true }, { "viasinc.com", false }, + { "vigo-krankenversicherung.de", true }, { "vijos.org", true }, { "visionless.me", false }, { "vitrado.de", true }, @@ -1870,6 +2099,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "vyplnto.cz", true }, { "vzk.io", false }, { "w-spotlight.appspot.com", true }, + { "wachter.biz", true }, { "wallet.google.com", true }, { "walnutgaming.co.uk", true }, { "walnutgaming.com", true }, @@ -1895,6 +2125,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "webogram.org", true }, { "webrebels.org", true }, { "websenat.de", true }, + { "webstudio-n.com", true }, { "webswitch.io", true }, { "webtalis.nl", true }, { "webtiles.co.uk", true }, @@ -1929,6 +2160,7 @@ static const nsSTSPreload kSTSPreloadList[] = { { "wieninternational.at", true }, { "wifirst.net", true }, { "wiki.python.org", true }, + { "wikidata.org", true }, { "wildbee.org", true }, { "wilf1rst.com", true }, { "williamsapiens.com", true }, @@ -1936,13 +2168,16 @@ static const nsSTSPreload kSTSPreloadList[] = { { "willnorris.com", true }, { "wills.co.tt", true }, { "winhistory-forum.net", true }, + { "winsec.nl", true }, { "wisv.ch", true }, { "wit.ai", true }, + { "wonderhost.info", true }, { "wondershift.biz", true }, { "wootton95.com", true }, { "worldcubeassociation.org", true }, { "wownmedia.com", true }, { "wpletter.de", true }, + { "wpmeetup-berlin.de", true }, { "writeapp.me", false }, { "wtfismyip.com", true }, { "wubthecaptain.eu", true }, @@ -1961,7 +2196,6 @@ static const nsSTSPreload kSTSPreloadList[] = { { "www.dropcam.com", false }, { "www.entropia.de", false }, { "www.eternalgoth.co.uk", true }, - { "www.etsy.com", true }, { "www.evernote.com", false }, { "www.facebook.com", false }, { "www.gamesdepartment.co.uk", false }, @@ -2000,13 +2234,17 @@ static const nsSTSPreload kSTSPreloadList[] = { { "wzrd.in", true }, { "wzyboy.org", true }, { "x.io", true }, + { "xavierbarroso.com", true }, { "xbrlsuccess.appspot.com", true }, { "xcoop.me", true }, { "xenesisziarovky.sk", true }, { "xf-liam.com", true }, + { "xgclan.com", true }, { "xho.me", true }, { "xiaolvmu.me", true }, + { "xn--knstler-n2a.tips", false }, { "xn--maraa-rta.org", true }, + { "xn--u9jv84l7ea468b.com", true }, { "xpd.se", true }, { "xps2pdf.co.uk", true }, { "xtrim.ru", true }, @@ -2023,9 +2261,9 @@ static const nsSTSPreload kSTSPreloadList[] = { { "yenniferallulli.es", true }, { "yenniferallulli.moda", true }, { "yenniferallulli.nl", true }, + { "yetcore.io", true }, { "yetii.net", true }, { "yksityisyydensuoja.fi", true }, - { "yokeepo.com", true }, { "yorcom.nl", true }, { "youdowell.com", true }, { "yoursecondphone.co", true }, @@ -2036,10 +2274,11 @@ static const nsSTSPreload kSTSPreloadList[] = { { "zalan.do", true }, { "zapier.com", true }, { "zbasenem.pl", true }, + { "zcarot.com", true }, + { "zcarrot.com", true }, { "zenpayroll.com", false }, { "zentraler-kreditausschuss.de", true }, { "zentralwolke.de", true }, - { "zeplin.io", false }, { "zeropush.com", true }, { "zhang-hao.com", true }, { "zhovner.com", true }, @@ -2047,6 +2286,8 @@ static const nsSTSPreload kSTSPreloadList[] = { { "zixiao.wang", true }, { "zlatosnadno.cz", true }, { "zlavomat.sk", true }, + { "zorntt.fr", true }, { "zotero.org", true }, { "zravypapir.cz", true }, + { "ztan.tk", true }, }; diff --git a/security/nss/lib/freebl/ecl/ecp_jac.c b/security/nss/lib/freebl/ecl/ecp_jac.c index c7bb239c9..e31730def 100644 --- a/security/nss/lib/freebl/ecl/ecp_jac.c +++ b/security/nss/lib/freebl/ecl/ecp_jac.c @@ -144,6 +144,20 @@ ec_GFp_pt_add_jac_aff(const mp_int *px, const mp_int *py, const mp_int *pz, MP_CHECKOK(group->meth->field_sub(&A, px, &C, group->meth)); MP_CHECKOK(group->meth->field_sub(&B, py, &D, group->meth)); + if (mp_cmp_z(&C) == 0) { + /* P == Q or P == -Q */ + if (mp_cmp_z(&D) == 0) { + /* P == Q */ + /* It is cheaper to double (qx, qy, 1) than (px, py, pz). */ + MP_DIGIT(&D, 0) = 1; /* Set D to 1. */ + MP_CHECKOK(ec_GFp_pt_dbl_jac(qx, qy, &D, rx, ry, rz, group)); + } else { + /* P == -Q */ + MP_CHECKOK(ec_GFp_pt_set_inf_jac(rx, ry, rz)); + } + goto CLEANUP; + } + /* C2 = C^2, C3 = C^3 */ MP_CHECKOK(group->meth->field_sqr(&C, &C2, group->meth)); MP_CHECKOK(group->meth->field_mul(&C, &C2, &C3, group->meth)); @@ -205,7 +219,8 @@ ec_GFp_pt_dbl_jac(const mp_int *px, const mp_int *py, const mp_int *pz, MP_CHECKOK(mp_init(&M)); MP_CHECKOK(mp_init(&S)); - if (ec_GFp_pt_is_inf_jac(px, py, pz) == MP_YES) { + /* P == inf or P == -P */ + if (ec_GFp_pt_is_inf_jac(px, py, pz) == MP_YES || mp_cmp_z(py) == 0) { MP_CHECKOK(ec_GFp_pt_set_inf_jac(rx, ry, rz)); goto CLEANUP; } diff --git a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome.manifest b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome.manifest index d7e20d9e0..29dcf7817 100644 --- a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome.manifest +++ b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome.manifest @@ -29,6 +29,7 @@ locale status4evar pl chrome/locale/pl/ locale status4evar pt-PT chrome/locale/pt-PT/ locale status4evar ro-RO chrome/locale/ro-RO/ locale status4evar ru chrome/locale/ru/ +locale status4evar sl chrome/locale/sl/ locale status4evar sv-SE chrome/locale/sv-SE/ locale status4evar tr chrome/locale/tr/ locale status4evar zh-CN chrome/locale/zh-CN/ diff --git a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/meta.properties b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/meta.properties index 728d88ad2..3c09c2e28 100644 --- a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/meta.properties +++ b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/meta.properties @@ -1,6 +1,6 @@ # Translator names. If there is more than one, separate with commas. Only include your name, not the locale you're translating. -translator=Michel Gagnon +translator=Moonchild,Jojaba # Extension title. This usually should not be translated. -name=Barre d’état Pale Moon +name=Pale Moon barre d'état # Extension description. This is displayed in the add-on manager. -description=Fonctions de la barre d’état de Pale Moon +description=Outils indiquant l'état pour Pale Moon diff --git a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/overlay.dtd b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/overlay.dtd index c7da47a79..1c7e5fd4d 100644 --- a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/overlay.dtd +++ b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/overlay.dtd @@ -1,6 +1,6 @@ - - - + + + diff --git a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/overlay.properties b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/overlay.properties index 68ca45df1..02343eed3 100644 --- a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/overlay.properties +++ b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/overlay.properties @@ -8,4 +8,4 @@ nv_done=Effectué nv_stopped=Arrêté nv_timeout=Hors délai # Should be the same as status4evar.status.widget.title -statusText=Texte d’état +statusText=Texte d'état diff --git a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/prefs.dtd b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/prefs.dtd index 5b71fc518..7186f7906 100644 --- a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/prefs.dtd +++ b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/prefs.dtd @@ -74,7 +74,7 @@ - + diff --git a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/prefs.properties b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/prefs.properties index 49d8c07b0..175e87d5c 100644 --- a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/prefs.properties +++ b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/fr/prefs.properties @@ -1,3 +1,3 @@ -simpleEditorTitle=Basculer vers l’éditeur simple -simpleEditorMessage=L’éditeur simple ne peut pas éditer votre style actuel. Souhaitez-vous supprimer votre style ? +simpleEditorTitle=Basculer vers l'éditeur basique +simpleEditorMessage=L'éditeur basique ne peut pas éditer votre style actuel. Souhaitez-vous supprimer votre style ? imageSelectTitle=Choisir un fichier image diff --git a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/meta.properties b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/meta.properties index 38946a712..1434e7241 100644 --- a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/meta.properties +++ b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/meta.properties @@ -1,9 +1,6 @@ # Translator names. If there is more than one, separate with commas. Only include your name, not the locale you're translating. -translator=Дмитрий Черкасов (на базе перевода Пирятинского Виталия) - +translator=Дмитрий Черкасов (на базе перевода Пирятинского Виталия), Александр аКа LeonSK # Extension title. This usually should not be translated. -name=Pale Moon status bar - +name=Панель состояния Pale Moon # Extension description. This is displayed in the add-on manager. -description=Строка состояния для Pale Moon - +description=Панель состояния для Pale Moon diff --git a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/overlay.dtd b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/overlay.dtd index 2c2fc33fa..450629be7 100644 --- a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/overlay.dtd +++ b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/overlay.dtd @@ -1,7 +1,6 @@ - + - - - - + + + diff --git a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/overlay.properties b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/overlay.properties index c832aa87f..ff0474770 100644 --- a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/overlay.properties +++ b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/overlay.properties @@ -1,15 +1,11 @@ -# The #1 gets replaced with the number of active downloads. This is a semicolon list of plural forms: http://developer.mozilla.org/en/docs/Localization_and_Plurals -activeDownloads=Одна активная загрузка;#1 активных загрузки;#1 активных загрузок # The #1 gets replaced with the number of paused downloads. This is a semicolon list of plural forms: http://developer.mozilla.org/en/docs/Localization_and_Plurals -pausedDownloads=Одна остановленная загрузка;#1 остановленных загрузки;#1 остановленных загрузок - -noDownloads=Нет загрузок - +activeDownloads=Одна активная загрузка;#1 активных загрузки;#1 активных загрузок # Page load progress strings. These should match the strings that Firefox has been using. +pausedDownloads=Одна остановленная загрузка;#1 остановленных загрузки;#1 остановленных загрузок +noDownloads=Нет загрузок +# Should be the same as status4evar.status.widget.title nv_done=Готово -nv_stopped=Готово +nv_stopped=Остановлено nv_timeout=Истекло - # Should be the same as status4evar.status.widget.title statusText=Текст сообщения - diff --git a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/prefs.dtd b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/prefs.dtd index f6cc35399..763e9cdcf 100644 --- a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/prefs.dtd +++ b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/prefs.dtd @@ -1,17 +1,17 @@ - - + + - + - + - + @@ -57,13 +57,13 @@ - + - + diff --git a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/prefs.properties b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/prefs.properties index 510555c42..c3af9f55a 100644 --- a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/prefs.properties +++ b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/ru/prefs.properties @@ -1,4 +1,3 @@ -simpleEditorTitle=Переключиться на простой редактор -simpleEditorMessage=Простой редактор не можете редактировать существущий стиль. Вы хотите сбросить ваш стиль? +simpleEditorTitle=Переключиться на простой редактор +simpleEditorMessage=Простой редактор не может редактировать существующий стиль. Вы хотите сбросить ваш стиль? imageSelectTitle=Выберите файл изображения - diff --git a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/sl/meta.properties b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/sl/meta.properties new file mode 100644 index 000000000..8486752f4 --- /dev/null +++ b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/sl/meta.properties @@ -0,0 +1,6 @@ +# Translator names. If there is more than one, separate with commas. Only include your name, not the locale you're translating. +translator=Damjan Gerl +# Extension title. This usually should not be translated. +name=Pale Moon statusna vrstica +# Extension description. This is displayed in the add-on manager. +description=Funkcionalnost statusne vrstice za Pale Moon diff --git a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/sl/overlay.dtd b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/sl/overlay.dtd new file mode 100644 index 000000000..aba99c935 --- /dev/null +++ b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/sl/overlay.dtd @@ -0,0 +1,6 @@ + + + + + + diff --git a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/sl/overlay.properties b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/sl/overlay.properties new file mode 100644 index 000000000..d9589c6b0 --- /dev/null +++ b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/sl/overlay.properties @@ -0,0 +1,11 @@ +# The #1 gets replaced with the number of active downloads. This is a semicolon list of plural forms: http://developer.mozilla.org/en/docs/Localization_and_Plurals +activeDownloads=1 aktivni prenos;#1 aktivna prenosa;#1 aktivni prenosi;#1 aktivnih prenosov +# The #1 gets replaced with the number of paused downloads. This is a semicolon list of plural forms: http://developer.mozilla.org/en/docs/Localization_and_Plurals +pausedDownloads=1 zaustavljen prenos;#1 zaustavljena prenosa;#1 zaustavljeni prenosi;#1 zaustavljenih prenosov +noDownloads=Ni prenosov +# Page load progress strings. These should match the strings that Firefox has been using. +nv_done=Končano +nv_stopped=Ustavljeno +nv_timeout=Čas potekel +# Should be the same as status4evar.status.widget.title +statusText=Statusni tekst diff --git a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/sl/prefs.dtd b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/sl/prefs.dtd new file mode 100644 index 000000000..22d4cb02f --- /dev/null +++ b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/sl/prefs.dtd @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/sl/prefs.properties b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/sl/prefs.properties new file mode 100644 index 000000000..82a1475bc --- /dev/null +++ b/statusbar/distribution/bundles/statusbar@palemoon.org/chrome/locale/sl/prefs.properties @@ -0,0 +1,3 @@ +simpleEditorTitle=Preklop na preprost urejevalnik +simpleEditorMessage=Preprost urejevalnik ne more urediti vašega ​​trenutnega sloga. Ali želite zavreči vaš slog? +imageSelectTitle=Izbira slike diff --git a/statusbar/distribution/bundles/statusbar@palemoon.org/install.rdf b/statusbar/distribution/bundles/statusbar@palemoon.org/install.rdf index 0bacb99ef..4cfc1e355 100644 --- a/statusbar/distribution/bundles/statusbar@palemoon.org/install.rdf +++ b/statusbar/distribution/bundles/statusbar@palemoon.org/install.rdf @@ -12,7 +12,7 @@ Pale Moon status bar Status bar functionality for Pale Moon statusbar@palemoon.org - 5.3.0 + 5.4.0 Moonchild/Sparky Bluefang 2 chrome://status4evar/content/prefs.xul diff --git a/toolkit/content/widgets/findbar.xml b/toolkit/content/widgets/findbar.xml index 5ac377a97..f7a334c14 100644 --- a/toolkit/content/widgets/findbar.xml +++ b/toolkit/content/widgets/findbar.xml @@ -1479,6 +1479,9 @@ this._quickFindTimeout = null; } + this.toggleHighlight(false); + this.getElement("highlight").checked = false; + this._findFailedString = null; ]]> diff --git a/toolkit/locales/en-US/chrome/global/finddialog.properties b/toolkit/locales/en-US/chrome/global/finddialog.properties index 67b0b3c41..0f7208c5a 100644 --- a/toolkit/locales/en-US/chrome/global/finddialog.properties +++ b/toolkit/locales/en-US/chrome/global/finddialog.properties @@ -3,4 +3,4 @@ # file, You can obtain one at http://mozilla.org/MPL/2.0/. notFoundWarning=The text you entered was not found. -notFoundTitle=Find \ No newline at end of file +notFoundTitle=Find diff --git a/toolkit/locales/en-US/chrome/mozapps/update/updates.properties b/toolkit/locales/en-US/chrome/mozapps/update/updates.properties index 6beb94d06..96051cf9e 100644 --- a/toolkit/locales/en-US/chrome/mozapps/update/updates.properties +++ b/toolkit/locales/en-US/chrome/mozapps/update/updates.properties @@ -43,12 +43,19 @@ resumePausedAfterCloseMsg=You have paused downloading this update. Do you want t updaterIOErrorTitle=Software Update Failed updaterIOErrorMsg=The update could not be installed. Please make sure there are no other copies of %S running on your computer, and then restart %S to try again. okButton=OK +okButton.accesskey= askLaterButton=Ask Later +askLaterButton.accesskey= noThanksButton=No Thanks +noThanksButton.accesskey= updateButton_minor=Update %S +updateButton_minor.accesskey= updateButton_major=Get the New Version +updateButton_major.accesskey= backButton=Back +backButton.accesskey= acceptTermsButton=Accept Terms +acceptTermsButton.accesskey= # NOTE: The restartLaterButton string is also used in # mozapps/extensions/content/blocklist.js restartLaterButton=Restart Later diff --git a/widget/LookAndFeel.h b/widget/LookAndFeel.h index 2b0fb911d..8dd81b5b8 100644 --- a/widget/LookAndFeel.h +++ b/widget/LookAndFeel.h @@ -352,6 +352,10 @@ public: */ eIntID_WindowsThemeIdentifier, /** + * Return an appropriate OS version identifier. + */ + eIntID_OperatingSystemVersionIdentifier, + /** * 0: scrollbar button repeats to scroll only when cursor is on the button. * 1: scrollbar button repeats to scroll even if cursor is outside of it. */ @@ -389,6 +393,18 @@ public: eWindowsTheme_Zune, eWindowsTheme_AeroLite }; + + /** + * Operating System versions. + */ + enum OperatingSystemVersion { + eOperatingSystemVersion_WindowsXP = 0, + eOperatingSystemVersion_WindowsVista, + eOperatingSystemVersion_Windows7, + eOperatingSystemVersion_Windows8, + eOperatingSystemVersion_Windows10, + eOperatingSystemVersion_Unknown + }; enum { eScrollArrow_None = 0, diff --git a/widget/android/nsLookAndFeel.cpp b/widget/android/nsLookAndFeel.cpp index 9e30b58aa..a044740d7 100644 --- a/widget/android/nsLookAndFeel.cpp +++ b/widget/android/nsLookAndFeel.cpp @@ -398,6 +398,7 @@ nsLookAndFeel::GetIntImpl(IntID aID, int32_t &aResult) case eIntID_WindowsDefaultTheme: case eIntID_MaemoClassic: case eIntID_WindowsThemeIdentifier: + case eIntID_OperatingSystemVersionIdentifier: aResult = 0; rv = NS_ERROR_NOT_IMPLEMENTED; break; diff --git a/widget/cocoa/nsLookAndFeel.mm b/widget/cocoa/nsLookAndFeel.mm index 4bebc227b..cc9cd95c9 100644 --- a/widget/cocoa/nsLookAndFeel.mm +++ b/widget/cocoa/nsLookAndFeel.mm @@ -379,6 +379,7 @@ nsLookAndFeel::GetIntImpl(IntID aID, int32_t &aResult) case eIntID_TouchEnabled: case eIntID_MaemoClassic: case eIntID_WindowsThemeIdentifier: + case eIntID_OperatingSystemVersionIdentifier: aResult = 0; res = NS_ERROR_NOT_IMPLEMENTED; break; diff --git a/widget/gonk/nsLookAndFeel.cpp b/widget/gonk/nsLookAndFeel.cpp index 2eb9a32bc..3272e9d9f 100644 --- a/widget/gonk/nsLookAndFeel.cpp +++ b/widget/gonk/nsLookAndFeel.cpp @@ -355,6 +355,7 @@ nsLookAndFeel::GetIntImpl(IntID aID, int32_t &aResult) case eIntID_WindowsDefaultTheme: case eIntID_MaemoClassic: case eIntID_WindowsThemeIdentifier: + case eIntID_OperatingSystemVersionIdentifier: aResult = 0; rv = NS_ERROR_NOT_IMPLEMENTED; break; diff --git a/widget/gtk2/nsLookAndFeel.cpp b/widget/gtk2/nsLookAndFeel.cpp index 83728331b..7b66db1d1 100644 --- a/widget/gtk2/nsLookAndFeel.cpp +++ b/widget/gtk2/nsLookAndFeel.cpp @@ -625,6 +625,7 @@ nsLookAndFeel::GetIntImpl(IntID aID, int32_t &aResult) case eIntID_WindowsClassic: case eIntID_WindowsDefaultTheme: case eIntID_WindowsThemeIdentifier: + case eIntID_OperatingSystemVersionIdentifier: aResult = 0; res = NS_ERROR_NOT_IMPLEMENTED; break; diff --git a/widget/windows/WinUtils.h b/widget/windows/WinUtils.h index c66f608d4..8ba929f05 100644 --- a/widget/windows/WinUtils.h +++ b/widget/windows/WinUtils.h @@ -46,7 +46,8 @@ public: VISTA_VERSION = 0x600, WIN7_VERSION = 0x601, WIN8_VERSION = 0x602, - WIN8_1_VERSION = 0x603 + WIN8_1_VERSION = 0x603, + WIN10_VERSION = 0xa00 }; static WinVersion GetWindowsVersion(); diff --git a/widget/windows/nsLookAndFeel.cpp b/widget/windows/nsLookAndFeel.cpp index e60e9e60d..860b69a9b 100644 --- a/widget/windows/nsLookAndFeel.cpp +++ b/widget/windows/nsLookAndFeel.cpp @@ -381,6 +381,34 @@ nsLookAndFeel::GetIntImpl(IntID aID, int32_t &aResult) case eIntID_WindowsThemeIdentifier: aResult = nsUXThemeData::GetNativeThemeId(); break; + + case eIntID_OperatingSystemVersionIdentifier: + { + switch(WinUtils::GetWindowsVersion()) { + case WinUtils::WINXP_VERSION: + case WinUtils::WIN2K3_VERSION: + aResult = LookAndFeel::eOperatingSystemVersion_WindowsXP; + break; + case WinUtils::VISTA_VERSION: + aResult = LookAndFeel::eOperatingSystemVersion_WindowsVista; + break; + case WinUtils::WIN7_VERSION: + aResult = LookAndFeel::eOperatingSystemVersion_Windows7; + break; + case WinUtils::WIN8_VERSION: + case WinUtils::WIN8_1_VERSION: + aResult = LookAndFeel::eOperatingSystemVersion_Windows8; + break; + case WinUtils::WIN10_VERSION: + aResult = LookAndFeel::eOperatingSystemVersion_Windows10; + break; + default: + aResult = LookAndFeel::eOperatingSystemVersion_Unknown; + break; + } + break; + } + case eIntID_MacGraphiteTheme: case eIntID_MacLionTheme: case eIntID_MaemoClassic: diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestParser.cpp index cc2827dd2..a651c1dd3 100644 --- a/xpcom/components/ManifestParser.cpp +++ b/xpcom/components/ManifestParser.cpp @@ -89,7 +89,9 @@ static const ManifestDirective kParsingTable[] = { NULL, &nsChromeRegistry::ManifestOverlay }, { "style", 2, false, true, false, false, NULL, &nsChromeRegistry::ManifestStyle }, - { "override", 2, true, true, true, false, + { // NB: note that while skin manifests can use this, they are only allowed + // to use it for chrome://../skin/ URLs + "override", 2, false, true, true, false, NULL, &nsChromeRegistry::ManifestOverride }, { "resource", 2, true, true, false, false, NULL, &nsChromeRegistry::ManifestResource } diff --git a/xpcom/io/nsMultiplexInputStream.cpp b/xpcom/io/nsMultiplexInputStream.cpp index 553e56e20..9eb87b113 100644 --- a/xpcom/io/nsMultiplexInputStream.cpp +++ b/xpcom/io/nsMultiplexInputStream.cpp @@ -10,6 +10,7 @@ #include "mozilla/Attributes.h" #include "mozilla/MathAlgorithms.h" +#include "mozilla/Mutex.h" #include "base/basictypes.h" @@ -25,6 +26,7 @@ using namespace mozilla::ipc; using mozilla::DeprecatedAbs; +using mozilla::MutexAutoLock; class nsMultiplexInputStream MOZ_FINAL : public nsIMultiplexInputStream, public nsISeekableStream, @@ -54,6 +56,7 @@ private: const char* aFromRawSegment, uint32_t aToOffset, uint32_t aCount, uint32_t *aWriteCount); + mozilla::Mutex mLock; nsTArray > mStreams; uint32_t mCurrentStream; bool mStartedReadingCurrent; @@ -77,7 +80,8 @@ NS_IMPL_CI_INTERFACE_GETTER3(nsMultiplexInputStream, nsISeekableStream) nsMultiplexInputStream::nsMultiplexInputStream() - : mCurrentStream(0), + : mLock("nsMultiplexInputStream lock"), + mCurrentStream(0), mStartedReadingCurrent(false), mStatus(NS_OK) { @@ -87,6 +91,8 @@ nsMultiplexInputStream::nsMultiplexInputStream() NS_IMETHODIMP nsMultiplexInputStream::GetCount(uint32_t *aCount) { + MutexAutoLock lock(mLock); + *aCount = mStreams.Length(); return NS_OK; } @@ -108,6 +114,8 @@ SeekableStreamAtBeginning(nsIInputStream *aStream) NS_IMETHODIMP nsMultiplexInputStream::AppendStream(nsIInputStream *aStream) { + MutexAutoLock lock(mLock); + NS_ASSERTION(SeekableStreamAtBeginning(aStream), "Appended stream not at beginning."); return mStreams.AppendElement(aStream) ? NS_OK : NS_ERROR_OUT_OF_MEMORY; } @@ -116,6 +124,8 @@ nsMultiplexInputStream::AppendStream(nsIInputStream *aStream) NS_IMETHODIMP nsMultiplexInputStream::InsertStream(nsIInputStream *aStream, uint32_t aIndex) { + MutexAutoLock lock(mLock); + NS_ASSERTION(SeekableStreamAtBeginning(aStream), "Inserted stream not at beginning."); bool result = mStreams.InsertElementAt(aIndex, aStream); NS_ENSURE_TRUE(result, NS_ERROR_OUT_OF_MEMORY); @@ -129,6 +139,8 @@ nsMultiplexInputStream::InsertStream(nsIInputStream *aStream, uint32_t aIndex) NS_IMETHODIMP nsMultiplexInputStream::RemoveStream(uint32_t aIndex) { + MutexAutoLock lock(mLock); + mStreams.RemoveElementAt(aIndex); if (mCurrentStream > aIndex) --mCurrentStream; @@ -142,6 +154,8 @@ nsMultiplexInputStream::RemoveStream(uint32_t aIndex) NS_IMETHODIMP nsMultiplexInputStream::GetStream(uint32_t aIndex, nsIInputStream **_retval) { + MutexAutoLock lock(mLock); + *_retval = mStreams.SafeElementAt(aIndex, nullptr); NS_ENSURE_TRUE(*_retval, NS_ERROR_NOT_AVAILABLE); @@ -153,6 +167,8 @@ nsMultiplexInputStream::GetStream(uint32_t aIndex, nsIInputStream **_retval) NS_IMETHODIMP nsMultiplexInputStream::Close() { + MutexAutoLock lock(mLock); + mStatus = NS_BASE_STREAM_CLOSED; nsresult rv = NS_OK; @@ -171,6 +187,8 @@ nsMultiplexInputStream::Close() NS_IMETHODIMP nsMultiplexInputStream::Available(uint64_t *_retval) { + MutexAutoLock lock(mLock); + if (NS_FAILED(mStatus)) return mStatus; @@ -192,6 +210,8 @@ nsMultiplexInputStream::Available(uint64_t *_retval) NS_IMETHODIMP nsMultiplexInputStream::Read(char * aBuf, uint32_t aCount, uint32_t *_retval) { + MutexAutoLock lock(mLock); + // It is tempting to implement this method in terms of ReadSegments, but // that would prevent this class from being used with streams that only // implement Read (e.g., file streams). @@ -242,6 +262,8 @@ NS_IMETHODIMP nsMultiplexInputStream::ReadSegments(nsWriteSegmentFun aWriter, void *aClosure, uint32_t aCount, uint32_t *_retval) { + MutexAutoLock lock(mLock); + if (mStatus == NS_BASE_STREAM_CLOSED) { *_retval = 0; return NS_OK; @@ -317,6 +339,8 @@ nsMultiplexInputStream::ReadSegCb(nsIInputStream* aIn, void* aClosure, NS_IMETHODIMP nsMultiplexInputStream::IsNonBlocking(bool *aNonBlocking) { + MutexAutoLock lock(mLock); + uint32_t len = mStreams.Length(); if (len == 0) { // Claim to be non-blocking, since we won't block the caller. @@ -342,6 +366,8 @@ nsMultiplexInputStream::IsNonBlocking(bool *aNonBlocking) NS_IMETHODIMP nsMultiplexInputStream::Seek(int32_t aWhence, int64_t aOffset) { + MutexAutoLock lock(mLock); + if (NS_FAILED(mStatus)) return mStatus; @@ -561,6 +587,8 @@ nsMultiplexInputStream::Seek(int32_t aWhence, int64_t aOffset) NS_IMETHODIMP nsMultiplexInputStream::Tell(int64_t *_retval) { + MutexAutoLock lock(mLock); + if (NS_FAILED(mStatus)) return mStatus; @@ -613,6 +641,8 @@ nsMultiplexInputStreamConstructor(nsISupports *outer, void nsMultiplexInputStream::Serialize(InputStreamParams& aParams) { + MutexAutoLock lock(mLock); + MultiplexInputStreamParams params; uint32_t streamCount = mStreams.Length(); @@ -649,6 +679,8 @@ nsMultiplexInputStream::Serialize(InputStreamParams& aParams) bool nsMultiplexInputStream::Deserialize(const InputStreamParams& aParams) { + MutexAutoLock lock(mLock); + if (aParams.type() != InputStreamParams::TMultiplexInputStreamParams) { NS_ERROR("Received unknown parameters from the other process!");