thorpej 10c252ba47 Changes to allow the IPv4 and IPv6 layers to align headers themseves,
as necessary:
* Implement a new mbuf utility routine, m_copyup(), is is like
  m_pullup(), except that it always prepends and copies, rather
  than only doing so if the desired length is larger than m->m_len.
  m_copyup() also allows an offset into the destination mbuf, which
  allows space for packet headers, in the forwarding case.
* Add *_HDR_ALIGNED_P() macros for IP, IPv6, ICMP, and IGMP.  These
  macros expand to 1 if __NO_STRICT_ALIGNMENT is defined, so that
  architectures which do not have strict alignment constraints don't
  pay for the test or visit the new align-if-needed path.
* Use the new macros to check if a header needs to be aligned, or to
  assert that it already is, as appropriate.

Note: This code is still somewhat experimental.  However, the new
code path won't be visited if individual device drivers continue
to guarantee that packets are delivered to layer 3 already properly
aligned (which are rules that are already in use).
2002-06-30 22:40:32 +00:00
..
2002-06-09 14:43:10 +00:00
2002-06-09 14:43:10 +00:00
2002-06-09 14:43:10 +00:00
2002-06-08 20:06:44 +00:00
2002-06-09 14:43:10 +00:00
2002-06-09 14:43:10 +00:00
2002-06-09 14:43:10 +00:00
2002-06-09 14:43:10 +00:00
2002-06-09 14:43:10 +00:00
2002-06-08 20:06:44 +00:00
2002-06-29 12:33:33 +00:00
2002-06-09 14:43:10 +00:00
2002-06-09 14:43:10 +00:00
2002-06-09 14:43:10 +00:00
2002-06-09 14:43:10 +00:00
2002-06-09 14:43:10 +00:00
2002-06-09 14:43:10 +00:00
2002-06-08 21:32:55 +00:00
2002-06-09 14:43:10 +00:00
2002-06-08 20:06:44 +00:00