diff options
author | Nathan S. Evans <evans@in.tum.de> | 2010-08-18 19:23:06 +0000 |
---|---|---|
committer | Nathan S. Evans <evans@in.tum.de> | 2010-08-18 19:23:06 +0000 |
commit | 7a29ac68d73f75cafc9533d8d1b3c760199e501d (patch) | |
tree | d5080ac8b7213c23f199d9f11abbbdffea61d90a /src/transport/gnunet-nat-client-windows.c | |
parent | 41f87224c6062537921a3bdedfd0af071d628122 (diff) | |
download | gnunet-7a29ac68d73f75cafc9533d8d1b3c760199e501d.tar.gz gnunet-7a29ac68d73f75cafc9533d8d1b3c760199e501d.zip |
yes, windows still sucks
Diffstat (limited to 'src/transport/gnunet-nat-client-windows.c')
-rw-r--r-- | src/transport/gnunet-nat-client-windows.c | 27 |
1 files changed, 12 insertions, 15 deletions
diff --git a/src/transport/gnunet-nat-client-windows.c b/src/transport/gnunet-nat-client-windows.c index e5979dd24..f4f00c6b7 100644 --- a/src/transport/gnunet-nat-client-windows.c +++ b/src/transport/gnunet-nat-client-windows.c | |||
@@ -375,19 +375,6 @@ send_icmp (const struct in_addr *my_ip, | |||
375 | 375 | ||
376 | /* ip header: send to (known) ip address */ | 376 | /* ip header: send to (known) ip address */ |
377 | off = 0; | 377 | off = 0; |
378 | |||
379 | dst.sin_family = AF_INET; | ||
380 | //dst.sin_addr = *other; | ||
381 | dst.sin_addr = dummy; | ||
382 | |||
383 | err = sendto(rawsock, | ||
384 | packet, | ||
385 | off - 20, 0, | ||
386 | (struct sockaddr*)&dst, | ||
387 | sizeof(dst)); /* or sizeof 'struct sockaddr'? */ | ||
388 | |||
389 | fprintf(stderr, "Sent %d bytes (wanted %d)\n", err, off); | ||
390 | |||
391 | memset(&ip_pkt, 0, sizeof(ip_pkt)); | 378 | memset(&ip_pkt, 0, sizeof(ip_pkt)); |
392 | ip_pkt.vers_ihl = 0x45; | 379 | ip_pkt.vers_ihl = 0x45; |
393 | ip_pkt.tos = 0; | 380 | ip_pkt.tos = 0; |
@@ -404,7 +391,17 @@ send_icmp (const struct in_addr *my_ip, | |||
404 | memcpy (packet, &ip_pkt, sizeof (struct ip_packet)); | 391 | memcpy (packet, &ip_pkt, sizeof (struct ip_packet)); |
405 | off += sizeof (ip_pkt); | 392 | off += sizeof (ip_pkt); |
406 | memset (&dst, 0, sizeof (dst)); | 393 | memset (&dst, 0, sizeof (dst)); |
394 | dst.sin_family = AF_INET; | ||
395 | //dst.sin_addr = *other; | ||
396 | dst.sin_addr = dummy; | ||
407 | 397 | ||
398 | err = sendto(rawsock, | ||
399 | packet, | ||
400 | off - 20, 0, | ||
401 | (struct sockaddr*)&dst, | ||
402 | sizeof(dst)); /* or sizeof 'struct sockaddr'? */ | ||
403 | |||
404 | fprintf(stderr, "Sent %d bytes (wanted %d)\n", err, off); | ||
408 | 405 | ||
409 | /* icmp reply: time exceeded */ | 406 | /* icmp reply: time exceeded */ |
410 | icmp_pkt = (struct icmp_packet*) &packet[off]; | 407 | icmp_pkt = (struct icmp_packet*) &packet[off]; |
@@ -440,8 +437,8 @@ send_icmp (const struct in_addr *my_ip, | |||
440 | sizeof (struct icmp_packet) + sizeof(struct ip_packet) + sizeof(struct icmp_echo_packet))); | 437 | sizeof (struct icmp_packet) + sizeof(struct ip_packet) + sizeof(struct icmp_echo_packet))); |
441 | 438 | ||
442 | err = sendto(rawsock, | 439 | err = sendto(rawsock, |
443 | packet, | 440 | packet[20], |
444 | off, 0, | 441 | off - 20, 0, |
445 | (struct sockaddr*)&dst, | 442 | (struct sockaddr*)&dst, |
446 | sizeof(dst)); /* or sizeof 'struct sockaddr'? */ | 443 | sizeof(dst)); /* or sizeof 'struct sockaddr'? */ |
447 | 444 | ||