Creates a socket of type type and protocol protocol, binds
it to address and adds it to the set of sockets we're accepting
sockets from.
Note that adding an IPv6 address, depending on the platform,
may or may not result in a listener that also accepts IPv4
connections. For more determinstic behaviour, see
g_socket_listener_add_inet_port().
source_object will be passed out in the various calls
to accept to identify this particular source, which is
useful if you're listening on multiple addresses and do
different things depending on what address is connected to.
If successful and effective_address is non-NULL then it will
be set to the address that the binding actually occured at. This
is helpful for determining the port number that was used for when
requesting a binding to port 0 (ie: "any port"). This address, if
requested, belongs to the caller and must be freed.
Since 2.22
Creates a socket of type type and protocol protocol, binds it to address and adds it to the set of sockets we're accepting sockets from. Note that adding an IPv6 address, depending on the platform, may or may not result in a listener that also accepts IPv4 connections. For more determinstic behaviour, see g_socket_listener_add_inet_port(). source_object will be passed out in the various calls to accept to identify this particular source, which is useful if you're listening on multiple addresses and do different things depending on what address is connected to. If successful and effective_address is non-NULL then it will be set to the address that the binding actually occured at. This is helpful for determining the port number that was used for when requesting a binding to port 0 (ie: "any port"). This address, if requested, belongs to the caller and must be freed. Since 2.22