diff options
Diffstat (limited to 'drivers/staging/wlags49_h2/wl_enc.c')
-rw-r--r-- | drivers/staging/wlags49_h2/wl_enc.c | 217 |
1 files changed, 0 insertions, 217 deletions
diff --git a/drivers/staging/wlags49_h2/wl_enc.c b/drivers/staging/wlags49_h2/wl_enc.c deleted file mode 100644 index 389c23bdc28f..000000000000 --- a/drivers/staging/wlags49_h2/wl_enc.c +++ /dev/null @@ -1,217 +0,0 @@ - -/******************************************************************************* - * Agere Systems Inc. - * Wireless device driver for Linux (wlags49). - * - * Copyright (c) 1998-2003 Agere Systems Inc. - * All rights reserved. - * http://www.agere.com - * - * Initially developed by TriplePoint, Inc. - * http://www.triplepoint.com - * - *------------------------------------------------------------------------------ - * - * This file defines functions related to WEP key coding/decoding. - * - *------------------------------------------------------------------------------ - * - * SOFTWARE LICENSE - * - * This software is provided subject to the following terms and conditions, - * which you should read carefully before using the software. Using this - * software indicates your acceptance of these terms and conditions. If you do - * not agree with these terms and conditions, do not use the software. - * - * Copyright © 2003 Agere Systems Inc. - * All rights reserved. - * - * Redistribution and use in source or binary forms, with or without - * modifications, are permitted provided that the following conditions are met: - * - * . Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following Disclaimer as comments in the code as - * well as in the documentation and/or other materials provided with the - * distribution. - * - * . Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following Disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * . Neither the name of Agere Systems Inc. nor the names of the contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * Disclaimer - * - * THIS SOFTWARE IS PROVIDED AS IS AND ANY EXPRESS OR IMPLIED WARRANTIES, - * INCLUDING, BUT NOT LIMITED TO, INFRINGEMENT AND THE IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. ANY - * USE, MODIFICATION OR DISTRIBUTION OF THIS SOFTWARE IS SOLELY AT THE USERS OWN - * RISK. IN NO EVENT SHALL AGERE SYSTEMS INC. OR CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, INCLUDING, BUT NOT LIMITED TO, CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH - * DAMAGE. - * - ******************************************************************************/ - -/******************************************************************************* - * include files - ******************************************************************************/ -#include <linux/string.h> -#include <wl_version.h> - -#include <debug.h> -#include <hcf.h> - -#include <wl_enc.h> - -/******************************************************************************* - * wl_wep_code() - ******************************************************************************* - * - * DESCRIPTION: - * - * This function encodes a set of wep keys for privacy - * - * PARAMETERS: - * - * szCrypt - - * szDest - - * Data - - * nLen - - * - * RETURNS: - * - * OK - * - ******************************************************************************/ -int wl_wep_code(char *szCrypt, char *szDest, void *Data, int nLen) -{ - int i; - int t; - int k ; - char bits; - char *szData = (char *) Data; - /*------------------------------------------------------------------------*/ - - - for (i = bits = 0; i < MACADDRESS_STR_LEN; i++) { - bits ^= szCrypt[i]; - bits += szCrypt[i]; - } - - for (i = t = *szDest = 0; i < nLen; i++, t++) { - k = szData[i] ^ (bits + i); - - - switch (i % 3) { - - case 0: - - szDest[t] = ((k & 0xFC) >> 2) + CH_START ; - szDest[t+1] = ((k & 0x03) << 4) + CH_START ; - szDest[t+2] = '\0'; - - break; - - - case 1: - - szDest[t] += ((k & 0xF0) >> 4); - szDest[t+1] = ((k & 0x0F) << 2) + CH_START ; - szDest[t+2] = '\0'; - - break; - - - case 2: - - szDest[t] += ((k & 0xC0) >> 6); - szDest[t+1] = (k & 0x3F) + CH_START ; - szDest[t+2] = '\0'; - t++; - - break; - } - } - - return strlen(szDest); - -} -/*============================================================================*/ - - - - -/******************************************************************************* - * wl_wep_decode() - ******************************************************************************* - * - * DESCRIPTION: - * - * This function decodes a set of WEP keys for use by the card. - * - * PARAMETERS: - * - * szCrypt - - * szDest - - * Data - - * - * RETURNS: - * - * OK - * - ******************************************************************************/ -int wl_wep_decode(char *szCrypt, void *Dest, char *szData) -{ - int i; - int t; - int nLen; - char bits; - char *szDest = Dest; - /*------------------------------------------------------------------------*/ - - - for (i = bits = 0; i < 12; i++) { - bits ^= szCrypt[i] ; - bits += szCrypt[i] ; - } - - nLen = (strlen(szData) * 3) / 4 ; - - for (i = t = 0; i < nLen; i++, t++) { - switch (i % 3) { - case 0: - - szDest[i] = (((szData[t] - CH_START) & 0x3f) << 2) + - (((szData[t+1] - CH_START) & 0x30) >> 4); - break; - - - case 1: - szDest[i] = (((szData[t] - CH_START) & 0x0f) << 4) + - (((szData[t+1] - CH_START) & 0x3c) >> 2); - break; - - - case 2: - szDest[i] = (((szData[t] - CH_START) & 0x03) << 6) + - ((szData[t+1] - CH_START) & 0x3f); - t++; - break; - } - - szDest[i] ^= (bits + i); - - } - - return i; - -} -/*============================================================================*/ - |