Angus Lees 030f36f556 Switch to msgpack for serialization
This change switches from JSON to msgpack for encoding messages on the
privileged channel.  The binary encoding is faster(*) and msgpack's
primitives are a better fit for Python's.  In particular, bytes and
non-string dict keys are supported without an additional layer of
encoding.

Note that lists are now converted to tuples across
serialization/deserialization, and this is the opposite of the previous
behaviour.  There is no point modifying arguments to privsep
entrypoints, and this makes the values hashable (if desired) without an
additional conversion step.

(*) Since you asked: For a trivial arg/return value, this version is
about 1.5x faster than the previous json version - and many times faster
for non-trivial cases.  Please focus on the "better fit for python's
datatypes" aspect however.

Change-Id: I4299c2fc059807610f83e12a2d470e020930c64c
2016-03-22 15:16:23 +11:00
..
2016-01-29 11:50:10 +01:00
2016-03-22 15:16:23 +11:00
2015-10-23 18:51:29 +11:00
2016-01-29 11:50:10 +01:00
2015-12-04 07:35:53 -05:00
2016-03-22 15:16:23 +11:00