Browse Source

fix icmp_proxy: write reply to input_queue (not output_queue) to reach TUN device

congestion
Evgeny 5 months ago
parent
commit
889f6d5c3a
  1. 2
      src/icmp_proxy.c

2
src/icmp_proxy.c

@ -258,7 +258,7 @@ int icmp_proxy_deliver_reply(struct UTUN_INSTANCE* inst,
e->dgram = u_malloc(1 + pkt_len); e->dgram = u_malloc(1 + pkt_len);
e->dgram[0] = 4; memcpy(e->dgram + 1, pkt, pkt_len); e->len = 1 + pkt_len; e->dgram[0] = 4; memcpy(e->dgram + 1, pkt, pkt_len); e->len = 1 + pkt_len;
u_free(pkt); u_free(pkt);
queue_data_put(tun->output_queue, e); queue_data_put(tun->input_queue, e);
DEBUG_INFO(DEBUG_CATEGORY_SOCKET, "icmp_proxy: reply delivered to TUN id=0x%04x seq=%u", echo_id, echo_seq); DEBUG_INFO(DEBUG_CATEGORY_SOCKET, "icmp_proxy: reply delivered to TUN id=0x%04x seq=%u", echo_id, echo_seq);
return 0; return 0;
} }

Loading…
Cancel
Save