notify: set item->size

Fully initialize the API. We should also have strict checking for this
on userspace.

Signed-off-by: Daniel Mack <daniel@zonque.org>
bus.c: remove unneeded include

Signed-off-by: Daniel Mack <daniel@zonque.org>
domain: detroy IDRs

Signed-off-by: Daniel Mack <daniel@zonque.org>
metadata: update meta->attached once the attach succeeded

If we fail to append metadata items, but ignore the errors on purpose
for broadcast messages, we might end up with the same metadata multiple
times if we only update meta->attached wt the end of
kdbus_meta_append().

Hence, set each bit individually once the attachment succeeded.

Signed-off-by: Daniel Mack <daniel@zonque.org>
limits: lower KDBUS_MSG_MAX_FDS to 253

Lower the number of maximum file descriptors accepted as a message item
to 253. See commit bba14de98 (Linux) for the rationale behind that
number.

Signed-off-by: Daniel Mack <daniel@zonque.org>
Revert KDBUS_HELLO_ACCEPT_MEMFD support (ABI break)

Memfds are a basic exchange mechanism not supposed to be
optional per connection. A per-bus flag, instead of a
per-connection one, would probably be acceptable,
but its usefulness is questionable at this point.

Broadcasts can contain memfds and we would silently messages
for such connections, which is not the expected behavior.

Receivers just need to make sure to be able to receive messages
with memfd payload, otherwise they are just not fully supporting
the common kdbus interface.

Contracts of not supporting memfds on private buses are fine,
but the general purpose communication will always require
memfds to be supported by all clients.