- improve config.m4
authorMichael Wallner <mike@php.net>
Fri, 2 Sep 2005 16:06:12 +0000 (16:06 +0000)
committerMichael Wallner <mike@php.net>
Fri, 2 Sep 2005 16:06:12 +0000 (16:06 +0000)
- ditch some warnings

config.m4
http_functions.c
http_message_api.c
http_request_object.c
http_response_object.c
http_url_api.c
php_http_cache_api.h

index 32e288b78232f94b61507dd6dc62751ed7285f63..eb1c302726ac6d854c8eef20835e0e114c8a501d 100644 (file)
--- a/config.m4
+++ b/config.m4
@@ -3,17 +3,18 @@ dnl $Id$
 
 PHP_ARG_ENABLE([http], [whether to enable extended HTTP support],
 [  --enable-http           Enable extended HTTP support])
-PHP_ARG_WITH([curl], [for CURL support],
-[  --with-curl[=DIR]       Include CURL support])
-PHP_ARG_WITH([mhash], [for mhash support],
-[  --with-mhash[=DIR]      Include mhash support])
+PHP_ARG_WITH([http-curl-requests], [wheter to enable cURL HTTP requests],
+[  --with-http-curl-requests[=CURLDIR]
+                           With cURL HTTP request support])
+PHP_ARG_WITH([http-mhash-etags], [whether to enable mhash ETag generator],
+[  --with-http-mhash-etags[=MHASHDIR]
+                           With mhash ETag generator support])
 
 if test "$PHP_HTTP" != "no"; then
 
 dnl -------
 dnl NETDB.H
 dnl -------
-
        AC_MSG_CHECKING(for netdb.h)
        if test -r /usr/include/netdb.h -o -r /usr/local/include/netdb.h; then
                AC_DEFINE(HAVE_NETDB_H, 1, [Have netdb.h])
@@ -25,67 +26,72 @@ dnl -------
 dnl ----
 dnl CURL
 dnl ----
-       if test "$PHP_CURL" != "no"; then
-               if test -r $PHP_CURL/include/curl/easy.h; then
-                       CURL_DIR=$PHP_CURL
-               else
-                       AC_MSG_CHECKING(for CURL in default path)
-                       for i in /usr/local /usr; do
-                       if test -r $i/include/curl/easy.h; then
+       if test "$PHP_HTTP_CURL_REQUESTS" != "no"; then
+       
+               AC_MSG_CHECKING([for curl/curl.h])
+               CURL_DIR=
+               for i in "$PHP_HTTP_CURL_REQUESTS" /usr/local /usr /opt; do
+                       if test -r "$i/include/curl/curl.h"; then
                                CURL_DIR=$i
-                               AC_MSG_RESULT(found in $i)
                                break
                        fi
-                       done
-               fi
-
+               done
                if test -z "$CURL_DIR"; then
-                       AC_MSG_RESULT(not found)
-                       AC_MSG_ERROR(Please reinstall the libcurl distribution -
-                       easy.h should be in <curl-dir>/include/curl/)
-               fi
-
-               CURL_CONFIG="curl-config"
-
-               if ${CURL_DIR}/bin/curl-config --libs > /dev/null 2>&1; then
-                       CURL_CONFIG=${CURL_DIR}/bin/curl-config
+                       AC_MSG_RESULT([not found])
+                       AC_MSG_ERROR([could not find curl/curl.h])
                else
-                       if ${CURL_DIR}/curl-config --libs > /dev/null 2>&1; then
-                       CURL_CONFIG=${CURL_DIR}/curl-config
+                       AC_MSG_RESULT([found in $CURL_DIR])
+               fi
+               
+               AC_MSG_CHECKING([for curl-config])
+               CURL_CONFIG=
+               for i in "$CURL_DIR/bin/curl-config" "$CURL_DIR/curl-config" `which curl-config`; do
+                       if test -x "$i"; then
+                               CURL_CONFIG=$i
+                               break
                        fi
+               done
+               if test -z "$CURL_CONFIG"; then
+                       AC_MSG_RESULT([not found])
+                       AC_MSG_ERROR([could not find curl-config])
+               else
+                       AC_MSG_RESULT([found: $CURL_CONFIG])
                fi
-
+               
                PHP_ADD_INCLUDE($CURL_DIR/include)
-               PHP_EVAL_LIBLINE($CURL_LIBS, CURL_SHARED_LIBADD)
-               PHP_ADD_LIBRARY_WITH_PATH(curl, $CURL_DIR/lib, HTTP_SHARED_LIBADD)
-
-               PHP_CHECK_LIBRARY(curl,curl_easy_init,
-               [
-                       AC_DEFINE(HTTP_HAVE_CURL,1,[Have CURL easy support])
-               ],[
-                       AC_MSG_ERROR(There is something wrong with libcurl. Please check config.log for more information.)
-               ],[
-                       $CURL_LIBS -L$CURL_DIR/lib
-               ])
-
+               PHP_ADD_LIBRARY_WITH_PATH(curl, $CURL_DIR/$PHP_LIBDIR, HTTP_SHARED_LIBADD)
+               PHP_EVAL_LIBLINE(`$CURL_CONFIG --libs`, HTTP_SHARED_LIBADD)
+               AC_DEFINE([HTTP_HAVE_CURL], [1], [Have cURL support])
+               
+               PHP_CHECK_LIBRARY(curl, curl_multi_strerror, 
+                       [AC_DEFINE([HAVE_CURL_MULTI_STRERROR], [1], [ ])], [ ], 
+                       [$CURL_LIBS -L$CURL_DIR/$PHP_LIBDIR]
+               )
        fi
 
 dnl ----
 dnl MHASH
 dnl ----
-
-       if test "$PHP_MHASH" != "no"; then
-               for i in $PHP_MHASH /usr/local /usr /opt/mhash; do
-                       test -f $i/include/mhash.h && MHASH_DIR=$i && break
-               done
+       if test "$PHP_HTTP_MHASH_ETAGS" != "no"; then
        
+               AC_MSG_CHECKING([for mhash.h])
+               MHASH_DIR=
+               for i in "$PHP_HTTP_MHASH_ETAGS" /usr/local /usr /opt; do
+                       if test -f "$i/include/mhash.h"; then
+                               MHASH_DIR=$i
+                               break
+                       fi
+               done
                if test -z "$MHASH_DIR"; then
-                       AC_MSG_ERROR(Please reinstall libmhash - cannot find mhash.h)
+                       AC_MSG_RESULT([not found])
+                       AC_MSG_ERROR([could not find mhash.h])
+               else
+                       AC_MSG_RESULT([found in $MHASH_DIR])
                fi
        
                PHP_ADD_INCLUDE($MHASH_DIR/include)
-               PHP_ADD_LIBRARY_WITH_PATH(mhash, $MHASH_DIR/lib, MHASH_SHARED_LIBADD)
-               AC_DEFINE(HAVE_LIBMHASH,1,[HAve mhash support])
+               PHP_ADD_LIBRARY_WITH_PATH(mhash, $MHASH_DIR/$PHP_LIBDIR, HTTP_SHARED_LIBADD)
+               AC_DEFINE([HAVE_LIBMHASH], [1], [Have mhash support])
        fi
 
 dnl ----
index 28d9be5571fbe45b3fc4ad309eebb8b858d3d17c..3e75ff424fb6cafa8d0b4b84b66ef578c785a693 100644 (file)
@@ -407,7 +407,7 @@ PHP_FUNCTION(ob_etaghandler)
        }
 
        Z_TYPE_P(return_value) = IS_STRING;
-       http_ob_etaghandler(data, data_len, &Z_STRVAL_P(return_value), &Z_STRLEN_P(return_value), mode);
+       http_ob_etaghandler(data, data_len, &Z_STRVAL_P(return_value), (uint *) &Z_STRLEN_P(return_value), mode);
 }
 /* }}} */
 
@@ -614,14 +614,15 @@ PHP_FUNCTION(http_send_stream)
 PHP_FUNCTION(http_chunked_decode)
 {
        char *encoded = NULL, *decoded = NULL;
-       int encoded_len = 0, decoded_len = 0;
+       size_t decoded_len = 0;
+       int encoded_len = 0;
 
        if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &encoded, &encoded_len) != SUCCESS) {
                RETURN_FALSE;
        }
 
        if (NULL != http_chunked_decode(encoded, encoded_len, &decoded, &decoded_len)) {
-               RETURN_STRINGL(decoded, decoded_len, 0);
+               RETURN_STRINGL(decoded, (int) decoded_len, 0);
        } else {
                RETURN_FALSE;
        }
index dbd92c8810a9156cd9c2a36b8f51555114794ac5..15fa449eb21eef2e2453152da7cacf163d58c68b 100644 (file)
@@ -138,7 +138,7 @@ PHP_HTTP_API http_message *_http_message_parse_ex(http_message *msg, const char
 
        msg = http_message_init(msg);
 
-       if (SUCCESS != http_parse_headers_cb(message, &msg->hdrs, 1, (http_info_callback) http_message_info_callback, &msg)) {
+       if (SUCCESS != http_parse_headers_cb(message, &msg->hdrs, 1, (http_info_callback) http_message_info_callback, (void **) &msg)) {
                if (free_msg) {
                        http_message_free(&msg);
                }
index 1efdbf87d65952bf4724db091187ff7531453417..ad7a8786d5e79734222975163f27e6bff9bf5f94 100644 (file)
@@ -1408,7 +1408,7 @@ PHP_METHOD(HttpRequest, getResponseInfo)
 
                if (info_len && info_name) {
                        if (SUCCESS == zend_hash_find(Z_ARRVAL_P(info), pretty_key(info_name, info_len, 0, 0), info_len + 1, (void **) &infop)) {
-                               RETURN_ZVAL(*infop, 1, ZVAL_PTR_DTOR);
+                               RETURN_ZVAL(*infop, 1, 0);
                        } else {
                                http_error_ex(HE_NOTICE, HTTP_E_INVALID_PARAM, "Could not find response info named %s", info_name);
                                RETURN_FALSE;
index ea24fd897bacd04dad48222fe45b722a9b22f6e5..85fef4911e7fa8d7c47b598be21fcb539c99d4c0 100644 (file)
@@ -289,7 +289,7 @@ PHP_METHOD(HttpResponse, getHeader)
                array_init(return_value);
                array_copy(headers, return_value);
        } else if (SUCCESS == zend_hash_find(Z_ARRVAL_P(headers), name, name_len + 1, (void **) &header)) {
-               RETURN_ZVAL(*header, ZVAL_PTR_DTOR, 1);
+               RETURN_ZVAL(*header, 1, 0);
        } else {
                RETURN_NULL();
        }
index 10a9095449bb96b592800dbe82444200b11835db..ccee5b3bf7817a249371c0cedf787c0624d5c2af 100644 (file)
@@ -218,7 +218,8 @@ PHP_HTTP_API STATUS _http_urlencode_hash_implementation_ex(
                                zval *type TSRMLS_DC)
 {
        char *key = NULL, *ekey, *newprefix, *p;
-       int arg_sep_len, key_len, ekey_len, key_type, newprefix_len;
+       int arg_sep_len, ekey_len, key_type, newprefix_len;
+       uint key_len;
        ulong idx;
        zval **zdata = NULL, *copyzval;
 
index f92e30aac7c13075341afe95b59eb3a9fdaf8441..3e882c9e2fd57b6a688ce9554b72d6e79dc93f49 100644 (file)
@@ -140,14 +140,14 @@ static inline void _http_etag_update(void *ctx, const char *data_ptr, size_t dat
        switch (INI_INT("http.etag_mode"))
        {
                case HTTP_ETAG_SHA1:
-                       PHP_SHA1Update(ctx, data_ptr, data_len);
+                       PHP_SHA1Update(ctx, (const unsigned char *) data_ptr, data_len);
                break;
                
                case HTTP_ETAG_MD5:
 #ifndef HAVE_LIBMHASH
                default:
 #endif
-                       PHP_MD5Update(ctx, data_ptr, data_len);
+                       PHP_MD5Update(ctx, (const unsigned char *) data_ptr, data_len);
                break;
                
 #ifdef HAVE_LIBMHASH