aboutsummaryrefslogtreecommitdiffstats
path: root/src/include/linux/udp.h
diff options
context:
space:
mode:
authorAndreas Steffen <andreas.steffen@strongswan.org>2007-04-28 21:18:56 +0000
committerAndreas Steffen <andreas.steffen@strongswan.org>2007-04-28 21:18:56 +0000
commit5df7f3f7d4fdb95cd330cce9d238af8dcf070acf (patch)
tree6700385b2cb3b3eea0a6f0f1c22129ec6140688c /src/include/linux/udp.h
parent0fa646ecac8f24c1c9846fd93c8b122516163035 (diff)
downloadstrongswan-5df7f3f7d4fdb95cd330cce9d238af8dcf070acf.tar.bz2
strongswan-5df7f3f7d4fdb95cd330cce9d238af8dcf070acf.tar.xz
added compiler.h filter.h in.h and udp.h to src/include/linux/
Diffstat (limited to 'src/include/linux/udp.h')
-rw-r--r--src/include/linux/udp.h61
1 files changed, 61 insertions, 0 deletions
diff --git a/src/include/linux/udp.h b/src/include/linux/udp.h
new file mode 100644
index 000000000..6f82fd063
--- /dev/null
+++ b/src/include/linux/udp.h
@@ -0,0 +1,61 @@
+/*
+ * INET An implementation of the TCP/IP protocol suite for the LINUX
+ * operating system. INET is implemented using the BSD Socket
+ * interface as the means of communication with the user level.
+ *
+ * Definitions for the UDP protocol.
+ *
+ * Version: @(#)udp.h 1.0.2 04/28/93
+ *
+ * Author: Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version
+ * 2 of the License, or (at your option) any later version.
+ */
+#ifndef _LINUX_UDP_H
+#define _LINUX_UDP_H
+
+#include <stdint.h>
+
+struct udphdr {
+ uint16_t source;
+ uint16_t dest;
+ uint16_t len;
+ uint16_t check;
+};
+
+/* UDP socket options */
+#define UDP_CORK 1 /* Never send partially complete segments */
+#define UDP_ENCAP 100 /* Set the socket to accept encapsulated packets */
+
+/* UDP encapsulation types */
+#define UDP_ENCAP_ESPINUDP_NON_IKE 1 /* draft-ietf-ipsec-nat-t-ike-00/01 */
+#define UDP_ENCAP_ESPINUDP 2 /* draft-ietf-ipsec-udp-encaps-06 */
+
+#ifdef __KERNEL__
+
+#include <net/inet_sock.h>
+
+struct udp_sock {
+ /* inet_sock has to be the first member */
+ struct inet_sock inet;
+ int pending; /* Any pending frames ? */
+ unsigned int corkflag; /* Cork is required */
+ uint16_t encap_type; /* Is this an Encapsulation socket? */
+ /*
+ * Following member retains the infomation to create a UDP header
+ * when the socket is uncorked.
+ */
+ uint16_t len; /* total length of pending frames */
+};
+
+static __inline__ struct udp_sock *udp_sk(const struct sock *sk)
+{
+ return (struct udp_sock *)sk;
+}
+
+#endif
+
+#endif /* _LINUX_UDP_H */