[telepathy-salut/master] create_transfer_offer: use gibber_transport_get_sockaddr and a struct sockaddr_storage so we can store an IPv6 address
Guillaume Desmottes
guillaume.desmottes at collabora.co.uk
Wed Apr 1 08:29:49 PDT 2009
---
lib/gibber/gibber-oob-file-transfer.c | 13 ++++++-------
1 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/lib/gibber/gibber-oob-file-transfer.c b/lib/gibber/gibber-oob-file-transfer.c
index 30f5301..d1660e9 100644
--- a/lib/gibber/gibber-oob-file-transfer.c
+++ b/lib/gibber/gibber-oob-file-transfer.c
@@ -420,11 +420,10 @@ create_transfer_offer (GibberOobFileTransfer *self,
GError **error)
{
GibberXmppConnection *connection;
- GibberFdTransport *transport;
/* local host name */
gchar host_name[NI_MAXHOST];
- struct sockaddr name_addr;
+ struct sockaddr_storage name_addr;
socklen_t name_addr_len = sizeof (name_addr);
GibberXmppStanza *stanza;
@@ -439,18 +438,18 @@ create_transfer_offer (GibberOobFileTransfer *self,
guint64 size;
g_object_get (GIBBER_FILE_TRANSFER (self), "connection", &connection, NULL);
- transport = GIBBER_FD_TRANSPORT (connection->transport);
- if (transport == NULL)
+ if (connection->transport == NULL)
{
g_set_error (error, GIBBER_FILE_TRANSFER_ERROR,
GIBBER_FILE_TRANSFER_ERROR_NOT_CONNECTED, "Null transport");
return NULL;
}
- getsockname (transport->fd, &name_addr, &name_addr_len);
+ gibber_transport_get_sockaddr (connection->transport, &name_addr,
+ &name_addr_len);
g_object_unref (connection);
- getnameinfo (&name_addr, name_addr_len, host_name, sizeof (host_name), NULL,
- 0, NI_NUMERICHOST);
+ getnameinfo ((struct sockaddr *) &name_addr, name_addr_len, host_name,
+ sizeof (host_name), NULL, 0, NI_NUMERICHOST);
filename_escaped = g_uri_escape_string (GIBBER_FILE_TRANSFER (self)->filename,
NULL, FALSE);
--
1.5.6.5
More information about the telepathy-commits
mailing list