Commit Graph

1438 Commits

Author SHA1 Message Date
Bill McCloskey
50e4d05346 Bug 1312960 - Associate each message in IPC queue with the runnable that will run it (r=dvander) 2016-10-30 22:04:03 -07:00
Bill McCloskey
a054d4a461 Bug 1312960 - Remove FlushPendingInterruptQueue (r=dvander) 2016-10-30 22:04:02 -07:00
Bill McCloskey
9244a5787d Bug 1312960 - Use CancelableRunnable for mOnChannelConnectedTask (r=dvander) 2016-10-30 22:04:02 -07:00
Josh Matthews
9c847a5ac4 Bug 1277681 - Send HTTP request bodies in chunks. r=mayhemer 2016-09-28 18:38:26 -04:00
Nathan Froyd
caf3dd0e20 Bug 1312549 - use equality comparison rather than ordered comparison in ~GeckoChildProcessHost; r=billm
clang has recently made |x $RELATIONAL_OP 0|, where |x| is a variable of
pointer type, to be an error.  On Windows,
GeckoChildProcessHost::mChildProcessHandle is a HANDLE, which is really
just a pointer.  So the comparison |> 0| in ~GeckoChildProcessHost is
invalid.  Fortunately, we can use an equality comparison here and it
amounts to the same thing.
2016-10-25 23:08:11 -04:00
Ting-Yu Chou
8b0030d0e6 Bug 1312326 - Use StringFromIPCMessageType() instead for better crash annotation. r=kanru
MozReview-Commit-ID: 1kElBr0X6W

--HG--
extra : rebase_source : 0c4ba3a1345ab4c0165b69b28591e4cedf8249ff
2016-10-24 12:35:19 +08:00
George Wright
d7ed342b5e Bug 1264073 - Remove assertion in SharedMemoryBasic that we didn't initialise fast enough. r=billm 2016-10-21 12:53:00 -04:00
Kan-Ru Chen
2b9f62525d Bug 1309799 - Make error message more stable. r=billm
MozReview-Commit-ID: IzhAfo7eYCC

--HG--
extra : rebase_source : 8c0fffd9dd6b10b48cb14f9393f7eb564322d42b
2016-10-20 22:26:52 +08:00
Kan-Ru Chen
4364802eff Bug 1309799 - Generate StringFromIPCMessageType and use it in MessageChannel::MaybeHandleError. r=billm
MozReview-Commit-ID: HSuAAM0JdjS

--HG--
extra : rebase_source : 0181275a9631f343aedd5a683911d7909fcb5866
2016-10-13 14:18:45 +08:00
Cervantes Yu
9b89fed177 Bug 1278443 - Part 1: Don't open PBackground actors after PContentChild is closed. r=billm
MozReview-Commit-ID: FMtHF3yMQFG

--HG--
extra : rebase_source : 901de005a8f18ea7e406abae48d623fb60537c04
2016-10-04 17:48:46 +08:00
Aaron Klotz
62eaa723f7 Bug 1241921: Remove CreateWindow* hooks from IPC glue; r=jimm
MozReview-Commit-ID: 5YZxwMzMrtx

--HG--
extra : rebase_source : f93b1c8041291a3830b30d9a71f269e4814c8bf8
2016-10-17 12:06:58 -06:00
Ting-Yu Chou
7d65559dd1 Bug 1301022 - Add an API for annotating pending IPC messages. r=ted
MozReview-Commit-ID: GiAMUnjYjvI

--HG--
extra : rebase_source : a40f81a4878205b5edb71ca8ec2f24dc35c677eb
2016-09-20 14:10:43 +08:00
David Anderson
95f369864c Add GPU process support to the crash reporting service. (bug 1278717, r=ted) 2016-10-14 23:59:29 -07:00
David Anderson
963b096cac Use firefox.exe for launching the GPU process on Windows. (bug 1309890, r=jld) 2016-10-13 23:55:07 -07:00
Ben Kelly
4afdb78b8e Bug 1309823 - Forget file descriptors before starting actor destruction. r=billm 2016-10-14 08:27:28 +02:00
David Anderson
45fe47d352 Add a PCrashReporter alternative that uses shmem instead of IPDL. (bug 1278717 part 1, r=billm) 2016-10-11 14:25:17 -07:00
Ehsan Akhgari
3cc4749e5d Bug 1309028 - Remove PProcLoader; r=baku
The code using this protocol was removed in bug 1284674.
2016-10-11 09:37:46 -04:00
Sebastian Hengst
cdcc9e20da Bug 1304829 - rename RELEASE_BUILD to RELEASE_OR_BETA: main part. r=ted,Mossop
MozReview-Commit-ID: 1lCt0xTMV5O
2016-10-08 11:14:49 +02:00
Ting-Yu Chou
35c5bba61c Bug 1301022 - Back out crash annotations which doesn't work in child process. r=me
MozReview-Commit-ID: BMq1lxwDO2u
2016-10-03 10:08:11 +08:00
Bill McCloskey
f478d1188c Bug 1306708 - Rename prio to nested in IPDL (r=dvander) 2016-10-04 20:34:54 -07:00
Bill McCloskey
b83db28a45 Revert "Bug 1306708 - Rename prio to nested in IPDL (r=dvander)" on a CLOSED TREE
This reverts commit b1460c626078afbb9290e7d9ecaf3af605d5e893.
2016-10-04 15:55:19 -07:00
Bill McCloskey
b001750d48 Revert "Bug 1306708 - Fix rebasing bustage on a CLOSED TREE"
This reverts commit cfc7bb2a6a9710dd9963185f264c70950fd5595c.
2016-10-04 15:55:00 -07:00
Bill McCloskey
e7d51e609b Bug 1306708 - Fix rebasing bustage on a CLOSED TREE 2016-10-04 15:43:34 -07:00
Bill McCloskey
eddd80027c Bug 1306708 - Rename prio to nested in IPDL (r=dvander) 2016-10-04 15:28:14 -07:00
Matt Woodrow
a8c2c8fb5b Bug 1297826 - Make FatalError virtual on IPDL generated classes, and propagate calls up to top-level protocols. r=billm 2016-10-04 21:31:25 +13:00
Marco Castelluccio
fd755543b4 Bug 1164133 - Assert that we never send an async high priority message. r=billm 2016-10-01 12:14:49 +01:00
Josh Matthews
ee8da66177 Bug 1294450 - Make AutoIPCStream favour PSendStream for large input streams. r=nfroydj 2016-09-29 06:20:00 +02:00
Wes Kocher
673a0db365 Backed out changeset 57e78c503c4e (bug 1294450) for build bustage a=backout 2016-09-28 17:38:00 -07:00
Josh Matthews
facc06fda2 Bug 1294450 - Make AutoIPCStream favour PSendStream for large input streams. r=froydnj
--HG--
extra : rebase_source : 764aa593bd2734ca15d556a0b5ca55e3f69d25bb
2016-09-28 18:38:51 -04:00
Nathan Froyd
aa23cf7561 Bug 1305814 - fix -Wreorder warning in MessageChannel; r=billm
Initializer lists are supposed to initialize member variables in the
order they're listed in the class definition.
2016-09-28 04:44:11 -04:00
Kate McKinley
c57d400961 Bug 1246540 - HSTS Priming Proof of Concept. r=ckerschb, r=mayhemer, r=jld, r=smaug, r=dkeeler, r=jmaher, p=ally
HSTS priming changes the order of mixed-content blocking and HSTS
upgrades, and adds a priming request to check if a mixed-content load is
accesible over HTTPS and the server supports upgrading via the
Strict-Transport-Security header.

Every call site that uses AsyncOpen2 passes through the mixed-content
blocker, and has a LoadInfo. If the mixed-content blocker marks the load as
needing HSTS priming, nsHttpChannel will build and send an HSTS priming
request on the same URI with the scheme upgraded to HTTPS. If the server
allows the upgrade, then channel performs an internal redirect to the HTTPS URI,
otherwise use the result of mixed-content blocker to allow or block the
load.

nsISiteSecurityService adds an optional boolean out parameter to
determine if the HSTS state is already cached for negative assertions.
If the host has been probed within the previous 24 hours, no HSTS
priming check will be sent.

MozReview-Commit-ID: ES1JruCtDdX

--HG--
extra : rebase_source : 2ac6c93c49f2862fc0b9e595eb0598cd1ea4bedf
2016-09-27 11:27:00 -04:00
Josh Matthews
ee501c8947 Bug 1167730 - Make nsTemporaryFileStream serializable. r=baku 2016-09-23 10:34:42 -04:00
Ehsan Akhgari
5404c2dc93 Bug 1297687 - Part 2: Allow specifying an OriginAttribute when creating an expanded principal; r=bholley 2016-09-22 13:27:40 -04:00
David Anderson
e87d2f8355 Make ipc::Shmem hold a strong reference to underlying SharedMemory. (bug 1303426 part 1, r=billm)
--HG--
extra : rebase_source : 32e182cf5fca848144f472b54a100547a3414f60
2016-09-21 22:40:20 -07:00
Andrea Marchesini
db15f776a7 Bug 1288997 - memory blob should not be shared across processes - part 1 -PSendStream should use nsIContentChild, r=jld, f=bkelly 2016-09-21 12:27:26 +02:00
Ting-Yu Chou
823913da1e Bug 1301022 - Add an API for annotating pending IPC messages. r=ted
MozReview-Commit-ID: GiAMUnjYjvI

--HG--
extra : rebase_source : fdae4651f902f2d540b584c584de07f30a00bb8f
2016-09-20 14:10:43 +08:00
Christoph Kerschbaumer
8500d497a7 Bug 1297338 - Extend LoadInfo with a PrincipalToInherit member. r=bz 2016-09-20 08:35:45 +02:00
David Anderson
df6a78744b Allow passing an empty Endpoint over IPDL. (bug 1302009, r=billm) 2016-09-19 19:18:20 -07:00
David Anderson
f8b7f5c0ac Don't allow double-closing of IPC channels. (bug 1301481, r=billm) 2016-09-19 19:17:09 -07:00
Haik Aftandilian
9de1898bc2 Bug 1290619 - Content sandbox rules should use actual profile directory, not Profiles/*/ regex's; r=jimm
Passes the profile dir to the content process as a -profile CLI
option so that the correct profile dir can be used in the OS X content
sandbox rules.  Only enabled on OS X for now.

On Nightly, profile directories will now be read/write protected
from the content process (apart from a few profile subdirectories) even
when they don't reside in ~/Library.

xpcshell tests invoke the content process without providing a
profile directory. In that case, we don't need to add filesystem
profile dir. read/write exclusion rules to the sandbox.

This patch adds two new macros to the content sandbox rule set:
|profileDir| holds the path to the profile or the emptry string;
|hasProfileDir| is a boolean (1 or 0) that indicates whether or
not the profile directory rules should be added. If |hasProfileDir|
is 0, profile directory exclusion rules don't need to be added
and |profileDir| is not used.

MozReview-Commit-ID: rrTcQwTNdT

--HG--
extra : rebase_source : 3d5b612c8eb3a1d0da028eba277cd9d6f0c9ac00
2016-08-30 13:32:21 -07:00
Bob Owen
add3717103 Bug 1287426 Part 2: Remove uneeded base/basictypes.h include from WindowsMessageLoop.h r=jimm
MozReview-Commit-ID: AZ9cUmxHk4R
2016-09-06 08:57:20 +01:00
Nathan Froyd
2d2dec7fe4 Bug 1297804 - part 3 - avoid array bounds checking when writing nsTArray<T> to messages; r=billm
We know we're not going to perform out-of bounds accesses here.
2016-09-02 16:14:28 -04:00
Nathan Froyd
9d05d5014b Bug 1299594 - part 3 - remove gProtocolMutex; r=billm
It no longer protects any global state, and is therefore pure overhead.
2016-09-02 16:13:50 -04:00
Nathan Froyd
29e8bfeb34 Bug 1299594 - part 2 - remove opened actor tracking from IToplevelProtocol; r=billm
The only thing we needed opened actor tracking for was the ability to
clone all the actors.  But now that we no longer have support for
cloning actors, we no longer need to track the actors that we've cloned,
which makes a number of things significantly simpler.
2016-09-02 16:13:50 -04:00
Nathan Froyd
fff9bd3854 Bug 1299594 - part 1 - remove CloneManagees/CloneToplevel code from IPDL; r=billm
CloneOpenedToplevels, which is never called, is the only interesting
caller of CloneToplevel.  And CloneToplevel, in turn, is the only
interesting caller of CloneManagees.  Which means we can ditch all this
code for a decent amount of space savings, both in code and writable
static data (no more useless virtual function entries in vtables).
2016-09-02 16:13:50 -04:00
Nicholas Nethercote
b71747b2ac Bug 1299727 - Rename NS_WARN_IF_FALSE as NS_WARNING_ASSERTION. r=erahm.
The new name makes the sense of the condition much clearer. E.g. compare:

  NS_WARN_IF_FALSE(!rv.Failed());

with:

  NS_WARNING_ASSERTION(!rv.Failed());

The new name also makes it clearer that it only has effect in debug builds,
because that's standard for assertions.

--HG--
extra : rebase_source : 886e57a9e433e0cb6ed635cc075b34b7ebf81853
2016-09-01 15:01:16 +10:00
Wes Kocher
ecea29f6a3 Backed out changeset 0f53bc1a9aea (bug 1290619) a=merge 2016-08-29 17:40:59 -07:00
Haik Aftandilian
3c44a5f111 Bug 1290619 - Content sandbox rules should use actual profile directory, not Profiles/*/ regexes. r=jimm
Passes the profile dir to the content process as a -profile CLI option so
that the correct profile dir can be used in the OS X content sandbox rules.
Only enabled on OS X for now.

On Nightly, profile directories will now be read/write protected from the
content process (apart from a few profile subdirectories) even when they
don't reside in ~/Library.

MozReview-Commit-ID: rrTcQwTNdT

--HG--
extra : rebase_source : d91d8939cabb0eed36b640766756548a790a301c
2016-08-25 15:19:52 -07:00
Nathan Froyd
72439d5587 Bug 1297801 - part 3 - make mozilla::ipc::Trigger 4 bytes instead of 8; r=billm
We construct Trigger structures for every IPDL send and recv to run
the (currently defunct) IPDL state machine for each protocol.  These
structures are 64 bits to hold an enum that could be represented in 1
bit and an IPDL message enum that can easily be represented in 31 bits.
Therefore, we can make the Trigger structure smaller by storing the
members as bitfields, rather than full-width integers.  (The message
enums are formed from a 16-bit protocol enum and a 16-bit
protocol-specific message enum; since the protocol enum goes in the
upper bits, we'd need 32768 protocols to overflow the bitfield we're
using in Trigger...a number that we're not going to hit anytime soon.)

This change saves ~15K of space on x86-64 Linux.
2016-08-29 20:41:22 -04:00
Nathan Froyd
a8474a5f11 Bug 1297801 - part 1 - commonize the managee->array functions in IPDL generated code; r=billm
There's no reason to generate identical code for every kind of managed
protocol; we can have a single instance that operates on void* and cast
our way to victory.  This change saves ~60K of text on x86-64 Linux.
2016-08-29 20:41:22 -04:00