prima: Add oem data rsp length

Currently NEW_OEM_DATA_RSP_SIZE no of bytes are defined statically
between host and fw for oem rsp exchange. But fw is not using all
of those bytes which results in lowi reading data from unauthorized
memory locations. Fix this by sending proper length to LOWI

Change-Id: Idb1176111a9585b8f727fb01dda1a6079151c867
CRs-Fixed: 965180
diff --git a/CORE/SME/inc/oemDataApi.h b/CORE/SME/inc/oemDataApi.h
index 25d3b1a..fa8dccc 100644
--- a/CORE/SME/inc/oemDataApi.h
+++ b/CORE/SME/inc/oemDataApi.h
@@ -163,7 +163,7 @@
 
 /*************************************************************************************************************/
 
-void send_oem_data_rsp_msg(int length, tANI_U8 *oemDataRsp);
+void send_oem_data_rsp_msg(tANI_U32 length, tANI_U8 *oemDataRsp);
 
 #endif //_OEM_DATA_API_H__
 
diff --git a/CORE/SME/inc/smeInternal.h b/CORE/SME/inc/smeInternal.h
index 1361e8e..5faef48 100644
--- a/CORE/SME/inc/smeInternal.h
+++ b/CORE/SME/inc/smeInternal.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011-2015 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2011-2016 The Linux Foundation. All rights reserved.
  *
  * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
  *
@@ -168,7 +168,7 @@
    void (*nanCallback) (void*, tSirNanEvent*);
    void (*rssiThresholdBreachedCb)(void *, struct rssi_breach_event *);
 #ifdef FEATURE_OEM_DATA_SUPPORT
-   void (*pOemDataIndCb) (void *, const tANI_U16, void *);
+   void (*pOemDataIndCb) (void *, const tANI_U16, void *, tANI_U32);
    void *pOemDataCallbackContext;
 #endif /* FEATURE_OEM_DATA_SUPPORT */
 
diff --git a/CORE/SME/inc/sme_Api.h b/CORE/SME/inc/sme_Api.h
index 5fe1fa5..8ee0d3c 100644
--- a/CORE/SME/inc/sme_Api.h
+++ b/CORE/SME/inc/sme_Api.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012-2015 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2012-2016 The Linux Foundation. All rights reserved.
  *
  * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
  *
@@ -296,8 +296,8 @@
 
 #ifdef FEATURE_OEM_DATA_SUPPORT
 eHalStatus sme_OemDataRegisterCallback (tHalHandle hHal,
-                          void (*pOemDataIndCb)(void *, const tANI_U16, void *),
-                          void *callbackContext);
+               void (*pOemDataIndCb)(void *, const tANI_U16, void *, tANI_U32),
+               void *callbackContext);
 #endif
 
 /* ---------------------------------------------------------------------------
diff --git a/CORE/SME/src/sme_common/sme_Api.c b/CORE/SME/src/sme_common/sme_Api.c
index 77d341f..fa00216 100644
--- a/CORE/SME/src/sme_common/sme_Api.c
+++ b/CORE/SME/src/sme_common/sme_Api.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012-2015 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2012-2016 The Linux Foundation. All rights reserved.
  *
  * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
  *
@@ -13009,7 +13009,7 @@
 
 #ifdef FEATURE_OEM_DATA_SUPPORT
 eHalStatus sme_OemDataRegisterCallback (tHalHandle hHal,
-                          void (*pOemDataIndCb)(void *, const tANI_U16, void *),
+                void (*pOemDataIndCb)(void *, const tANI_U16, void *, tANI_U32),
                           void *callbackContext)
 {
     eHalStatus status    = eHAL_STATUS_SUCCESS;