summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMichael Brown2008-03-23 23:05:29 +0100
committerMichael Brown2008-03-23 23:05:47 +0100
commit2af6c8d130b6ada61f98fc02c7911aad51768ea3 (patch)
tree83a2d61d5067e2d06745365abbe144baf8b3e2ab /src
parent[DHCP] Fix up fake-packet creation as used by PXENV_GET_CACHED_INFO (diff)
downloadipxe-2af6c8d130b6ada61f98fc02c7911aad51768ea3.tar.gz
ipxe-2af6c8d130b6ada61f98fc02c7911aad51768ea3.tar.xz
ipxe-2af6c8d130b6ada61f98fc02c7911aad51768ea3.zip
[IPv4] Tidy up some header files.
Diffstat (limited to 'src')
-rw-r--r--src/include/gpxe/icmp6.h1
-rw-r--r--src/include/gpxe/ip.h29
-rw-r--r--src/include/gpxe/ip6.h2
-rw-r--r--src/include/ip.h23
-rw-r--r--src/include/udp.h29
-rw-r--r--src/proto/igmp.c4
6 files changed, 25 insertions, 63 deletions
diff --git a/src/include/gpxe/icmp6.h b/src/include/gpxe/icmp6.h
index 76aaddfe..34093616 100644
--- a/src/include/gpxe/icmp6.h
+++ b/src/include/gpxe/icmp6.h
@@ -7,7 +7,6 @@
*
*/
-#include <ip.h>
#include <gpxe/ip6.h>
#include <gpxe/ndp.h>
diff --git a/src/include/gpxe/ip.h b/src/include/gpxe/ip.h
index 0a23565b..b1b0c48c 100644
--- a/src/include/gpxe/ip.h
+++ b/src/include/gpxe/ip.h
@@ -7,9 +7,15 @@
*
*/
-#include <ip.h>
+#include <stdint.h>
+#include <gpxe/in.h>
+#include <gpxe/list.h>
#include <gpxe/retry.h>
+struct io_buffer;
+struct net_device;
+struct net_protocol;
+
/* IP constants */
#define IP_VER 0x40U
@@ -27,7 +33,21 @@
#define IP_FRAG_IOB_SIZE 1500
#define IP_FRAG_TIMEOUT 50
-/* IP4 pseudo header */
+/** An IPv4 packet header */
+struct iphdr {
+ uint8_t verhdrlen;
+ uint8_t service;
+ uint16_t len;
+ uint16_t ident;
+ uint16_t frags;
+ uint8_t ttl;
+ uint8_t protocol;
+ uint16_t chksum;
+ struct in_addr src;
+ struct in_addr dest;
+} __attribute__ (( packed ));
+
+/** An IPv4 pseudo header */
struct ipv4_pseudo_header {
struct in_addr src;
struct in_addr dest;
@@ -68,11 +88,6 @@ struct frag_buffer {
struct list_head list;
};
-struct io_buffer;
-struct net_device;
-struct net_protocol;
-struct tcpip_protocol;
-
extern struct list_head ipv4_miniroutes;
extern struct net_protocol ipv4_protocol;
diff --git a/src/include/gpxe/ip6.h b/src/include/gpxe/ip6.h
index 22989ec9..dc0ae31f 100644
--- a/src/include/gpxe/ip6.h
+++ b/src/include/gpxe/ip6.h
@@ -7,7 +7,7 @@
*
*/
-#include <ip.h>
+#include <stdint.h>
#include <gpxe/in.h>
/* IP6 constants */
diff --git a/src/include/ip.h b/src/include/ip.h
deleted file mode 100644
index 9da7f56a..00000000
--- a/src/include/ip.h
+++ /dev/null
@@ -1,23 +0,0 @@
-#ifndef _IP_H
-#define _IP_H
-
-#include "stddef.h"
-#include "stdint.h"
-#include <gpxe/in.h>
-
-struct iphdr {
- uint8_t verhdrlen;
- uint8_t service;
- uint16_t len;
- uint16_t ident;
- uint16_t frags;
- uint8_t ttl;
- uint8_t protocol;
- uint16_t chksum;
- struct in_addr src;
- struct in_addr dest;
-} PACKED;
-
-extern uint16_t tcpudpchksum(struct iphdr *ip);
-
-#endif /* _IP_H */
diff --git a/src/include/udp.h b/src/include/udp.h
deleted file mode 100644
index 7814c5f4..00000000
--- a/src/include/udp.h
+++ /dev/null
@@ -1,29 +0,0 @@
-#ifndef _UDP_H
-#define _UDP_H
-
-#include "stddef.h"
-#include "stdint.h"
-#include <gpxe/in.h>
-#include "ip.h"
-
-struct udp_pseudo_hdr {
- struct in_addr src;
- struct in_addr dest;
- uint8_t unused;
- uint8_t protocol;
- uint16_t len;
-} PACKED;
-struct udphdr {
- uint16_t src;
- uint16_t dest;
- uint16_t len;
- uint16_t chksum;
- struct {} payload;
-} PACKED;
-struct udppacket {
- struct iphdr ip;
- struct udphdr udp;
- struct {} payload;
-} PACKED;
-
-#endif /* _UDP_H */
diff --git a/src/proto/igmp.c b/src/proto/igmp.c
index ef1ff714..d711421a 100644
--- a/src/proto/igmp.c
+++ b/src/proto/igmp.c
@@ -3,11 +3,11 @@
*
*/
+#if 0
+
#include <ip.h>
#include <igmp.h>
-#if 0
-
static unsigned long last_igmpv1 = 0;
static struct igmptable_t igmptable[MAX_IGMP];