Commit Graph

754 Commits

Author SHA1 Message Date
aszlig
8fb49973ce
firefox: Add patch to fix AES GCM IV bit size
Regression introduced by bce5268a21.

The bit size of the initialisation vector for AES GCM has been
introduced in NSS version 3.52 in the CK_GCM_PARMS struct via the
ulIvBits field.

Unfortunately, Firefox 68.8.0 and 76.0 do not set this field and thus it
gets initialised to zero, which in turn causes IV generation to fail.

I found out about this because WebRTC stopped working after updating to
NSS 3.52 and so I started bisecting.

Since there wasn't an obvious error in Firefox hinting towards NSS but
instead just the video stream ended up as a "null" stream, I didn't
suspect the NSS update to be the culprit at first. So I verified a few
times and then also started bisecting the actual commit in NSS that
caused the issue.

This turned out to be the problematic change:

https://phabricator.services.mozilla.com/D63241

> One notable change was caused by an inconsistancy between the spec and
> the released headers in PKCS#11 v2.40. CK_GCM_PARAMS had an extra
> field in the header that was not in the spec. OASIS considers the
> header file to be normative, so PKCS#11 v3.0 resolved the issue in
> favor of the header file definition.

Since the test I've used[1] was a bit flaky, I still didn't believe the
result of the bisect to be accurate, but after running the test several
times leading same results I dug through the above change line by line
to get more clues.

It fortunately didn't take that long to stumble upon the ulIvBits change
(which is actually documented in the NSS 3.52 release notes[4], but I
managed to blatantly ignore it for some reason) and started checking the
Firefox source tree for changes regarding that field.

Initialisation of that new field has been introduced[2] in preparation
for the 76 release, but subsequently got reverted[3] prior to the
release, because Firefox 76 is expected to be shipped with NSS 3.51,
which didn't have the ulIvBits field.

The patch I'm adding here is just a reintroduction of that change,
because we're using NSS 3.52. Not initialising that field will break
WebRTC and WebCrypto, which I think the former seems to gain in
popularity these days ;-)

Tested the change against the mentioned VM test[1] and also by testing
manually using Jitsi Meet and Nextcloud Talk.

[1]: https://github.com/aszlig/avonc/tree/884315838b6f0ebb32b/tests/talk
[2]: https://hg.mozilla.org/mozilla-central/rev/3ed30e6b6de1
[3]: https://hg.mozilla.org/mozilla-central/rev/665137da70ee
[4]: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_3.52_release_notes

Signed-off-by: aszlig <aszlig@nix.build>
2020-05-13 02:23:12 +02:00
Vladimír Čunát
a2d5351b63
Merge #86788: firefox 75.0 -> 76.0 (critical security)
https://www.mozilla.org/en-US/firefox/76.0/releasenotes/
Some of the changes were in master already, but whatever...
2020-05-07 19:57:16 +02:00
Andreas Rammhold
5bac4f0213
firefox-esr-68: 68.7.0esr -> 68.8.0esr
Discussion: https://github.com/NixOS/nixpkgs/pull/86788
2020-05-06 11:40:28 +02:00
Andreas Rammhold
f3cc8dc6fa
firefox-esr-68: 68.7.0esr -> 68.8.0esr 2020-05-04 17:29:37 +02:00
Andreas Rammhold
324e40f0f4
firefox: 75.0 -> 76.0 2020-05-04 16:31:27 +02:00
Cole Mickens
552d729571
firefox: wrapper: use ffmpeg_4 for vaapi
without this, adding libva is insufficient to get VA-API working in
Firefox.
2020-04-27 05:05:14 -07:00
Cole Mickens
730d542ae0
firefox: wrapper: add libva to libs 2020-04-27 03:48:33 -07:00
worldofpeace
443e544721 firefox-wrapper: don't throw on enableGnomeExtensions
We use the config for the native messaging host below this statement.
2020-04-18 20:36:55 -04:00
John Ericson
eb4acb6ca9
Merge pull request #85468 from Ericson2314/no-dumpmachine
treewide: Get rid of -dumpmachine in favor of static info
2020-04-18 00:35:19 -04:00
Dominik Xaver Hörl
c51b0afd54 firefox-wrapper: remove dead npapi plugin code 2020-04-16 10:12:09 +02:00
John Ericson
204d710405 treewide: Get rid of -dumpmachine in favor of static info 2020-04-13 19:26:19 -04:00
Michael Reilly
84cf00f980
treewide: Per RFC45, remove all unquoted URLs 2020-04-10 17:54:53 +01:00
Andreas Rammhold
f56ea6cdd7
firefox-esr-68: 68.6.1esr -> 68.7.0esr 2020-04-07 13:27:27 +02:00
Andreas Rammhold
4a41fd7a1e
firefox: 74.0.1 -> 75.0 2020-04-07 13:27:27 +02:00
Andreas Rammhold
9de3c9749c
firefox: prepare for version 75 2020-04-07 13:27:27 +02:00
Florian Klink
29f491d5b7
Merge pull request #81864 from volth/patch-389
firefox: mark as broken on 32-bit buildPlatform
2020-04-05 20:29:29 +02:00
Andreas Rammhold
f6430a2aea
firefox-esr: 68.8.0esr -> 68.8.1esr 2020-04-03 22:42:48 +02:00
Andreas Rammhold
48e6a3f1f1
firefox: 74.0 -> 74.0.1 2020-04-03 22:11:03 +02:00
Andreas Rammhold
ea8362e315
firefox: 73.0.1 -> 74.0 (#82276)
https://www.mozilla.org/en-US/firefox/74.0/releasenotes/

Co-authored-by: Daniel Frank <git@danielfrank.net>
2020-03-12 14:47:56 +01:00
Andreas Rammhold
9727da29b0
firefox-esr-68: 68.5.0esr -> 68.6.0esr 2020-03-10 20:07:29 +01:00
Samuel Dionne-Riel
d4446c563d firefox: Fix AArch64 build
* The 'arm.patch' patch doesn't apply anymore.
 * The 'build-arm-libopus.patch' patch isn't required anymore.
 * See the mozilla phabricator link for the added patch.

Additionally, we are now *always* undconditionally applying all patches
to all architectures. That is, unless they have undesirable
side-effects, but those might not be fit for inclusion.

By applying all patches all the time, they'll be removed or replaced
when they stop applying.
2020-03-09 13:37:30 -04:00
volth
ed33a6c327 firefox: mark as broken on 32-bit buildPlatform 2020-03-06 03:53:14 +00:00
Andreas Rammhold
a5ae1b2ffd
firefox: remove unused patches 2020-02-23 13:13:36 +01:00
Andreas Rammhold
9fd425e56f
firefox: remove unused function arguments 2020-02-23 13:10:16 +01:00
Domen Kožar
5f711b6b7e
Merge pull request #57876 from dtzWill/feature/fx_cast
fx_cast: init at 0.0.5
2020-02-20 15:18:03 +07:00
Andreas Rammhold
52920a6b2c
firefox: 73.0 -> 73.0.1 2020-02-18 13:26:40 +01:00
Andreas Rammhold
f43fdd1151 firefox-esr: 68.4.2esr -> 68.5.0esr 2020-02-11 01:19:26 +01:00
Andreas Rammhold
8019df98f8 firefox: 72.0.2 -> 73.0 2020-02-11 01:19:26 +01:00
Andreas Rammhold
187d6912a8 firefox: prepare for 73.0 2020-02-11 01:19:26 +01:00
Silvan Mosberger
349b471469 Merge pull request #79297 from arcnmx/pr-firefox-extension-links
firefox: resolve relative nativeMessagingHosts links
2020-02-10 00:15:19 +01:00
Florian Klink
84af9839e0 firefoxPackages.*, firefox-esr*, icecat: add aliases 2020-02-09 22:33:33 +01:00
Florian Klink
94b2596540 firefox: simplify derivation
with firefox 64 being the latest version, and the removal of
"tor-browser/icecat-like" variants, we can greatly simplify the common
firefox derivation.
2020-02-09 22:33:33 +01:00
Florian Klink
e3659c50fc firefoxPackages.firefox-esr-52: remove package
firefoxPackages.firefox-esr-52 was removed as it's an unsupported ESR
with open security issues. If you need it because you need to run some
plugins not having been ported to WebExtensions API, import it from an
older nixpkgs checkout still containing it.
2020-02-09 22:33:33 +01:00
Florian Klink
9704fbec86 firefoxPackages.icecat[-52]: remove package
firefoxPackages.icecat was removed as even its latest upstream version
is based on an unsupported ESR release with open security issues.
2020-02-09 22:33:33 +01:00
Florian Klink
83fff69fca firefoxPackages.firefox-esr-60: remove
There's not really a reason to ship an unsupported ESR variant of
firefox, and if one really needs it, it's also possible to just checkout
an older version of nixpkgs.
2020-02-09 22:33:33 +01:00
Florian Klink
c173d663fd firefoxPackages.*: use config.allowAliases 2020-02-09 22:33:33 +01:00
arcnmx
c7a58a7ba7 firefox: resolve relative nativeMessagingHosts links 2020-02-05 14:29:52 -08:00
taku0
249e3d0ef3 firefox-esr: 68.4.1esr -> 68.4.2esr 2020-01-21 20:04:04 +09:00
taku0
57aed520d8 firefox: 72.0.1 -> 72.0.2 2020-01-21 19:59:34 +09:00
Florian Klink
0e75514442 firefoxPackages.icecat: mark as insecure
It's based on 60.3.0, whose support ended around October 2019.
2020-01-10 20:19:19 +01:00
Florian Klink
1efaa03d95 firefoxPackages.tor-browser*, tor-browser-bundle: remove
These are all based on firefox versions with known vulnerabilities
exploited in the wild.

We seriously shouldn't ship this in nixpkgs, especially not for
sensitive applications as the Tor Browser.

`tor-browser-bundle` is just a wrapper around
`firefoxPackages.tor-browser`, so let's remove it too.

`tor-browser-bundle-bin` is the much safer bet, which is individually
downloaded from `dist.torproject.org` and just `patchelf`-ed locally to
work on NixOS.

Co-Authored-By: Alyssa Ross <hi@alyssa.is>
Co-Authored-By: Andreas Rammhold <andreas@rammhold.de>
Co-Authored-By: Graham Christensen <graham@grahamc.com>
2020-01-10 18:34:22 +01:00
Vladimír Čunát
f703a3a04a
firefox-esr-60: mark as vulnerable
The last release was in September, so it's surely "vulnerable" now.
https://www.mozilla.org/en-US/firefox/60.9.0/releasenotes/

This is the same appproach we've taken for esr-52.
2020-01-10 17:08:01 +01:00
Andreas Rammhold
b4983fe20b
firefox: fix build of >=72 on aarch64 2020-01-08 23:39:26 +01:00
Andreas Rammhold
204d32a746
firefox-esr-68: 68.4.0esr -> 68.4.1esr 2020-01-08 23:39:26 +01:00
Andreas Rammhold
aab1f2dfe2
firefox: 72.0 -> 72.0.1 2020-01-08 23:39:26 +01:00
Andreas Rammhold
40018e5987
firefox: 71.0 -> 72.0 2020-01-08 17:06:35 +01:00
Andreas Rammhold
2ad59bdf8c firefox-esr-68: 68.3.0esr -> 68.4.0esr 2020-01-08 14:48:30 +01:00
Andreas Rammhold
6d8208e373 firefox: prepare for firefox 72 2020-01-08 14:48:30 +01:00
Maximilian Bosch
5ed6a9c70d
firefox: fix for structured attrs 2019-12-31 00:59:00 +01:00
Robin Gloster
ab0cfd9e03
treewide: NIX_*_COMPILE -> string 2019-12-31 00:10:18 +01:00