[smartmontools-support] [PATCH] Do not crash on HP machines
Ashley Reese
ashley.reese at firma.seznam.cz
Fri Feb 1 15:33:33 CET 2019
Some machines contain more than 512B message, we should allocate based
on that size rather than 512B since we later memcpy it.
---
cciss.cpp | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/cciss.cpp b/cciss.cpp
index d6d8c82..8de1efd 100644
--- a/cciss.cpp
+++ b/cciss.cpp
@@ -71,7 +71,11 @@ static int cciss_sendpassthru(unsigned int cmdtype,
unsigned char *CDB,
*/
int cciss_io_interface(int device, int target, struct scsi_cmnd_io *
iop, int report)
{
- unsigned char pBuf[512] = {0};
+ size_t pBuf_size = iop->dxfer_len;
+ if (pBuf_size < 512) {
+ pBuf_size = 512;
+ }
+ unsigned char *pBuf = (unsigned char*)alloca(pBuf_size);
unsigned char phylun[8] = {0};
int iBufLen = 512;
int len = 0; // used later in the code.
--
1.9.1
Je dobré vědět, že tento e-mail a přílohy jsou důvěrné. Pokud spolu jednáme o uzavření obchodu, vyhrazujeme si právo naše jednání kdykoli ukončit. Pro fanoušky právní mluvy - vylučujeme tím ustanovení občanského zákoníku o předsmluvní odpovědnosti. Pravidla o tom, kdo u nás a jak vystupuje za společnost a kdo může co a jak podepsat naleznete zde<https://onas.seznam.cz/cz/podpisovy-rad-cz.html>
You should know that this e-mail and its attachments are confidential. If we are negotiating on the conclusion of a transaction, we reserve the right to terminate the negotiations at any time. For fans of legalese—we hereby exclude the provisions of the Civil Code on pre-contractual liability. The rules about who and how may act for the company and what are the signing procedures can be found here<https://onas.seznam.cz/cz/podpisovy-rad-cz.html>.
More information about the Smartmontools-support
mailing list