blob: c759d2bd55ac47ee987fdc95c5b5c099c737cec6 [file] [log] [blame]
/*
* Fundamental constants relating to 802.3
*
* Copyright (C) 2017, Broadcom. All Rights Reserved.
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
* SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
* OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
* CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*
*
* <<Broadcom-WL-IPTag/Open:>>
*
* $Id: 802.3.h 518342 2014-12-01 23:21:41Z $
*/
#ifndef _802_3_h_
#define _802_3_h_
/* This marks the start of a packed structure section. */
#include <packed_section_start.h>
#define SNAP_HDR_LEN 6 /* 802.3 SNAP header length */
#define DOT3_OUI_LEN 3 /* 802.3 oui length */
BWL_PRE_PACKED_STRUCT struct dot3_mac_llc_snap_header {
uint8 ether_dhost[ETHER_ADDR_LEN]; /* dest mac */
uint8 ether_shost[ETHER_ADDR_LEN]; /* src mac */
uint16 length; /* frame length incl header */
uint8 dsap; /* always 0xAA */
uint8 ssap; /* always 0xAA */
uint8 ctl; /* always 0x03 */
uint8 oui[DOT3_OUI_LEN]; /* RFC1042: 0x00 0x00 0x00
* Bridge-Tunnel: 0x00 0x00 0xF8
*/
uint16 type; /* ethertype */
} BWL_POST_PACKED_STRUCT;
/* This marks the end of a packed structure section. */
#include <packed_section_end.h>
#endif /* #ifndef _802_3_h_ */