1*ff66a890SHiten Pandya.\" 2*ff66a890SHiten Pandya.\" Copyright (c) 2004 Bruce M. Simpson <bms@spc.org> 3*ff66a890SHiten Pandya.\" Copyright (c) 2004 Darron Broad <darron@kewl.org> 4*ff66a890SHiten Pandya.\" All rights reserved. 5*ff66a890SHiten Pandya.\" 6*ff66a890SHiten Pandya.\" Redistribution and use in source and binary forms, with or without 7*ff66a890SHiten Pandya.\" modification, are permitted provided that the following conditions 8*ff66a890SHiten Pandya.\" are met: 9*ff66a890SHiten Pandya.\" 1. Redistributions of source code must retain the above copyright 10*ff66a890SHiten Pandya.\" notice, this list of conditions and the following disclaimer. 11*ff66a890SHiten Pandya.\" 2. Redistributions in binary form must reproduce the above copyright 12*ff66a890SHiten Pandya.\" notice, this list of conditions and the following disclaimer in the 13*ff66a890SHiten Pandya.\" documentation and/or other materials provided with the distribution. 14*ff66a890SHiten Pandya.\" 15*ff66a890SHiten Pandya.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 16*ff66a890SHiten Pandya.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 17*ff66a890SHiten Pandya.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 18*ff66a890SHiten Pandya.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 19*ff66a890SHiten Pandya.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20*ff66a890SHiten Pandya.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21*ff66a890SHiten Pandya.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22*ff66a890SHiten Pandya.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23*ff66a890SHiten Pandya.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24*ff66a890SHiten Pandya.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25*ff66a890SHiten Pandya.\" SUCH DAMAGE. 26*ff66a890SHiten Pandya.\" 27*ff66a890SHiten Pandya.\" $FreeBSD$ 28*ff66a890SHiten Pandya.\" $DragonFly: src/share/man/man9/ieee80211_crypto.9,v 1.1 2004/07/27 14:50:56 hmp Exp $ 29*ff66a890SHiten Pandya.\" $Id: ieee80211_crypto.9,v 1.2 2004/07/07 12:59:39 ru Exp $ 30*ff66a890SHiten Pandya.\" 31*ff66a890SHiten Pandya.Dd March 2, 2004 32*ff66a890SHiten Pandya.Dt IEEE80211_CRYPTO 9 33*ff66a890SHiten Pandya.Os 34*ff66a890SHiten Pandya.Sh NAME 35*ff66a890SHiten Pandya.Nm ieee80211_crypto_attach , ieee80211_crypto_detach , ieee80211_wep_crypt 36*ff66a890SHiten Pandya.Nd 802.11 WEP encryption functions 37*ff66a890SHiten Pandya.Sh SYNOPSIS 38*ff66a890SHiten Pandya.Ft void 39*ff66a890SHiten Pandya.Fn ieee80211_crypto_attach "struct ifnet *ifp" 40*ff66a890SHiten Pandya.Ft void 41*ff66a890SHiten Pandya.Fn ieee80211_crypto_detach "struct ifnet *ifp" 42*ff66a890SHiten Pandya.Ft struct mbuf * 43*ff66a890SHiten Pandya.Fn ieee80211_wep_crypt "struct ifnet *ifp" "struct mbuf *m0" "int txflag" 44*ff66a890SHiten Pandya.Sh DESCRIPTION 45*ff66a890SHiten PandyaThese functions provide software encryption support 46*ff66a890SHiten Pandyafor 802.11 device drivers. 47*ff66a890SHiten Pandya.Pp 48*ff66a890SHiten Pandya.\" 49*ff66a890SHiten PandyaThe 50*ff66a890SHiten Pandya.Fn ieee80211_crypto_attach 51*ff66a890SHiten Pandyafunction initializes crypto support for the interface 52*ff66a890SHiten Pandya.Fa ifp , 53*ff66a890SHiten Pandyaand sets the initialization vector (IV) for WEP encryption to 54*ff66a890SHiten Pandyaa random number derived from a secure PRNG. 55*ff66a890SHiten Pandya.Pp 56*ff66a890SHiten Pandya.\" 57*ff66a890SHiten PandyaThe 58*ff66a890SHiten Pandya.Fn ieee80211_crypto_detach 59*ff66a890SHiten Pandyafunction frees data structures associated with crypto support 60*ff66a890SHiten Pandyafor the interface 61*ff66a890SHiten Pandya.Fa ifp . 62*ff66a890SHiten Pandya.Pp 63*ff66a890SHiten Pandya.\" 64*ff66a890SHiten PandyaThe 65*ff66a890SHiten Pandya.Fn ieee80211_wep_crypt 66*ff66a890SHiten Pandyafunction runs the appropriate WEP encryption algorithm over the 802.11 67*ff66a890SHiten Pandyaencapsulated frame held in the mbuf chain 68*ff66a890SHiten Pandya.Fa m0 , 69*ff66a890SHiten Pandyafor transmission or reception on the interface 70*ff66a890SHiten Pandya.Fa ifp . 71*ff66a890SHiten PandyaThe 72*ff66a890SHiten Pandya.Fa txflag 73*ff66a890SHiten Pandyaargument specifies whether the frame is being received or transmitted. 74*ff66a890SHiten PandyaA value of 0 indicates that the frame is being received and should 75*ff66a890SHiten Pandyatherefore be decrypted; a non-zero value indicates that the frame 76*ff66a890SHiten Pandyais being transmitted 77*ff66a890SHiten Pandyaand should be encrypted. 78*ff66a890SHiten Pandya.\" 79*ff66a890SHiten Pandya.Sh IMPLEMENTATION NOTES 80*ff66a890SHiten PandyaThe 81*ff66a890SHiten Pandya.Fn ieee80211_wep_crypt 82*ff66a890SHiten Pandyafunction stores its IV in the interface's embedded 83*ff66a890SHiten Pandya.Vt struct ieee80211com 84*ff66a890SHiten Pandyainstance. 85*ff66a890SHiten Pandya.Sh SEE ALSO 86*ff66a890SHiten Pandya.Xr awi 4 , 87*ff66a890SHiten Pandya.Xr wi 4 , 88*ff66a890SHiten Pandya.Xr arc4random 9 , 89*ff66a890SHiten Pandya.Xr ieee80211 9 , 90*ff66a890SHiten Pandya.Xr ifnet 9 91*ff66a890SHiten Pandya.Sh HISTORY 92*ff66a890SHiten PandyaThe 93*ff66a890SHiten Pandya.Nm ieee80211 94*ff66a890SHiten Pandyaseries of functions first appeared in 95*ff66a890SHiten Pandya.Nx 1.5 , 96*ff66a890SHiten Pandyaand were later ported to 97*ff66a890SHiten Pandya.Fx 4.6 . 98*ff66a890SHiten Pandya.Sh AUTHORS 99*ff66a890SHiten Pandya.An -nosplit 100*ff66a890SHiten PandyaThis man page was written by 101*ff66a890SHiten Pandya.An Bruce M. Simpson Aq bms@FreeBSD.org 102*ff66a890SHiten Pandyaand 103*ff66a890SHiten Pandya.An Darron Broad Aq darron@kewl.org . 104