diff options
author | Sam Leffler <sam@FreeBSD.org> | 2005-03-08 17:01:03 +0000 |
---|---|---|
committer | Sam Leffler <sam@FreeBSD.org> | 2005-03-08 17:01:03 +0000 |
commit | 0c97ab9691600b03a419782d3d9d847264d59102 (patch) | |
tree | 5c11a8bd9d5adcce83203ba132e95bf1d89bf4a4 /sys/dev | |
parent | 0a11e9999053b78086006fbac0dab2b4db8d147f (diff) | |
download | src-0c97ab9691600b03a419782d3d9d847264d59102.tar.gz src-0c97ab9691600b03a419782d3d9d847264d59102.zip |
reclaim mbuf chain when ieee80211_crypto_encap fails
Noticed by: David Young
Notes
Notes:
svn path=/head/; revision=143299
Diffstat (limited to 'sys/dev')
-rw-r--r-- | sys/dev/ath/if_ath.c | 1 | ||||
-rw-r--r-- | sys/dev/awi/awi.c | 1 | ||||
-rw-r--r-- | sys/dev/wi/if_wi.c | 1 |
3 files changed, 3 insertions, 0 deletions
diff --git a/sys/dev/ath/if_ath.c b/sys/dev/ath/if_ath.c index 53febaf261cc..df046d340c40 100644 --- a/sys/dev/ath/if_ath.c +++ b/sys/dev/ath/if_ath.c @@ -2940,6 +2940,7 @@ ath_tx_start(struct ath_softc *sc, struct ieee80211_node *ni, struct ath_buf *bf * 802.11 layer counts failures and provides * debugging/diagnostics. */ + m_freem(m0); return EIO; } /* diff --git a/sys/dev/awi/awi.c b/sys/dev/awi/awi.c index f025039b63e8..84a3df37c5fb 100644 --- a/sys/dev/awi/awi.c +++ b/sys/dev/awi/awi.c @@ -848,6 +848,7 @@ awi_start(struct ifnet *ifp) if (k == NULL) { if (ni != NULL) ieee80211_free_node(ni); + m_freem(m0); continue; } } diff --git a/sys/dev/wi/if_wi.c b/sys/dev/wi/if_wi.c index 4c77f9ef7a13..ca49c96f837f 100644 --- a/sys/dev/wi/if_wi.c +++ b/sys/dev/wi/if_wi.c @@ -961,6 +961,7 @@ wi_start(struct ifnet *ifp) if (k == NULL) { if (ni != NULL) ieee80211_free_node(ni); + m_freem(m0); continue; } frmhdr.wi_tx_ctl |= htole16(WI_TXCNTL_NOCRYPT); |