From 2373e37ffa4870dc9f8335e86d5c29ae1539ee19 Mon Sep 17 00:00:00 2001 From: Gurumoorthi Gnanasambandhan Date: Thu, 20 Jul 2017 16:25:57 +0530 Subject: [PATCH] qcacmn: Allocate additional 8 bytes for MIC in PMF case Last 8 bytes for MIC are allocated in host for Hawkeye. Change-Id: Iab375fdf3115334dba6e1f0b18c31356b8f4ed09 --- umac/cmn_services/crypto/src/wlan_crypto_ccmp.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/umac/cmn_services/crypto/src/wlan_crypto_ccmp.c b/umac/cmn_services/crypto/src/wlan_crypto_ccmp.c index 501bafe67cc5..382da3019acb 100644 --- a/umac/cmn_services/crypto/src/wlan_crypto_ccmp.c +++ b/umac/cmn_services/crypto/src/wlan_crypto_ccmp.c @@ -58,9 +58,14 @@ static QDF_STATUS ccmp_encap(struct wlan_crypto_key *key, if (encapdone) { ivp = (uint8_t *)qdf_nbuf_data(wbuf); } else { - ivp = (uint8_t *)qdf_nbuf_push_head(wbuf, - cipher_table->header); - qdf_mem_move(ivp, ivp + cipher_table->header, hdrlen); + uint8_t ivmic_len = cipher_table->header + cipher_table->miclen; + ivp = (uint8_t *)qdf_nbuf_push_head(wbuf, ivmic_len); + qdf_mem_move(ivp, ivp + ivmic_len, hdrlen); + + qdf_mem_move(ivp + hdrlen + cipher_table->header, + ivp + hdrlen + ivmic_len, + (qdf_nbuf_len(wbuf) - hdrlen - ivmic_len)); + ivp = (uint8_t *) qdf_nbuf_data(wbuf); }