From 2b060b3bf3018ae8db824d2a87bb8cefb591d059 Mon Sep 17 00:00:00 2001 From: Sascha Schumann Date: Thu, 26 Oct 2000 18:18:21 +0000 Subject: [PATCH] Add sapi_add_header_ex, which lets you specify whether you want to add or replace a header. --- main/SAPI.c | 3 ++- main/SAPI.h | 5 ++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/main/SAPI.c b/main/SAPI.c index afe98f35c7..563f1cd072 100644 --- a/main/SAPI.c +++ b/main/SAPI.c @@ -356,7 +356,7 @@ static int sapi_extract_response_code(const char *header_line) /* This function expects a *duplicated* string, that was previously emalloc()'d. * Pointers sent to this functions will be automatically freed by the framework. */ -SAPI_API int sapi_add_header(char *header_line, uint header_line_len, zend_bool duplicate) +SAPI_API int sapi_add_header_ex(char *header_line, uint header_line_len, zend_bool duplicate, zend_bool replace) { int retval, free_header = 0; sapi_header_struct sapi_header; @@ -390,6 +390,7 @@ SAPI_API int sapi_add_header(char *header_line, uint header_line_len, zend_bool sapi_header.header = header_line; sapi_header.header_len = header_line_len; + sapi_header.replace = replace; /* Check the header for a few cases that we have special support for in SAPI */ if (header_line_len>=5 diff --git a/main/SAPI.h b/main/SAPI.h index 918912b717..e551a32165 100644 --- a/main/SAPI.h +++ b/main/SAPI.h @@ -41,6 +41,7 @@ typedef struct { char *header; uint header_len; + zend_bool replace; } sapi_header_struct; @@ -130,7 +131,9 @@ SAPI_API void sapi_activate(SLS_D); SAPI_API void sapi_deactivate(SLS_D); SAPI_API void sapi_initialize_empty_request(SLS_D); -SAPI_API int sapi_add_header(char *header_line, uint header_line_len, zend_bool duplicate); +SAPI_API int sapi_add_header_ex(char *header_line, uint header_line_len, zend_bool duplicate, zend_bool replace); +#define sapi_add_header(header_line, header_line_len, duplicate) \ + sapi_add_header_ex((header_line), (header_line_len), (duplicate), 1) SAPI_API int sapi_send_headers(void); SAPI_API void sapi_free_header(sapi_header_struct *sapi_header); SAPI_API void sapi_handle_post(void *arg SLS_DC); -- 2.40.0