projects
/
m6w6
/
ext-http
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
|
github
raw
|
inline
| side by side
- prepare 1.5.3
[m6w6/ext-http]
/
http_message_api.c
diff --git
a/http_message_api.c
b/http_message_api.c
index 87689da915717e5b8118d7f1ce3df5fb0e1ef684..c78c09fba31503f37ee15a439565c93202f381fe 100644
(file)
--- a/
http_message_api.c
+++ b/
http_message_api.c
@@
-6,7
+6,7
@@
| modification, are permitted provided that the conditions mentioned |
| in the accompanying LICENSE file are met. |
+--------------------------------------------------------------------+
| modification, are permitted provided that the conditions mentioned |
| in the accompanying LICENSE file are met. |
+--------------------------------------------------------------------+
- | Copyright (c) 2004-200
6
, Michael Wallner <mike@php.net> |
+ | Copyright (c) 2004-200
7
, Michael Wallner <mike@php.net> |
+--------------------------------------------------------------------+
*/
+--------------------------------------------------------------------+
*/
@@
-91,20
+91,16
@@
PHP_HTTP_API http_message *_http_message_init_env(http_message *message, http_me
memset(&inf, 0, sizeof(http_info));
switch (inf.type = type) {
case HTTP_MSG_REQUEST:
memset(&inf, 0, sizeof(http_info));
switch (inf.type = type) {
case HTTP_MSG_REQUEST:
- if ((sval = http_get_server_var("SERVER_PROTOCOL", 1)) && !strncmp(Z_STRVAL_P(sval),
ZEND_STRL
("HTTP/"))) {
+ if ((sval = http_get_server_var("SERVER_PROTOCOL", 1)) && !strncmp(Z_STRVAL_P(sval),
"HTTP/", lenof
("HTTP/"))) {
inf.http.version = atof(Z_STRVAL_P(sval) + lenof("HTTP/"));
} else {
inf.http.version = 1.1;
}
if ((sval = http_get_server_var("REQUEST_METHOD", 1))) {
inf.http.info.request.method = estrdup(Z_STRVAL_P(sval));
inf.http.version = atof(Z_STRVAL_P(sval) + lenof("HTTP/"));
} else {
inf.http.version = 1.1;
}
if ((sval = http_get_server_var("REQUEST_METHOD", 1))) {
inf.http.info.request.method = estrdup(Z_STRVAL_P(sval));
- } else {
- inf.http.info.request.method = ecalloc(1, 1);
}
if ((sval = http_get_server_var("REQUEST_URI", 1))) {
inf.http.info.request.url = estrdup(Z_STRVAL_P(sval));
}
if ((sval = http_get_server_var("REQUEST_URI", 1))) {
inf.http.info.request.url = estrdup(Z_STRVAL_P(sval));
- } else {
- inf.http.info.request.url = ecalloc(1, 1);
}
http_message_set_info(message, &inf);
}
http_message_set_info(message, &inf);
@@
-170,17
+166,17
@@
PHP_HTTP_API void _http_message_set_type(http_message *message, http_message_typ
PHP_HTTP_API void _http_message_set_info(http_message *message, http_info *info)
{
PHP_HTTP_API void _http_message_set_info(http_message *message, http_info *info)
{
- message->http.version = info->http.version;
http_message_set_type(message, info->type);
http_message_set_type(message, info->type);
+ message->http.version = info->http.version;
switch (message->type) {
case IS_HTTP_REQUEST:
switch (message->type) {
case IS_HTTP_REQUEST:
-
HTTP_INFO(message).request.url = estrdup(HTTP_INFO(info).request.url
);
- STR_SET(HTTP_INFO(message).request.method,
estrdup(HTTP_INFO(info).request.method)
);
+
STR_SET(HTTP_INFO(message).request.url, HTTP_INFO(info).request.url ? estrdup(HTTP_INFO(info).request.url) : NULL
);
+ STR_SET(HTTP_INFO(message).request.method,
HTTP_INFO(info).request.method ? estrdup(HTTP_INFO(info).request.method) : NULL
);
break;
case IS_HTTP_RESPONSE:
HTTP_INFO(message).response.code = HTTP_INFO(info).response.code;
break;
case IS_HTTP_RESPONSE:
HTTP_INFO(message).response.code = HTTP_INFO(info).response.code;
- STR_SET(HTTP_INFO(message).response.status,
estrdup(HTTP_INFO(info).response.status)
);
+ STR_SET(HTTP_INFO(message).response.status,
HTTP_INFO(info).response.status ? estrdup(HTTP_INFO(info).response.status) : NULL
);
break;
default:
break;
default:
@@
-383,18
+379,11
@@
PHP_HTTP_API void _http_message_tostring(http_message *msg, char **string, size_
switch (msg->type) {
case HTTP_MSG_REQUEST:
switch (msg->type) {
case HTTP_MSG_REQUEST:
- phpstr_appendf(&str, "%s %s HTTP/%1.1f" HTTP_CRLF,
- msg->http.info.request.method?msg->http.info.request.method:"UNKNOWN",
- msg->http.info.request.url?msg->http.info.request.url:"/",
- msg->http.version);
+ phpstr_appendf(&str, HTTP_INFO_REQUEST_FMT_ARGS(&msg->http, HTTP_CRLF));
break;
case HTTP_MSG_RESPONSE:
break;
case HTTP_MSG_RESPONSE:
- phpstr_appendf(&str, "HTTP/%1.1f %d%s%s" HTTP_CRLF,
- msg->http.version,
- msg->http.info.response.code,
- msg->http.info.response.status&&*msg->http.info.response.status ? " ":"",
- STR_PTR(msg->http.info.response.status));
+ phpstr_appendf(&str, HTTP_INFO_RESPONSE_FMT_ARGS(&msg->http, HTTP_CRLF));
break;
case HTTP_MSG_NONE:
break;
case HTTP_MSG_NONE:
@@
-521,12
+510,12
@@
PHP_HTTP_API void _http_message_tostruct_recursive(http_message *msg, zval *obj
{
case HTTP_MSG_RESPONSE:
add_assoc_long(&strct, "responseCode", msg->http.info.response.code);
{
case HTTP_MSG_RESPONSE:
add_assoc_long(&strct, "responseCode", msg->http.info.response.code);
- add_assoc_string(&strct, "responseStatus",
msg->http.info.response.status
, 1);
+ add_assoc_string(&strct, "responseStatus",
STR_PTR(msg->http.info.response.status)
, 1);
break;
case HTTP_MSG_REQUEST:
break;
case HTTP_MSG_REQUEST:
- add_assoc_string(&strct, "requestMethod",
msg->http.info.request.method
, 1);
- add_assoc_string(&strct, "requestUrl",
msg->http.info.request.url
, 1);
+ add_assoc_string(&strct, "requestMethod",
STR_PTR(msg->http.info.request.method)
, 1);
+ add_assoc_string(&strct, "requestUrl",
STR_PTR(msg->http.info.request.url)
, 1);
break;
case HTTP_MSG_NONE:
break;
case HTTP_MSG_NONE: