Class

GioSocketConnection

Description [src]

class Gio.SocketConnection : Gio.IOStream {
  parent_instance: GIOStream,
  priv: GSocketConnectionPrivate*
}

GSocketConnection is a GIOStream for a connected socket. They can be created either by GSocketClient when connecting to a host, or by GSocketListener 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 GTcpConnection.

Choosing what type of object to construct is done with the socket connection factory, and it is possible for 3rd parties to register custom socket connection types for specific combination of socket family/type/protocol using g_socket_connection_factory_register_type().

To close a GSocketConnection, use g_io_stream_close(). Closing both substreams of the GIOStream separately will not close the underlying GSocket.

Available since:2.22

Hierarchy

hierarchy this GSocketConnection ancestor_0 GIOStream ancestor_0--this ancestor_1 GObject ancestor_1--ancestor_0

Ancestors

Functions

g_socket_connection_factory_lookup_type

Looks up the GType to be used when creating socket connections on sockets with the specified family, type and protocol_id.

Available since: 2.22

g_socket_connection_factory_register_type

Looks up the GType to be used when creating socket connections on sockets with the specified family, type and protocol.

Available since: 2.22

Instance methods

g_socket_connection_connect

Connect connection to the specified remote address.

Available since: 2.32

g_socket_connection_connect_async

Asynchronously connect connection to the specified remote address.

Available since: 2.32

g_socket_connection_connect_finish

Gets the result of a g_socket_connection_connect_async() call.

Available since: 2.32

g_socket_connection_get_local_address

Try to get the local address of a socket connection.

Available since: 2.22

g_socket_connection_get_remote_address

Try to get the remote address of a socket connection.

Available 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.

Available since: 2.22

g_socket_connection_is_connected

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

Available since: 2.32

Methods inherited from GIOStream (10)
g_io_stream_clear_pending

Clears the pending flag on stream.

Available 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.

Available 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.

Available since: 2.22

g_io_stream_close_finish

Closes a stream.

Available since: 2.22

g_io_stream_get_input_stream

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

Available since: 2.22

g_io_stream_get_output_stream

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

Available since: 2.22

g_io_stream_has_pending

Checks if a stream has pending actions.

Available since: 2.22

g_io_stream_is_closed

Checks if a stream is closed.

Available 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.

Available 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.

Available since: 2.28

Methods inherited from GObject (43)

Properties

Gio.SocketConnection:socket
No description available.
Properties inherited from GIOStream (3)
Gio.IOStream:closed
No description available.
Gio.IOStream:input-stream
No description available.
Gio.IOStream:output-stream
No description available.

Signals

Signals inherited from GObject (1)

Class structure

struct GioSocketConnectionClass {
  GIOStreamClass parent_class;
  void (* _g_reserved1) (
void
  );
  void (* _g_reserved2) (
void
  );
  void (* _g_reserved3) (
void
  );
  void (* _g_reserved4) (
void
  );
  void (* _g_reserved5) (
void
  );
  void (* _g_reserved6) (
void
  );
  
}
Class members
parent_class
GIOStreamClass
  No description available.
_g_reserved1
void (* _g_reserved1) (
void
  )
  No description available.
_g_reserved2
void (* _g_reserved2) (
void
  )
  No description available.
_g_reserved3
void (* _g_reserved3) (
void
  )
  No description available.
_g_reserved4
void (* _g_reserved4) (
void
  )
  No description available.
_g_reserved5
void (* _g_reserved5) (
void
  )
  No description available.
_g_reserved6
void (* _g_reserved6) (
void
  )
  No description available.