Commit Graph

13122 Commits

Author SHA1 Message Date
Brendan Dahl
a1b881280b Bug 1434016 - Inline and remove the various security manager overlays. r=keeler
This is part of the work to remove XUL overlays. All of these overlays are
used only once and do not need to be in their own overlay files.

MozReview-Commit-ID: Ecwq2UN52o9

--HG--
extra : rebase_source : 5a9692c7d9965940847ae1d488d1b94a2abf66c7
2018-01-29 14:56:53 -08:00
Jed Davis
f57faf8137 Bug 1436882 - Fix termination signal when clone()ing child processes. r=gcp
This fixes a mistake in bug 1401062: the termination signal was omitted,
so it's 0, and if it isn't exactly SIGCHLD, then a tracer/debugger will
receive PTRACE_EVENT_CLONE rather than PTRACE_EVENT_FORK.  This causes
GDB to see the child process as a thread instead of a separate process,
and it becomes very confused after the process calls execve().

MozReview-Commit-ID: Baf2RFHVWRU

--HG--
extra : rebase_source : 50839967fc766bb9db123fe1af99a88495f8421b
2018-02-08 17:30:03 -07:00
Honza Bambas
e68b22643e Bug 1152332 - Let connection proxy filters return the result asynchronously - update/introduce tests, r=michal
--HG--
rename : netwerk/test/unit/test_protocolproxyservice.js => netwerk/test/unit/test_protocolproxyservice-async-filters.js
2018-02-08 05:49:00 +02:00
Jed Davis
927e70c7a5 Bug 1425274 - Filter socketpair() in content sandbox on 32-bit x86 with new-enough kernels. r=gcp
This replaces the globals for whether socket calls (and ipc(2) calls, but
we never used that) have real arguments with a parameter, which in hindsight
should have been done in bug 1273852, which is when we started handling
both socketcall(2) and separate socket calls in the same policy.  This
allows handling the two cases differently.

MozReview-Commit-ID: 1pfckmCpJlW

--HG--
extra : rebase_source : 4b8459f01e8748fea95cbcb6eeb689f01417ca5b
2018-01-29 17:36:06 -07:00
Jed Davis
4be220d5f3 Bug 1376910 - Remove SysV IPC access from Linux content sandbox when possible. r=gcp
There are a few things that use SysV IPC, which we discovered the last
time we tried to do this, which need to be accomodated:

1. The ALSA dmix plugin; if the build has ALSA support (off by default)
and if audio remoting is disabled, SysV IPC is allowed.

2. ATI/AMD's old proprietary graphics driver (fglrx), which is obsolete
and doesn't support newer hardware, but still has users; if it's
detected, SysV IPC is allowed.

3. Graphics libraries trying to use the MIT-SHM extension; this is
already turned off for other reasons (see bug 1271100), but that shim
seems to not load early enough in some cases, so it's copied into
libmozsandbox, which is preloaded before anything else in LD_PRELOAD.

Also, msgget is now blocked in all cases; the only case it was known
to be used involved ESET antivirus, which is now handled specially
(bug 1362601).  In any case, the seccomp-bpf policy has never allowed
actually *using* message queues, so creating them is not very useful.

MozReview-Commit-ID: 5bOOQcXFd9U

--HG--
extra : rebase_source : ea79c0a7e31f58f056be15b551c57dde974dfae2
2018-01-26 19:43:10 -07:00
ffxbld
e3330cdba4 No bug, Automated HPKP preload list update from host bld-linux64-spot-302 - a=hpkp-update 2018-02-07 21:47:26 -08:00
ffxbld
27f33391a6 No bug, Automated HSTS preload list update from host bld-linux64-spot-302 - a=hsts-update 2018-02-07 21:47:22 -08:00
Andrew McCreight
5dec0e0beb Bug 1432992, part 1 - Remove definitions of Ci, Cr, Cc, and Cu. r=florian
This patch was autogenerated by my decomponents.py

It covers almost every file with the extension js, jsm, html, py,
xhtml, or xul.

It removes blank lines after removed lines, when the removed lines are
preceded by either blank lines or the start of a new block. The "start
of a new block" is defined fairly hackily: either the line starts with
//, ends with */, ends with {, <![CDATA[, """ or '''. The first two
cover comments, the third one covers JS, the fourth covers JS embedded
in XUL, and the final two cover JS embedded in Python. This also
applies if the removed line was the first line of the file.

It covers the pattern matching cases like "var {classes: Cc,
interfaces: Ci, utils: Cu, results: Cr} = Components;". It'll remove
the entire thing if they are all either Ci, Cr, Cc or Cu, or it will
remove the appropriate ones and leave the residue behind. If there's
only one behind, then it will turn it into a normal, non-pattern
matching variable definition. (For instance, "const { classes: Cc,
Constructor: CC, interfaces: Ci, utils: Cu } = Components" becomes
"const CC = Components.Constructor".)

MozReview-Commit-ID: DeSHcClQ7cG

--HG--
extra : rebase_source : d9c41878036c1ef7766ef5e91a7005025bc1d72b
2018-02-06 09:36:57 -08:00
Gurzau Raul
476c3b3a55 Merge inbound to mozilla-central. a=merge 2018-02-06 23:53:56 +02:00
ffxbld
a806ff2842 No bug, Automated HPKP preload list update from host bld-linux64-spot-302 - a=hpkp-update 2018-02-06 11:29:26 -08:00
ffxbld
09d6ee7e84 No bug, Automated HSTS preload list update from host bld-linux64-spot-302 - a=hsts-update 2018-02-06 11:29:22 -08:00
Narcis Beleuzu
84cea84b12 Merge inbound to mozilla-central. a=merge 2018-02-06 11:54:42 +02:00
Narcis Beleuzu
41fa81fdee Merge autoland to mozilla-central. a=merge 2018-02-06 11:53:07 +02:00
ffxbld
77806927d6 No bug, Automated HPKP preload list update from host bld-linux64-spot-324 - a=hpkp-update 2018-02-05 12:04:25 -08:00
ffxbld
af8adb97bc No bug, Automated HSTS preload list update from host bld-linux64-spot-324 - a=hsts-update 2018-02-05 12:04:21 -08:00
Cykesiopka
9c11fda65f Bug 1435644 - Fix and regenerate test_cert_eku/ certs to get test_cert_eku.js passing again. r=keeler on a CLOSED TREE
ca.pem is used to sign certificates that are either verified at time 2016-08-25
or time "now", with the earliest such certificate having a notBefore of
2015-07-24. As such, ca.pem.certspec needs to have a notBefore time that is no
later than 2015-07-24, but be valid for a reasonably long time.
Therefore, ca.pem.certspec is changed so the cert has a notBefore of 2015-01-01,
and is valid for 20 years.

ee-int-nsSGC-*.pem are verified at time 2016-08-25, and so need to be valid
at that time.
Therefore, the ee-int-nsSGC-*.pem.certspec files are changed so the
corresponding certs have validity periods that match their intermediates.

MozReview-Commit-ID: duOnvGGcuD

--HG--
extra : amend_source : 307c9d95b617560a547081ff8924d05ec2f2d2a8
2018-02-05 10:32:54 -08:00
Sebastian Hengst
f80722d4f3 Bug 1435644: Revert update of certs which have to remain outdated or are checked at a fixed point in time, update metadata hardcoded in tests. r=Try a=Try on a CLOSED TREE 2018-02-05 18:14:35 +02:00
Emilio Cobos Álvarez
c4a30f7c9a Bug 1435644: Also regenerate the signed apps. r=me a=Aryx on a CLOSED TREE
MozReview-Commit-ID: Br0gNMNR6hl
2018-02-05 15:33:01 +01:00
Emilio Cobos Álvarez
01d663157f Bug 1435644: Regenerate the security/manager/ssl test certificates and keys. r=franziskus a=Aryx on a CLOSED TREE
For this, I've uncommented the relevant bits in moz.build files, then:

  ./mach build security/manager
  for dir in $(rg GeneratedTestCertificate | grep security | cut -d : -f 1); do
    cp obj-x86_64-pc-linux-gnu/$(dirname $dir)/*.pem $(dirname $dir);
  done

And same with GeneratedTestKey / *.key

MozReview-Commit-ID: C2bkSo6YYCU

--HG--
extra : amend_source : b59d21b695544a1a4b6c45ba9c00c40f8ceb0f1a
2018-02-05 12:14:22 +01:00
ffxbld
ab62d80275 No bug, Automated HPKP preload list update from host bld-linux64-spot-302 - a=hpkp-update 2018-02-04 11:28:16 -08:00
ffxbld
a69757cabc No bug, Automated HSTS preload list update from host bld-linux64-spot-302 - a=hsts-update 2018-02-04 11:28:12 -08:00
ffxbld
7cfb9cc4d2 No bug, Automated HPKP preload list update from host bld-linux64-spot-324 - a=hpkp-update 2018-02-03 11:23:38 -08:00
ffxbld
25db3d50af No bug, Automated HSTS preload list update from host bld-linux64-spot-324 - a=hsts-update 2018-02-03 11:23:34 -08:00
Noemi Erli
c1da6f3f85 Merge autoland to mozilla-central. a=merge 2018-02-03 11:50:53 +02:00
ffxbld
3a2e22a81a No bug, Automated HPKP preload list update from host bld-linux64-spot-325 - a=hpkp-update 2018-02-02 11:19:00 -08:00
ffxbld
b41d57ec50 No bug, Automated HSTS preload list update from host bld-linux64-spot-325 - a=hsts-update 2018-02-02 11:18:57 -08:00
Nathan Froyd
100be25160 Bug 1435708 - use mozilla::HashString in security/manager/ssl/; r=keeler
Using HashString is a little more explicit than
PLDHashTable::HashStringKey and brings us closer to the day where we can
delete the latter entirely.
2018-02-05 20:17:38 -05:00
Brendan Dahl
e2ebf215b1 Bug 1434151 - Inline and remove the various certificate viewer overlays. r=keeler
This is part of the work to remove XUL overlays. All of these overlays are
used only once and do not need to be in their own overlay files.

MozReview-Commit-ID: 9NBBTg5KHxb

--HG--
extra : rebase_source : 675a5baa91b93eeb7253ad5773cb76e7db6be4fd
2018-01-29 17:29:08 -08:00
Andrew Halberstadt
f354075c7a Bug 1434430 - [flake8] Fix blank 'except' statements r=rwood
This is a new issue that gets linted with flake8 3.5.0. Basically you should
never use a blank except: statement.

This will catch all exceptions, including KeyboardInterrupt and SystemExit
(which is likely not intended). If a catch all is needed, use
`except: Exception`.  If you *really* mean to also catch KeyboardInterrupt et
al, use `except: BaseException`.

Of course, being specific is often better than a catch all.

MozReview-Commit-ID: FKx80MLO4RN

--HG--
extra : rebase_source : 7c74a7d0d81f2c984b47aff3a0ee3448b791177b
2018-01-31 14:32:08 -05:00
David Keeler
c470850884 bug 1434831 - ensure nsITransportSecurityInfo.failedCertChain contains the *peer cert chain* r=jcj
In bug 1406856 the failedCertChain property of nsITransportSecurityInfo was
changed to hold the built certificate chain out parameter from the call to
CertVerifier::VerifySSLServerCert. However, this was incorrect for two reasons:
a) failedCertChain is supposed to be the peer cert chain delivered by the server
in the TLS handshake and
b) if VerifySSLServerCert returns a failing result, the out parameter is not
guaranteed to hold any meaningful information, and must not be used.
This patch sets failedCertChain to the appropriate value.

MozReview-Commit-ID: BEXs5XH9SpK

--HG--
extra : rebase_source : f50ea725ccb67408ab1ce33cd76d3956ebd10e29
2018-02-01 12:29:04 -08:00
Gurzau Raul
1315ffda06 Merge inbound to mozilla-central. a=merge 2018-02-02 00:22:39 +02:00
Gurzau Raul
8c0d0d0d16 Merge autoland to mozilla-central. a=merge 2018-02-01 23:52:41 +02:00
Florian Quèze
2b1c8dccb6 Bug 1339461 - script-generated patch to convert foo.indexOf(...) == -1 to foo.includes(), r=Mossop. 2018-02-01 20:45:22 +01:00
ffxbld
00e2288b74 No bug, Automated HPKP preload list update from host bld-linux64-spot-302 - a=hpkp-update 2018-02-01 11:21:30 -08:00
ffxbld
53f7b78ae2 No bug, Automated HSTS preload list update from host bld-linux64-spot-302 - a=hsts-update 2018-02-01 11:21:26 -08:00
Gian-Carlo Pascutto
ff91a17fb3 Bug 1386404 - Use the full tmpdir finding logic. r=jld
MozReview-Commit-ID: BDBslEZsctJ

--HG--
extra : rebase_source : 6814c3fc5183083b38bfe651f6c7e9d19965f785
extra : histedit_source : fb71245f51fefcc7c221f951316c16583239aefc%2C71d59492798b368e5d09f295f5e74bb32790c75b
2018-01-30 21:31:07 +01:00
David Keeler
087f092867 bug 1421084 - part 4/4 - remove nsNSSShutDown.h and (hopefully) all references to it r=mt,ttaubert
MozReview-Commit-ID: 2mhvHsC5Nil

--HG--
extra : rebase_source : 651c2bcf8655f75756ea2bac788eb8c0781dc90a
2018-01-24 14:44:01 -08:00
David Keeler
ad5cec4768 bug 1421084 - part 3/4 - remove nsNSSShutDownObject::shutdown and virtualDestroyNSSReference r=mt,ttaubert
MozReview-Commit-ID: ErL7ZjAGVVC

--HG--
extra : rebase_source : 2869aafaef729f0ad190f957919e8b9c40700477
2018-01-24 14:29:08 -08:00
David Keeler
a0e34baf27 bug 1421084 - part 2/4 - remove nsNSSShutDownObject::isAlreadyShutDown() r=mt,ttaubert
MozReview-Commit-ID: DlS16pHE0Ik

--HG--
extra : rebase_source : d7596a3571478adefae4ffa5d446ff5234ba9ed7
2018-01-23 12:22:56 -08:00
David Keeler
e8cc0ba1ce bug 1421084 - part 1/4 - remove now-unnecessary nsNSSShutDownPreventionLock r=mt,ttaubert
As of bug 1417680, the NSS shutdown tracking infrastructure is unnecessary (and
does nothing anyway). This series of changesets removes the remaining pieces in
a way that is hopefully easy to confirm is correct.

MozReview-Commit-ID: 8Y5wpsyNlGc

--HG--
extra : rebase_source : ef6b481510d949e404a4ef5615097d66e566c947
2018-01-23 10:37:47 -08:00
David Parks
312f33b8c5 Bug 1426733: Use restricting SIDs in Windows NPAPI process r=bobowen
Allow NPAPI sandbox to use restricting SIDs.

--HG--
extra : rebase_source : be53cfa3b05bd6d0f5b24b8f4f0b41e623d40e9a
2017-12-20 21:35:26 -08:00
Brindusan Cristian
47ba5a55dc Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-02-06 12:07:56 +02:00
Bob Owen
92db53b861 Bug 1432381: Replace sidestep resolvers with stubs as they are not actually used. r=aklotz
These cause compilation issues for MinGW.
It looks like these are a legacy from the original sandbox code before it was
integrated into chromium.
2018-02-06 08:52:26 +00:00
Boris Zbarsky
12e9f78050 Bug 1435483 part 16. Switch to using dom::Exception, not nsIException, in C++ code. r=qdot
nsIException is builtinclass in idl, so whatever code we had to handle
non-dom::Exception nsIExceptions is dead code.

MozReview-Commit-ID: 6VnqDWt0041
2018-02-05 16:34:05 -05:00
Boris Zbarsky
c8bd8682bf Bug 1435483 part 10. Add infallible "asyncCaller" and "caller" getters on nsIStackFrame. r=qdot
MozReview-Commit-ID: 8pdMDFHWlVt
2018-02-05 16:34:05 -05:00
Boris Zbarsky
b7eaf4b6ae Bug 1435483 part 9. Add an infallible "name" getter on nsIStackFrame. r=qdot
MozReview-Commit-ID: ADxO2A8nkel
2018-02-05 16:34:05 -05:00
Boris Zbarsky
2c00c8c971 Bug 1435483 part 6. Add an infallible "lineNumber" getter on nsIStackFrame. r=qdot
MozReview-Commit-ID: 7aYg9kJhiab
2018-02-05 16:34:04 -05:00
Boris Zbarsky
02f7baafc0 Bug 1435483 part 5. Add an infallible "filename" getter on nsIStackFrame. r=qdot
MozReview-Commit-ID: D3uuehuDqOB
2018-02-05 16:34:04 -05:00
Gian-Carlo Pascutto
adc2daa77b Bug 1386404 - Whitelist the prefix used by the XPCOM leak logs. r=haik
MozReview-Commit-ID: HI68lvyJIPQ

--HG--
extra : rebase_source : b68015624aa02c911cd4361b8ea177ae585a5ef5
extra : histedit_source : ca88e3de7f3f7d76e82e259e03145d2f843d0a1b
2017-11-03 13:18:56 +01:00
Gian-Carlo Pascutto
220379341a Bug 1386404 - Only do the tmp remapping if needed. r=jld
This helps with getting the tests that are running out of /tmp
to pass, who get confused if their paths change underneath them.

It's also a bit faster.

MozReview-Commit-ID: CWtngVNhA0t

--HG--
extra : rebase_source : 1be7a99cd3640d15ddecd1c050d19d1b30e5202d
extra : histedit_source : 5787bfe610504356a04819039469083adf2ce77c
2017-10-26 18:02:10 +02:00