Commit Graph

3340 Commits

Author SHA1 Message Date
J. Ryan Stinnett
31a7472e66 Bug 1271102 - Revert back to 256 MiB message limit. r=billm
It appears to be hard to fix some sources of >128 MiB messages (e.g. IndexedDB),
so revert back to a 256MiB limit for the short term.

MozReview-Commit-ID: Jg2tJnqWOtd
2016-06-07 22:33:18 -05:00
Jan de Mooij
dad997a833 Bug 1277278 part 3 - Rename error reporter callback to warning reporter, assert it's only used for warnings. r=luke
--HG--
extra : rebase_source : ac1febc5220d649853f35c29de89a5e9ffb4fe98
2016-06-07 20:30:48 +02:00
Bob Owen
5714578c95 Bug 1278528: Don't try to initialize the sandbox TargetServices when we are not sandboxed. r=jimm
MozReview-Commit-ID: EpXy9LYXwQL
2016-06-07 14:03:51 +01:00
Gabor Krizsanits
6c0e1dc69f Bug 1146873 - Handling sandbox policy setup failures. r=bobowen 2016-06-06 15:13:33 +02:00
Jed Davis
78e49e2efb Bug 1114647 - Use firefox for child processes instead of plugin-container. r=ted
Disabled on Mac (content processes need to use plugin-container.app for
UI reasons) and on Linux unless --disable-sandboxing (build issues).

Based on work by George Wright <george@mozilla.com>.

--HG--
extra : amend_source : 43986e25743de21e3ddfb7893e3ed550fe6eef76
2016-06-03 12:49:39 -07:00
Honza Bambas
8db609c916 Bug 1275117 - Fix static strings leaks when mozlogging is on. r=jduell
--HG--
extra : rebase_source : 2a08f4eee9a900a4e34d58084eb222aedd319464
2016-05-31 08:11:00 -04:00
Carsten "Tomcat" Book
834b1d77f0 Backed out changeset f7481a586899 (bug 1258183) 2016-06-03 15:14:51 +02:00
Julian Seward
71f85a0741 Bug 1258183 - TSan: data race toolkit/components/telemetry/Telemetry.cpp in CanRecordBase (part 2, derace). r=chutten.
--HG--
extra : rebase_source : 322f4fb1826a1182d2b4f0450e013eaef5858398
2016-06-03 12:13:53 +02:00
Boris Zbarsky
f86c21cecc Bug 1276317 part 1. Change JS_SetGCZeal to take a JSRuntime, not a JSContext. r=jandem 2016-06-02 10:34:38 -04:00
Haik Aftandilian
c95d552240 Bug 1275430 - Add telemetry and logging to record content process failures to start; r=billm
MozReview-Commit-ID: LWeZbDBwfX5
2016-06-01 15:13:59 -07:00
Jonathan Hao
525c086187 Bug 1259871 - Replace getSimpleCodebasePrincipal with createCodebasePrincipal. r=sicking
MozReview-Commit-ID: Frx0CjBzuve

--HG--
extra : histedit_source : 036eb321d9ccb20e0e071ba588b0a1249eb34bdd
2016-05-24 18:01:34 +08:00
Alexandre Lissy
3ac31d4e70 Bug 1275299 - Make SocketTask a CancelableRunnable r=tzimmermann
MozReview-Commit-ID: JHVQ6BFvS1Z

--HG--
extra : rebase_source : 716d827e989d7a9e94478612c73f54f4bfe5aca5
2016-05-26 12:40:25 +02:00
Andrea Marchesini
8d58a3b347 Bug 1274363 - BroadcastChannel should dispatch events in the correct order, r=smaug 2016-05-30 10:48:40 +02:00
Chris Peterson
11ef78ae89 Bug 1275016 - Rename Endian.h to EndianUtils.h to avoid #include confusion with Android's endian.h stdlib header. r=froydnj
--HG--
rename : mfbt/Endian.h => mfbt/EndianUtils.h
2016-05-22 13:31:11 -07:00
Andrew McCreight
5848fe3b73 Bug 1276318, part 2 - Fix mode lines in ipc/glue. r=billm
MessageChannel.{h,cpp}, MessageLink.{h,cpp}, and ProtocolUtils.h are
using 4-space indent so I left those alone.
2016-05-27 14:54:31 -07:00
Andrew McCreight
9449c5e62d Bug 1276318, part 1 - Fix leading tabs in ipc/glue. r=billm
Also remove a weird mode line so the script can fix it more easily in
the next part.
2016-05-27 14:54:30 -07:00
Bill McCloskey
7dbc02ed0f Bug 1262671 - Use BufferList for Pickle (r=froydnj) 2016-05-27 09:57:41 -07:00
Bill McCloskey
2e4314c9a7 Bug 1262671 - IPC ReadData/ReadBytes elimination (r=froydnj) 2016-05-27 09:57:39 -07:00
Bill McCloskey
b7441af61a Bug 1262671 - IPC sentinel checking (r=froydnj) 2016-05-27 09:57:38 -07:00
Bill McCloskey
291c555f34 Bug 1262671 - void** -> PickleIterator (r=froydnj) 2016-05-27 09:57:38 -07:00
Bill McCloskey
5b7911b430 Bug 1262671 - Remove unused TrimWriteData (r=froydnj) 2016-05-27 09:57:37 -07:00
Bill McCloskey
f159cad060 Bug 1273312 - Add task.h to ipdl unit tests (r=khuey) 2016-05-27 09:57:36 -07:00
Bill McCloskey
1369c6edad Bug 1273307 - Remove copy constructor/assignment operator for Message/Pickle (r=froydnj) 2016-05-27 09:57:35 -07:00
Honza Bambas
ff31be3edd Bug 1270752 - Fix lifetime of buffer passed to PR_SetEnv(). r=jduell
--HG--
extra : rebase_source : 7666e7e3f864fddb5536793a91c94bccf6bb2877
2016-05-26 03:18:00 -04:00
Bob Owen
ecee115838 Bug 1250125: Make a 0 security.sandbox.content.level turn off the content process sandbox. r=TimAbraldes
This also fixes a bug where we weren't setting parts of the policy correctly for levels 3 to 9.

MozReview-Commit-ID: IXsg2nGOqoa

--HG--
extra : rebase_source : 65c76a581dcd498c7d7d5b01e4f4e140acdb244f
2016-05-25 09:06:23 +01:00
Carsten "Tomcat" Book
805f86c2b5 Merge mozilla-central to mozilla-inbound 2016-05-24 15:13:51 +02:00
Carsten "Tomcat" Book
cb4337c62c merge mozilla-inbound to mozilla-central a=merge
--HG--
rename : dom/presentation/tests/mochitest/file_presentation_non_receiver_oop.html => dom/presentation/tests/mochitest/file_presentation_non_receiver.html
rename : dom/presentation/tests/mochitest/file_presentation_non_receiver_inner_iframe_oop.html => dom/presentation/tests/mochitest/file_presentation_non_receiver_inner_iframe.html
rename : dom/presentation/tests/mochitest/file_presentation_receiver_inner_iframe_oop.html => dom/presentation/tests/mochitest/file_presentation_receiver_inner_iframe.html
2016-05-24 14:52:23 +02:00
Carsten "Tomcat" Book
0ed94efabc Backed out changeset 0659c9235136 (bug 1274363) for memory leaks
--HG--
extra : rebase_source : 7fd1df522bb0cab48ca51d29140036f6a5a6a7cc
2016-05-24 09:37:23 +02:00
Andrea Marchesini
2d4ce92868 Bug 1274363 - BroadcastChannel should dispatch events in the correct order, r=smaug 2016-05-24 06:59:15 +02:00
Eric Rahm
d2eb11dfd1 Bug 1274404 - Annotate IPC message name and size when crashing due to message size. r=mccr8 2016-05-23 11:15:47 -07:00
Alessio Placitelli
d736f36a40 Bug 1145164 - Allow non-unitary increments to count histograms. r=gfritzsche
MozReview-Commit-ID: 7HxoGWmm22h
2016-05-10 09:49:00 +02:00
Alexandre Lissy
20b739aeda Bug 1273520 - NS_NewRunnable* renaming and include task.h r=fabrice
MozReview-Commit-ID: BcAboKGMr3a

--HG--
extra : rebase_source : 6c5050527d8dffbce4a5e867bd48254a1041e657
2016-05-18 18:25:35 +02:00
Cervantes Yu
f3f969af61 Bug 1258317 - Part 2: Remove unused privilege in mozilla::ipc::TransferHandleTorProcess(). r=krizsa
Also fix a handle leak in mozilla::ipc::AnnotateProcessInformation().

MozReview-Commit-ID: DuepDytfoD2

--HG--
extra : rebase_source : 0b0dd05a3728e64962a774a2dcc35dc7646aa4dc
2016-05-06 19:01:29 +08:00
Chris Pearce
a7ee9fee8a Bug 1271169 - Move all device binding code into librlz and remove static runtime requirement. r=glandium
I want the EME device binding/nodeId code to be callable from gtests, as well
as in plugin-container. I need this because I want to add a gtest that ensures
that we don't regress the EME/GMP device binding code. I want to call the GMP
device binding code in the gtest and in the GMP process, and compare the
result.

So we need to make it possible to link the device binding code into the gtests
as well as plugin-container. So move all code that device binding calls into
librlz, to make it easier to link against all the code required.

Note: the device binding code needs to be statically linked into
plugin-container so that it's covered by the Adobe CDM's voucher tool.


MozReview-Commit-ID: AvBAe1dh49Z

--HG--
rename : ipc/app/sha256.c => dom/media/gmp/rlz/sha256.c
rename : ipc/app/sha256.h => dom/media/gmp/rlz/sha256.h
extra : rebase_source : f60f1e68649fa90cbe1f2fe09f5f69948444b1df
2016-05-20 16:11:29 +12:00
Sebastian Hengst
63e3ff7608 Backed out changeset 2a2a4005e935 (bug 1274404) for Asan bustage: use of undeclared identifier 'CrashReporter'. r=backout on a CLOSED TREE 2016-05-21 19:36:27 +02:00
Eric Rahm
ff177872a0 Bug 1274404 - Annotate IPC message name and size when crashing due to message size. r=mccr8 2016-05-20 14:30:39 -07:00
Bob Owen
9d7707097f Bug 1271601: If a child process fails to duplicate a TransportDescriptor pipe handle then send it anyway and get the target to duplicate. r=gabor
MozReview-Commit-ID: 5CKrQdDxGrg
2016-05-21 16:16:33 +01:00
Nathan Froyd
a5f42fc63a Bug 1262937 - part 8 - factor out array length deserialization errors; r=jld 2016-05-21 04:07:56 -04:00
Nathan Froyd
647562c2d2 Bug 1262937 - part 7 - factor out union type deserialization errors; r=jld 2016-05-21 04:07:56 -04:00
Nathan Froyd
dfe775eb9f Bug 1262937 - part 6 - enable custom error message for ipdl.py's checkedRead; r=jld
To enable string sharing, we're going to have helpful functions that
take a small, distinguishable, sharable string and construct a more
complete error message out of that.  To do that easily with checkedRead,
we need to be able to pass custom parameters into the error function.
2016-05-21 04:07:56 -04:00
Nathan Froyd
dcc74a62c9 Bug 1262937 - part 5 - factor out actor reading code to a common base class; r=jld
Actor reading from IPC message is codegen'd with a lot of repeated code.
We can improve that by moving the core actor reading code out of
subclasses into IProtocolmanager.  While we still need to codegen a bit
of code to cast the read actor to the proper type, the code overall is
smaller.  The lone downside is that if we do encounter an error reading
the actor id out of the message, the precision of our crash messages is
reduced somewhat: we no longer have the protocol name doing the reading,
nor do we get crash report annotations, since we can't tell whether
we're in the parent or child process.
2016-05-21 04:07:56 -04:00
Nathan Froyd
bdd874023f Bug 1262937 - part 4 - publically inherit from MessageListener in IProtocol; r=jld
IProtocolManager is templated over some listener type.  In our IPDL
code, that type is always IProtocol, which is a subclass of
MessageListener.  It's also important to note that IProtocol uses
protected inheritance from MessageListener; the generated code takes
advantage of this inheritance structure when it reads actors:

  // ChannelListener is typedef'd to MessageListener
  // Lookup here is IProtocolManager::Lookup
  ChannelListener* listener = Lookup(id);

Lookup returns a pointer to the type over which IProtocolManager is
templated.  As mentioned above, that type is always IProtocol.  But
thanks to the containing class inheriting from *both* IProtocolManager
and IProtocol, the returned pointer can be silently upcasted to
MessageListener thanks to C++ visibility rules.

It's not clear that this restricted inheritance structure is actually
benefitting anybody, or that the inheritance hierarchy of protocol
classes is the best way to do things.  This particular implementation
detail is getting in the way for the next improvement, so let's make the
protected inheritance public instead.
2016-05-21 04:07:56 -04:00
Nathan Froyd
2b69fc29e3 Bug 1262937 - part 3 - move quoting out of checkedRead; r=jld
checkedRead is set up to single-quote whatever message is passed in.
This scheme works great for all existing messages, but it makes some
callsites a little surprising ("where's the matching quote?") and
doesn't work well with message changes to be made in future patches.
Let's move the quoting out to client code.
2016-05-21 04:07:56 -04:00
Nathan Froyd
99e5f4a2e6 Bug 1262937 - part 2 - don't include the message name when complaining about handler failure; r=jld
Similar to part 1, this change enables the strings passed to
ProtocolErrorBreakpoint to be collapsed into a single string, saving
~60K of read-only data (!).  This change does affect debuggability
slightly, but given that ProtocolErrorBreakpoint only tries to throw the
passed-in string to stderr, I don't think it's a huge deal.
2016-05-21 04:07:56 -04:00
Nathan Froyd
558d2f2756 Bug 1262937 - part 1 - don't include the protocol name in Clone error messages; r=jld
We have better ways of getting the protocol name at the point of the
error (e.g. backtraces).  Removing it means the error message can be
condensed to a single string by the compiler/linking, saving ~8k of
read-only data.
2016-05-21 04:07:56 -04:00
Bob Owen
c43bf02cda Bug 1035125 Part 8: Pass sandboxing pointers through XRE_InitChildProcess instead of linking to more functions in xul. r=aklotz,glandium
MozReview-Commit-ID: 5AiktOArpfU

--HG--
extra : rebase_source : 1ba3be949e2bfeb3b67687ab05d43342852ab764
2016-05-15 16:35:22 +01:00
Bob Owen
71b3258726 Bug 1035125 Part 4: Back out changeset 8ae39d920f5c and associated subsequent changes. r=glandium
The original changeset that is being backed out had comment:
Bug 1023941 - Part 2: Static-link the CRT into plugin-container.exe.

MozReview-Commit-ID: 1iPJghgd0t2

--HG--
extra : rebase_source : cbed4e43f51af8ea0c3adbfc150ed029fe0d0f57
2016-05-15 16:23:57 +01:00
Bob Owen
2447fbb7fa Bug 1035125 Part 1: Back out changeset 1910714b56c6 and associated subsequent changes. r=bsmedberg
The original changeset that is being backed out had comment:
Bug 1023941 - Part 5: Loader hook to redirect the missing import.

The changes made in bug 1023941 were to work around the fact that with VS2013, msvcr120.dll imports kernel32!GetLogicalProcessorInformation, which is not available on Windows XP SP2.
In VS2015, the GetLogicalProcessorInformation requirement has moved into concrt140.dll (concurrency runtime), which we don't use.
So, now that our build infra is building with VS2015, we can remove the hooking and static runtime linking required to get the VS2013 fix to work.

In addition we need to do that to be able us to link the Chromium sandbox code into firefox.exe and get it to build and run with both VS2015 and VS2013.

MozReview-Commit-ID: 1tlXaYJ8dHH

--HG--
extra : rebase_source : 49b216e34fc5c77af96df1f67ee44c46d5368bfe
2016-05-15 16:23:56 +01:00
Andrew McCreight
6d6a335801 Bug 1272135, part 3 - Fix mode lines in ipc/chromium/. r=billm
This patch was automatically generated by my modeline.py script.

This does not change the modelines for any files in
ipc/chromium/src/third_party/libevent/, which are tab-indented.
2016-05-16 16:03:26 -07:00
Andrew McCreight
294da2e51d Bug 1272135, part 2 - Delete two weird modelines in ipc/chromium. r=billm
This makes the automatic fixing in the next part easier.
2016-05-16 16:03:25 -07:00