summaryrefslogtreecommitdiff
path: root/src/vnc-server.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/vnc-server.c')
-rw-r--r--src/vnc-server.c33
1 files changed, 11 insertions, 22 deletions
diff --git a/src/vnc-server.c b/src/vnc-server.c
index 0834df5a..b68745b5 100644
--- a/src/vnc-server.c
+++ b/src/vnc-server.c
@@ -72,20 +72,15 @@ vnc_server_get_listen_address (VNCServer *server)
static gboolean
read_cb (GSocket *socket, GIOCondition condition, VNCServer *server)
{
- g_autoptr(GSocket) client_socket = NULL;
g_autoptr(GError) error = NULL;
-
- client_socket = g_socket_accept (socket, NULL, &error);
+ g_autoptr(GSocket) client_socket = g_socket_accept (socket, NULL, &error);
if (error)
g_warning ("Failed to get connection from from VNC socket: %s", error->message);
if (client_socket)
{
- GInetSocketAddress *address;
- g_autofree gchar *hostname = NULL;
-
- address = G_INET_SOCKET_ADDRESS (g_socket_get_remote_address (client_socket, NULL));
- hostname = g_inet_address_to_string (g_inet_socket_address_get_address (address));
+ GInetSocketAddress *address = G_INET_SOCKET_ADDRESS (g_socket_get_remote_address (client_socket, NULL));
+ g_autofree gchar *hostname = g_inet_address_to_string (g_inet_socket_address_get_address (address));
g_debug ("Got VNC connection from %s:%d", hostname, g_inet_socket_address_get_port (address));
g_signal_emit (server, signals[NEW_CONNECTION], 0, client_socket);
@@ -97,18 +92,14 @@ read_cb (GSocket *socket, GIOCondition condition, VNCServer *server)
static GSocket *
open_tcp_socket (GSocketFamily family, guint port, const gchar *listen_address, GError **error)
{
- g_autoptr(GSocket) socket = NULL;
- g_autoptr(GSocketAddress) address = NULL;
-
- socket = g_socket_new (family, G_SOCKET_TYPE_STREAM, G_SOCKET_PROTOCOL_TCP, error);
+ g_autoptr(GSocket) socket = g_socket_new (family, G_SOCKET_TYPE_STREAM, G_SOCKET_PROTOCOL_TCP, error);
if (!socket)
return NULL;
- if (listen_address)
+ g_autoptr(GSocketAddress) address = NULL;
+ if (listen_address)
{
- GList *addresses;
-
- addresses = g_resolver_lookup_by_name (g_resolver_get_default (), listen_address, NULL, error);
+ GList *addresses = g_resolver_lookup_by_name (g_resolver_get_default (), listen_address, NULL, error);
if (!addresses)
return NULL;
address = g_inet_socket_address_new (addresses->data, port);
@@ -126,30 +117,28 @@ open_tcp_socket (GSocketFamily family, guint port, const gchar *listen_address,
gboolean
vnc_server_start (VNCServer *server)
{
- GSource *source;
- g_autoptr(GError) ipv4_error = NULL;
- g_autoptr(GError) ipv6_error = NULL;
-
g_return_val_if_fail (server != NULL, FALSE);
+ g_autoptr(GError) ipv4_error = NULL;
server->priv->socket = open_tcp_socket (G_SOCKET_FAMILY_IPV4, server->priv->port, server->priv->listen_address, &ipv4_error);
if (ipv4_error)
g_warning ("Failed to create IPv4 VNC socket: %s", ipv4_error->message);
if (server->priv->socket)
{
- source = g_socket_create_source (server->priv->socket, G_IO_IN, NULL);
+ GSource *source = g_socket_create_source (server->priv->socket, G_IO_IN, NULL);
g_source_set_callback (source, (GSourceFunc) read_cb, server, NULL);
g_source_attach (source, NULL);
}
+ g_autoptr(GError) ipv6_error = NULL;
server->priv->socket6 = open_tcp_socket (G_SOCKET_FAMILY_IPV6, server->priv->port, server->priv->listen_address, &ipv6_error);
if (ipv6_error)
g_warning ("Failed to create IPv6 VNC socket: %s", ipv6_error->message);
if (server->priv->socket6)
{
- source = g_socket_create_source (server->priv->socket6, G_IO_IN, NULL);
+ GSource *source = g_socket_create_source (server->priv->socket6, G_IO_IN, NULL);
g_source_set_callback (source, (GSourceFunc) read_cb, server, NULL);
g_source_attach (source, NULL);
}