Line | Source | Count |
1 | | - |
2 | | - |
3 | | - |
4 | | - |
5 | int | - |
6 | BIO_get_host_ip(const char *str, unsigned char *ip) | - |
7 | { | - |
8 | struct addrinfo *res = | - |
9 | ((void *)0) | - |
10 | ; | - |
11 | struct addrinfo hints = { | - |
12 | .ai_family = | - |
13 | 2 | - |
14 | , | - |
15 | .ai_socktype = | - |
16 | SOCK_STREAM | - |
17 | , | - |
18 | .ai_flags = | - |
19 | 0x0001 | - |
20 | , | - |
21 | }; | - |
22 | uint32_t *iap = (in_addr_t *)ip; | - |
23 | int error; | - |
24 | | - |
25 | if (str == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
26 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
27 | ) { | - |
28 | ERR_asprintf_error_data("NULL host provided"); | - |
29 | return never executed: return (0); (0);never executed: return (0); | 0 |
30 | } | - |
31 | | - |
32 | if ((TRUE | never evaluated | FALSE | never evaluated |
error = getaddrinfo(str, TRUE | never evaluated | FALSE | never evaluated |
| 0 |
33 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
34 | , &hints, &res)) != 0TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
35 | ERR_put_error(32,(0xfff),(102),__FILE__,55); | - |
36 | ERR_asprintf_error_data("getaddrinfo: host='%s' : %s'", str, | - |
37 | gai_strerror(error)); | - |
38 | return never executed: return (0); (0);never executed: return (0); | 0 |
39 | } | - |
40 | *iap = (uint32_t)(((struct sockaddr_in *)(res->ai_addr))->sin_addr.s_addr); | - |
41 | freeaddrinfo(res); | - |
42 | return never executed: return (1); (1);never executed: return (1); | 0 |
43 | } | - |
44 | | - |
45 | int | - |
46 | BIO_get_port(const char *str, unsigned short *port_ptr) | - |
47 | { | - |
48 | struct addrinfo *res = | - |
49 | ((void *)0) | - |
50 | ; | - |
51 | struct addrinfo hints = { | - |
52 | .ai_family = | - |
53 | 0 | - |
54 | , | - |
55 | .ai_socktype = | - |
56 | SOCK_STREAM | - |
57 | , | - |
58 | .ai_flags = | - |
59 | 0x0001 | - |
60 | , | - |
61 | }; | - |
62 | int error; | - |
63 | | - |
64 | if (str == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
65 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
66 | ) { | - |
67 | ERR_put_error(32,(0xfff),(114),__FILE__,77); | - |
68 | return never executed: return (0); (0);never executed: return (0); | 0 |
69 | } | - |
70 | | - |
71 | if ((TRUE | never evaluated | FALSE | never evaluated |
error = getaddrinfo(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
72 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
73 | , str, &hints, &res)) != 0TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
74 | ERR_asprintf_error_data("getaddrinfo: service='%s' : %s'", str, | - |
75 | gai_strerror(error)); | - |
76 | return never executed: return (0); (0);never executed: return (0); | 0 |
77 | } | - |
78 | *port_ptr = | - |
79 | (__extension__ ({ unsigned short int __v, __x = (unsigned short int) ( | - |
80 | ((struct sockaddr_in *)(res->ai_addr))->sin_port | - |
81 | ); if (__builtin_constant_p (__x)TRUE | never evaluated | FALSE | never evaluated |
) __v = ((unsigned short int) ((((__x) >> 8) & 0xff) | (((__x) & 0xff) << 8)));never executed: __v = ((unsigned short int) ((((__x) >> 8) & 0xff) | (((__x) & 0xff) << 8))); else __asm__never executed: __asm__ ("rorw $8, %w0" : "=r" (__v) : "0" (__x) : "cc"); ("rorw $8, %w0" : "=r" (__v) : "0" (__x) : "cc");never executed: __asm__ ("rorw $8, %w0" : "=r" (__v) : "0" (__x) : "cc"); __v; })) | 0 |
82 | ; | - |
83 | freeaddrinfo(res); | - |
84 | return never executed: return (1); (1);never executed: return (1); | 0 |
85 | } | - |
86 | | - |
87 | int | - |
88 | BIO_sock_error(int sock) | - |
89 | { | - |
90 | socklen_t len; | - |
91 | int err; | - |
92 | | - |
93 | len = sizeof(err); | - |
94 | if (getsockopt(sock, TRUE | never evaluated | FALSE | never evaluated |
| 0 |
95 | 1TRUE | never evaluated | FALSE | never evaluated |
| 0 |
96 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
97 | 4TRUE | never evaluated | FALSE | never evaluated |
| 0 |
98 | , &err, &len) != 0TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
99 | return never executed: return (1); (1);never executed: return (1); | 0 |
100 | return never executed: return (err); (err);never executed: return (err); | 0 |
101 | } | - |
102 | | - |
103 | struct hostent * | - |
104 | BIO_gethostbyname(const char *name) | - |
105 | { | - |
106 | return never executed: return gethostbyname(name); gethostbyname(name);never executed: return gethostbyname(name); | 0 |
107 | } | - |
108 | | - |
109 | int | - |
110 | BIO_socket_ioctl(int fd, long type, void *arg) | - |
111 | { | - |
112 | int ret; | - |
113 | | - |
114 | ret = ioctl(fd, type, arg); | - |
115 | if (ret < 0TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
116 | ERR_put_error(2,(0xfff),( never executed: ERR_put_error(2,(0xfff),( (*__errno_location ()) ),__FILE__,116); | 0 |
117 | (*__errno_location ()) never executed: ERR_put_error(2,(0xfff),( (*__errno_location ()) ),__FILE__,116); | 0 |
118 | ),__FILE__,116); never executed: ERR_put_error(2,(0xfff),( (*__errno_location ()) ),__FILE__,116); | 0 |
119 | return never executed: return (ret); (ret);never executed: return (ret); | 0 |
120 | } | - |
121 | | - |
122 | int | - |
123 | BIO_get_accept_socket(char *host, int bind_mode) | - |
124 | { | - |
125 | struct addrinfo hints = { | - |
126 | .ai_family = | - |
127 | 2 | - |
128 | , | - |
129 | .ai_socktype = | - |
130 | SOCK_STREAM | - |
131 | , | - |
132 | .ai_flags = | - |
133 | 0x0001 | - |
134 | , | - |
135 | }; | - |
136 | struct addrinfo *res = | - |
137 | ((void *)0) | - |
138 | ; | - |
139 | char *h, *p, *str = | - |
140 | ((void *)0) | - |
141 | ; | - |
142 | int error, ret = 0, s = -1; | - |
143 | | - |
144 | if (host == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
145 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
146 | || (TRUE | never evaluated | FALSE | never evaluated |
str = TRUE | never evaluated | FALSE | never evaluated |
| 0 |
147 | (__extension__ (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
148 | hostTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
149 | )TRUE | never evaluated | FALSE | never evaluated |
&& ((TRUE | never evaluated | FALSE | never evaluated |
size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
150 | hostTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
151 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
152 | hostTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
153 | ) == 1)TRUE | never evaluated | FALSE | never evaluated |
? (((const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
154 | hostTRUE | never evaluated | FALSE | never evaluated |
TRUE | never evaluated | FALSE | never evaluated |
| 0 |
155 | ))[0] == '\0' ? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
156 | hostTRUE | never evaluated | FALSE | never evaluated |
| 0 |
157 | ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, never executed: __retval = (char *) memcpy (__retval, host , __len); | 0 |
158 | hostTRUE | never evaluated | FALSE | never evaluated |
never executed: __retval = (char *) memcpy (__retval, host , __len); | 0 |
159 | , __len); __retval; })) : __strdup (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
160 | hostTRUE | never evaluated | FALSE | never evaluated |
| 0 |
161 | )))TRUE | never evaluated | FALSE | never evaluated |
| 0 |
162 | ) == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
163 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
164 | ) | - |
165 | return never executed: return (-1); (-1);never executed: return (-1); | 0 |
166 | p = | - |
167 | ((void *)0) | - |
168 | ; | - |
169 | h = str; | - |
170 | if ((TRUE | never evaluated | FALSE | never evaluated |
p = strrchr(str, ':')) == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
171 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
172 | ) { | - |
173 | | - |
174 | p = str; | - |
175 | h = | - |
176 | ((void *)0) | - |
177 | ; | - |
178 | } never executed: end of block else { | 0 |
179 | *p++ = '\0'; | - |
180 | if (*TRUE | never evaluated | FALSE | never evaluated |
p == '\0'TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
181 | ERR_put_error(32,(0xfff),(114),__FILE__,143); | - |
182 | goto never executed: goto err; err;never executed: goto err; | 0 |
183 | } | - |
184 | if (*TRUE | never evaluated | FALSE | never evaluated |
h == '\0'TRUE | never evaluated | FALSE | never evaluated |
|| | 0 |
185 | __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
186 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
187 | ) && __builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
188 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
189 | ) && (__s1_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
190 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
191 | ), __s2_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
192 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
193 | ), (!((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
194 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
195 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
196 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
197 | ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
198 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
199 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
200 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
201 | ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
202 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
203 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
204 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
205 | ) : (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
206 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
207 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
208 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
209 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
210 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
211 | ) == 1) && (__s1_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
212 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
213 | ), __s1_len < 4) ? (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
214 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
215 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
216 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
217 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
218 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
219 | ) == 1) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
220 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
221 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
222 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
223 | ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
224 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
225 | ); int __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
226 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
227 | ))[0] - __s2[0]); if (__s1_len > 0TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
228 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
229 | ))[1] - __s2[1]); if (__s1_len > 1TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
230 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
231 | ))[2] - __s2[2]); if (__s1_len > 2TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) __result = (((const unsigned char *) (const char *) (never executed: __result = (((const unsigned char *) (const char *) ( h ))[3] - __s2[3]); | 0 |
232 | hTRUE | never evaluated | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( h ))[3] - __s2[3]); | 0 |
233 | ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
234 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
235 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
236 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
237 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
238 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
239 | ) == 1) && (__s2_len = __builtin_strlen (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
240 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
241 | ), __s2_len < 4) ? (__builtin_constant_p (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
242 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
243 | ) && ((size_t)(const void *)((TRUE | never evaluated | FALSE | never evaluated |
| 0 |
244 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
245 | ) + 1) - (size_t)(const void *)(TRUE | never evaluated | FALSE | never evaluated |
| 0 |
246 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
247 | ) == 1) ? __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
248 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
249 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
250 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
251 | ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
252 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
253 | ); int __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
254 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
255 | ))[0] - __s2[0]); if (__s2_len > 0TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
256 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
257 | ))[1] - __s2[1]); if (__s2_len > 1TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) { __result = (((const unsigned char *) (const char *) (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
258 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
259 | ))[2] - __s2[2]); if (__s2_len > 2TRUE | never evaluated | FALSE | never evaluated |
&& __result == 0TRUE | never evaluated | FALSE | never evaluated |
) __result = (((const unsigned char *) (const char *) (never executed: __result = (((const unsigned char *) (const char *) ( "*" ))[3] - __s2[3]); | 0 |
260 | "*"TRUE | never evaluated | FALSE | never evaluated |
never executed: __result = (((const unsigned char *) (const char *) ( "*" ))[3] - __s2[3]); | 0 |
261 | ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (TRUE | never evaluated | FALSE | never evaluated |
| 0 |
262 | hTRUE | never evaluated | FALSE | never evaluated |
| 0 |
263 | , TRUE | never evaluated | FALSE | never evaluated |
| 0 |
264 | "*"TRUE | never evaluated | FALSE | never evaluated |
| 0 |
265 | )))); }) TRUE | never evaluated | FALSE | never evaluated |
| 0 |
266 | == 0TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
267 | h = never executed: h = ((void *)0) ; | 0 |
268 | ((void *)0) never executed: h = ((void *)0) ; | 0 |
269 | ; never executed: h = ((void *)0) ; | 0 |
270 | } never executed: end of block | 0 |
271 | | - |
272 | if ((TRUE | never evaluated | FALSE | never evaluated |
error = getaddrinfo(h, p, &hints, &res)) != 0TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
273 | ERR_asprintf_error_data("getaddrinfo: '%s:%s': %s'", h, p, | - |
274 | gai_strerror(error)); | - |
275 | goto never executed: goto err; err;never executed: goto err; | 0 |
276 | } | - |
277 | if (h == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
278 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
279 | ) { | - |
280 | struct sockaddr_in *sin = (struct sockaddr_in *)res->ai_addr; | - |
281 | sin->sin_addr.s_addr = | - |
282 | ((in_addr_t) 0x00000000) | - |
283 | ; | - |
284 | } never executed: end of block | 0 |
285 | | - |
286 | s = socket( | - |
287 | 2 | - |
288 | , | - |
289 | SOCK_STREAM | - |
290 | , | - |
291 | IPPROTO_TCP | - |
292 | ); | - |
293 | if (s == -1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
294 | ERR_put_error(2,(0xfff),( | - |
295 | (*__errno_location ()) | - |
296 | ),__FILE__,162); | - |
297 | ERR_asprintf_error_data("host='%s'", host); | - |
298 | ERR_put_error(32,(0xfff),(118),__FILE__,164); | - |
299 | goto never executed: goto err; err;never executed: goto err; | 0 |
300 | } | - |
301 | if (bind_mode == 2TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
302 | int i = 1; | - |
303 | | - |
304 | ret = setsockopt(s, | - |
305 | 1 | - |
306 | , | - |
307 | 2 | - |
308 | , &i, sizeof(i)); | - |
309 | bind_mode = 0; | - |
310 | } never executed: end of block | 0 |
311 | if (bind(s, res->ai_addr, res->ai_addrlen) == -1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
312 | ERR_put_error(2,(0xfff),( | - |
313 | (*__errno_location ()) | - |
314 | ),__FILE__,174); | - |
315 | ERR_asprintf_error_data("host='%s'", host); | - |
316 | ERR_put_error(32,(0xfff),(117),__FILE__,176); | - |
317 | goto never executed: goto err; err;never executed: goto err; | 0 |
318 | } | - |
319 | if (listen(s, TRUE | never evaluated | FALSE | never evaluated |
| 0 |
320 | 128TRUE | never evaluated | FALSE | never evaluated |
| 0 |
321 | ) == -1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
322 | ERR_put_error(2,(0xfff),( | - |
323 | (*__errno_location ()) | - |
324 | ),__FILE__,180); | - |
325 | ERR_asprintf_error_data("host='%s'", host); | - |
326 | ERR_put_error(32,(0xfff),(119),__FILE__,182); | - |
327 | goto never executed: goto err; err;never executed: goto err; | 0 |
328 | } | - |
329 | ret = 1; | - |
330 | | - |
331 | err: code before this statement never executed: err: | 0 |
332 | free(str); | - |
333 | if (res != TRUE | never evaluated | FALSE | never evaluated |
| 0 |
334 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
335 | ) | - |
336 | freeaddrinfo(res); never executed: freeaddrinfo(res); | 0 |
337 | if ((TRUE | never evaluated | FALSE | never evaluated |
ret == 0)TRUE | never evaluated | FALSE | never evaluated |
&& (TRUE | never evaluated | FALSE | never evaluated |
s != -1)TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
338 | close(s); | - |
339 | s = -1; | - |
340 | } never executed: end of block | 0 |
341 | return never executed: return (s); (s);never executed: return (s); | 0 |
342 | } | - |
343 | | - |
344 | int | - |
345 | BIO_accept(int sock, char **addr) | - |
346 | { | - |
347 | char h[ | - |
348 | 1025 | - |
349 | ], s[ | - |
350 | 32 | - |
351 | ]; | - |
352 | struct sockaddr_in sin; | - |
353 | socklen_t sin_len = sizeof(sin); | - |
354 | int ret = -1; | - |
355 | | - |
356 | if (addr == TRUE | never evaluated | FALSE | never evaluated |
| 0 |
357 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
358 | ) | - |
359 | goto never executed: goto end; end;never executed: goto end; | 0 |
360 | | - |
361 | ret = accept(sock, (struct sockaddr *)&sin, &sin_len); | - |
362 | if (ret == -1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
363 | if (BIO_sock_should_retry(ret)TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
364 | return never executed: return -2; -2;never executed: return -2; | 0 |
365 | ERR_put_error(2,(0xfff),( | - |
366 | (*__errno_location ()) | - |
367 | ),__FILE__,213); | - |
368 | ERR_put_error(32,(0xfff),(100),__FILE__,214); | - |
369 | goto never executed: goto end; end;never executed: goto end; | 0 |
370 | } | - |
371 | | - |
372 | if (*TRUE | never evaluated | FALSE | never evaluated |
addr != TRUE | never evaluated | FALSE | never evaluated |
| 0 |
373 | ((void *)0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
374 | ) { | - |
375 | free(*addr); | - |
376 | *addr = | - |
377 | ((void *)0) | - |
378 | ; | - |
379 | } never executed: end of block | 0 |
380 | | - |
381 | if (sin.sin_family != TRUE | never evaluated | FALSE | never evaluated |
| 0 |
382 | 2TRUE | never evaluated | FALSE | never evaluated |
| 0 |
383 | ) | - |
384 | goto never executed: goto end; end;never executed: goto end; | 0 |
385 | | - |
386 | if (getnameinfo((struct sockaddr *)&sin, sin_len, h, sizeof(h),TRUE | never evaluated | FALSE | never evaluated |
| 0 |
387 | s, sizeof(s), TRUE | never evaluated | FALSE | never evaluated |
| 0 |
388 | 1TRUE | never evaluated | FALSE | never evaluated |
| 0 |
389 | |TRUE | never evaluated | FALSE | never evaluated |
| 0 |
390 | 2TRUE | never evaluated | FALSE | never evaluated |
| 0 |
391 | ) != 0TRUE | never evaluated | FALSE | never evaluated |
) | 0 |
392 | goto never executed: goto end; end;never executed: goto end; | 0 |
393 | | - |
394 | if ((TRUE | never evaluated | FALSE | never evaluated |
asprintf(addr, "%s:%s", h, s)) == -1TRUE | never evaluated | FALSE | never evaluated |
) { | 0 |
395 | ERR_put_error(32,(0xfff),((1|64)),__FILE__,231); | - |
396 | *addr = | - |
397 | ((void *)0) | - |
398 | ; | - |
399 | goto never executed: goto end; end;never executed: goto end; | 0 |
400 | } | - |
401 | end: code before this statement never executed: end: | 0 |
402 | return never executed: return (ret); (ret);never executed: return (ret); | 0 |
403 | } | - |
404 | | - |
405 | int | - |
406 | BIO_set_tcp_ndelay(int s, int on) | - |
407 | { | - |
408 | return never executed: return (setsockopt(s, IPPROTO_TCP , 1 , &on, sizeof(on)) == 0); (setsockopt(s, never executed: return (setsockopt(s, IPPROTO_TCP , 1 , &on, sizeof(on)) == 0); | 0 |
409 | IPPROTO_TCP never executed: return (setsockopt(s, IPPROTO_TCP , 1 , &on, sizeof(on)) == 0); | 0 |
410 | , never executed: return (setsockopt(s, IPPROTO_TCP , 1 , &on, sizeof(on)) == 0); | 0 |
411 | 1 never executed: return (setsockopt(s, IPPROTO_TCP , 1 , &on, sizeof(on)) == 0); | 0 |
412 | , &on, sizeof(on)) == 0); never executed: return (setsockopt(s, IPPROTO_TCP , 1 , &on, sizeof(on)) == 0); | 0 |
413 | } | - |
| | |