1 | #ifndef HEADER_CURL_WARNLESS_H |
2 | #define |
3 | /*************************************************************************** |
4 | * _ _ ____ _ |
5 | * Project ___| | | | _ \| | |
6 | * / __| | | | |_) | | |
7 | * | (__| |_| | _ <| |___ |
8 | * \___|\___/|_| \_\_____| |
9 | * |
10 | * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al. |
11 | * |
12 | * This software is licensed as described in the file COPYING, which |
13 | * you should have received as part of this distribution. The terms |
14 | * are also available at https://curl.haxx.se/docs/copyright.html. |
15 | * |
16 | * You may opt to use, copy, modify, merge, publish, distribute and/or sell |
17 | * copies of the Software, and permit persons to whom the Software is |
18 | * furnished to do so, under the terms of the COPYING file. |
19 | * |
20 | * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY |
21 | * KIND, either express or implied. |
22 | * |
23 | ***************************************************************************/ |
24 | |
25 | #ifdef USE_WINSOCK |
26 | #include <curl/curl.h> /* for curl_socket_t */ |
27 | #endif |
28 | |
29 | #define CURLX_FUNCTION_CAST(target_type, func) \ |
30 | (target_type)(void (*) (void))(func) |
31 | |
32 | unsigned short curlx_ultous(unsigned long ulnum); |
33 | |
34 | unsigned char curlx_ultouc(unsigned long ulnum); |
35 | |
36 | int curlx_ultosi(unsigned long ulnum); |
37 | |
38 | int curlx_uztosi(size_t uznum); |
39 | |
40 | curl_off_t curlx_uztoso(size_t uznum); |
41 | |
42 | unsigned long curlx_uztoul(size_t uznum); |
43 | |
44 | unsigned int curlx_uztoui(size_t uznum); |
45 | |
46 | int curlx_sltosi(long slnum); |
47 | |
48 | unsigned int curlx_sltoui(long slnum); |
49 | |
50 | unsigned short curlx_sltous(long slnum); |
51 | |
52 | ssize_t curlx_uztosz(size_t uznum); |
53 | |
54 | size_t curlx_sotouz(curl_off_t sonum); |
55 | |
56 | int curlx_sztosi(ssize_t sznum); |
57 | |
58 | unsigned short curlx_uitous(unsigned int uinum); |
59 | |
60 | size_t curlx_sitouz(int sinum); |
61 | |
62 | #ifdef USE_WINSOCK |
63 | |
64 | int curlx_sktosi(curl_socket_t s); |
65 | |
66 | curl_socket_t curlx_sitosk(int i); |
67 | |
68 | #endif /* USE_WINSOCK */ |
69 | |
70 | #if defined(WIN32) || defined(_WIN32) |
71 | |
72 | ssize_t curlx_read(int fd, void *buf, size_t count); |
73 | |
74 | ssize_t curlx_write(int fd, const void *buf, size_t count); |
75 | |
76 | #ifndef BUILDING_WARNLESS_C |
77 | # undef read |
78 | # define read(fd, buf, count) curlx_read(fd, buf, count) |
79 | # undef write |
80 | # define write(fd, buf, count) curlx_write(fd, buf, count) |
81 | #endif |
82 | |
83 | #endif /* WIN32 || _WIN32 */ |
84 | |
85 | #if defined(__INTEL_COMPILER) && defined(__unix__) |
86 | |
87 | int curlx_FD_ISSET(int fd, fd_set *fdset); |
88 | |
89 | void curlx_FD_SET(int fd, fd_set *fdset); |
90 | |
91 | void curlx_FD_ZERO(fd_set *fdset); |
92 | |
93 | unsigned short curlx_htons(unsigned short usnum); |
94 | |
95 | unsigned short curlx_ntohs(unsigned short usnum); |
96 | |
97 | #ifndef BUILDING_WARNLESS_C |
98 | # undef FD_ISSET |
99 | # define FD_ISSET(a,b) curlx_FD_ISSET((a),(b)) |
100 | # undef FD_SET |
101 | # define FD_SET(a,b) curlx_FD_SET((a),(b)) |
102 | # undef FD_ZERO |
103 | # define FD_ZERO(a) curlx_FD_ZERO((a)) |
104 | # undef htons |
105 | # define htons(a) curlx_htons((a)) |
106 | # undef ntohs |
107 | # define ntohs(a) curlx_ntohs((a)) |
108 | #endif |
109 | |
110 | #endif /* __INTEL_COMPILER && __unix__ */ |
111 | |
112 | #endif /* HEADER_CURL_WARNLESS_H */ |
113 | |