7
7
* | (__| |_| | _ <| |___
8
8
* \___|\___/|_| \_\_____|
10
* Copyright (C) 1998 - 2007, Daniel Stenberg, <daniel@haxx.se>, et al.
10
* Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel@haxx.se>, et al.
12
12
* This software is licensed as described in the file COPYING, which
13
13
* you should have received as part of this distribution. The terms
20
20
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
21
21
* KIND, either express or implied.
23
* $Id: setup_once.h,v 1.30 2008-05-21 14:04:14 yangtse Exp $
23
* $Id: setup_once.h,v 1.35 2008-08-27 00:25:03 yangtse Exp $
24
24
***************************************************************************/
198
198
#endif /* HAVE_SEND */
202
#if defined(HAVE_RECVFROM)
204
* Currently recvfrom is only used on udp sockets.
206
#if !defined(RECVFROM_TYPE_ARG1) || \
207
!defined(RECVFROM_TYPE_ARG2) || \
208
!defined(RECVFROM_TYPE_ARG3) || \
209
!defined(RECVFROM_TYPE_ARG4) || \
210
!defined(RECVFROM_TYPE_ARG5) || \
211
!defined(RECVFROM_TYPE_ARG6) || \
212
!defined(RECVFROM_TYPE_RETV)
214
Error Missing_definition_of_return_and_arguments_types_of_recvfrom
217
#define sreadfrom(s,b,bl,f,fl) (ssize_t)recvfrom((RECVFROM_TYPE_ARG1) (s), \
218
(RECVFROM_TYPE_ARG2 *)(b), \
219
(RECVFROM_TYPE_ARG3) (bl), \
220
(RECVFROM_TYPE_ARG4) (0), \
221
(RECVFROM_TYPE_ARG5 *)(f), \
222
(RECVFROM_TYPE_ARG6 *)(fl))
224
#else /* HAVE_RECVFROM */
227
Error Missing_definition_of_macro_sreadfrom
230
#endif /* HAVE_RECVFROM */
233
#ifdef RECVFROM_TYPE_ARG6_IS_VOID
234
# define RECVFROM_ARG6_T int
236
# define RECVFROM_ARG6_T RECVFROM_TYPE_ARG6
202
242
* Uppercase macro versions of ANSI/ISO is*() functions/macros which
203
243
* avoid negative number inputs with argument byte codes > 127.