138eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt/* 238eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * Copyright (C) 1999-2013, Broadcom Corporation 338eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * 438eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * Permission to use, copy, modify, and/or distribute this software for any 538eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * purpose with or without fee is hereby granted, provided that the above 638eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * copyright notice and this permission notice appear in all copies. 738eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * 838eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 938eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 1038eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY 1138eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 1238eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION 1338eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 1438eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 1538eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * 1638eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * Fundamental constants relating to 802.3 1738eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * 1838eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * $Id: 802.3.h 382882 2013-02-04 23:24:31Z $ 1938eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt */ 2038eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt 2138eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt#ifndef _802_3_h_ 2238eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt#define _802_3_h_ 2338eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt 2438eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt/* This marks the start of a packed structure section. */ 2538eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt#include <packed_section_start.h> 2638eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt 2738eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt#define SNAP_HDR_LEN 6 /* 802.3 SNAP header length */ 2838eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt#define DOT3_OUI_LEN 3 /* 802.3 oui length */ 2938eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt 3038eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry ShmidtBWL_PRE_PACKED_STRUCT struct dot3_mac_llc_snap_header { 3138eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt uint8 ether_dhost[ETHER_ADDR_LEN]; /* dest mac */ 3238eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt uint8 ether_shost[ETHER_ADDR_LEN]; /* src mac */ 3338eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt uint16 length; /* frame length incl header */ 3438eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt uint8 dsap; /* always 0xAA */ 3538eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt uint8 ssap; /* always 0xAA */ 3638eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt uint8 ctl; /* always 0x03 */ 3738eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt uint8 oui[DOT3_OUI_LEN]; /* RFC1042: 0x00 0x00 0x00 3838eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt * Bridge-Tunnel: 0x00 0x00 0xF8 3938eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt */ 4038eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt uint16 type; /* ethertype */ 4138eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt} BWL_POST_PACKED_STRUCT; 4238eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt 4338eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt/* This marks the end of a packed structure section. */ 4438eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt#include <packed_section_end.h> 4538eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt 4638eaaf5a34502fe465cf8b6ac7a2dfcafa17ba41Dmitry Shmidt#endif /* #ifndef _802_3_h_ */ 47