server: add wl_client_get_user_data/wl_client_set_user_data

The client credientials (PID, UID, GUID and pidfd) are by themselves
often useless but can be used to query for more interesting properties
of the client such as the flatpak app id. Querying those properties must
happen as soon as a client connects since the original process can go
away. The result of those queries must be stored for the duration of the
clients lifetime and be accessible from a struct wl_client. This commit
adds user data to struct wl_client to store that or other information.

Signed-off-by: Sebastian Wick <>
13 jobs for !186 with pidfd in 4 minutes and 11 seconds (queued for 10 seconds)
latest merge request