memfd: fix possible deadlock
use sizeof instead of magic values
names: ref and unref stored connection
kdbus.h: update comments
names: simplify names list query, return all known flags

These flags can be freely combined, all matching results will be
returned in the list:
  KDBUS_NAME_LIST_UNIQUE
  KDBUS_NAME_LIST_NAMES
  KDBUS_NAME_LIST_STARTERS
  KDBUS_NAME_LIST_QUEUED

Unique ids return the flags from the connection:
  KDBUS_HELLO_STARTER
  KDBUS_HELLO_ACCEPT_FD

Well-known names also return the flags for the name registry:
  KDBUS_NAME_REPLACE_EXISTING
  KDBUS_NAME_QUEUE
  KDBUS_NAME_ALLOW_REPLACEMENT
  KDBUS_NAME_IN_QUEUE

$ test/test-kdbus-starter
-- creating bus '2702-testbus'
-- opening STARTER bus connection /dev/kdbus/2702-testbus/bus
-- Our peer ID for starter foo.test.starter: 1
-- opening bus connection /dev/kdbus/2702-testbus/bus
-- Our peer ID for /dev/kdbus/2702-testbus/bus: 2 -- bus uuid: 'c18abbb4cb994ca7a8f9dec0cdaacaf7'
REGISTRY:
       2 flags=0x00000000 conn=0x00000002 ''
       1 flags=0x00000000 conn=0x00000001 ''
       1 flags=0x00000004 conn=0x00000001 'foo.test.starter'

Starter was called back!
REGISTRY:
       2 flags=0x00000001 conn=0x00000002 'foo.test.starter'
use KDBUS_PART_SIZE everywhere
kdbus.h: add kernel doc
kdbus_cmd_conn_info() read ATTACH flags
metadata: sort functions in order they are used
allow kdbus_conn_unref(NULL)
do not compose NAMES in connection, use the logic in metadata
update outdated names in comments
kdbus.h: uppercase ID
TODO: update
switch from one KDBUS_ITEM_NAMES to multiple KDBUS_ITEM_NAME including the flags
names: take-over the names from the starter
test: print ID in decimal
memfd: kernel doc