Fix heap-buffer-overflow
Cast signed char to unsigned char to avoid sprintf doing sign extension
for %x.
Test: build
Bug: 75983919
Merged-In: I6685a77ac1c832d8dd83beafd7e463d56fab77d3
Change-Id: I6685a77ac1c832d8dd83beafd7e463d56fab77d3
(cherry picked from commit 9caabc0c0a82a8d65d62b2607d3d0e81ebe928f4)
diff --git a/server/XfrmController.cpp b/server/XfrmController.cpp
index cc2c305..52ffd7b 100644
--- a/server/XfrmController.cpp
+++ b/server/XfrmController.cpp
@@ -146,7 +146,7 @@
offset += 8;
for (uint32_t j = 0; j < (uint32_t)len; j++) {
- sprintf(&printBuf[j * 2 + offset], "%0.2x", buf[j]);
+ sprintf(&printBuf[j * 2 + offset], "%0.2x", (unsigned char)buf[j]);
}
ALOGD("%s", printBuf);
delete[] printBuf;