IEEE80211_CRYPTO(9) MidnightBSD Kernel Developer’s Manual IEEE80211_CRYPTO(9)

NAME

ieee80211_crypto_attach, ieee80211_crypto_detach, ieee80211_wep_crypt — 802.11 WEP encryption functions

SYNOPSIS

void

ieee80211_crypto_attach(struct ifnet *ifp);

void

ieee80211_crypto_detach(struct ifnet *ifp);

struct mbuf *

ieee80211_wep_crypt(struct ifnet *ifp, struct mbuf *m0, int txflag);

DESCRIPTION

These functions provide software encryption support for 802.11 device drivers.

The ieee80211_crypto_attach() function initializes crypto support for the interface ifp, and sets the initialization vector (IV) for WEP encryption to a random number derived from a secure PRNG.

The ieee80211_crypto_detach() function frees data structures associated with crypto support for the interface ifp.

The ieee80211_wep_crypt() function runs the appropriate WEP encryption algorithm over the 802.11 encapsulated frame held in the mbuf chain m0, for transmission or reception on the interface ifp. The txflag argument specifies whether the frame is being received or transmitted. A value of 0 indicates that the frame is being received and should therefore be decrypted; a non-zero value indicates that the frame is being transmitted and should be encrypted.

IMPLEMENTATION NOTES

The ieee80211_wep_crypt() function stores its IV in the interface’s embedded struct ieee80211com instance.

SEE ALSO

awi(4), wi(4), arc4random(9), ieee80211(9), ifnet(9)

HISTORY

The ieee80211 series of functions first appeared in NetBSD 1.5, and were later ported to FreeBSD 4.6.

AUTHORS

This manual page was written by Bruce M. Simpson 〈bms@FreeBSD.org〉 and Darron Broad 〈darron@kewl.org〉.

MidnightBSD 0.3 March 2, 2004 MidnightBSD 0.3