summaryrefslogtreecommitdiffstats
path: root/src/usr/hdat
diff options
context:
space:
mode:
authornagurram-in <nagendra.g@in.ibm.com>2017-01-05 16:53:37 -0600
committerWilliam G. Hoffa <wghoffa@us.ibm.com>2017-01-12 16:49:45 -0500
commitb7457ee2b618315f7311b9500aa50116dfa0c9ba (patch)
tree32f498fee750806a38a69a7dfdc3c4f212ff536e /src/usr/hdat
parent3894e8b76643e16adb3089d975c106ae0f16aec3 (diff)
downloadtalos-hostboot-b7457ee2b618315f7311b9500aa50116dfa0c9ba.tar.gz
talos-hostboot-b7457ee2b618315f7311b9500aa50116dfa0c9ba.zip
null pointer access fix in hdatmsarea
Change-Id: I8ad167726633f1dd94adb4a96a0ba02968af137a Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/34461 Reviewed-by: VENKATESH SAINATH <venkatesh.sainath@in.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
Diffstat (limited to 'src/usr/hdat')
-rwxr-xr-xsrc/usr/hdat/hdatmsarea.C10
-rwxr-xr-xsrc/usr/hdat/hdatmsarea.H2
2 files changed, 7 insertions, 5 deletions
diff --git a/src/usr/hdat/hdatmsarea.C b/src/usr/hdat/hdatmsarea.C
index ab3199f07..ac9c9c6c5 100755
--- a/src/usr/hdat/hdatmsarea.C
+++ b/src/usr/hdat/hdatmsarea.C
@@ -214,7 +214,8 @@ HdatMsArea::~HdatMsArea()
l_curPtr = reinterpret_cast<HdatRam **>(reinterpret_cast<char*>(l_curPtr)
+ sizeof(HdatRam *));
}
-
+
+ delete[] iv_msaI2cDataPtr;
delete[] iv_kwd;
delete[] iv_addrRange;
delete[] iv_ecLvl;
@@ -396,9 +397,10 @@ void HdatMsArea::setMsaI2cInfo(
iv_msaHostI2cCnt, iv_msaHostI2cSize);
if ( i_I2cDevEntries.size() != 0 )
{
- //copy from vector to array
- std::copy(i_I2cDevEntries.begin(),i_I2cDevEntries.end(),
- iv_msaI2cDataPtr);
+ iv_msaI2cDataPtr = new uint8_t[sizeof(hdatMsAreaHI2cData_t) * iv_msaHostI2cCnt];
+ memcpy(iv_msaI2cDataPtr , i_I2cDevEntries.begin() ,
+ (sizeof(hdatMsAreaHI2cData_t) * iv_msaHostI2cCnt));
+
}
else
{
diff --git a/src/usr/hdat/hdatmsarea.H b/src/usr/hdat/hdatmsarea.H
index f92430803..6f4b4cf49 100755
--- a/src/usr/hdat/hdatmsarea.H
+++ b/src/usr/hdat/hdatmsarea.H
@@ -625,7 +625,7 @@ private:
hdatHDIFDataArray_t iv_ecArrayHdr;
hdatMsAreaEcLvl_t *iv_ecLvl;
hdatHDIFDataArray_t iv_msaI2cHdr;
- hdatMsAreaHI2cData_t *iv_msaI2cDataPtr;
+ uint8_t *iv_msaI2cDataPtr;
HdatRam **iv_ramPtrs;
OpenPOWER on IntegriCloud