gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r19553 - gnunet/src/tun


From: gnunet
Subject: [GNUnet-SVN] r19553 - gnunet/src/tun
Date: Mon, 30 Jan 2012 23:01:44 +0100

Author: grothoff
Date: 2012-01-30 23:01:44 +0100 (Mon, 30 Jan 2012)
New Revision: 19553

Modified:
   gnunet/src/tun/tun.c
Log:
-extra size checks

Modified: gnunet/src/tun/tun.c
===================================================================
--- gnunet/src/tun/tun.c        2012-01-30 21:35:45 UTC (rev 19552)
+++ gnunet/src/tun/tun.c        2012-01-30 22:01:44 UTC (rev 19553)
@@ -49,6 +49,7 @@
                                   const struct in_addr *src,
                                   const struct in_addr *dst)
 {
+  GNUNET_assert (20 == sizeof (struct GNUNET_TUN_IPv4Header));
   GNUNET_assert (payload_length <= UINT16_MAX - sizeof (struct 
GNUNET_TUN_IPv4Header));
   memset (ip, 0, sizeof (struct GNUNET_TUN_IPv4Header));
   ip->header_length =  sizeof (struct GNUNET_TUN_IPv4Header) / 4;
@@ -80,6 +81,7 @@
                                   const struct in6_addr *src,
                                   const struct in6_addr *dst)
 {
+  GNUNET_assert (40 == sizeof (struct GNUNET_TUN_IPv6Header));
   GNUNET_assert (payload_length <= UINT16_MAX - sizeof (struct 
GNUNET_TUN_IPv6Header));
   memset (ip, 0, sizeof (struct GNUNET_TUN_IPv6Header));
   ip->version = 6;
@@ -108,6 +110,7 @@
   uint32_t sum;
   uint16_t tmp;
 
+  GNUNET_assert (20 == sizeof (struct GNUNET_TUN_TcpHeader));
   GNUNET_assert (payload_length + sizeof (struct GNUNET_TUN_IPv4Header) + 
sizeof (struct GNUNET_TUN_TcpHeader) ==
                 ntohs (ip->total_length));
   GNUNET_assert (IPPROTO_TCP == ip->protocol);
@@ -143,6 +146,7 @@
   uint32_t sum;
   uint32_t tmp;
 
+  GNUNET_assert (20 == sizeof (struct GNUNET_TUN_TcpHeader));
   GNUNET_assert (payload_length + sizeof (struct GNUNET_TUN_TcpHeader) ==
                 ntohs (ip->payload_length));
   GNUNET_assert (IPPROTO_TCP == ip->next_header);
@@ -176,6 +180,7 @@
   uint32_t sum;
   uint16_t tmp;
 
+  GNUNET_assert (8 == sizeof (struct GNUNET_TUN_UdpHeader));
   GNUNET_assert (payload_length + sizeof (struct GNUNET_TUN_IPv4Header) + 
sizeof (struct GNUNET_TUN_UdpHeader) ==
                 ntohs (ip->total_length));
   GNUNET_assert (IPPROTO_UDP == ip->protocol);
@@ -253,6 +258,7 @@
 {
   uint32_t sum;
 
+  GNUNET_assert (8 == sizeof (struct GNUNET_TUN_IcmpHeader));
   icmp->crc = 0;
   sum = GNUNET_CRYPTO_crc16_step (0,
                                  icmp,




reply via email to

[Prev in Thread] Current Thread [Next in Thread]