diff options
author | Søren Sandmann <sandmann@redhat.com> | 2007-07-31 21:18:28 -0400 |
---|---|---|
committer | Søren Sandmann <sandmann@redhat.com> | 2007-07-31 21:18:28 -0400 |
commit | bf34e6c6d5dc932edbde10a86031ba64da325ab5 (patch) | |
tree | 6ba49ccc79f99bed329b2699efd4d9090523e35b /src | |
parent | c6bdf7500b3ac117326d7d3fa6b2289fd2d39964 (diff) |
Move address/port to lacconnection
Diffstat (limited to 'src')
-rw-r--r-- | src/lacconnection.c | 18 | ||||
-rw-r--r-- | src/lacinternals.h | 8 | ||||
-rw-r--r-- | src/lactcpconnection.c | 28 | ||||
-rw-r--r-- | src/lactlsconnection.c | 12 |
4 files changed, 17 insertions, 49 deletions
diff --git a/src/lacconnection.c b/src/lacconnection.c index b88b381..f461e27 100644 --- a/src/lacconnection.c +++ b/src/lacconnection.c @@ -36,6 +36,8 @@ struct _LacConnection LacConnectionFunc func; gpointer data; int ref_count; + LacAddress *address; + int port; }; static void @@ -69,6 +71,8 @@ lac_connection_new_tcp (const LacAddress *address, connection->ref_count = 1; connection->func = func; connection->data = data; + connection->address = lac_address_copy (address); + connection->port = port; return connection; } @@ -86,6 +90,8 @@ lac_connection_new_tls (const LacAddress *address, connection->ref_count = 1; connection->func = func; connection->data = data; + connection->address = lac_address_copy (address); + connection->port = port; return connection; } @@ -98,6 +104,8 @@ lac_connection_destroy (LacConnection *connection) else lac_tls_connection_unref (connection->u.tls); + lac_address_free (connection->address); + g_free (connection); } @@ -151,19 +159,13 @@ lac_connection_write_cstr (LacConnection *connection, G_CONST_RETURN LacAddress * lac_connection_get_address (LacConnection *connection) { - if (connection->is_tcp) - return lac_tcp_connection_get_address (connection->u.tcp); - else - return lac_tls_connection_get_address (connection->u.tls); + return connection->address; } gint lac_connection_get_port (LacConnection *connection) { - if (connection->is_tcp) - return lac_tcp_connection_get_port (connection->u.tcp); - else - return lac_tls_connection_get_port (connection->u.tls); + return connection->port; } void diff --git a/src/lacinternals.h b/src/lacinternals.h index 1b4446e..c4fa2ec 100644 --- a/src/lacinternals.h +++ b/src/lacinternals.h @@ -70,10 +70,8 @@ void lac_tcp_connection_write (LacTcpConnection void lac_tcp_connection_write_cstr (LacTcpConnection *connection, const gchar *data); void lac_tcp_connection_shutdown_write (LacTcpConnection *connection); -LacTcpConnection * lac_tcp_connection_ref (LacTcpConnection *connection); +LacTcpConnection * lac_tcp_connection_ref (LacTcpConnection *connection); void lac_tcp_connection_unref (LacTcpConnection *connection); -G_CONST_RETURN LacAddress *lac_tcp_connection_get_address (LacTcpConnection *connection); -gint lac_tcp_connection_get_port (LacTcpConnection *connection); void lac_tcp_connection_close (LacTcpConnection *connection); gboolean lac_tcp_connection_is_connected (LacTcpConnection *connection); void lac_tcp_connection_flush (LacTcpConnection *connection); @@ -97,10 +95,8 @@ void lac_tls_connection_write (LacTlsConnection void lac_tls_connection_write_cstr (LacTlsConnection *connection, const gchar *data); void lac_tls_connection_shutdown_write (LacTlsConnection *connection); -LacTlsConnection * lac_tls_connection_ref (LacTlsConnection *connection); +LacTlsConnection * lac_tls_connection_ref (LacTlsConnection *connection); void lac_tls_connection_unref (LacTlsConnection *connection); -G_CONST_RETURN LacAddress *lac_tls_connection_get_address (LacTlsConnection *connection); -gint lac_tls_connection_get_port (LacTlsConnection *connection); void lac_tls_connection_close (LacTlsConnection *connection); gboolean lac_tls_connection_is_connected (LacTlsConnection *connection); void lac_tls_connection_flush (LacTlsConnection *connection); diff --git a/src/lactcpconnection.c b/src/lactcpconnection.c index cfe1312..258ff78 100644 --- a/src/lactcpconnection.c +++ b/src/lactcpconnection.c @@ -35,8 +35,6 @@ typedef enum { struct _LacTcpConnection { int fd; - LacAddress * address; - gint port; LacTcpConnectionFunc callback; gpointer data; @@ -300,13 +298,13 @@ lac_tcp_connection_writable (gpointer data) } static void -lac_tcp_connection_connect (LacTcpConnection *connection) +lac_tcp_connection_connect (LacTcpConnection *connection, + const LacAddress *address, + int port) { GError *err = NULL; - lac_connect (connection->fd, - connection->address, connection->port, - &err); + lac_connect (connection->fd, address, port, &err); if (err) { @@ -365,8 +363,6 @@ lac_tcp_connection_new (const LacAddress *address, connection->ref_count = 1; - connection->address = lac_address_copy (address); - connection->port = port; connection->callback = callback; connection->data = data; @@ -400,7 +396,7 @@ lac_tcp_connection_new (const LacAddress *address, } lac_tcp_connection_add_watch (connection); - lac_tcp_connection_connect (connection); + lac_tcp_connection_connect (connection, address, port); emit_events_idle (connection); @@ -479,8 +475,6 @@ lac_tcp_connection_unref (LacTcpConnection *connection) { if (--connection->ref_count == 0) { - lac_address_free (connection->address); - lac_tcp_connection_discard_pending_events (connection); g_queue_free (connection->pending_events); @@ -496,18 +490,6 @@ lac_tcp_connection_unref (LacTcpConnection *connection) } } -G_CONST_RETURN LacAddress * -lac_tcp_connection_get_address (LacTcpConnection *connection) -{ - return connection->address; -} - -gint -lac_tcp_connection_get_port (LacTcpConnection *connection) -{ - return connection->port; -} - gboolean lac_tcp_connection_is_connected (LacTcpConnection *connection) { diff --git a/src/lactlsconnection.c b/src/lactlsconnection.c index e686e4e..f78fc4e 100644 --- a/src/lactlsconnection.c +++ b/src/lactlsconnection.c @@ -387,18 +387,6 @@ lac_tls_connection_write_cstr (LacTlsConnection *connection, lac_tls_connection_write (connection, data, len); } -G_CONST_RETURN LacAddress * -lac_tls_connection_get_address (LacTlsConnection *connection) -{ - return lac_connection_get_address (connection->tcp_connection); -} - -gint -lac_tls_connection_get_port (LacTlsConnection *connection) -{ - return lac_connection_get_port (connection->tcp_connection); -} - void lac_tls_connection_close (LacTlsConnection *connection) { |