For abstract sockets, there are two incompatible ways of naming
them; the man pages suggest using the entire struct sockaddr_un
as the name, padding the unused parts of the sun_path field with
zeroes; this corresponds to gio.types.UnixSocketAddressType.AbstractPadded.
However, many programs instead just use a portion of sun_path, and
pass an appropriate smaller length to bind() or connect(). This is
gio.types.UnixSocketAddressType.Abstract.
The type of name used by a #GUnixSocketAddress. gio.types.UnixSocketAddressType.Path indicates a traditional unix domain socket bound to a filesystem path. gio.types.UnixSocketAddressType.Anonymous indicates a socket not bound to any name (eg, a client-side socket, or a socket created with socketpair()).
For abstract sockets, there are two incompatible ways of naming them; the man pages suggest using the entire struct sockaddr_un as the name, padding the unused parts of the sun_path field with zeroes; this corresponds to gio.types.UnixSocketAddressType.AbstractPadded. However, many programs instead just use a portion of sun_path, and pass an appropriate smaller length to bind() or connect(). This is gio.types.UnixSocketAddressType.Abstract.