Gio.UnixConnection
Description: Reference for Gio.UnixConnection

### Class

# GioUnixConnection

since: 2.22

#### Description [src]

    class Gio.UnixConnection : Gio.SocketConnection
    {
      priv: GUnixConnectionPrivate*
    }

This is the subclass of `GSocketConnection` that is created for UNIX domain sockets.

It contains functions to do some of the UNIX socket specific functionality like passing file descriptors.

Since GLib 2.72, `GUnixConnection` is available on all platforms. It requires underlying system support (such as Windows 10 with `AF_UNIX`) at run time.

Before GLib 2.72, `<gio/gunixconnection.h>` belonged to the UNIX-specific GIO interfaces, thus you had to use the `gio-unix-2.0.pc` pkg-config file when using it. This is no longer necessary since GLib 2.72.

Available since: 2.22

#### Hierarchy

#### Ancestors

- GSocketConnection
- GIOStream
- GObject

#### Instance methods

###### g_unix_connection_receive_credentials

Receives credentials from the sending end of the connection. The sending end has to call `g_unix_connection_send_credentials()` (or similar) for this to work.

since: 2.26

###### g_unix_connection_receive_credentials_async

Asynchronously receive credentials.

since: 2.32

###### g_unix_connection_receive_credentials_finish

Finishes an asynchronous receive credentials operation started with g_unix_connection_receive_credentials_async().

since: 2.32

###### g_unix_connection_receive_fd

Receives a file descriptor from the sending end of the connection. The sending end has to call `g_unix_connection_send_fd()` for this to work.

since: 2.22

###### g_unix_connection_send_credentials

Passes the credentials of the current user the receiving side of the connection. The receiving end has to call `g_unix_connection_receive_credentials()` (or similar) to accept the credentials.

since: 2.26

###### g_unix_connection_send_credentials_async

Asynchronously send credentials.

since: 2.32

###### g_unix_connection_send_credentials_finish

Finishes an asynchronous send credentials operation started with g_unix_connection_send_credentials_async().

since: 2.32

###### g_unix_connection_send_fd

Passes a file descriptor to the receiving side of the connection. The receiving end has to call `g_unix_connection_receive_fd()` to accept the file descriptor.

since: 2.22

##### Methods inherited from GSocketConnection (7)

###### g_socket_connection_connect

Connect `connection` to the specified remote address.

since: 2.32

###### g_socket_connection_connect_async

Asynchronously connect `connection` to the specified remote address.

since: 2.32

###### g_socket_connection_connect_finish

Gets the result of a `g_socket_connection_connect_async()` call.

since: 2.32

###### g_socket_connection_get_local_address

Try to get the local address of a socket connection.

since: 2.22

###### g_socket_connection_get_remote_address

Try to get the remote address of a socket connection.

since: 2.22

###### g_socket_connection_get_socket

Gets the underlying `GSocket` object of the connection. This can be useful if you want to do something unusual on it not supported by the `GSocketConnection` APIs.

since: 2.22

###### g_socket_connection_is_connected

Checks if `connection` is connected. This is equivalent to calling `g_socket_is_connected()` on `connection`‘s underlying `GSocket`.

since: 2.32

##### Methods inherited from GIOStream (10)

###### g_io_stream_clear_pending

Clears the pending flag on `stream`.

since: 2.22

###### g_io_stream_close

Closes the stream, releasing resources related to it. This will also close the individual input and output streams, if they are not already closed.

since: 2.22

###### g_io_stream_close_async

Requests an asynchronous close of the stream, releasing resources related to it. When the operation is finished `callback` will be called. You can then call `g_io_stream_close_finish()` to get the result of the operation.

since: 2.22

###### g_io_stream_close_finish

Closes a stream.

since: 2.22

###### g_io_stream_get_input_stream

Gets the input stream for this object. This is used for reading.

since: 2.22

###### g_io_stream_get_output_stream

Gets the output stream for this object. This is used for writing.

since: 2.22

###### g_io_stream_has_pending

Checks if a stream has pending actions.

since: 2.22

###### g_io_stream_is_closed

Checks if a stream is closed.

since: 2.22

###### g_io_stream_set_pending

Sets `stream` to have actions pending. If the pending flag is already set or `stream` is closed, it will return `FALSE` and set `error`.

since: 2.22

###### g_io_stream_splice_async

Asynchronously splice the output stream of `stream1` to the input stream of `stream2`, and splice the output stream of `stream2` to the input stream of `stream1`.

since: 2.28

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Properties

##### Properties inherited from GSocketConnection (1)

###### Gio.SocketConnection:socket

The underlying `GSocket`.

since: 2.22

##### Properties inherited from GIOStream (3)

###### Gio.IOStream:closed

Whether the stream is closed.

since: 2.22

###### Gio.IOStream:input-stream

The `GInputStream` to read from.

since: 2.22

###### Gio.IOStream:output-stream

The `GOutputStream` to write to.

since: 2.22

#### Signals

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

#### Class structure

    struct GioUnixConnectionClass {
      GSocketConnectionClass parent_class;

    }

No description available.

###### Class members

`parent_class: GSocketConnectionClass`

  No description available.