OpenCoverage

canohost.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/openssh/src/canohost.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6-
7-
8-
9-
10-
11-
12-
13void-
14ipv64_normalise_mapped(struct sockaddr_storage *addr, socklen_t *len)-
15{-
16 struct sockaddr_in6 *a6 = (struct sockaddr_in6 *)addr;-
17 struct sockaddr_in *a4 = (struct sockaddr_in *)addr;-
18 struct in_addr inaddr;-
19 u_int16_t port;-
20-
21 if (addr->ss_family !=
addr->ss_family != 10Description
TRUEnever evaluated
FALSEnever evaluated
0
22 10
addr->ss_family != 10Description
TRUEnever evaluated
FALSEnever evaluated
0
23 ||-
24 !
! (__extension... (0xffff); }))Description
TRUEnever evaluated
FALSEnever evaluated
0
25 (__extension__ ({ const struct in6_addr *__a = (const struct in6_addr *) (
! (__extension... (0xffff); }))Description
TRUEnever evaluated
FALSEnever evaluated
0
26 &a6->sin6_addr
! (__extension... (0xffff); }))Description
TRUEnever evaluated
FALSEnever evaluated
0
27 ); __a->__in6_u.__u6_addr32[0] == 0 && __a->__in6_u.__u6_addr32[1] == 0 && __a->__in6_u.__u6_addr32[2] == __bswap_32 (0xffff); }))
! (__extension... (0xffff); }))Description
TRUEnever evaluated
FALSEnever evaluated
0
28 )-
29 return;
never executed: return;
0
30-
31 debug3("Normalising mapped IPv4 in IPv6 address");-
32-
33 memcpy(&inaddr, ((char *)&a6->sin6_addr) + 12, sizeof(inaddr));-
34 port = a6->sin6_port;-
35-
36 memset(a4, 0, sizeof(*a4));-
37-
38 a4->sin_family = -
39 2-
40 ;-
41 *len = sizeof(*a4);-
42 memcpy(&a4->sin_addr, &inaddr, sizeof(inaddr));-
43 a4->sin_port = port;-
44}
never executed: end of block
0
45-
46-
47-
48-
49-
50static char *-
51get_socket_address(int sock, int remote, int flags)-
52{-
53 struct sockaddr_storage addr;-
54 socklen_t addrlen;-
55 char ntop[-
56 1025-
57 ];-
58 int r;-
59-
60-
61 addrlen = sizeof(addr);-
62 memset(&addr, 0, sizeof(addr));-
63-
64 if (remote
remoteDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
65 if (getpeername(sock, (struct sockaddr *)&addr, &addrlen) != 0
getpeername(so...&addrlen) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
66 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
67 ((void *)0)
never executed: return ((void *)0) ;
0
68 ;
never executed: return ((void *)0) ;
0
69 }
never executed: end of block
else {
0
70 if (getsockname(sock, (struct sockaddr *)&addr, &addrlen) != 0
getsockname(so...&addrlen) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
71 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
72 ((void *)0)
never executed: return ((void *)0) ;
0
73 ;
never executed: return ((void *)0) ;
0
74 }
never executed: end of block
0
75-
76-
77 if (addr.ss_family ==
addr.ss_family == 10Description
TRUEnever evaluated
FALSEnever evaluated
0
78 10
addr.ss_family == 10Description
TRUEnever evaluated
FALSEnever evaluated
0
79 ) {-
80 addrlen = sizeof(struct sockaddr_in6);-
81 ipv64_normalise_mapped(&addr, &addrlen);-
82 }
never executed: end of block
0
83-
84 switch (addr.ss_family) {-
85 case
never executed: case 2 :
never executed: case 2 :
0
86 2
never executed: case 2 :
0
87 :
never executed: case 2 :
0
88 case
never executed: case 10 :
never executed: case 10 :
0
89 10
never executed: case 10 :
0
90 :
never executed: case 10 :
0
91-
92 if ((
(r = getnamein..., flags)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
r = getnameinfo((struct sockaddr *)&addr, addrlen, ntop,
(r = getnamein..., flags)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
93 sizeof(ntop),
(r = getnamein..., flags)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
94 ((void *)0)
(r = getnamein..., flags)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
95 , 0, flags)) != 0
(r = getnamein..., flags)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
96 error("%s: getnameinfo %d failed: %s", __func__,-
97 flags, ssh_gai_strerror(r));-
98 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
99 ((void *)0)
never executed: return ((void *)0) ;
0
100 ;
never executed: return ((void *)0) ;
0
101 }-
102 return
never executed: return xstrdup(ntop);
xstrdup(ntop);
never executed: return xstrdup(ntop);
0
103 case
never executed: case 1 :
never executed: case 1 :
0
104 1
never executed: case 1 :
0
105 :
never executed: case 1 :
0
106-
107 return
never executed: return xstrdup(((struct sockaddr_un *)&addr)->sun_path);
xstrdup(((struct sockaddr_un *)&addr)->sun_path);
never executed: return xstrdup(((struct sockaddr_un *)&addr)->sun_path);
0
108 default
never executed: default:
:
never executed: default:
0
109-
110 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
111 ((void *)0)
never executed: return ((void *)0) ;
0
112 ;
never executed: return ((void *)0) ;
0
113 }-
114}-
115-
116char *-
117get_peer_ipaddr(int sock)-
118{-
119 char *p;-
120-
121 if ((
(p = get_socke...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
p = get_socket_address(sock, 1,
(p = get_socke...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
122 1
(p = get_socke...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
123 )) !=
(p = get_socke...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
124 ((void *)0)
(p = get_socke...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
125 )-
126 return
never executed: return p;
p;
never executed: return p;
0
127 return
never executed: return xstrdup("UNKNOWN");
xstrdup("UNKNOWN");
never executed: return xstrdup("UNKNOWN");
0
128}-
129-
130char *-
131get_local_ipaddr(int sock)-
132{-
133 char *p;-
134-
135 if ((
(p = get_socke...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
p = get_socket_address(sock, 0,
(p = get_socke...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
136 1
(p = get_socke...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
137 )) !=
(p = get_socke...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
138 ((void *)0)
(p = get_socke...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
139 )-
140 return
never executed: return p;
p;
never executed: return p;
0
141 return
never executed: return xstrdup("UNKNOWN");
xstrdup("UNKNOWN");
never executed: return xstrdup("UNKNOWN");
0
142}-
143-
144char *-
145get_local_name(int fd)-
146{-
147 char *host, myname[-
148 1025-
149 ];-
150-
151-
152 if ((
(host = get_so...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
host = get_socket_address(fd, 0,
(host = get_so...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
153 8
(host = get_so...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
154 )) !=
(host = get_so...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
155 ((void *)0)
(host = get_so...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
156 )-
157 return
never executed: return host;
host;
never executed: return host;
0
158-
159-
160 if (gethostname(myname, sizeof(myname)) == -1
gethostname(my...myname)) == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
161 verbose("%s: gethostname: %s", __func__, strerror(-
162 (*__errno_location ())-
163 ));-
164 host = xstrdup("UNKNOWN");-
165 }
never executed: end of block
else {
0
166 host = xstrdup(myname);-
167 }
never executed: end of block
0
168-
169 return
never executed: return host;
host;
never executed: return host;
0
170}-
171-
172-
173-
174static int-
175get_sock_port(int sock, int local)-
176{-
177 struct sockaddr_storage from;-
178 socklen_t fromlen;-
179 char strport[-
180 32-
181 ];-
182 int r;-
183-
184-
185 fromlen = sizeof(from);-
186 memset(&from, 0, sizeof(from));-
187 if (local
localDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
188 if (getsockname(sock, (struct sockaddr *)&from, &fromlen) < 0
getsockname(so... &fromlen) < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
189 error("getsockname failed: %.100s", strerror(-
190 (*__errno_location ())-
191 ));-
192 return
never executed: return 0;
0;
never executed: return 0;
0
193 }-
194 }
never executed: end of block
else {
0
195 if (getpeername(sock, (struct sockaddr *)&from, &fromlen) < 0
getpeername(so... &fromlen) < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
196 debug("getpeername failed: %.100s", strerror(-
197 (*__errno_location ())-
198 ));-
199 return
never executed: return -1;
-1;
never executed: return -1;
0
200 }-
201 }
never executed: end of block
0
202-
203-
204 if (from.ss_family ==
from.ss_family == 10Description
TRUEnever evaluated
FALSEnever evaluated
0
205 10
from.ss_family == 10Description
TRUEnever evaluated
FALSEnever evaluated
0
206 )-
207 fromlen = sizeof(struct sockaddr_in6);
never executed: fromlen = sizeof(struct sockaddr_in6);
0
208-
209-
210 if (from.ss_family !=
from.ss_family != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
211 2
from.ss_family != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
212 && from.ss_family !=
from.ss_family != 10Description
TRUEnever evaluated
FALSEnever evaluated
0
213 10
from.ss_family != 10Description
TRUEnever evaluated
FALSEnever evaluated
0
214 )-
215 return
never executed: return 0;
0;
never executed: return 0;
0
216-
217-
218 if ((
(r = getnamein...rt), 2 )) != 0Description
TRUEnever evaluated
FALSEnever evaluated
r = getnameinfo((struct sockaddr *)&from, fromlen,
(r = getnamein...rt), 2 )) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
219 ((void *)0)
(r = getnamein...rt), 2 )) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
220 , 0,
(r = getnamein...rt), 2 )) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
221 strport, sizeof(strport),
(r = getnamein...rt), 2 )) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
222 2
(r = getnamein...rt), 2 )) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
223 )) != 0
(r = getnamein...rt), 2 )) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
224 fatal("%s: getnameinfo NI_NUMERICSERV failed: %s", __func__,
never executed: fatal("%s: getnameinfo NI_NUMERICSERV failed: %s", __func__, ssh_gai_strerror(r));
0
225 ssh_gai_strerror(r));
never executed: fatal("%s: getnameinfo NI_NUMERICSERV failed: %s", __func__, ssh_gai_strerror(r));
0
226 return
never executed: return atoi(strport);
atoi(strport);
never executed: return atoi(strport);
0
227}-
228-
229int-
230get_peer_port(int sock)-
231{-
232 return
never executed: return get_sock_port(sock, 0);
get_sock_port(sock, 0);
never executed: return get_sock_port(sock, 0);
0
233}-
234-
235int-
236get_local_port(int sock)-
237{-
238 return
never executed: return get_sock_port(sock, 1);
get_sock_port(sock, 1);
never executed: return get_sock_port(sock, 1);
0
239}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2