X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=http_functions.c;h=39327d10f4fa76f8292b0457a989f001ec42a466;hb=bae1d9bccd93257b15065f1b51579b2d0b5cc1e4;hp=1b71506b7dcbe8f35e14d15431732bf47b77ec48;hpb=bf87f6e654235acb023ca052a5e71faeb2635a3f;p=m6w6%2Fext-http diff --git a/http_functions.c b/http_functions.c index 1b71506..39327d1 100644 --- a/http_functions.c +++ b/http_functions.c @@ -1578,73 +1578,12 @@ PHP_FUNCTION(http_build_query) /* {{{ */ #ifdef HTTP_HAVE_ZLIB -/* {{{ proto string http_gzencode(string data[, int level = -1[, int mtime = 0]]) +/* {{{ proto string http_deflate(string data[, int flags = 0]) * - * Compress data with the HTTP compatible GZIP encoding. - * - * Expects the first parameter to be a string which contains the data that - * should be encoded. Additionally accepts an optional in paramter specifying - * the compression level, where -1 is default, 0 is no compression and 9 is - * best compression ratio. - * - * Returns the encoded string on success, or NULL on failure. - */ -PHP_FUNCTION(http_gzencode) -{ - char *data; - int data_len; - long level = -1, mtime = 0; - - RETVAL_NULL(); - - if (SUCCESS == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|ll", &data, &data_len, &level, &mtime)) { - HTTP_CHECK_GZIP_LEVEL(level, return); - { - char *encoded; - size_t encoded_len; - - if (SUCCESS == http_encoding_gzencode(level, mtime, data, data_len, &encoded, &encoded_len)) { - RETURN_STRINGL(encoded, (int) encoded_len, 0); - } - } - } -} -/* }}} */ - -/* {{{ proto string http_gzdecode(string data) - * - * Uncompress data compressed with the HTTP compatible GZIP encoding. - * - * Expects a string as parameter containing the compressed data. - * - * Returns the decoded string on success, or NULL on failure. - */ -PHP_FUNCTION(http_gzdecode) -{ - char *data; - int data_len; - - RETVAL_NULL(); - - if (SUCCESS == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &data, &data_len)) { - char *decoded; - size_t decoded_len; - - if (SUCCESS == http_encoding_gzdecode(data, data_len, &decoded, &decoded_len)) { - RETURN_STRINGL(decoded, (int) decoded_len, 0); - } - } -} -/* }}} */ - -/* {{{ proto string http_deflate(string data[, int level = -1[, bool zlib_header = false]]) - * - * Compress data with the HTTP compatible DEFLATE encoding. + * Compress data with gzip, zlib AKA deflate or raw deflate encoding. * * Expects the first parameter to be a string containing the data that should - * be encoded. Additionally accepts an optional int parameter specifying the - * compression level, where -1 is default, 0 is no compression and 9 is best - * compression ratio. + * be encoded. * * Returns the encoded string on success, or NULL on failure. */ @@ -1652,18 +1591,16 @@ PHP_FUNCTION(http_deflate) { char *data; int data_len; - long level = -1; - zend_bool zhdr = 0; + long flags = 0; RETVAL_NULL(); - if (SUCCESS == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|lb", &data, &data_len, &level, &zhdr)) { - HTTP_CHECK_GZIP_LEVEL(level, return); + if (SUCCESS == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|l", &data, &data_len, &flags)) { { char *encoded; size_t encoded_len; - if (SUCCESS == http_encoding_deflate(level, zhdr, data, data_len, &encoded, &encoded_len)) { + if (SUCCESS == http_encoding_deflate(flags, data, data_len, &encoded, &encoded_len)) { RETURN_STRINGL(encoded, (int) encoded_len, 0); } } @@ -1673,7 +1610,8 @@ PHP_FUNCTION(http_deflate) /* {{{ proto string http_inflate(string data) * - * Uncompress data compressed with the HTTP compatible DEFLATE encoding. + * Uncompress data compressed with either gzip, deflate AKA zlib or raw + * deflate encoding. * * Expects a string as parameter containing the compressed data. *