summaryrefslogtreecommitdiffstats
path: root/cpukit
diff options
context:
space:
mode:
authorJennifer Averett <Jennifer.Averett@OARcorp.com>2003-09-15 14:28:11 +0000
committerJennifer Averett <Jennifer.Averett@OARcorp.com>2003-09-15 14:28:11 +0000
commit4e0576c023ac197944b4ce166c449f7fca25d023 (patch)
tree7ea024a3188d02a45f5c4556ae037425f731ebda /cpukit
parent2003-09-15 Jay Monkman <jtm@smoothsmoothie.com> (diff)
downloadrtems-4e0576c023ac197944b4ce166c449f7fca25d023.tar.bz2
2003-09-15 Jennifer Averett <jennifer@OARcorp.com>
PR 481/networking * net/ethernet.h, net/if_arp.h, netinet/if_ether.h: Network structs should be packed
Diffstat (limited to 'cpukit')
-rw-r--r--cpukit/libnetworking/ChangeLog6
-rw-r--r--cpukit/libnetworking/net/ethernet.h4
-rw-r--r--cpukit/libnetworking/net/if_arp.h11
-rw-r--r--cpukit/libnetworking/netinet/if_ether.h3
4 files changed, 17 insertions, 7 deletions
diff --git a/cpukit/libnetworking/ChangeLog b/cpukit/libnetworking/ChangeLog
index 13ea7fc5fd..74c14fd612 100644
--- a/cpukit/libnetworking/ChangeLog
+++ b/cpukit/libnetworking/ChangeLog
@@ -1,3 +1,9 @@
+2003-09-15 Jennifer Averett <jennifer@OARcorp.com>
+
+ PR 481/networking
+ * net/ethernet.h, net/if_arp.h, netinet/if_ether.h: Network structs
+ should be packed
+
2003-09-04 Joel Sherrill <joel@OARcorp.com>
* rtems/mkrootfs.c, rtems/mkrootfs.h: URL for license changed.
diff --git a/cpukit/libnetworking/net/ethernet.h b/cpukit/libnetworking/net/ethernet.h
index c6c07189ec..1f988d7b9e 100644
--- a/cpukit/libnetworking/net/ethernet.h
+++ b/cpukit/libnetworking/net/ethernet.h
@@ -8,6 +8,8 @@
#ifndef _NET_ETHERNET_H_
#define _NET_ETHERNET_H_
+#include <netinet/in.h>
+
/*
* The number of bytes in an ethernet (MAC) address.
*/
@@ -50,7 +52,7 @@
struct ether_header {
u_char ether_dhost[ETHER_ADDR_LEN];
u_char ether_shost[ETHER_ADDR_LEN];
- u_short ether_type;
+ u_short ether_type BYTE_PACK;
};
/*
diff --git a/cpukit/libnetworking/net/if_arp.h b/cpukit/libnetworking/net/if_arp.h
index dd726bf856..a581c21558 100644
--- a/cpukit/libnetworking/net/if_arp.h
+++ b/cpukit/libnetworking/net/if_arp.h
@@ -37,6 +37,7 @@
#ifndef _NET_IF_ARP_H_
#define _NET_IF_ARP_H_
+#include <netinet/in.h>
/*
* Address Resolution Protocol.
*
@@ -48,13 +49,13 @@
* specified. Field names used correspond to RFC 826.
*/
struct arphdr {
- u_short ar_hrd; /* format of hardware address */
+ u_short ar_hrd BYTE_PACK; /* format of hardware address */
#define ARPHRD_ETHER 1 /* ethernet hardware format */
#define ARPHRD_FRELAY 15 /* frame relay hardware format */
- u_short ar_pro; /* format of protocol address */
- u_char ar_hln; /* length of hardware address */
- u_char ar_pln; /* length of protocol address */
- u_short ar_op; /* one of: */
+ u_short ar_pro BYTE_PACK; /* format of protocol address */
+ u_char ar_hln BYTE_PACK; /* length of hardware address */
+ u_char ar_pln BYTE_PACK; /* length of protocol address */
+ u_short ar_op BYTE_PACK; /* one of: */
#define ARPOP_REQUEST 1 /* request to resolve address */
#define ARPOP_REPLY 2 /* response to previous request */
#define ARPOP_REVREQUEST 3 /* request protocol address given hardware */
diff --git a/cpukit/libnetworking/netinet/if_ether.h b/cpukit/libnetworking/netinet/if_ether.h
index 22c8e97187..41c0bbe220 100644
--- a/cpukit/libnetworking/netinet/if_ether.h
+++ b/cpukit/libnetworking/netinet/if_ether.h
@@ -37,6 +37,7 @@
#ifndef _NETINET_IF_ETHER_H_
#define _NETINET_IF_ETHER_H_
+#include <netinet/in.h>
#include <net/ethernet.h>
#define ETHERTYPE_PUP 0x0200 /* PUP protocol */
@@ -82,7 +83,7 @@
* RFC 826.
*/
struct ether_arp {
- struct arphdr ea_hdr; /* fixed-size header */
+ struct arphdr ea_hdr BYTE_PACK; /* fixed-size header */
u_char arp_sha[ETHER_ADDR_LEN]; /* sender hardware address */
u_char arp_spa[4]; /* sender protocol address */
u_char arp_tha[ETHER_ADDR_LEN]; /* target hardware address */