[tor-commits] [tor/master] Test case for SOCKS5 RESOLVE_PTR with IPv6 address in brackets.

nickm at torproject.org nickm at torproject.org
Fri Jan 17 13:51:32 UTC 2020


commit 4ae77e15d0ac8c6449d2a6588a7ebfab887954c1
Author: liberat <liberat at disroot.org>
Date:   Mon Nov 11 15:41:56 2019 +0000

    Test case for SOCKS5 RESOLVE_PTR with IPv6 address in brackets.
    
    This was not supported previously, but provides symmetry with other
    SOCKS requests, which also support addresses written in brackets.
---
 src/test/test_socks.c | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/src/test/test_socks.c b/src/test/test_socks.c
index dc2444258..76c2d50ae 100644
--- a/src/test/test_socks.c
+++ b/src/test/test_socks.c
@@ -417,6 +417,25 @@ test_socks_5_supported_commands(void *ptr)
 
   tt_int_op(0,OP_EQ, buf_datalen(buf));
 
+  socks_request_clear(socks);
+
+  /* SOCKS 5 Send RESOLVE_PTR [F1] for a an IPv6 address written as a
+   * string with brackets */
+  ADD_DATA(buf, "\x05\x01\x00");
+  ADD_DATA(buf, "\x05\xF1\x00\x03\x1e");
+  ADD_DATA(buf, "[2001:db8:85a3::8a2e:370:7334]");
+  ADD_DATA(buf, "\x12\x34");
+  tt_int_op(fetch_from_buf_socks(buf, socks, get_options()->TestSocks,
+                                 get_options()->SafeSocks),
+            OP_EQ, 1);
+  tt_int_op(5,OP_EQ, socks->socks_version);
+  tt_int_op(2,OP_EQ, socks->replylen);
+  tt_int_op(5,OP_EQ, socks->reply[0]);
+  tt_int_op(0,OP_EQ, socks->reply[1]);
+  tt_str_op("[2001:db8:85a3::8a2e:370:7334]",OP_EQ, socks->address);
+
+  tt_int_op(0,OP_EQ, buf_datalen(buf));
+
  done:
   ;
 }





More information about the tor-commits mailing list