OpenCoverage

b_sock.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/openssl/src/crypto/bio/b_sock.c
Switch to Source codePreprocessed file
LineSourceCount
1int BIO_get_host_ip(const char *str, unsigned char *ip)-
2{-
3 BIO_ADDRINFO *res = -
4 ((void *)0)-
5 ;-
6 int ret = 0;-
7-
8 if (BIO_sock_init() != 1
BIO_sock_init() != 1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
9 return
never executed: return 0;
0;
never executed: return 0;
0
10-
11 if (BIO_lookup(str,
BIO_lookup(str...STREAM , &res)Description
TRUEnever evaluated
FALSEnever evaluated
0
12 ((void *)0)
BIO_lookup(str...STREAM , &res)Description
TRUEnever evaluated
FALSEnever evaluated
0
13 , BIO_LOOKUP_CLIENT,
BIO_lookup(str...STREAM , &res)Description
TRUEnever evaluated
FALSEnever evaluated
0
14 2
BIO_lookup(str...STREAM , &res)Description
TRUEnever evaluated
FALSEnever evaluated
0
15 ,
BIO_lookup(str...STREAM , &res)Description
TRUEnever evaluated
FALSEnever evaluated
0
16 SOCK_STREAM
BIO_lookup(str...STREAM , &res)Description
TRUEnever evaluated
FALSEnever evaluated
0
17 , &res)
BIO_lookup(str...STREAM , &res)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
18 size_t l;-
19-
20 if (BIO_ADDRINFO_family(res) !=
BIO_ADDRINFO_family(res) != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
21 2
BIO_ADDRINFO_family(res) != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
22 ) {-
23 ERR_put_error(32,(106),(107),__FILE__,41)-
24 ;-
25 }
never executed: end of block
else if (BIO_ADDR_rawaddress(BIO_ADDRINFO_address(res),
BIO_ADDR_rawad...oid *)0) , &l)Description
TRUEnever evaluated
FALSEnever evaluated
0
26 ((void *)0)
BIO_ADDR_rawad...oid *)0) , &l)Description
TRUEnever evaluated
FALSEnever evaluated
0
27 , &l)
BIO_ADDR_rawad...oid *)0) , &l)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
28-
29-
30-
31-
32 if (((
((l == 4) != 0)Description
TRUEnever evaluated
FALSEnever evaluated
l == 4) != 0)
((l == 4) != 0)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
33 ret = BIO_ADDR_rawaddress(BIO_ADDRINFO_address(res), ip, &l);
never executed: ret = BIO_ADDR_rawaddress(BIO_ADDRINFO_address(res), ip, &l);
0
34 }
never executed: end of block
0
35 BIO_ADDRINFO_free(res);-
36 }
never executed: end of block
else {
0
37 ERR_add_error_data(2, "host=", str);-
38 }
never executed: end of block
0
39-
40 return
never executed: return ret;
ret;
never executed: return ret;
0
41}-
42-
43int BIO_get_port(const char *str, unsigned short *port_ptr)-
44{-
45 BIO_ADDRINFO *res = -
46 ((void *)0)-
47 ;-
48 int ret = 0;-
49-
50 if (str ==
str == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
51 ((void *)0)
str == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
52 ) {-
53 ERR_put_error(32,(107),(113),__FILE__,64);-
54 return
never executed: return 0;
0;
never executed: return 0;
0
55 }-
56-
57 if (BIO_sock_init() != 1
BIO_sock_init() != 1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
58 return
never executed: return 0;
0;
never executed: return 0;
0
59-
60 if (BIO_lookup(
BIO_lookup( ((...STREAM , &res)Description
TRUEnever evaluated
FALSEnever evaluated
0
61 ((void *)0)
BIO_lookup( ((...STREAM , &res)Description
TRUEnever evaluated
FALSEnever evaluated
0
62 , str, BIO_LOOKUP_CLIENT,
BIO_lookup( ((...STREAM , &res)Description
TRUEnever evaluated
FALSEnever evaluated
0
63 2
BIO_lookup( ((...STREAM , &res)Description
TRUEnever evaluated
FALSEnever evaluated
0
64 ,
BIO_lookup( ((...STREAM , &res)Description
TRUEnever evaluated
FALSEnever evaluated
0
65 SOCK_STREAM
BIO_lookup( ((...STREAM , &res)Description
TRUEnever evaluated
FALSEnever evaluated
0
66 , &res)
BIO_lookup( ((...STREAM , &res)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
67 if (BIO_ADDRINFO_family(res) !=
BIO_ADDRINFO_family(res) != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
68 2
BIO_ADDRINFO_family(res) != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
69 ) {-
70 ERR_put_error(32,(107),(141),__FILE__,74)-
71 ;-
72 }
never executed: end of block
else {
0
73 *port_ptr = -
74 (__extension__ ({ unsigned short int __v, __x = (unsigned short int) (-
75 BIO_ADDR_rawport(BIO_ADDRINFO_address(res))-
76 ); if (__builtin_constant_p (__x)
__builtin_constant_p (__x)Description
TRUEnever evaluated
FALSEnever 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
77 ;-
78 ret = 1;-
79 }
never executed: end of block
0
80 BIO_ADDRINFO_free(res);-
81 }
never executed: end of block
else {
0
82 ERR_add_error_data(2, "host=", str);-
83 }
never executed: end of block
0
84-
85 return
never executed: return ret;
ret;
never executed: return ret;
0
86}-
87-
88-
89int BIO_sock_error(int sock)-
90{-
91 int j = 0, i;-
92 socklen_t size = sizeof(j);-
93-
94-
95-
96-
97-
98-
99-
100 i = getsockopt(sock, -
101 1-
102 , -
103 4-
104 , (void *)&j, &size);-
105 if (i < 0
i < 0Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-2
106 return
never executed: return (*__errno_location ()) ;
never executed: return (*__errno_location ()) ;
0
107 (*__errno_location ())
never executed: return (*__errno_location ()) ;
0
108 ;
never executed: return (*__errno_location ()) ;
0
109 else-
110 return
executed 2 times by 1 test: return j;
Executed by:
  • libcrypto.so.1.1
j;
executed 2 times by 1 test: return j;
Executed by:
  • libcrypto.so.1.1
2
111}-
112-
113-
114struct hostent *BIO_gethostbyname(const char *name)-
115{-
116-
117-
118-
119-
120 return
never executed: return gethostbyname(name);
gethostbyname(name);
never executed: return gethostbyname(name);
0
121}-
122-
123-
124int BIO_sock_init(void)-
125{-
126 return
executed 1469 times by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
1;
executed 1469 times by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
1469
127}-
128-
129void bio_sock_cleanup_int(void)-
130{-
131-
132-
133-
134-
135-
136-
137}-
138-
139int BIO_socket_ioctl(int fd, long type, void *arg)-
140{-
141 int i;-
142 i = ioctl(fd,type,arg);-
143-
144 if (i < 0
i < 0Description
TRUEnever evaluated
FALSEevaluated 564 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-564
145 ERR_put_error(2,(5),(
never executed: ERR_put_error(2,(5),( (*__errno_location ()) ),__FILE__,195);
0
146 (*__errno_location ())
never executed: ERR_put_error(2,(5),( (*__errno_location ()) ),__FILE__,195);
0
147 ),__FILE__,195);
never executed: ERR_put_error(2,(5),( (*__errno_location ()) ),__FILE__,195);
0
148 return
executed 564 times by 1 test: return i;
Executed by:
  • libcrypto.so.1.1
i;
executed 564 times by 1 test: return i;
Executed by:
  • libcrypto.so.1.1
564
149}-
150-
151-
152int BIO_get_accept_socket(char *host, int bind_mode)-
153{-
154 int s = (-1);-
155 char *h = -
156 ((void *)0)-
157 , *p = -
158 ((void *)0)-
159 ;-
160 BIO_ADDRINFO *res = -
161 ((void *)0)-
162 ;-
163-
164 if (!BIO_parse_hostserv(host, &h, &p, BIO_PARSE_PRIO_SERV)
!BIO_parse_hos...RSE_PRIO_SERV)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
165 return
never executed: return (-1);
(-1);
never executed: return (-1);
0
166-
167 if (BIO_sock_init() != 1
BIO_sock_init() != 1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
168 return
never executed: return (-1);
(-1);
never executed: return (-1);
0
169-
170 if (BIO_lookup(h, p, BIO_LOOKUP_SERVER,
BIO_lookup(h, ...M , &res) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
171 0
BIO_lookup(h, ...M , &res) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
172 ,
BIO_lookup(h, ...M , &res) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
173 SOCK_STREAM
BIO_lookup(h, ...M , &res) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
174 , &res) != 0
BIO_lookup(h, ...M , &res) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
175 goto
never executed: goto err;
err;
never executed: goto err;
0
176-
177 if ((
(s = BIO_socke...), 0)) == (-1)Description
TRUEnever evaluated
FALSEnever evaluated
s = BIO_socket(BIO_ADDRINFO_family(res), BIO_ADDRINFO_socktype(res),
(s = BIO_socke...), 0)) == (-1)Description
TRUEnever evaluated
FALSEnever evaluated
0
178 BIO_ADDRINFO_protocol(res), 0)) == (-1)
(s = BIO_socke...), 0)) == (-1)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
179 s = (-1);-
180 goto
never executed: goto err;
err;
never executed: goto err;
0
181 }-
182-
183 if (!BIO_listen(s, BIO_ADDRINFO_address(res),
!BIO_listen(s,...de ? 0x01 : 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
184 bind_mode ? 0x01 : 0)
!BIO_listen(s,...de ? 0x01 : 0)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
185 BIO_closesocket(s);-
186 s = (-1);-
187 }
never executed: end of block
0
188-
189 err:
code before this statement never executed: err:
0
190 BIO_ADDRINFO_free(res);-
191 CRYPTO_free(h, __FILE__, 229);-
192 CRYPTO_free(p, __FILE__, 230);-
193-
194 return
never executed: return s;
s;
never executed: return s;
0
195}-
196-
197int BIO_accept(int sock, char **ip_port)-
198{-
199 BIO_ADDR res;-
200 int ret = -1;-
201-
202 ret = BIO_accept_ex(sock, &res, 0);-
203 if (ret == (int)(-1)
ret == (int)(-1)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
204 if (BIO_sock_should_retry(ret)
BIO_sock_should_retry(ret)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
205 ret = -2;-
206 goto
never executed: goto end;
end;
never executed: goto end;
0
207 }-
208 ERR_put_error(2,(8),(-
209 (*__errno_location ())-
210 ),__FILE__,246);-
211 ERR_put_error(32,(101),(100),__FILE__,247);-
212 goto
never executed: goto end;
end;
never executed: goto end;
0
213 }-
214-
215 if (ip_port !=
ip_port != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
216 ((void *)0)
ip_port != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
217 ) {-
218 char *host = BIO_ADDR_hostname_string(&res, 1);-
219 char *port = BIO_ADDR_service_string(&res, 1);-
220 if (host !=
host != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
221 ((void *)0)
host != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
222 && port !=
port != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
223 ((void *)0)
port != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
224 )-
225 *
never executed: *ip_port = CRYPTO_zalloc(strlen(host) + strlen(port) + 2, __FILE__, 255);
ip_port = CRYPTO_zalloc(strlen(host) + strlen(port) + 2, __FILE__, 255);
never executed: *ip_port = CRYPTO_zalloc(strlen(host) + strlen(port) + 2, __FILE__, 255);
0
226 else-
227 *
never executed: *ip_port = ((void *)0) ;
ip_port =
never executed: *ip_port = ((void *)0) ;
0
228 ((void *)0)
never executed: *ip_port = ((void *)0) ;
0
229 ;
never executed: *ip_port = ((void *)0) ;
0
230-
231 if (*
*ip_port == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
ip_port ==
*ip_port == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
232 ((void *)0)
*ip_port == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
233 ) {-
234 ERR_put_error(32,(101),((1|64)),__FILE__,260);-
235 BIO_closesocket(ret);-
236 ret = (int)(-1);-
237 }
never executed: end of block
else {
0
238 strcpy(*ip_port, host);-
239 strcat(*ip_port, ":");-
240 strcat(*ip_port, port);-
241 }
never executed: end of block
0
242 CRYPTO_free(host, __FILE__, 268);-
243 CRYPTO_free(port, __FILE__, 269);-
244 }
never executed: end of block
0
245-
246 end:
code before this statement never executed: end:
0
247 return
never executed: return ret;
ret;
never executed: return ret;
0
248}-
249-
250-
251int BIO_set_tcp_ndelay(int s, int on)-
252{-
253 int ret = 0;-
254-
255 int opt;-
256-
257-
258 opt = -
259 6-
260 ;-
261-
262-
263-
264-
265-
266-
267 ret = setsockopt(s, opt, -
268 1-
269 , (char *)&on, sizeof(on));-
270-
271 return
executed 191 times by 1 test: return (ret == 0);
Executed by:
  • libcrypto.so.1.1
(ret == 0);
executed 191 times by 1 test: return (ret == 0);
Executed by:
  • libcrypto.so.1.1
191
272}-
273-
274int BIO_socket_nbio(int s, int mode)-
275{-
276 int ret = -1;-
277 int l;-
278-
279 l = mode;-
280-
281 l = mode;-
282-
283 ret = BIO_socket_ioctl(s, -
284 0x5421-
285 , &l);-
286 return
executed 564 times by 1 test: return (ret == 0);
Executed by:
  • libcrypto.so.1.1
(ret == 0);
executed 564 times by 1 test: return (ret == 0);
Executed by:
  • libcrypto.so.1.1
564
287}-
288-
289int BIO_sock_info(int sock,-
290 enum BIO_sock_info_type type, union BIO_sock_info_u *info)-
291{-
292 switch (type) {-
293 case
executed 178 times by 1 test: case BIO_SOCK_INFO_ADDRESS:
Executed by:
  • libcrypto.so.1.1
BIO_SOCK_INFO_ADDRESS:
executed 178 times by 1 test: case BIO_SOCK_INFO_ADDRESS:
Executed by:
  • libcrypto.so.1.1
178
294 {-
295 socklen_t addr_len;-
296 int ret = 0;-
297 addr_len = sizeof(*info->addr);-
298 ret = getsockname(sock, BIO_ADDR_sockaddr_noconst(info->addr),-
299 &addr_len);-
300 if (ret == -1
ret == -1Description
TRUEnever evaluated
FALSEevaluated 178 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
) {
0-178
301 ERR_put_error(2,(16),(-
302 (*__errno_location ())-
303 ),__FILE__,352);-
304 ERR_put_error(32,(141),(132),__FILE__,353);-
305 return
never executed: return 0;
0;
never executed: return 0;
0
306 }-
307 if ((
(size_t)addr_l...f(*info->addr)Description
TRUEnever evaluated
FALSEevaluated 178 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
size_t)addr_len > sizeof(*info->addr)
(size_t)addr_l...f(*info->addr)Description
TRUEnever evaluated
FALSEevaluated 178 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
) {
0-178
308 ERR_put_error(32,(141),(133),__FILE__,357);-
309 return
never executed: return 0;
0;
never executed: return 0;
0
310 }-
311 }-
312 break;
executed 178 times by 1 test: break;
Executed by:
  • libcrypto.so.1.1
178
313 default
never executed: default:
:
never executed: default:
0
314 ERR_put_error(32,(141),(140),__FILE__,363);-
315 return
never executed: return 0;
0;
never executed: return 0;
0
316 }-
317 return
executed 178 times by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
1;
executed 178 times by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
178
318}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2