Commit b03e26720b5 for php.net
commit b03e26720b553d68d518b0ab85483afdeb11eb30
Author: jvoisin <julien.voisin@dustri.org>
Date: Tue Sep 22 01:45:27 2026 +0800
Backport: fix integer overflow in to_xml_hexbin (#23771)
Backport PR #23771 from master to PHP-8.4.
Original commit: 94ddf35ca9006b0deea8f09c76308df9bf948bfd
Closes #23771
diff --git a/ext/soap/php_encoding.c b/ext/soap/php_encoding.c
index 4eedbffc5a4..cbdc096736d 100644
--- a/ext/soap/php_encoding.c
+++ b/ext/soap/php_encoding.c
@@ -996,7 +996,7 @@ static xmlNodePtr to_xml_hexbin(encodeTypePtr type, zval *data, int style, xmlNo
ZVAL_STR(&tmp, get_serialization_string_from_zval(data));
data = &tmp;
}
- str = (unsigned char *) safe_emalloc(Z_STRLEN_P(data) * 2, sizeof(char), 1);
+ str = (unsigned char *) safe_emalloc(Z_STRLEN_P(data), 2, 1);
for (i = j = 0; i < Z_STRLEN_P(data); i++) {
str[j++] = hexconvtab[((unsigned char)Z_STRVAL_P(data)[i]) >> 4];