/* NOTE: 'str' has to be null terminated */
static void php_http_header_parser_error(size_t valid_len, char *str, size_t len, const char *eol_str )
{
- zend_string *escaped_str = zend_string_init(str, len, 0);
+ zend_string *escaped_str, *zstr_str = zend_string_init(str, len, 0);
- escaped_str = php_addcslashes(escaped_str, 1, ZEND_STRL("\x0..\x1F\x7F..\xFF"));
+#if PHP_VERSION_ID < 70300
+ escaped_str = php_addcslashes(zstr_str, 1, ZEND_STRL("\x0..\x1F\x7F..\xFF"));
+#else
+ escaped_str = php_addcslashes(zstr_str, ZEND_STRL("\x0..\x1F\x7F..\xFF"));
+ zend_string_release_ex(zstr_str, 0);
+#endif
if (valid_len != len && (!eol_str || (str+valid_len) != eol_str)) {
php_error_docref(NULL, E_WARNING, "Failed to parse headers: unexpected character '\\%03o' at pos %zu of '%s'", str[valid_len], valid_len, escaped_str->val);
ZEND_RESULT_CODE php_http_message_body_add_form_field(php_http_message_body_t *body, const char *name, const char *value_str, size_t value_len)
{
- zend_string *safe_name = zend_string_init(name, strlen(name), 0);
+ zend_string *safe_name, *zstr_name = zend_string_init(name, strlen(name), 0);
- safe_name = php_addslashes(safe_name, 1);
+#if PHP_VERSION_ID < 70300
+ safe_name = php_addslashes(zstr_name, 1);
+#else
+ safe_name = php_addslashes(zstr_name);
+ zend_string_release_ex(zstr_name, 0);
+#endif
BOUNDARY_OPEN(body);
php_http_message_body_appendf(
{
size_t path_len = strlen(path);
char *path_dup = estrndup(path, path_len);
- zend_string *base_name, *safe_name = zend_string_init(name, strlen(name), 0);
-
- safe_name = php_addslashes(safe_name, 1);
+ zend_string *base_name, *safe_name, *zstr_name = zend_string_init(name, strlen(name), 0);
+
+#if PHP_VERSION_ID < 70300
+ safe_name = php_addslashes(zstr_name, 1);
+#else
+ safe_name = php_addslashes(zstr_name);
+ zend_string_release_ex(zstr_name, 0);
+#endif
base_name = php_basename(path_dup, path_len, NULL, 0);
BOUNDARY_OPEN(body);
{
size_t len = (zs)->len;
+#if PHP_VERSION_ID < 70300
zs = php_addcslashes(zs, 0, ZEND_STRL("\0..\37\173\\\""));
+#else
+ zs = php_addcslashes(zs, ZEND_STRL("\0..\37\173\\\""));
+#endif
if (force || len != (zs)->len || strpbrk((zs)->val, "()<>@,;:\"[]?={} ")) {
int len = (zs)->len + 2;