100b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman/* p80211meta.h
200b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*
300b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman* Macros, constants, types, and funcs for p80211 metadata
400b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*
500b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman* Copyright (C) 1999 AbsoluteValue Systems, Inc.  All Rights Reserved.
600b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman* --------------------------------------------------------------------
700b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*
800b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman* linux-wlan
900b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*
1000b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   The contents of this file are subject to the Mozilla Public
1100b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   License Version 1.1 (the "License"); you may not use this file
1200b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   except in compliance with the License. You may obtain a copy of
1300b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   the License at http://www.mozilla.org/MPL/
1400b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*
1500b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   Software distributed under the License is distributed on an "AS
1600b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
1700b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   implied. See the License for the specific language governing
1800b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   rights and limitations under the License.
1900b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*
2000b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   Alternatively, the contents of this file may be used under the
2100b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   terms of the GNU Public License version 2 (the "GPL"), in which
2200b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   case the provisions of the GPL are applicable instead of the
2300b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   above.  If you wish to allow the use of your version of this file
2400b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   only under the terms of the GPL and not to allow others to use
2500b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   your version of this file under the MPL, indicate your decision
2600b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   by deleting the provisions above and replace them with the notice
2700b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   and other provisions required by the GPL.  If you do not delete
2800b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   the provisions above, a recipient may use your version of this
2900b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   file under either the MPL or the GPL.
3000b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*
3100b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman* --------------------------------------------------------------------
3200b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*
3300b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman* Inquiries regarding the linux-wlan Open Source project can be
3400b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman* made directly to:
3500b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*
3600b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman* AbsoluteValue Systems Inc.
3700b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman* info@linux-wlan.com
3800b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman* http://www.linux-wlan.com
3900b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*
4000b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman* --------------------------------------------------------------------
4100b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*
4200b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman* Portions of the development of this software were funded by
4300b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman* Intersil Corporation as part of PRISM(R) chipset product development.
4400b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*
4500b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman* --------------------------------------------------------------------
4600b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*
4700b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman* This file declares some of the constants and types used in various
4800b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman* parts of the linux-wlan system.
4900b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*
5000b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman* Notes:
5100b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   - Constant values are always in HOST byte order.
5200b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*
5300b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman* All functions and statics declared here are implemented in p80211types.c
5400b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*   --------------------------------------------------------------------
5500b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman*/
5600b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman
5700b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman#ifndef _P80211META_H
5800b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman#define _P80211META_H
5900b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman
6000b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman/*----------------------------------------------------------------*/
6100b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman/* The following structure types are used for the metadata */
6200b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman/* representation of category list metadata, group list metadata, */
6300b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman/* and data item metadata for both Mib and Messages. */
6400b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman
65b6bb56e6aa28085550179335247c649752ff2994Edgardo Hamesstruct p80211meta {
6690de180a2972adf16559c4203d989684ab0c6d4fMoritz Muehlenhoff	char *name;		/* data item name */
6790de180a2972adf16559c4203d989684ab0c6d4fMoritz Muehlenhoff	u32 did;		/* partial did */
6890de180a2972adf16559c4203d989684ab0c6d4fMoritz Muehlenhoff	u32 flags;		/* set of various flag bits */
6990de180a2972adf16559c4203d989684ab0c6d4fMoritz Muehlenhoff	u32 min;		/* min value of a BOUNDEDint */
7090de180a2972adf16559c4203d989684ab0c6d4fMoritz Muehlenhoff	u32 max;		/* max value of a BOUNDEDint */
7190de180a2972adf16559c4203d989684ab0c6d4fMoritz Muehlenhoff
7290de180a2972adf16559c4203d989684ab0c6d4fMoritz Muehlenhoff	u32 maxlen;		/* maxlen of a OCTETSTR or DISPLAYSTR */
7390de180a2972adf16559c4203d989684ab0c6d4fMoritz Muehlenhoff	u32 minlen;		/* minlen of a OCTETSTR or DISPLAYSTR */
7490de180a2972adf16559c4203d989684ab0c6d4fMoritz Muehlenhoff	p80211enum_t *enumptr;	/* ptr to the enum type for ENUMint */
7590de180a2972adf16559c4203d989684ab0c6d4fMoritz Muehlenhoff	p80211_totext_t totextptr;	/* ptr to totext conversion function */
7690de180a2972adf16559c4203d989684ab0c6d4fMoritz Muehlenhoff	p80211_fromtext_t fromtextptr;	/* ptr to totext conversion function */
7790de180a2972adf16559c4203d989684ab0c6d4fMoritz Muehlenhoff	p80211_valid_t validfunptr;	/* ptr to totext conversion function */
78b6bb56e6aa28085550179335247c649752ff2994Edgardo Hames};
7900b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman
80b6bb56e6aa28085550179335247c649752ff2994Edgardo Hamesstruct grplistitem {
8190de180a2972adf16559c4203d989684ab0c6d4fMoritz Muehlenhoff	char *name;
82b6bb56e6aa28085550179335247c649752ff2994Edgardo Hames	struct p80211meta *itemlist;
83b6bb56e6aa28085550179335247c649752ff2994Edgardo Hames};
8400b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman
85b6bb56e6aa28085550179335247c649752ff2994Edgardo Hamesstruct catlistitem {
8690de180a2972adf16559c4203d989684ab0c6d4fMoritz Muehlenhoff	char *name;
87b6bb56e6aa28085550179335247c649752ff2994Edgardo Hames	struct grplistitem *grplist;
88b6bb56e6aa28085550179335247c649752ff2994Edgardo Hames};
8900b3ed1685089ff52169a715de11106ed37df087Greg Kroah-Hartman
90a8d21c7b784c5da4a94ac33584edb02ea5beaac9Moritz Muehlenhoff#endif /* _P80211META_H */
91