SocketConnection
GSocketConnection
is a class@Gio.IOStream for a connected socket. They can be created either by class@Gio.SocketClient when connecting to a host, or by class@Gio.SocketListener when accepting a new client.
The type of the GSocketConnection
object returned from these calls depends on the type of the underlying socket that is in use. For instance, for a TCP/IP connection it will be a class@Gio.TcpConnection.
Choosing what type of object to construct is done with the socket connection factory, and it is possible for third parties to register custom socket connection types for specific combination of socket family/type/protocol using func@Gio.SocketConnection.factory_register_type.
To close a GSocketConnection
, use method@Gio.IOStream.close. Closing both substreams of the class@Gio.IOStream separately will not close the underlying class@Gio.Socket.
Since
2.22
Inheritors
Constructors
Properties
Functions
Clears the pending flag on @stream.
Closes the stream, releasing resources related to it. This will also close the individual input and output streams, if they are not already closed.
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.
Closes a stream.
Connect @connection to the specified remote address.
Asynchronously connect @connection to the specified remote address.
Gets the result of a g_socket_connection_connect_async() call.
Gets the input stream for this object. This is used for reading.
Try to get the local address of a socket connection.
Gets the output stream for this object. This is used for writing.
Try to get the remote address of a socket connection.
Checks if a stream has pending actions.
Checks if @connection is connected. This is equivalent to calling g_socket_is_connected() on @connection's underlying #GSocket.
Sets @stream to have actions pending. If the pending flag is already set or @stream is closed, it will return false and set
Asynchronously splice the output stream of @stream1 to the input stream of