convert_to_string_ex(&the_data);
SET_PROP(obj, data, the_data);
- UPD_PROP(obj, long, lastModified, http_lmod(the_data, SEND_DATA));
+ UPD_PROP(obj, long, lastModified, http_last_modified(the_data, SEND_DATA));
UPD_PROP(obj, long, send_mode, SEND_DATA);
RETURN_TRUE;
}
php_stream_from_zval(the_real_stream, &the_stream);
SET_PROP(obj, stream, the_stream);
- UPD_PROP(obj, long, lastModified, http_lmod(the_real_stream, SEND_RSRC));
+ UPD_PROP(obj, long, lastModified, http_last_modified(the_real_stream, SEND_RSRC));
UPD_PROP(obj, long, send_mode, SEND_RSRC);
RETURN_TRUE;
}
convert_to_string_ex(&the_file);
UPD_PROP(obj, string, file, Z_STRVAL_P(the_file));
- UPD_PROP(obj, long, lastModified, http_lmod(the_file, -1));
+ UPD_PROP(obj, long, lastModified, http_last_modified(the_file, -1));
UPD_PROP(obj, long, send_mode, -1);
RETURN_TRUE;
}
/* {{{ HttpMessage */
-/* {{{ static HttpMessage HttpMessage::fromString(string raw_message)
+/* {{{ proto static HttpMessage HttpMessage::fromString(string raw_message)
*
* Create an HttpMessage object from a string.
*/
}
/* }}} */
-/* {{{ void HttpMessage::__construct([string raw_message])
+/* {{{ proto void HttpMessage::__construct([string raw_message])
*
* Instantiate a new HttpMessage object based on the optionally provided
* raw message. An HTTP Message can be either a response or a request.
}
/* }}} */
-/* {{{ void HttpMessage::setRaw(string raw_message)
+/* {{{ proto void HttpMessage::setRaw(string raw_message)
*
* Parse a new raw message.
*/
}
/* }}} */
-/* {{{ string HttpMessage::getBody()
+/* {{{ proto string HttpMessage::getBody()
*
* Get the body of the parsed Message.
*/
}
/* }}} */
-/* {{{ array HttpMessage::getHeaders()
+/* {{{ proto array HttpMessage::getHeaders()
*
* Get Message Headers.
*/
}
/* }}} */
-/* {{{ void HttpMessage::setHeaders(array headers)
+/* {{{ proto void HttpMessage::setHeaders(array headers)
*
* Sets new headers.
*/
}
/* }}} */
-/* {{{ void HttpMessage::addHeaders(array headers[, bool append = false])
+/* {{{ proto void HttpMessage::addHeaders(array headers[, bool append = false])
*
* Add headers. If append is true, headers with the same name will be separated, else overwritten.
*/
}
/* }}} */
-/* {{{ long HttpMessage::getType()
+/* {{{ proto long HttpMessage::getType()
*
* Get Message Type. (HTTP_MSG_NONE|HTTP_MSG_REQUEST|HTTP_MSG_RESPONSE)
*/
}
/* }}} */
-/* {{{ void HttpMessage::setType(long type)
+/* {{{ proto void HttpMessage::setType(long type)
*
* Set Message Type. (HTTP_MSG_NONE|HTTP_MSG_REQUEST|HTTP_MSG_RESPONSE)
*/
}
/* }}} */
-/* {{{ long HttpMessage::getResponseCode()
+/* {{{ proto long HttpMessage::getResponseCode()
*
* Get the Response Code of the Message.
*/
}
/* }}} */
-/* {{{ bool HttpMessage::setResponseCode(long code)
+/* {{{ proto bool HttpMessage::setResponseCode(long code)
*
* Set the response code of an HTTP Response Message.
* Returns false if the Message is not of type HTTP_MSG_RESPONSE,
}
/* }}} */
-/* {{{ string HttpMessage::getRequestMethod()
+/* {{{ proto string HttpMessage::getRequestMethod()
*
* Get the Request Method of the Message.
* Returns false if the Message is not of type HTTP_MSG_REQUEST.
}
/* }}} */
-/* {{{ bool HttpMessage::setRequestMethod(string method)
+/* {{{ proto bool HttpMessage::setRequestMethod(string method)
*
* Set the Request Method of the HTTP Message.
* Returns false if the Message is not of type HTTP_MSG_REQUEST.
if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &method, &method_len)) {
RETURN_FALSE;
}
+ if (method_len < 1) {
+ http_error(E_WARNING, HTTP_E_PARAM, "Cannot set HttpMessage::requestMethod to an empty string");
+ RETURN_FALSE;
+ }
UPD_PROP(obj, string, requestMethod, method);
RETURN_TRUE;
}
/* }}} */
-/* {{{ string HttpMessage::getRequestUri()
+/* {{{ proto string HttpMessage::getRequestUri()
*
* Get the Request URI of the Message.
*/
}
/* }}} */
-/* {{{ bool HttpMessage::setRequestUri(string URI)
+/* {{{ proto bool HttpMessage::setRequestUri(string URI)
*
* Set the Request URI of the HTTP Message.
* Returns false if the Message is not of type HTTP_MSG_REQUEST,
RETURN_FALSE;
}
if (URIlen < 1) {
- http_error(E_WARNING, HTTP_E_PARAM, "Cannot set HttpMessage::requestMethod to an empty string");
+ http_error(E_WARNING, HTTP_E_PARAM, "Cannot set HttpMessage::requestUri to an empty string");
RETURN_FALSE;
}
}
/* }}} */
-/* {{{ string HttpMessage::getHttpVersion()
+/* {{{ proto string HttpMessage::getHttpVersion()
*
* Get the HTTP Protocol Version of the Message.
*/
}
/* }}} */
-/* {{{ bool HttpMessage::setHttpVersion(string version)
+/* {{{ proto bool HttpMessage::setHttpVersion(string version)
*
* Set the HTTP Protocol version of the Message.
* Returns false if version is invalid (1.0 and 1.1).
*/
PHP_METHOD(HttpMessage, setHttpVersion)
{
- zval *v;
- zval *version;
+ char v[4];
+ zval *zv, *version;
getObject(http_message_object, obj);
- if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "z", &v)) {
+ if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "z", &zv)) {
return;
}
- convert_to_string_ex(&v);
- if (strcmp(Z_STRVAL_P(v), "1.0") && strcmp(Z_STRVAL_P(v), "1.1")) {
- http_error_ex(E_WARNING, HTTP_E_PARAM, "Invalid HTTP version (1.0 or 1.1): %s", Z_STRVAL_P(v));
+ convert_to_double_ex(&zv);
+ sprintf(v, "%1.1f", Z_DVAL_P(zv));
+ if (strcmp(v, "1.0") && strcmp(v, "1.1")) {
+ http_error_ex(E_WARNING, HTTP_E_PARAM, "Invalid HTTP version (1.0 or 1.1): %s", v);
RETURN_FALSE;
}
- convert_to_double_ex(&v);
- SET_PROP(obj, httpVersion, v);
+ SET_PROP(obj, httpVersion, zv);
}
/* }}} */
-/* {{{ string HttpMessage::toString()
+/* {{{ proto string HttpMessage::toString()
*
* Get the string representation of the Message.
*/