Commit 632579f5 authored by Nick Mathewson's avatar Nick Mathewson 🦀
Browse files

Revise earlier check for correct IPv4 addr length to check for ==4.

We need this to match the check in connection_ap_handshake_socks_resolved().

Found by optimist.
parent 3a5259ef
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -971,7 +971,7 @@ connection_edge_process_relay_cell_not_open(
                                  2+answer_len));
    else
      ttl = -1;
    if (answer_type == RESOLVED_TYPE_IPV4 && answer_len >= 4) {
    if (answer_type == RESOLVED_TYPE_IPV4 && answer_len == 4) {
      uint32_t addr = ntohl(get_uint32(cell->payload+RELAY_HEADER_SIZE+2));
      if (get_options()->ClientDNSRejectInternalAddresses &&
          is_internal_IP(addr, 0)) {
@@ -993,7 +993,7 @@ connection_edge_process_relay_cell_not_open(
                   cell->payload+RELAY_HEADER_SIZE+2, /*answer*/
                   ttl,
                   -1);
    if (answer_type == RESOLVED_TYPE_IPV4 && answer_len >= 4) {
    if (answer_type == RESOLVED_TYPE_IPV4 && answer_len == 4) {
      uint32_t addr = ntohl(get_uint32(cell->payload+RELAY_HEADER_SIZE+2));
      remap_event_helper(conn, addr);
    }