[telepathy-gabble/master] socks5: CONNECT reply has to contain the atyp domain

Guillaume Desmottes guillaume.desmottes at collabora.co.uk
Fri Apr 3 09:25:59 PDT 2009


---
 src/bytestream-socks5.c |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/src/bytestream-socks5.c b/src/bytestream-socks5.c
index f09fc8a..77c73b2 100644
--- a/src/bytestream-socks5.c
+++ b/src/bytestream-socks5.c
@@ -818,11 +818,22 @@ socks5_handle_received_data (GabbleBytestreamSocks5 *self,
 
         /* FIXME: check the domain type */
 
+        domain = compute_domain(priv->stream_id, priv->self_full_jid,
+            priv->peer_jid);
+
         msg[0] = SOCKS5_VERSION;
         msg[1] = SOCKS5_STATUS_OK;
+        msg[2] = SOCKS5_RESERVED;
+        msg[3] = SOCKS5_ATYP_DOMAIN;
+        msg[4] = SHA1_LENGTH;
+        /* Domain name: SHA-1(sid + initiator + target) */
+        memcpy (&msg[5], domain, 40);
+        /* Port: 0 */
+        msg[45] = 0x00;
+        msg[46] = 0x00;
 
         DEBUG ("Received CONNECT cmd. Sending CONNECT reply");
-        write_to_transport (self, msg, 2, NULL);
+        write_to_transport (self, msg, 47, NULL);
 
         priv->socks5_state = SOCKS5_STATE_CONNECTED;
 
-- 
1.5.6.5




More information about the telepathy-commits mailing list