udp_pkt.src_port = htons(NAT_TRAV_PORT);
udp_pkt.dst_port = htons(NAT_TRAV_PORT);
udp_pkt.length = htons (port);
- udp_pkt.crc = htons (port);
+ udp_pkt.crc = 0;
memcpy(&packet[off],
&udp_pkt,
sizeof(struct udp_header));
return;
}
/* skip 2nd IP header */
+ memcpy (&ip_pkt,
+ &buf[off],
+ sizeof (struct ip_header));
off += sizeof (struct ip_header);
switch (ip_pkt.proto)
memcpy (&udp_pkt,
&buf[off],
sizeof (struct udp_header));
- port = ntohs (udp_pkt.crc);
port = ntohs (udp_pkt.length);
break;
default: