/*
This file is part of GNUnet.
- (C) 2010 Christian Grothoff (and other contributing authors)
+ Copyright (C) 2010 GNUnet e.V.
GNUnet is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published
You should have received a copy of the GNU General Public License
along with GNUnet; see the file COPYING. If not, write to the
- Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA.
+ Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
*/
/**
#include <netinet/ip_icmp.h>
#include <netinet/in.h>
+/* The following constant is missing from FreeBSD 9.2 */
+#ifndef ICMP_TIME_EXCEEDED
+#define ICMP_TIME_EXCEEDED 11
+#endif
+
/**
* Must match IP given in the server.
*/
off = 0;
ip_pkt.vers_ihl = 0x45;
ip_pkt.tos = 0;
+#ifdef FREEBSD
+ ip_pkt.pkt_len = sizeof (packet); /* Workaround PR kern/21737 */
+#else
ip_pkt.pkt_len = htons (sizeof (packet));
+#endif
ip_pkt.id = htons (PACKET_ID);
ip_pkt.flags_frag_offset = 0;
ip_pkt.ttl = 128;
off = 0;
ip_pkt.vers_ihl = 0x45;
ip_pkt.tos = 0;
+#ifdef FREEBSD
+ ip_pkt.pkt_len = sizeof (packet); /* Workaround PR kern/21737 */
+#else
ip_pkt.pkt_len = htons (sizeof (packet));
+#endif
ip_pkt.id = htons (PACKET_ID);
ip_pkt.flags_frag_offset = 0;
ip_pkt.ttl = IPDEFTTL;