friendev EtherDune TCP/IP library
Public Attributes | List of all members
EthBuffer Union Reference

Union of all the different protocol headers and layers to help EtherDune interpret or build packet. More...

#include <inet.h>

Public Attributes

struct {
   EthernetHeader   eth
 
   union {
      ARPPacket   arp
 
      struct {
         IPHeader   ip
 
         union {
            ICMPHeader   icmp
 
            struct {
               UDPHeader   udp
 
               union {
                  byte   udpData [566-sizeof(EthernetHeader)-sizeof(IPHeader)-sizeof(UDPHeader)]
 
                  DNSHeader   dns
 
                  struct {
                     DHCPHeader   dhcp
 
                     DHCPOptions   dhcpOptions
 
                  } 
 
               } 
 
            } 
 
            struct {
               TCPHeader   tcp
 
               TCPOptions   tcpOptions
 
            } 
 
         } 
 
      } 
 
   } 
 
}; 
 
uint8_t raw [566]
 

Detailed Description

Union of all the different protocol headers and layers to help EtherDune interpret or build packet.

Definition at line 496 of file inet.h.

Member Data Documentation

struct { ... }
ARPPacket EthBuffer::arp

Definition at line 503 of file inet.h.

DHCPHeader EthBuffer::dhcp

Definition at line 519 of file inet.h.

DHCPOptions EthBuffer::dhcpOptions

Definition at line 520 of file inet.h.

DNSHeader EthBuffer::dns

Definition at line 516 of file inet.h.

EthernetHeader EthBuffer::eth

Definition at line 500 of file inet.h.

ICMPHeader EthBuffer::icmp

Definition at line 509 of file inet.h.

IPHeader EthBuffer::ip

Definition at line 506 of file inet.h.

uint8_t EthBuffer::raw[566]

Definition at line 537 of file inet.h.

TCPHeader EthBuffer::tcp

Definition at line 527 of file inet.h.

TCPOptions EthBuffer::tcpOptions

Definition at line 528 of file inet.h.

UDPHeader EthBuffer::udp

Definition at line 512 of file inet.h.

byte EthBuffer::udpData[566 -sizeof(EthernetHeader)-sizeof(IPHeader)-sizeof(UDPHeader)]

Definition at line 515 of file inet.h.


The documentation for this union was generated from the following file: