1 /******************************************************************************* 2 * Agere Systems Inc. 3 * Wireless device driver for Linux (wlags49). 4 * 5 * Copyright (c) 1998-2003 Agere Systems Inc. 6 * All rights reserved. 7 * http://www.agere.com 8 * 9 * Initially developed by TriplePoint, Inc. 10 * http://www.triplepoint.com 11 * 12 *------------------------------------------------------------------------------ 13 * 14 * Header describing information required for utility functions used 15 * throughout the driver. 16 * 17 *------------------------------------------------------------------------------ 18 * 19 * SOFTWARE LICENSE 20 * 21 * This software is provided subject to the following terms and conditions, 22 * which you should read carefully before using the software. Using this 23 * software indicates your acceptance of these terms and conditions. If you do 24 * not agree with these terms and conditions, do not use the software. 25 * 26 * Copyright © 2003 Agere Systems Inc. 27 * All rights reserved. 28 * 29 * Redistribution and use in source or binary forms, with or without 30 * modifications, are permitted provided that the following conditions are met: 31 * 32 * . Redistributions of source code must retain the above copyright notice, this 33 * list of conditions and the following Disclaimer as comments in the code as 34 * well as in the documentation and/or other materials provided with the 35 * distribution. 36 * 37 * . Redistributions in binary form must reproduce the above copyright notice, 38 * this list of conditions and the following Disclaimer in the documentation 39 * and/or other materials provided with the distribution. 40 * 41 * . Neither the name of Agere Systems Inc. nor the names of the contributors 42 * may be used to endorse or promote products derived from this software 43 * without specific prior written permission. 44 * 45 * Disclaimer 46 * 47 * THIS SOFTWARE IS PROVIDED AS IS AND ANY EXPRESS OR IMPLIED WARRANTIES, 48 * INCLUDING, BUT NOT LIMITED TO, INFRINGEMENT AND THE IMPLIED WARRANTIES OF 49 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. ANY 50 * USE, MODIFICATION OR DISTRIBUTION OF THIS SOFTWARE IS SOLELY AT THE USERS OWN 51 * RISK. IN NO EVENT SHALL AGERE SYSTEMS INC. OR CONTRIBUTORS BE LIABLE FOR ANY 52 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 53 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 54 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 55 * ON ANY THEORY OF LIABILITY, INCLUDING, BUT NOT LIMITED TO, CONTRACT, STRICT 56 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 57 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH 58 * DAMAGE. 59 * 60 ******************************************************************************/ 61 62 #ifndef __WL_UTIL_H__ 63 #define __WL_UTIL_H__ 64 65 /******************************************************************************* 66 * function prototypes 67 ******************************************************************************/ 68 int dbm( int value ); 69 70 int is_valid_key_string( char *s ); 71 72 void key_string2key( char *ks, KEY_STRCT *key ); 73 74 void wl_hcf_error( struct net_device *dev, int hcfStatus ); 75 76 void wl_endian_translate_event( ltv_t *pLtv ); 77 78 int wl_has_wep( IFBP ifbp ); 79 80 hcf_8 wl_parse_ds_ie( PROBE_RESP *probe_rsp ); 81 hcf_8 * wl_parse_wpa_ie( PROBE_RESP *probe_rsp, hcf_16 *length ); 82 hcf_8 * wl_print_wpa_ie( hcf_8 *buffer, int length ); 83 84 int wl_get_tallies(struct wl_private *, CFG_HERMES_TALLIES_STRCT *); 85 int wl_is_a_valid_chan( int channel ); 86 int wl_is_a_valid_freq( long frequency ); 87 long wl_get_freq_from_chan( int channel ); 88 int wl_get_chan_from_freq( long frequency ); 89 90 void wl_process_link_status( struct wl_private *lp ); 91 void wl_process_probe_response( struct wl_private *lp ); 92 void wl_process_updated_record( struct wl_private *lp ); 93 void wl_process_assoc_status( struct wl_private *lp ); 94 void wl_process_security_status( struct wl_private *lp ); 95 96 #endif // __WL_UTIL_H__ 97