cvs commit: src/sys/net80211 ieee80211_crypto_ccmp.c

Sam Leffler sam at errno.com
Mon Jul 11 03:11:43 GMT 2005


Sam Leffler wrote:
> sam         2005-07-11 03:06:23 UTC
> 
>   FreeBSD src repository
> 
>   Modified files:
>     sys/net80211         ieee80211_crypto_ccmp.c 
>   Log:
>   Handle encrypt of arbitarily fragmented mbuf chains: previously
>   we bailed if we couldn't collect the 16-bytes of data required
>   for an aes block cipher in 2 mbufs; now we deal with it.  While
>   here make space accounting signed so a sanity check does the
>   right thing for malformed mbuf chains.

Note that the decrypt path does not need this complexity because rx'd 
frames are assumed to not have arbitrary fragmentation (typically data 
is dma'd into clusters or multiple fully-packed mbufs).

Also I think a better solution is to defrag/repack the mbuf chain to 
have 16-byte alignment (except for the last mbuf) so we don't need to do 
s/g of data on the fly.

With this change I'm able to run extensive tcp netperf tests over ural 
cards and 5211 ath cards using wpa w/ ccmp as the unicast cipher.

	Sam


More information about the cvs-src mailing list