From 7e43d06b602f5158b7240b03efad7f7066d0650d Mon Sep 17 00:00:00 2001 From: Yang Tse Date: Tue, 4 Jul 2006 16:54:10 +0000 Subject: Get qualifier of arg 2 for send() apart into SEND_QUAL_ARG2. --- acinclude.m4 | 48 ++++++++++++++++++++++++++++++++++++++++------- ares/acinclude.m4 | 48 ++++++++++++++++++++++++++++++++++++++++------- ares/config-win32.h | 3 +++ lib/config-amigaos.h | 1 + lib/config-mac.h | 1 + lib/config-riscos.h | 3 +++ lib/config-tpf.h | 3 +++ lib/config-win32.h | 3 +++ lib/config-win32ce.h | 3 +++ packages/vms/config-vms.h | 3 +++ 10 files changed, 102 insertions(+), 14 deletions(-) diff --git a/acinclude.m4 b/acinclude.m4 index c36f99431..0b13bccb2 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -593,7 +593,7 @@ AC_DEFUN([CURL_CHECK_FUNC_RECV], [ curl_cv_func_recv_args="unknown" for recv_retv in 'int' 'ssize_t'; do for recv_arg1 in 'int' 'ssize_t'; do - for recv_arg2 in 'void *' 'char *'; do + for recv_arg2 in 'char *' 'void *'; do for recv_arg3 in 'size_t' 'int' 'socklen_t' 'unsigned int' 'DWORD'; do for recv_arg4 in 'int' 'unsigned int'; do AC_COMPILE_IFELSE([ @@ -659,7 +659,8 @@ dnl arguments. If the function succeeds HAVE_SEND dnl will be defined, defining the types of the arguments dnl in SEND_TYPE_ARG1, SEND_TYPE_ARG2, SEND_TYPE_ARG3 dnl and SEND_TYPE_ARG4, defining the type of the function -dnl return value in SEND_TYPE_RETV. +dnl return value in SEND_TYPE_RETV, and also defining the +dnl type qualifier of second argument in SEND_QUAL_ARG2. AC_DEFUN([CURL_CHECK_FUNC_SEND], [ AC_CHECK_HEADERS(sys/types.h sys/socket.h) @@ -689,7 +690,7 @@ AC_DEFUN([CURL_CHECK_FUNC_SEND], [ curl_cv_func_send_args="unknown" for send_retv in 'int' 'ssize_t'; do for send_arg1 in 'int' 'ssize_t'; do - for send_arg2 in 'void *' 'char *'; do + for send_arg2 in 'char *' 'void *' 'const char *' 'const void *'; do for send_arg3 in 'size_t' 'int' 'socklen_t' 'unsigned int' 'DWORD'; do for send_arg4 in 'int' 'unsigned int'; do AC_COMPILE_IFELSE([ @@ -704,10 +705,9 @@ AC_DEFUN([CURL_CHECK_FUNC_SEND], [ extern $send_retv send($send_arg1, $send_arg2, $send_arg3, $send_arg4); ],[ $send_arg1 s=0; - $send_arg2 buf=0; $send_arg3 len=0; $send_arg4 flags=0; - $send_retv res = send(s, buf, len, flags); + $send_retv res = send(s, 0, len, flags); ]) ],[ curl_cv_func_send_args="$send_arg1,$send_arg2,$send_arg3,$send_arg4,$send_retv" @@ -728,10 +728,10 @@ AC_DEFUN([CURL_CHECK_FUNC_SEND], [ IFS=$send_prev_IFS shift # + send_qual_type_arg2=$[2] + # AC_DEFINE_UNQUOTED(SEND_TYPE_ARG1, $[1], [Define to the type of arg 1 for send.]) - AC_DEFINE_UNQUOTED(SEND_TYPE_ARG2, $[2], - [Define to the type of arg 2 for send.]) AC_DEFINE_UNQUOTED(SEND_TYPE_ARG3, $[3], [Define to the type of arg 3 for send.]) AC_DEFINE_UNQUOTED(SEND_TYPE_ARG4, $[4], @@ -739,6 +739,40 @@ AC_DEFUN([CURL_CHECK_FUNC_SEND], [ AC_DEFINE_UNQUOTED(SEND_TYPE_RETV, $[5], [Define to the function return type for send.]) # + gni_opts=$- + # + case $gni_opts in + *f*) + ;; + *) + set -f + ;; + esac + # + case "$send_qual_type_arg2" in + const*) + send_qual_arg2=const + send_type_arg2=`echo $send_qual_type_arg2 | sed 's/^const //'` + ;; + *) + send_qual_arg2= + send_type_arg2=$send_qual_type_arg2 + ;; + esac + # + AC_DEFINE_UNQUOTED(SEND_QUAL_ARG2, $send_qual_arg2, + [Define to the type qualifier of arg 2 for send.]) + AC_DEFINE_UNQUOTED(SEND_TYPE_ARG2, $send_type_arg2, + [Define to the type of arg 2 for send.]) + # + case $gni_opts in + *f*) + ;; + *) + set +f + ;; + esac + # AC_DEFINE_UNQUOTED(HAVE_SEND, 1, [Define to 1 if you have the send function.]) ac_cv_func_send="yes" diff --git a/ares/acinclude.m4 b/ares/acinclude.m4 index 4731da94c..14af1f27c 100644 --- a/ares/acinclude.m4 +++ b/ares/acinclude.m4 @@ -572,7 +572,7 @@ AC_DEFUN([CURL_CHECK_FUNC_RECV], [ curl_cv_func_recv_args="unknown" for recv_retv in 'int' 'ssize_t'; do for recv_arg1 in 'int' 'ssize_t'; do - for recv_arg2 in 'void *' 'char *'; do + for recv_arg2 in 'char *' 'void *'; do for recv_arg3 in 'size_t' 'int' 'socklen_t' 'unsigned int' 'DWORD'; do for recv_arg4 in 'int' 'unsigned int'; do AC_COMPILE_IFELSE([ @@ -638,7 +638,8 @@ dnl arguments. If the function succeeds HAVE_SEND dnl will be defined, defining the types of the arguments dnl in SEND_TYPE_ARG1, SEND_TYPE_ARG2, SEND_TYPE_ARG3 dnl and SEND_TYPE_ARG4, defining the type of the function -dnl return value in SEND_TYPE_RETV. +dnl return value in SEND_TYPE_RETV, and also defining the +dnl type qualifier of second argument in SEND_QUAL_ARG2. AC_DEFUN([CURL_CHECK_FUNC_SEND], [ AC_CHECK_HEADERS(sys/types.h sys/socket.h) @@ -668,7 +669,7 @@ AC_DEFUN([CURL_CHECK_FUNC_SEND], [ curl_cv_func_send_args="unknown" for send_retv in 'int' 'ssize_t'; do for send_arg1 in 'int' 'ssize_t'; do - for send_arg2 in 'void *' 'char *'; do + for send_arg2 in 'char *' 'void *' 'const char *' 'const void *'; do for send_arg3 in 'size_t' 'int' 'socklen_t' 'unsigned int' 'DWORD'; do for send_arg4 in 'int' 'unsigned int'; do AC_COMPILE_IFELSE([ @@ -683,10 +684,9 @@ AC_DEFUN([CURL_CHECK_FUNC_SEND], [ extern $send_retv send($send_arg1, $send_arg2, $send_arg3, $send_arg4); ],[ $send_arg1 s=0; - $send_arg2 buf=0; $send_arg3 len=0; $send_arg4 flags=0; - $send_retv res = send(s, buf, len, flags); + $send_retv res = send(s, 0, len, flags); ]) ],[ curl_cv_func_send_args="$send_arg1,$send_arg2,$send_arg3,$send_arg4,$send_retv" @@ -707,10 +707,10 @@ AC_DEFUN([CURL_CHECK_FUNC_SEND], [ IFS=$send_prev_IFS shift # + send_qual_type_arg2=$[2] + # AC_DEFINE_UNQUOTED(SEND_TYPE_ARG1, $[1], [Define to the type of arg 1 for send.]) - AC_DEFINE_UNQUOTED(SEND_TYPE_ARG2, $[2], - [Define to the type of arg 2 for send.]) AC_DEFINE_UNQUOTED(SEND_TYPE_ARG3, $[3], [Define to the type of arg 3 for send.]) AC_DEFINE_UNQUOTED(SEND_TYPE_ARG4, $[4], @@ -718,6 +718,40 @@ AC_DEFUN([CURL_CHECK_FUNC_SEND], [ AC_DEFINE_UNQUOTED(SEND_TYPE_RETV, $[5], [Define to the function return type for send.]) # + gni_opts=$- + # + case $gni_opts in + *f*) + ;; + *) + set -f + ;; + esac + # + case "$send_qual_type_arg2" in + const*) + send_qual_arg2=const + send_type_arg2=`echo $send_qual_type_arg2 | sed 's/^const //'` + ;; + *) + send_qual_arg2= + send_type_arg2=$send_qual_type_arg2 + ;; + esac + # + AC_DEFINE_UNQUOTED(SEND_QUAL_ARG2, $send_qual_arg2, + [Define to the type qualifier of arg 2 for send.]) + AC_DEFINE_UNQUOTED(SEND_TYPE_ARG2, $send_type_arg2, + [Define to the type of arg 2 for send.]) + # + case $gni_opts in + *f*) + ;; + *) + set +f + ;; + esac + # AC_DEFINE_UNQUOTED(HAVE_SEND, 1, [Define to 1 if you have the send function.]) ac_cv_func_send="yes" diff --git a/ares/config-win32.h b/ares/config-win32.h index f1315e740..8e68f9825 100644 --- a/ares/config-win32.h +++ b/ares/config-win32.h @@ -96,6 +96,9 @@ /* Define to the type of arg 1 for send. */ #define SEND_TYPE_ARG1 SOCKET +/* Define to the type qualifier of arg 2 for send. */ +#define SEND_QUAL_ARG2 const + /* Define to the type of arg 2 for send. */ #define SEND_TYPE_ARG2 char * diff --git a/lib/config-amigaos.h b/lib/config-amigaos.h index ea21e698b..89b1650b8 100644 --- a/lib/config-amigaos.h +++ b/lib/config-amigaos.h @@ -105,6 +105,7 @@ #define HAVE_SEND 1 #define SEND_TYPE_ARG1 int +#define SEND_QUAL_ARG2 const #define SEND_TYPE_ARG2 char * #define SEND_TYPE_ARG3 int #define SEND_TYPE_ARG4 int diff --git a/lib/config-mac.h b/lib/config-mac.h index a06f9e1ba..35eeef6cc 100644 --- a/lib/config-mac.h +++ b/lib/config-mac.h @@ -59,6 +59,7 @@ #define HAVE_SEND 1 #define SEND_TYPE_ARG1 int +#define SEND_QUAL_ARG2 const #define SEND_TYPE_ARG2 void * #define SEND_TYPE_ARG3 size_T #define SEND_TYPE_ARG4 int diff --git a/lib/config-riscos.h b/lib/config-riscos.h index d9dad5f74..fd3656f46 100644 --- a/lib/config-riscos.h +++ b/lib/config-riscos.h @@ -433,6 +433,9 @@ /* Define to the type of arg 1 for send. */ #define SEND_TYPE_ARG1 int +/* Define to the type qualifier of arg 2 for send. */ +#define SEND_QUAL_ARG2 const + /* Define to the type of arg 2 for send. */ #define SEND_TYPE_ARG2 void * diff --git a/lib/config-tpf.h b/lib/config-tpf.h index 48d1056f6..593437cc2 100644 --- a/lib/config-tpf.h +++ b/lib/config-tpf.h @@ -711,6 +711,9 @@ /* Define to the type of arg 1 for send. */ #define SEND_TYPE_ARG1 int +/* Define to the type qualifier of arg 2 for send. */ +#define SEND_QUAL_ARG2 const + /* Define to the type of arg 2 for send. */ #define SEND_TYPE_ARG2 char * diff --git a/lib/config-win32.h b/lib/config-win32.h index c8839d8ac..891183a14 100644 --- a/lib/config-win32.h +++ b/lib/config-win32.h @@ -257,6 +257,9 @@ /* Define to the type of arg 1 for send. */ #define SEND_TYPE_ARG1 SOCKET +/* Define to the type qualifier of arg 2 for send. */ +#define SEND_QUAL_ARG2 const + /* Define to the type of arg 2 for send. */ #define SEND_TYPE_ARG2 char * diff --git a/lib/config-win32ce.h b/lib/config-win32ce.h index 1b90858c5..68829ba59 100644 --- a/lib/config-win32ce.h +++ b/lib/config-win32ce.h @@ -243,6 +243,9 @@ /* Define to the type of arg 1 for send. */ #define SEND_TYPE_ARG1 SOCKET +/* Define to the type qualifier of arg 2 for send. */ +#define SEND_QUAL_ARG2 const + /* Define to the type of arg 2 for send. */ #define SEND_TYPE_ARG2 char * diff --git a/packages/vms/config-vms.h b/packages/vms/config-vms.h index e4f816ce8..b8da732a9 100644 --- a/packages/vms/config-vms.h +++ b/packages/vms/config-vms.h @@ -319,6 +319,9 @@ /* Define to the type of arg 1 for send. */ #define SEND_TYPE_ARG1 int +/* Define to the type qualifier of arg 2 for send. */ +#define SEND_QUAL_ARG2 const + /* Define to the type of arg 2 for send. */ #define SEND_TYPE_ARG2 void * -- cgit v1.2.3