1
/* include/acx100_conv.h
3
* --------------------------------------------------------------------
5
* Copyright (C) 2003 ACX100 Open Source Project
7
* The contents of this file are subject to the Mozilla Public
8
* License Version 1.1 (the "License"); you may not use this file
9
* except in compliance with the License. You may obtain a copy of
10
* the License at http://www.mozilla.org/MPL/
12
* Software distributed under the License is distributed on an "AS
13
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
14
* implied. See the License for the specific language governing
15
* rights and limitations under the License.
17
* Alternatively, the contents of this file may be used under the
18
* terms of the GNU Public License version 2 (the "GPL"), in which
19
* case the provisions of the GPL are applicable instead of the
20
* above. If you wish to allow the use of your version of this file
21
* only under the terms of the GPL and not to allow others to use
22
* your version of this file under the MPL, indicate your decision
23
* by deleting the provisions above and replace them with the notice
24
* and other provisions required by the GPL. If you do not delete
25
* the provisions above, a recipient may use your version of this
26
* file under either the MPL or the GPL.
28
* --------------------------------------------------------------------
30
* This code is based on elements which are
31
* Copyright (C) 1999 AbsoluteValue Systems, Inc. All Rights Reserved.
33
* http://www.linux-wlan.com
35
* --------------------------------------------------------------------
37
* Inquiries regarding the ACX100 Open Source Project can be
40
* acx100-users@lists.sf.net
41
* http://acx100.sf.net
43
* --------------------------------------------------------------------
45
#ifndef __ACX_ACX100_CONV_H
46
#define __ACX_ACX100_CONV_H
48
/*============================================================================*
50
*============================================================================*/
52
#define WLAN_IEEE_OUI_LEN 3
54
#define WLAN_ETHCONV_ENCAP 1
55
#define WLAN_ETHCONV_RFC1042 2
56
#define WLAN_ETHCONV_8021h 3
58
#define WLAN_MIN_ETHFRM_LEN 60
59
#define WLAN_MAX_ETHFRM_LEN 1514
60
#define WLAN_ETHHDR_LEN 14
62
/*============================================================================*
64
*============================================================================*/
66
/* local ether header type */
67
typedef struct wlan_ethhdr {
68
u8 daddr[ETH_ALEN] ACX_PACKED;
69
u8 saddr[ETH_ALEN] ACX_PACKED;
73
/* local llc header type */
74
typedef struct wlan_llc {
80
/* local snap header type */
81
typedef struct wlan_snap {
82
u8 oui[WLAN_IEEE_OUI_LEN] ACX_PACKED;
86
/*============================================================================*
87
* Function Declarations *
88
*============================================================================*/
90
int acx_ether_to_txdesc(struct wlandevice *priv,
91
struct txdescriptor *txdesc, const struct sk_buff *skb);
92
/*@null@*/ struct sk_buff *acx_rxdesc_to_ether(struct wlandevice *priv,
93
const struct rxhostdescriptor *rxdesc);
94
void acx_rxdesc_to_txdesc(const struct rxhostdescriptor *rxhostdesc,
95
struct txdescriptor *txdesc);
97
#endif /* __ACX_ACX100_CONV_H */