Commit Graph

22 Commits (6c5a662da789a9a87c398b194257565e048b7503)

Author SHA1 Message Date
Alexander Larsson 6a63a905bf dbus-proxy: Fix leak in setup phase
Sometimes we get an EAGAIN error in the due to the socket being
nonblocking. In the setup phase we just allocated the new buffer
and this causes a leak. Free it in this case.
2017-03-31 13:06:44 +02:00
Alexander Larsson a87c15da87 dbus-proxy: Fix leak of get_arg0_string return value
In one place this was not freed. This converts both current
callers to g_autofree to make it consistent.
2017-03-31 13:06:44 +02:00
Alexander Larsson 0c05d48aca dbus: proxy fix leak in get_arg0_string
g_variant_get_child_value returns a new reference, so we have to free
it.
2017-03-31 13:06:44 +02:00
Alexander Larsson 18a45712cc dbus-proxy: Fix use-after free in header parsing
The header returned from parse_header contains references
to the buffer it was used to parse from, and in some
cases we dereference these headers after freeing the buffer.
For instance this happens when we're filtering a message, and
then we later look at the destination to figure out what
kind of error to send back.

I couldn't find any cases where this would let the client
do anything other than return a different error value, but
this is still possibly a security issue.
2017-03-31 13:06:44 +02:00
Alexander Larsson 557f9231a2 dbus-proxy: Make Buffer refcounted
This will be needed to fix some user-after-free issues.
2017-03-31 13:06:44 +02:00
Alexander Larsson b337c95d78 dbus proxy: Tight down what is allowed to send to the bus
Make sure we can only send message calls (not e.g. unicast signals)
to the bus. Also, whitelist the list of allowed interfaces to
org.freedesktop.DBus and org.freedesktop.DBus.Introspectable

See https://github.com/flatpak/flatpak/issues/343 for the origin
discussion of this.
2016-10-17 12:19:46 +02:00
Alexander Larsson f17390b70c Remove duplicate code 2016-10-06 12:31:54 +02:00
Christian Hergert 227da7359c dbus-proxy: alignment bit-twiddling to remove multiple and divide
Common bit-twiddling to remove the multiply and divide for realignment.
2016-09-08 14:50:15 -07:00
Matthias Clasen 75218c4a65 Fix license headers
We were referring to the nonexisting "version 2" of the
Lesser GPL. It should be "version 2.1".
2016-07-29 14:27:49 -04:00
Josh Soref f2c22796a8 spelling: specified 2016-05-27 06:46:56 +00:00
Josh Soref c874ea7130 spelling: incoming 2016-05-27 06:44:02 +00:00
Josh Soref 147bf4fdf0 spelling: description 2016-05-27 06:39:37 +00:00
Alexander Larsson 8abbc0186e Rename everything but the on-disk location to flatpak 2016-05-09 11:11:55 +02:00
Alexander Larsson c24528d369 Rename source files to flatpak 2016-05-09 09:00:20 +02:00
Alexander Larsson 6a613d1fab Rename all non-autogenerated symbols to flatpak 2016-05-09 09:00:20 +02:00
Alexander Larsson 1ffdf27d92 uncruftify: Initial run, all non-problematic changes 2016-05-06 16:03:27 +02:00
Alexander Larsson 0730eb05d7 dbus-filter: Log arg0 validation failures 2016-04-19 09:44:49 +02:00
Alexander Larsson e45d0a7d46 Fix regression is dbus proxy 2015-09-25 10:53:59 +02:00
Alexander Larsson e5e5389bb3 dbus-proxy: Avoid clang warning 2015-08-27 16:15:35 +02:00
Alexander Larsson 53df418814 dbus-proxy: Fix incorrect check of name policy
It was checking against the wrong enum type
2015-08-27 16:14:48 +02:00
Alexander Larsson f5aba30ade dbus-proxy: Fix flags arg passed to g_socket_receive_message
This is an out param, not an in param
2015-08-27 16:13:49 +02:00
Alexander Larsson 302f88e69d Restructure directories and build
This moves a all source code into separate subdirs per binary. The
helper and the generic stuff goes into lib/ which is then used by all
the others. For now this is a completely internal library, but at
some point we will probably clean it up and expose some subset.

Also, we move the dbus proxy to libexecdir.
2015-07-10 12:15:45 +02:00