OpenCoverage

auth2.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/openssh/src/auth2.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6-
7-
8-
9-
10-
11-
12-
13-
14-
15-
16-
17extern ServerOptions options;-
18extern u_char *session_id2;-
19extern u_int session_id2_len;-
20extern struct sshbuf *loginmsg;-
21-
22-
23-
24extern Authmethod method_none;-
25extern Authmethod method_pubkey;-
26extern Authmethod method_passwd;-
27extern Authmethod method_kbdint;-
28extern Authmethod method_hostbased;-
29-
30-
31-
32-
33Authmethod *authmethods[] = {-
34 &method_none,-
35 &method_pubkey,-
36-
37-
38-
39 &method_passwd,-
40 &method_kbdint,-
41 &method_hostbased,-
42 -
43((void *)0)-
44-
45};-
46-
47-
48-
49static int input_service_request(int, u_int32_t, struct ssh *);-
50static int input_userauth_request(int, u_int32_t, struct ssh *);-
51-
52-
53static Authmethod *authmethod_lookup(Authctxt *, const char *);-
54static char *authmethods_get(Authctxt *authctxt);-
55-
56-
57-
58-
59-
60static int list_starts_with(const char *, const char *, const char *);-
61-
62char *-
63auth2_read_banner(void)-
64{-
65 struct stat st;-
66 char *banner = -
67 ((void *)0)-
68 ;-
69 size_t len, n;-
70 int fd;-
71-
72 if ((
(fd = open(opt...r, 00 )) == -1Description
TRUEnever evaluated
FALSEnever evaluated
fd = open(options.banner,
(fd = open(opt...r, 00 )) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
73 00
(fd = open(opt...r, 00 )) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
74 )) == -1
(fd = open(opt...r, 00 )) == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
75 return
never executed: return ( ((void *)0) );
(
never executed: return ( ((void *)0) );
0
76 ((void *)0)
never executed: return ( ((void *)0) );
0
77 );
never executed: return ( ((void *)0) );
0
78 if (fstat(fd, &st) == -1
fstat(fd, &st) == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
79 close(fd);-
80 return
never executed: return ( ((void *)0) );
(
never executed: return ( ((void *)0) );
0
81 ((void *)0)
never executed: return ( ((void *)0) );
0
82 );
never executed: return ( ((void *)0) );
0
83 }-
84 if (st.st_size <= 0
st.st_size <= 0Description
TRUEnever evaluated
FALSEnever evaluated
|| st.st_size > 1*1024*1024
st.st_size > 1*1024*1024Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
85 close(fd);-
86 return
never executed: return ( ((void *)0) );
(
never executed: return ( ((void *)0) );
0
87 ((void *)0)
never executed: return ( ((void *)0) );
0
88 );
never executed: return ( ((void *)0) );
0
89 }-
90-
91 len = (size_t)st.st_size;-
92 banner = xmalloc(len + 1);-
93 n = atomicio(read, fd, banner, len);-
94 close(fd);-
95-
96 if (n != len
n != lenDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
97 free(banner);-
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 banner[n] = '\0';-
103-
104 return
never executed: return (banner);
(banner);
never executed: return (banner);
0
105}-
106-
107void-
108userauth_send_banner(const char *msg)-
109{-
110 ssh_packet_start(active_state, (53));-
111 ssh_packet_put_cstring(active_state, (msg));-
112 ssh_packet_put_cstring(active_state, (""));-
113 ssh_packet_send(active_state);-
114 debug("%s: sent", __func__);-
115}
never executed: end of block
0
116-
117static void-
118userauth_banner(void)-
119{-
120 char *banner = -
121 ((void *)0)-
122 ;-
123-
124 if (options.banner ==
options.banner == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
125 ((void *)0)
options.banner == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
126 )-
127 return;
never executed: return;
0
128-
129 if ((
(banner = (use...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
banner = (use_privsep
use_privsepDescription
TRUEnever evaluated
FALSEnever evaluated
? mm_auth2_read_banner() : auth2_read_banner())) ==
(banner = (use...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
130 ((void *)0)
(banner = (use...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
131 )-
132 goto
never executed: goto done;
done;
never executed: goto done;
0
133 userauth_send_banner(banner);-
134-
135done:
code before this statement never executed: done:
0
136 free(banner);-
137}
never executed: end of block
0
138-
139-
140-
141-
142void-
143do_authentication2(Authctxt *authctxt)-
144{-
145 struct ssh *ssh = active_state;-
146 ssh->authctxt = authctxt;-
147 ssh_dispatch_init(ssh, &dispatch_protocol_error);-
148 ssh_dispatch_set(ssh, 5, &input_service_request);-
149 ssh_dispatch_run_fatal(ssh, DISPATCH_BLOCK, &authctxt->success);-
150 ssh->authctxt = -
151 ((void *)0)-
152 ;-
153}
never executed: end of block
0
154-
155-
156static int-
157input_service_request(int type, u_int32_t seq, struct ssh *ssh)-
158{-
159 Authctxt *authctxt = ssh->authctxt;-
160 u_int len;-
161 int acceptit = 0;-
162 char *service = ssh_packet_get_cstring(active_state, (&len));-
163 do { int _len = ssh_packet_remaining(active_state); if (_len > 0
_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
) { logit("Packet integrity error (%d bytes remaining) at %s:%d", _len ,__FILE__, 188); ssh_packet_disconnect(active_state, "Packet integrity error."); }
never executed: end of block
} while (0);
0
164-
165 if (authctxt ==
authctxt == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
166 ((void *)0)
authctxt == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
167 )-
168 fatal("input_service_request: no authctxt");
never executed: fatal("input_service_request: no authctxt");
0
169-
170 if (-
171 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
172 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
173 ) && __builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
174 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
175 ) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
176 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
177 ), __s2_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
178 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
179 ), (!((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
180 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
181 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
182 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
183 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
184 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
185 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
186 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
187 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
188 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
189 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
190 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
191 ) : (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
192 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
193 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
194 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
195 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
196 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
197 ) == 1) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
198 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
199 ), __s1_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
200 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
201 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
202 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
203 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
204 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
205 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
206 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
207 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
208 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
209 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
210 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
211 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
212 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
213 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
214 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
215 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
216 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
217 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( service ))[3] - __s2[3]);
0
218 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( service ))[3] - __s2[3]);
0
219 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
220 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
221 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
222 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
223 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
224 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
225 ) == 1) && (__s2_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
226 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
227 ), __s2_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
228 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
229 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
230 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
231 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
232 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
233 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
234 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
235 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
236 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
237 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
238 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
239 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
240 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
241 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
242 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
243 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
244 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
245 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( "ssh-userauth" ))[3] - __s2[3]);
0
246 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( "ssh-userauth" ))[3] - __s2[3]);
0
247 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
248 service
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
249 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
250 "ssh-userauth"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
251 )))); })
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
252 == 0
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
253 if (!authctxt->success
!authctxt->successDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
254 acceptit = 1;-
255-
256 ssh_dispatch_set(ssh, 50, &input_userauth_request);-
257 }
never executed: end of block
0
258 }
never executed: end of block
0
259-
260-
261 if (acceptit
acceptitDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
262 ssh_packet_start(active_state, (6));-
263 ssh_packet_put_cstring(active_state, (service));-
264 ssh_packet_send(active_state);-
265 packet_write_wait();-
266 }
never executed: end of block
else {
0
267 debug("bad service request %s", service);-
268 packet_disconnect("bad service request %s", service);-
269 }
never executed: end of block
0
270 free(service);-
271 return
never executed: return 0;
0;
never executed: return 0;
0
272}-
273-
274-
275static double-
276user_specific_delay(const char *user)-
277{-
278 char b[512];-
279 size_t len = ssh_digest_bytes(4);-
280 u_char *hash = xmalloc(len);-
281 double delay;-
282-
283 (void)snprintf(b, sizeof b, "%llu%s",-
284 (unsigned long long)options.timing_secret, user);-
285 if (ssh_digest_memory(4, b, strlen(b), hash, len) != 0
ssh_digest_mem...ash, len) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
286 fatal("%s: ssh_digest_memory", __func__);
never executed: fatal("%s: ssh_digest_memory", __func__);
0
287-
288 delay = (double)(((u_int32_t)(((const u_char *)(hash))[0]) << 24) | ((u_int32_t)(((const u_char *)(hash))[1]) << 16) | ((u_int32_t)(((const u_char *)(hash))[2]) << 8) | (u_int32_t)(((const u_char *)(hash))[3])) / 1000 / 1000 / 1000 / 1000;-
289 freezero(hash, len);-
290 debug3("%s: user specific delay %0.3lfms", __func__, delay/1000);-
291 return
never executed: return 0.005 + delay;
0.005 + delay;
never executed: return 0.005 + delay;
0
292}-
293-
294static void-
295ensure_minimum_time_since(double start, double seconds)-
296{-
297 struct timespec ts;-
298 double elapsed = monotime_double() - start, req = seconds, remain;-
299-
300-
301 while ((
(remain = seco...elapsed) < 0.0Description
TRUEnever evaluated
FALSEnever evaluated
remain = seconds - elapsed) < 0.0
(remain = seco...elapsed) < 0.0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
302 seconds *= 2;
never executed: seconds *= 2;
0
303-
304 ts.tv_sec = remain;-
305 ts.tv_nsec = (remain - ts.tv_sec) * 1000000000;-
306 debug3("%s: elapsed %0.3lfms, delaying %0.3lfms (requested %0.3lfms)",-
307 __func__, elapsed*1000, remain*1000, req*1000);-
308 nanosleep(&ts, -
309 ((void *)0)-
310 );-
311}
never executed: end of block
0
312-
313-
314static int-
315input_userauth_request(int type, u_int32_t seq, struct ssh *ssh)-
316{-
317 Authctxt *authctxt = ssh->authctxt;-
318 Authmethod *m = -
319 ((void *)0)-
320 ;-
321 char *user, *service, *method, *style = -
322 ((void *)0)-
323 ;-
324 int authenticated = 0;-
325 double tstart = monotime_double();-
326-
327 if (authctxt ==
authctxt == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
328 ((void *)0)
authctxt == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
329 )-
330 fatal("input_userauth_request: no authctxt");
never executed: fatal("input_userauth_request: no authctxt");
0
331-
332 user = ssh_packet_get_cstring(active_state, (-
333 ((void *)0)-
334 ));-
335 service = ssh_packet_get_cstring(active_state, (-
336 ((void *)0)-
337 ));-
338 method = ssh_packet_get_cstring(active_state, (-
339 ((void *)0)-
340 ));-
341 debug("userauth-request for user %s service %s method %s", user, service, method);-
342 debug("attempt %d failures %d", authctxt->attempt, authctxt->failures);-
343-
344 if ((
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
style =
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
345 (__extension__ (__builtin_constant_p (
__builtin_constant_p ( ':' )Description
TRUEnever evaluated
FALSEnever evaluated
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
346 ':'
__builtin_constant_p ( ':' )Description
TRUEnever evaluated
FALSEnever evaluated
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
347 )
__builtin_constant_p ( ':' )Description
TRUEnever evaluated
FALSEnever evaluated
&& !__builtin_constant_p (
!__builtin_constant_p ( user )Description
TRUEnever evaluated
FALSEnever evaluated
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
348 user
!__builtin_constant_p ( user )Description
TRUEnever evaluated
FALSEnever evaluated
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
349 )
!__builtin_constant_p ( user )Description
TRUEnever evaluated
FALSEnever evaluated
&& (
( ':' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
350 ':'
( ':' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
351 ) == '\0'
( ':' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
? (char *) __rawmemchr (
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
352 user
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
353 ,
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
354 ':'
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
355 ) : __builtin_strchr (
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
356 user
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
357 ,
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
358 ':'
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
359 )))
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
360 ) !=
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
361 ((void *)0)
(style = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
362 )-
363 *
never executed: *style++ = 0;
style++ = 0;
never executed: *style++ = 0;
0
364-
365 if (authctxt->attempt++ == 0
authctxt->attempt++ == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
366-
367 authctxt->pw = (use_privsep
use_privsepDescription
TRUEnever evaluated
FALSEnever evaluated
? mm_getpwnamallow(user) : getpwnamallow(user));
0
368 authctxt->user = xstrdup(user);-
369 if (authctxt->pw
authctxt->pwDescription
TRUEnever evaluated
FALSEnever evaluated
&&
0
370 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
371 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
372 ) && __builtin_constant_p (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
373 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
374 ) && (__s1_len = __builtin_strlen (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
375 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
376 ), __s2_len = __builtin_strlen (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
377 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
378 ), (!((size_t)(const void *)((
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
379 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
380 ) + 1) - (size_t)(const void *)(
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
381 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
382 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
383 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
384 ) + 1) - (size_t)(const void *)(
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
385 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
386 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
387 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
388 ,
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
389 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
390 ) : (__builtin_constant_p (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
391 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
392 ) && ((size_t)(const void *)((
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
393 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
394 ) + 1) - (size_t)(const void *)(
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
395 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
396 ) == 1) && (__s1_len = __builtin_strlen (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
397 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
398 ), __s1_len < 4) ? (__builtin_constant_p (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
399 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
400 ) && ((size_t)(const void *)((
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
401 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
402 ) + 1) - (size_t)(const void *)(
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
403 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
404 ) == 1) ? __builtin_strcmp (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
405 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
406 ,
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
407 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
408 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
409 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
410 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
411 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
412 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
413 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
414 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
415 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
416 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( service ))[3] - __s2[3]);
0
417 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( service ))[3] - __s2[3]);
0
418 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
419 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
420 ) && ((size_t)(const void *)((
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
421 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
422 ) + 1) - (size_t)(const void *)(
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
423 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
424 ) == 1) && (__s2_len = __builtin_strlen (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
425 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
426 ), __s2_len < 4) ? (__builtin_constant_p (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
427 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
428 ) && ((size_t)(const void *)((
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
429 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
430 ) + 1) - (size_t)(const void *)(
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
431 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
432 ) == 1) ? __builtin_strcmp (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
433 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
434 ,
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
435 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
436 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
437 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
438 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
439 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
440 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
441 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
442 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
443 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
444 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( "ssh-connection" ))[3] - __s2[3]);
0
445 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( "ssh-connection" ))[3] - __s2[3]);
0
446 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
447 service
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
448 ,
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
449 "ssh-connection"
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
450 )))); })
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
0
451 ==0
__extension__ ..." )))); }) ==0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
452 authctxt->valid = 1;-
453 debug2("%s: setting up authctxt for %s",-
454 __func__, user);-
455 }
never executed: end of block
else {
0
456-
457 authctxt->pw = fakepw();-
458-
459-
460-
461 }
never executed: end of block
0
462-
463-
464-
465-
466 ssh_packet_set_log_preamble(ssh, "%suser %s",-
467 authctxt->valid ? "authenticating " : "invalid ", user);-
468 setproctitle("%s%s", authctxt->valid ? user : "unknown",-
469 use_privsep ? " [net]" : "");-
470 authctxt->service = xstrdup(service);-
471 authctxt->style = style
styleDescription
TRUEnever evaluated
FALSEnever evaluated
? xstrdup(style) :
0
472 ((void *)0)-
473 ;-
474 if (use_privsep
use_privsepDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
475 mm_inform_authserv(service, style);
never executed: mm_inform_authserv(service, style);
0
476 userauth_banner();-
477 if (auth2_setup_methods_lists(authctxt) != 0
auth2_setup_me...authctxt) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
478 packet_disconnect("no authentication methods enabled");
never executed: packet_disconnect("no authentication methods enabled");
0
479 }
never executed: end of block
else if (
0
480 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
481 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
482 ) && __builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
483 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
484 ) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
485 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
486 ), __s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
487 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
488 ), (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
489 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
490 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
491 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
492 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
493 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
494 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
495 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
496 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
497 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
498 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
499 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
500 ) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
501 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
502 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
503 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
504 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
505 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
506 ) == 1) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
507 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
508 ), __s1_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
509 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
510 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
511 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
512 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
513 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
514 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
515 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
516 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
517 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
518 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
519 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
520 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
521 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
522 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
523 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
524 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
525 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
526 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( user ))[3] - __s2[3]);
0
527 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( user ))[3] - __s2[3]);
0
528 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
529 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
530 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
531 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
532 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
533 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
534 ) == 1) && (__s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
535 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
536 ), __s2_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
537 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
538 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
539 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
540 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
541 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
542 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
543 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
544 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
545 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
546 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
547 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
548 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
549 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
550 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
551 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
552 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
553 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
554 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( authctxt->user ))[3] - __s2[3]);
0
555 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( authctxt->user ))[3] - __s2[3]);
0
556 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
557 user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
558 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
559 authctxt->user
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
560 )))); })
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
561 != 0
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
||
0
562 -
563 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
564 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
565 ) && __builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
566 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
567 ) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
568 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
569 ), __s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
570 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
571 ), (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
572 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
573 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
574 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
575 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
576 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
577 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
578 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
579 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
580 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
581 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
582 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
583 ) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
584 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
585 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
586 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
587 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
588 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
589 ) == 1) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
590 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
591 ), __s1_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
592 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
593 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
594 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
595 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
596 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
597 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
598 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
599 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
600 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
601 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
602 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
603 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
604 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
605 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
606 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
607 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
608 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
609 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( service ))[3] - __s2[3]);
0
610 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( service ))[3] - __s2[3]);
0
611 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
612 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
613 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
614 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
615 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
616 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
617 ) == 1) && (__s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
618 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
619 ), __s2_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
620 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
621 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
622 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
623 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
624 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
625 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
626 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
627 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
628 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
629 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
630 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
631 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
632 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
633 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
634 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
635 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
636 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
637 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( authctxt->service ))[3] - __s2[3]);
0
638 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( authctxt->service ))[3] - __s2[3]);
0
639 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
640 service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
641 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
642 authctxt->service
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
643 )))); })
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
644 != 0
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
645 packet_disconnect("Change of username or service not allowed: "-
646 "(%s,%s) -> (%s,%s)",-
647 authctxt->user, authctxt->service, user, service);-
648 }
never executed: end of block
0
649-
650 auth2_challenge_stop(ssh);-
651-
652-
653-
654-
655-
656-
657-
658 auth2_authctxt_reset_info(authctxt);-
659 authctxt->postponed = 0;-
660 authctxt->server_caused_failure = 0;-
661-
662-
663 m = authmethod_lookup(authctxt, method);-
664 if (m !=
m != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
665 ((void *)0)
m != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
666 && authctxt->failures < options.max_authtries
authctxt->fail....max_authtriesDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
667 debug2("input_userauth_request: try method %s", method);-
668 authenticated = m->userauth(ssh);-
669 }
never executed: end of block
0
670 if (!authctxt->authenticated
!authctxt->authenticatedDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
671 ensure_minimum_time_since(tstart,
never executed: ensure_minimum_time_since(tstart, user_specific_delay(authctxt->user));
0
672 user_specific_delay(authctxt->user));
never executed: ensure_minimum_time_since(tstart, user_specific_delay(authctxt->user));
0
673 userauth_finish(ssh, authenticated, method, -
674 ((void *)0)-
675 );-
676-
677 free(service);-
678 free(user);-
679 free(method);-
680 return
never executed: return 0;
0;
never executed: return 0;
0
681}-
682-
683void-
684userauth_finish(struct ssh *ssh, int authenticated, const char *method,-
685 const char *submethod)-
686{-
687 Authctxt *authctxt = ssh->authctxt;-
688 char *methods;-
689 int partial = 0;-
690-
691 if (!authctxt->valid
!authctxt->validDescription
TRUEnever evaluated
FALSEnever evaluated
&& authenticated
authenticatedDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
692 fatal("INTERNAL ERROR: authenticated invalid user %s",
never executed: fatal("INTERNAL ERROR: authenticated invalid user %s", authctxt->user);
0
693 authctxt->user);
never executed: fatal("INTERNAL ERROR: authenticated invalid user %s", authctxt->user);
0
694 if (authenticated
authenticatedDescription
TRUEnever evaluated
FALSEnever evaluated
&& authctxt->postponed
authctxt->postponedDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
695 fatal("INTERNAL ERROR: authenticated and postponed");
never executed: fatal("INTERNAL ERROR: authenticated and postponed");
0
696-
697-
698 if (authenticated
authenticatedDescription
TRUEnever evaluated
FALSEnever evaluated
&& authctxt->pw->pw_uid == 0
authctxt->pw->pw_uid == 0Description
TRUEnever evaluated
FALSEnever evaluated
&&
0
699 !auth_root_allowed(ssh, method)
!auth_root_all...d(ssh, method)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
700 authenticated = 0;-
701-
702-
703-
704 }
never executed: end of block
0
705-
706 if (authenticated
authenticatedDescription
TRUEnever evaluated
FALSEnever evaluated
&& options.num_auth_methods != 0
options.num_auth_methods != 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
707 if (!auth2_update_methods_lists(authctxt, method, submethod)
!auth2_update_...od, submethod)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
708 authenticated = 0;-
709 partial = 1;-
710 }
never executed: end of block
0
711 }
never executed: end of block
0
712-
713-
714 auth_log(authctxt, authenticated, partial, method, submethod);-
715-
716-
717 if (authenticated
authenticatedDescription
TRUEnever evaluated
FALSEnever evaluated
|| partial
partialDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
718 auth2_update_session_info(authctxt, method, submethod);
never executed: auth2_update_session_info(authctxt, method, submethod);
0
719-
720 if (authctxt->postponed
authctxt->postponedDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
721 return;
never executed: return;
0
722 if (authenticated == 1
authenticated == 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
723-
724 ssh_dispatch_set(ssh, 50, &dispatch_protocol_ignore);-
725 ssh_packet_start(active_state, (52));-
726 ssh_packet_send(active_state);-
727 packet_write_wait();-
728-
729 authctxt->success = 1;-
730 ssh_packet_set_log_preamble(ssh, "user %s", authctxt->user);-
731 }
never executed: end of block
else {
0
732-
733 if (!partial
!partialDescription
TRUEnever evaluated
FALSEnever evaluated
&& !authctxt->server_caused_failure
!authctxt->ser...caused_failureDescription
TRUEnever evaluated
FALSEnever evaluated
&&
0
734 (authctxt->attempt > 1
authctxt->attempt > 1Description
TRUEnever evaluated
FALSEnever evaluated
||
0
735 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
736 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
737 ) && __builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
738 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
739 ) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
740 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
741 ), __s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
742 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
743 ), (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
744 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
745 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
746 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
747 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
748 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
749 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
750 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
751 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
752 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
753 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
754 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
755 ) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
756 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
757 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
758 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
759 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
760 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
761 ) == 1) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
762 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
763 ), __s1_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
764 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
765 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
766 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
767 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
768 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
769 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
770 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
771 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
772 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
773 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
774 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
775 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
776 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
777 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
778 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
779 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
780 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
781 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( method ))[3] - __s2[3]);
0
782 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( method ))[3] - __s2[3]);
0
783 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
784 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
785 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
786 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
787 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
788 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
789 ) == 1) && (__s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
790 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
791 ), __s2_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
792 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
793 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
794 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
795 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
796 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
797 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
798 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
799 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
800 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
801 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
802 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
803 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
804 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
805 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
806 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
807 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
808 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
809 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( "none" ))[3] - __s2[3]);
0
810 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( "none" ))[3] - __s2[3]);
0
811 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
812 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
813 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
814 "none"
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
815 )))); })
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
816 != 0
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
))
0
817 authctxt->failures++;
never executed: authctxt->failures++;
0
818 if (authctxt->failures >= options.max_authtries
authctxt->fail....max_authtriesDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
819-
820-
821-
822 auth_maxtries_exceeded(authctxt);-
823 }
never executed: end of block
0
824 methods = authmethods_get(authctxt);-
825 debug3("%s: failure partial=%d next methods=\"%s\"", __func__,-
826 partial, methods);-
827 ssh_packet_start(active_state, (51));-
828 ssh_packet_put_cstring(active_state, (methods));-
829 ssh_packet_put_char(active_state, (partial));-
830 ssh_packet_send(active_state);-
831 packet_write_wait();-
832 free(methods);-
833 }
never executed: end of block
0
834}-
835-
836-
837-
838-
839-
840-
841int-
842auth2_method_allowed(Authctxt *authctxt, const char *method,-
843 const char *submethod)-
844{-
845 u_int i;-
846-
847-
848-
849-
850-
851 if (options.num_auth_methods == 0
options.num_auth_methods == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
852 return
never executed: return 1;
1;
never executed: return 1;
0
853 for (i = 0; i < authctxt->num_auth_methods
i < authctxt->num_auth_methodsDescription
TRUEnever evaluated
FALSEnever evaluated
; i++) {
0
854 if (list_starts_with(authctxt->auth_methods[i], method,
list_starts_wi...ubmethod) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
855 submethod) != 0
list_starts_wi...ubmethod) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
856 return
never executed: return 1;
1;
never executed: return 1;
0
857 }
never executed: end of block
0
858 return
never executed: return 0;
0;
never executed: return 0;
0
859}-
860-
861static char *-
862authmethods_get(Authctxt *authctxt)-
863{-
864 struct sshbuf *b;-
865 char *list;-
866 int i, r;-
867-
868 if ((
(b = sshbuf_ne...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
b = sshbuf_new()) ==
(b = sshbuf_ne...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
869 ((void *)0)
(b = sshbuf_ne...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
870 )-
871 fatal("%s: sshbuf_new failed", __func__);
never executed: fatal("%s: sshbuf_new failed", __func__);
0
872 for (i = 0; authmethods[i] !=
authmethods[i] != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
873 ((void *)0)
authmethods[i] != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
874 ; i++) {-
875 if (-
876 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
877 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
878 ) && __builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
879 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
880 ) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
881 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
882 ), __s2_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
883 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
884 ), (!((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
885 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
886 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
887 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
888 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
889 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
890 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
891 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
892 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
893 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
894 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
895 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
896 ) : (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
897 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
898 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
899 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
900 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
901 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
902 ) == 1) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
903 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
904 ), __s1_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
905 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
906 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
907 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
908 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
909 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
910 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
911 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
912 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
913 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
914 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
915 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
916 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
917 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
918 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
919 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
920 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
921 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
922 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( authmethods[i]->name ))[3] - __s2[3]);
0
923 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( authmethods[i]->name ))[3] - __s2[3]);
0
924 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
925 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
926 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
927 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
928 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
929 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
930 ) == 1) && (__s2_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
931 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
932 ), __s2_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
933 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
934 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
935 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
936 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
937 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
938 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
939 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
940 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
941 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
942 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
943 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
944 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
945 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
946 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
947 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
948 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
949 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
950 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( "none" ))[3] - __s2[3]);
0
951 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( "none" ))[3] - __s2[3]);
0
952 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
953 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
954 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
955 "none"
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
956 )))); })
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
957 == 0
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
958 continue;
never executed: continue;
0
959 if (authmethods[i]->enabled ==
authmethods[i]...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
960 ((void *)0)
authmethods[i]...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
961 ||-
962 *(
*(authmethods[...>enabled) == 0Description
TRUEnever evaluated
FALSEnever evaluated
authmethods[i]->enabled) == 0
*(authmethods[...>enabled) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
963 continue;
never executed: continue;
0
964 if (!auth2_method_allowed(authctxt, authmethods[i]->name,
!auth2_method_... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
965
!auth2_method_... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
966 ((void *)0)
!auth2_method_... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
967 )
!auth2_method_... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
)
0
968 continue;
never executed: continue;
0
969 if ((
(r = sshbuf_pu...]->name)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
r = sshbuf_putf(b, "%s%s", sshbuf_len(b) ? "," : "",
(r = sshbuf_pu...]->name)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
970 authmethods[i]->name)) != 0
(r = sshbuf_pu...]->name)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
971 fatal("%s: buffer error: %s", __func__, ssh_err(r));
never executed: fatal("%s: buffer error: %s", __func__, ssh_err(r));
0
972 }
never executed: end of block
0
973 if ((
(list = sshbuf...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
list = sshbuf_dup_string(b)) ==
(list = sshbuf...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
974 ((void *)0)
(list = sshbuf...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
975 )-
976 fatal("%s: sshbuf_dup_string failed", __func__);
never executed: fatal("%s: sshbuf_dup_string failed", __func__);
0
977 sshbuf_free(b);-
978 return
never executed: return list;
list;
never executed: return list;
0
979}-
980-
981static Authmethod *-
982authmethod_lookup(Authctxt *authctxt, const char *name)-
983{-
984 int i;-
985-
986 if (name !=
name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
987 ((void *)0)
name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
988 )-
989 for (i = 0; authmethods[i] !=
authmethods[i] != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
990 ((void *)0)
authmethods[i] != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
991 ; i++)-
992 if (authmethods[i]->enabled !=
authmethods[i]...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
993 ((void *)0)
authmethods[i]...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
994 &&-
995 *(
*(authmethods[...>enabled) != 0Description
TRUEnever evaluated
FALSEnever evaluated
authmethods[i]->enabled) != 0
*(authmethods[...>enabled) != 0Description
TRUEnever evaluated
FALSEnever evaluated
&&
0
996 -
997 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
998 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
999 ) && __builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1000 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1001 ) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1002 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1003 ), __s2_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1004 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1005 ), (!((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1006 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1007 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1008 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1009 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1010 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1011 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1012 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1013 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1014 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1015 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1016 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1017 ) : (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1018 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1019 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1020 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1021 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1022 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1023 ) == 1) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1024 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1025 ), __s1_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1026 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1027 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1028 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1029 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1030 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1031 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1032 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1033 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1034 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1035 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1036 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1037 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1038 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1039 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1040 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1041 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1042 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1043 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( name ))[3] - __s2[3]);
0
1044 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( name ))[3] - __s2[3]);
0
1045 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1046 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1047 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1048 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1049 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1050 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1051 ) == 1) && (__s2_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1052 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1053 ), __s2_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1054 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1055 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1056 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1057 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1058 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1059 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1060 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1061 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1062 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1063 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1064 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1065 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1066 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1067 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1068 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1069 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1070 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1071 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( authmethods[i]->name ))[3] - __s2[3]);
0
1072 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( authmethods[i]->name ))[3] - __s2[3]);
0
1073 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1074 name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1075 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1076 authmethods[i]->name
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1077 )))); })
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1078 == 0
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
&&
0
1079 auth2_method_allowed(authctxt,
auth2_method_a... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1080 authmethods[i]->name,
auth2_method_a... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1081 ((void *)0)
auth2_method_a... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1082 )
auth2_method_a... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1083 return
never executed: return authmethods[i];
authmethods[i];
never executed: return authmethods[i];
0
1084 debug2("Unrecognized authentication method name: %s",-
1085 name ? name : "NULL");-
1086 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
1087 ((void *)0)
never executed: return ((void *)0) ;
0
1088 ;
never executed: return ((void *)0) ;
0
1089}-
1090-
1091-
1092-
1093-
1094-
1095-
1096int-
1097auth2_methods_valid(const char *_methods, int need_enable)-
1098{-
1099 char *methods, *omethods, *method, *p;-
1100 u_int i, found;-
1101 int ret = -1;-
1102-
1103 if (*
*_methods == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
_methods == '\0'
*_methods == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1104 error("empty authentication method list");-
1105 return
never executed: return -1;
-1;
never executed: return -1;
0
1106 }-
1107 omethods = methods = xstrdup(_methods);-
1108 while ((
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
method =
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1109 __extension__ ({ char __r0, __r1, __r2; (__builtin_constant_p (
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1110 ","
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1111 ) && ((size_t)(const void *)((
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1112 ","
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1113 ) + 1) - (size_t)(const void *)(
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1114 ","
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1115 ) == 1) && (__r0 = ((const char *) (
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1116 ","
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1117 ))[0], ((const char *) (
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1118 ","
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1119 ))[0] != '\0') ? ((__r1 = ((const char *) (
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1120 ","
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1121 ))[1], ((const char *) (
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1122 ","
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1123 ))[1] == '\0') ? __strsep_1c (
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1124 &methods
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1125 , __r0) : ((__r2 = ((const char *) (
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1126 ","
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1127 ))[2], __r2 == '\0') ? __strsep_2c (
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1128 &methods
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1129 , __r0, __r1) : (((const char *) (
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1130 ","
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1131 ))[3] == '\0' ? __strsep_3c (
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1132 &methods
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1133 , __r0, __r1, __r2) : __strsep_g (
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1134 &methods
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1135 ,
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1136 ","
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1137 )))) : __strsep_g (
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1138 &methods
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1139 ,
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1140 ","
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1141 )); })
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1142 ) !=
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1143 ((void *)0)
(method = __ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1144 ) {-
1145 for (found = i = 0; !found
!foundDescription
TRUEnever evaluated
FALSEnever evaluated
&& authmethods[i] !=
authmethods[i] != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1146 ((void *)0)
authmethods[i] != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1147 ; i++) {-
1148 if ((
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
p =
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1149 (__extension__ (__builtin_constant_p (
__builtin_constant_p ( ':' )Description
TRUEnever evaluated
FALSEnever evaluated
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1150 ':'
__builtin_constant_p ( ':' )Description
TRUEnever evaluated
FALSEnever evaluated
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1151 )
__builtin_constant_p ( ':' )Description
TRUEnever evaluated
FALSEnever evaluated
&& !__builtin_constant_p (
!__builtin_con...t_p ( method )Description
TRUEnever evaluated
FALSEnever evaluated
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1152 method
!__builtin_con...t_p ( method )Description
TRUEnever evaluated
FALSEnever evaluated
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1153 )
!__builtin_con...t_p ( method )Description
TRUEnever evaluated
FALSEnever evaluated
&& (
( ':' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1154 ':'
( ':' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1155 ) == '\0'
( ':' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
? (char *) __rawmemchr (
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1156 method
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1157 ,
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1158 ':'
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1159 ) : __builtin_strchr (
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1160 method
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1161 ,
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1162 ':'
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1163 )))
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1164 ) !=
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1165 ((void *)0)
(p = (__extens...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1166 )-
1167 *
never executed: *p = '\0';
p = '\0';
never executed: *p = '\0';
0
1168 if (-
1169 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1170 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1171 ) && __builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1172 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1173 ) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1174 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1175 ), __s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1176 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1177 ), (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1178 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1179 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1180 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1181 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1182 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1183 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1184 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1185 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1186 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1187 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1188 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1189 ) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1190 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1191 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1192 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1193 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1194 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1195 ) == 1) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1196 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1197 ), __s1_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1198 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1199 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1200 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1201 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1202 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1203 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1204 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1205 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1206 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1207 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1208 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1209 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1210 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1211 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1212 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1213 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1214 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1215 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( method ))[3] - __s2[3]);
0
1216 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( method ))[3] - __s2[3]);
0
1217 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1218 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1219 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1220 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1221 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1222 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1223 ) == 1) && (__s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1224 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1225 ), __s2_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1226 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1227 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1228 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1229 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1230 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1231 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1232 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1233 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1234 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1235 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1236 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1237 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1238 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1239 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1240 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1241 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1242 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1243 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( authmethods[i]->name ))[3] - __s2[3]);
0
1244 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( authmethods[i]->name ))[3] - __s2[3]);
0
1245 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1246 method
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1247 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1248 authmethods[i]->name
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1249 )))); })
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1250 != 0
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1251 continue;
never executed: continue;
0
1252 if (need_enable
need_enableDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1253 if (authmethods[i]->enabled ==
authmethods[i]...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1254 ((void *)0)
authmethods[i]...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1255 ||-
1256 *(
*(authmethods[...>enabled) == 0Description
TRUEnever evaluated
FALSEnever evaluated
authmethods[i]->enabled) == 0
*(authmethods[...>enabled) == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1257 error("Disabled method \"%s\" in "-
1258 "AuthenticationMethods list \"%s\"",-
1259 method, _methods);-
1260 goto
never executed: goto out;
out;
never executed: goto out;
0
1261 }-
1262 }
never executed: end of block
0
1263 found = 1;-
1264 break;
never executed: break;
0
1265 }-
1266 if (!found
!foundDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1267 error("Unknown authentication method \"%s\" in list",-
1268 method);-
1269 goto
never executed: goto out;
out;
never executed: goto out;
0
1270 }-
1271 }
never executed: end of block
0
1272 ret = 0;-
1273 out:
code before this statement never executed: out:
0
1274 free(omethods);-
1275 return
never executed: return ret;
ret;
never executed: return ret;
0
1276}-
1277int-
1278auth2_setup_methods_lists(Authctxt *authctxt)-
1279{-
1280 u_int i;-
1281-
1282 if (options.num_auth_methods == 0
options.num_auth_methods == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1283 return
never executed: return 0;
0;
never executed: return 0;
0
1284 debug3("%s: checking methods", __func__);-
1285 authctxt->auth_methods = xcalloc(options.num_auth_methods,-
1286 sizeof(*authctxt->auth_methods));-
1287 authctxt->num_auth_methods = 0;-
1288 for (i = 0; i < options.num_auth_methods
i < options.num_auth_methodsDescription
TRUEnever evaluated
FALSEnever evaluated
; i++) {
0
1289 if (auth2_methods_valid(options.auth_methods[i], 1) != 0
auth2_methods_...ds[i], 1) != 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1290 logit("Authentication methods list \"%s\" contains "-
1291 "disabled method, skipping",-
1292 options.auth_methods[i]);-
1293 continue;
never executed: continue;
0
1294 }-
1295 debug("authentication methods list %d: %s",-
1296 authctxt->num_auth_methods, options.auth_methods[i]);-
1297 authctxt->auth_methods[authctxt->num_auth_methods++] =-
1298 xstrdup(options.auth_methods[i]);-
1299 }
never executed: end of block
0
1300 if (authctxt->num_auth_methods == 0
authctxt->num_...h_methods == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1301 error("No AuthenticationMethods left after eliminating "-
1302 "disabled methods");-
1303 return
never executed: return -1;
-1;
never executed: return -1;
0
1304 }-
1305 return
never executed: return 0;
0;
never executed: return 0;
0
1306}-
1307-
1308static int-
1309list_starts_with(const char *methods, const char *method,-
1310 const char *submethod)-
1311{-
1312 size_t l = strlen(method);-
1313 int match;-
1314 const char *p;-
1315-
1316 if (-
1317 (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
__extension__ (__builtin_constant_p (
__builtin_constant_p ( l )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1318 l
__builtin_constant_p ( l )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1319 )
__builtin_constant_p ( l )Description
TRUEnever evaluated
FALSEnever evaluated
&& ((__builtin_constant_p (
__builtin_cons..._p ( methods )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1320 methods
__builtin_cons..._p ( methods )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1321 )
__builtin_cons..._p ( methods )Description
TRUEnever evaluated
FALSEnever evaluated
&& strlen (
strlen ( metho...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1322 methods
strlen ( metho...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1323 ) < ((size_t) (
strlen ( metho...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1324 l
strlen ( metho...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1325 ))
strlen ( metho...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
) || (__builtin_constant_p (
__builtin_cons...t_p ( method )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1326 method
__builtin_cons...t_p ( method )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1327 )
__builtin_cons...t_p ( method )Description
TRUEnever evaluated
FALSEnever evaluated
&& strlen (
strlen ( metho...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1328 method
strlen ( metho...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1329 ) < ((size_t) (
strlen ( metho...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1330 l
strlen ( metho...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1331 ))
strlen ( metho...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
)) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1332 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1333 ) && __builtin_constant_p (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1334 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1335 ) && (__s1_len = __builtin_strlen (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1336 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1337 ), __s2_len = __builtin_strlen (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1338 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1339 ), (!((size_t)(const void *)((
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1340 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1341 ) + 1) - (size_t)(const void *)(
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1342 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1343 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1344 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1345 ) + 1) - (size_t)(const void *)(
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1346 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1347 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1348 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1349 ,
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1350 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1351 ) : (__builtin_constant_p (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1352 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1353 ) && ((size_t)(const void *)((
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1354 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1355 ) + 1) - (size_t)(const void *)(
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1356 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1357 ) == 1) && (__s1_len = __builtin_strlen (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1358 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1359 ), __s1_len < 4) ? (__builtin_constant_p (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1360 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1361 ) && ((size_t)(const void *)((
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1362 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1363 ) + 1) - (size_t)(const void *)(
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1364 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1365 ) == 1) ? __builtin_strcmp (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1366 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1367 ,
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1368 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1369 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1370 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1371 ); int __result = (((const unsigned char *) (const char *) (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1372 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1373 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1374 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1375 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1376 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1377 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( methods ))[3] - __s2[3]);
0
1378 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( methods ))[3] - __s2[3]);
0
1379 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1380 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1381 ) && ((size_t)(const void *)((
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1382 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1383 ) + 1) - (size_t)(const void *)(
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1384 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1385 ) == 1) && (__s2_len = __builtin_strlen (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1386 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1387 ), __s2_len < 4) ? (__builtin_constant_p (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1388 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1389 ) && ((size_t)(const void *)((
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1390 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1391 ) + 1) - (size_t)(const void *)(
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1392 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1393 ) == 1) ? __builtin_strcmp (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1394 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1395 ,
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1396 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1397 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1398 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1399 ); int __result = (((const unsigned char *) (const char *) (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1400 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1401 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1402 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1403 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1404 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1405 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( method ))[3] - __s2[3]);
0
1406 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( method ))[3] - __s2[3]);
0
1407 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1408 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1409 ,
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1410 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1411 )))); }) : strncmp (
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1412 methods
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1413 ,
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1414 method
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1415 ,
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1416 l
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1417 )))
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1418 != 0
(__extension__...d , l ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1419 return
never executed: return 0;
0;
never executed: return 0;
0
1420 p = methods + l;-
1421 match = 1;-
1422 if (*
*p == ':'Description
TRUEnever evaluated
FALSEnever evaluated
p == ':'
*p == ':'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1423 if (!submethod
!submethodDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1424 return
never executed: return 3;
3;
never executed: return 3;
0
1425 l = strlen(submethod);-
1426 p += 1;-
1427 if (-
1428 (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
__extension__ (__builtin_constant_p (
__builtin_constant_p ( l )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1429 l
__builtin_constant_p ( l )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1430 )
__builtin_constant_p ( l )Description
TRUEnever evaluated
FALSEnever evaluated
&& ((__builtin_constant_p (
__builtin_cons... ( submethod )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1431 submethod
__builtin_cons... ( submethod )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1432 )
__builtin_cons... ( submethod )Description
TRUEnever evaluated
FALSEnever evaluated
&& strlen (
strlen ( subme...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1433 submethod
strlen ( subme...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1434 ) < ((size_t) (
strlen ( subme...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1435 l
strlen ( subme...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1436 ))
strlen ( subme...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
) || (__builtin_constant_p (
__builtin_constant_p ( p )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1437 p
__builtin_constant_p ( p )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1438 )
__builtin_constant_p ( p )Description
TRUEnever evaluated
FALSEnever evaluated
&& strlen (
strlen ( p ) <...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1439 p
strlen ( p ) <...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1440 ) < ((size_t) (
strlen ( p ) <...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1441 l
strlen ( p ) <...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1442 ))
strlen ( p ) <...size_t) ( l ))Description
TRUEnever evaluated
FALSEnever evaluated
)) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1443 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1444 ) && __builtin_constant_p (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1445 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1446 ) && (__s1_len = __builtin_strlen (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1447 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1448 ), __s2_len = __builtin_strlen (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1449 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1450 ), (!((size_t)(const void *)((
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1451 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1452 ) + 1) - (size_t)(const void *)(
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1453 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1454 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1455 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1456 ) + 1) - (size_t)(const void *)(
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1457 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1458 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1459 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1460 ,
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1461 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1462 ) : (__builtin_constant_p (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1463 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1464 ) && ((size_t)(const void *)((
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1465 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1466 ) + 1) - (size_t)(const void *)(
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1467 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1468 ) == 1) && (__s1_len = __builtin_strlen (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1469 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1470 ), __s1_len < 4) ? (__builtin_constant_p (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1471 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1472 ) && ((size_t)(const void *)((
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1473 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1474 ) + 1) - (size_t)(const void *)(
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1475 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1476 ) == 1) ? __builtin_strcmp (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1477 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1478 ,
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1479 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1480 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1481 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1482 ); int __result = (((const unsigned char *) (const char *) (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1483 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1484 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1485 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1486 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1487 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1488 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( submethod ))[3] - __s2[3]);
0
1489 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( submethod ))[3] - __s2[3]);
0
1490 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1491 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1492 ) && ((size_t)(const void *)((
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1493 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1494 ) + 1) - (size_t)(const void *)(
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1495 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1496 ) == 1) && (__s2_len = __builtin_strlen (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1497 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1498 ), __s2_len < 4) ? (__builtin_constant_p (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1499 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1500 ) && ((size_t)(const void *)((
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1501 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1502 ) + 1) - (size_t)(const void *)(
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1503 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1504 ) == 1) ? __builtin_strcmp (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1505 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1506 ,
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1507 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1508 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1509 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1510 ); int __result = (((const unsigned char *) (const char *) (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1511 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1512 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1513 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1514 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1515 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1516 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( p ))[3] - __s2[3]);
0
1517 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( p ))[3] - __s2[3]);
0
1518 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1519 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1520 ,
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1521 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1522 )))); }) : strncmp (
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1523 submethod
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1524 ,
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1525 p
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1526 ,
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1527 l
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1528 )))
(__extension__...od , p , l )))Description
TRUEnever evaluated
FALSEnever evaluated
0
1529 )-
1530 return
never executed: return 0;
0;
never executed: return 0;
0
1531 p += l;-
1532 match = 2;-
1533 }
never executed: end of block
0
1534 if (*
*p != ','Description
TRUEnever evaluated
FALSEnever evaluated
p != ','
*p != ','Description
TRUEnever evaluated
FALSEnever evaluated
&& *
*p != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
p != '\0'
*p != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1535 return
never executed: return 0;
0;
never executed: return 0;
0
1536 return
never executed: return match;
match;
never executed: return match;
0
1537}-
1538-
1539-
1540-
1541-
1542-
1543-
1544static int-
1545remove_method(char **methods, const char *method, const char *submethod)-
1546{-
1547 char *omethods = *methods, *p;-
1548 size_t l = strlen(method);-
1549 int match;-
1550-
1551 match = list_starts_with(omethods, method, submethod);-
1552 if (match != 1
match != 1Description
TRUEnever evaluated
FALSEnever evaluated
&& match != 2
match != 2Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1553 return
never executed: return 0;
0;
never executed: return 0;
0
1554 p = omethods + l;-
1555 if (submethod
submethodDescription
TRUEnever evaluated
FALSEnever evaluated
&& match == 2
match == 2Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1556 p += 1 + strlen(submethod);
never executed: p += 1 + strlen(submethod);
0
1557 if (*
*p == ','Description
TRUEnever evaluated
FALSEnever evaluated
p == ','
*p == ','Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1558 p++;
never executed: p++;
0
1559 *methods = xstrdup(p);-
1560 free(omethods);-
1561 return
never executed: return 1;
1;
never executed: return 1;
0
1562}-
1563-
1564-
1565-
1566-
1567-
1568-
1569-
1570int-
1571auth2_update_methods_lists(Authctxt *authctxt, const char *method,-
1572 const char *submethod)-
1573{-
1574 u_int i, found = 0;-
1575-
1576 debug3("%s: updating methods list after \"%s\"", __func__, method);-
1577 for (i = 0; i < authctxt->num_auth_methods
i < authctxt->num_auth_methodsDescription
TRUEnever evaluated
FALSEnever evaluated
; i++) {
0
1578 if (!remove_method(&(authctxt->auth_methods[i]), method,
!remove_method...od, submethod)Description
TRUEnever evaluated
FALSEnever evaluated
0
1579 submethod)
!remove_method...od, submethod)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1580 continue;
never executed: continue;
0
1581 found = 1;-
1582 if (*
*authctxt->aut...ods[i] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
authctxt->auth_methods[i] == '\0'
*authctxt->aut...ods[i] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1583 debug2("authentication methods list %d complete", i);-
1584 return
never executed: return 1;
1;
never executed: return 1;
0
1585 }-
1586 debug3("authentication methods list %d remaining: \"%s\"",-
1587 i, authctxt->auth_methods[i]);-
1588 }
never executed: end of block
0
1589-
1590 if (!found
!foundDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1591 fatal("%s: method not in AuthenticationMethods", __func__);
never executed: fatal("%s: method not in AuthenticationMethods", __func__);
0
1592 return
never executed: return 0;
0;
never executed: return 0;
0
1593}-
1594-
1595-
1596void auth2_authctxt_reset_info(Authctxt *authctxt)-
1597{-
1598 sshkey_free(authctxt->auth_method_key);-
1599 free(authctxt->auth_method_info);-
1600 authctxt->auth_method_key = -
1601 ((void *)0)-
1602 ;-
1603 authctxt->auth_method_info = -
1604 ((void *)0)-
1605 ;-
1606}
never executed: end of block
0
1607-
1608-
1609void-
1610auth2_record_info(Authctxt *authctxt, const char *fmt, ...)-
1611{-
1612 va_list ap;-
1613 int i;-
1614-
1615 free(authctxt->auth_method_info);-
1616 authctxt->auth_method_info = -
1617 ((void *)0)-
1618 ;-
1619-
1620 -
1621__builtin_va_start(-
1622ap-
1623,-
1624fmt-
1625)-
1626 ;-
1627 i = vasprintf(&authctxt->auth_method_info, fmt, ap);-
1628 -
1629__builtin_va_end(-
1630ap-
1631)-
1632 ;-
1633-
1634 if (i < 0
i < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| authctxt->auth_method_info ==
authctxt->auth...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1635 ((void *)0)
authctxt->auth...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1636 )-
1637 fatal("%s: vasprintf failed", __func__);
never executed: fatal("%s: vasprintf failed", __func__);
0
1638}
never executed: end of block
0
1639-
1640-
1641-
1642-
1643-
1644-
1645void-
1646auth2_record_key(Authctxt *authctxt, int authenticated,-
1647 const struct sshkey *key)-
1648{-
1649 struct sshkey **tmp, *dup;-
1650 int r;-
1651-
1652 if ((
(r = sshkey_fr...y, &dup)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
r = sshkey_from_private(key, &dup)) != 0
(r = sshkey_fr...y, &dup)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1653 fatal("%s: copy key: %s", __func__, ssh_err(r));
never executed: fatal("%s: copy key: %s", __func__, ssh_err(r));
0
1654 sshkey_free(authctxt->auth_method_key);-
1655 authctxt->auth_method_key = dup;-
1656-
1657 if (!authenticated
!authenticatedDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1658 return;
never executed: return;
0
1659-
1660-
1661 if ((
(r = sshkey_fr...y, &dup)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
r = sshkey_from_private(key, &dup)) != 0
(r = sshkey_fr...y, &dup)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1662 fatal("%s: copy key: %s", __func__, ssh_err(r));
never executed: fatal("%s: copy key: %s", __func__, ssh_err(r));
0
1663 if (authctxt->nprev_keys >= 0x7fffffff
authctxt->npre... >= 0x7fffffffDescription
TRUEnever evaluated
FALSEnever evaluated
||
0
1664 (
(tmp = recallo...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
tmp = recallocarray(authctxt->prev_keys, authctxt->nprev_keys,
(tmp = recallo...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1665 authctxt->nprev_keys + 1, sizeof(*authctxt->prev_keys))) ==
(tmp = recallo...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1666 ((void *)0)
(tmp = recallo...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1667 )-
1668 fatal("%s: reallocarray failed", __func__);
never executed: fatal("%s: reallocarray failed", __func__);
0
1669 authctxt->prev_keys = tmp;-
1670 authctxt->prev_keys[authctxt->nprev_keys] = dup;-
1671 authctxt->nprev_keys++;-
1672-
1673}
never executed: end of block
0
1674-
1675-
1676int-
1677auth2_key_already_used(Authctxt *authctxt, const struct sshkey *key)-
1678{-
1679 u_int i;-
1680 char *fp;-
1681-
1682 for (i = 0; i < authctxt->nprev_keys
i < authctxt->nprev_keysDescription
TRUEnever evaluated
FALSEnever evaluated
; i++) {
0
1683 if (sshkey_equal_public(key, authctxt->prev_keys[i])
sshkey_equal_p...>prev_keys[i])Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1684 fp = sshkey_fingerprint(authctxt->prev_keys[i],-
1685 options.fingerprint_hash, SSH_FP_DEFAULT);-
1686 debug3("%s: key already used: %s %s", __func__,-
1687 sshkey_type(authctxt->prev_keys[i]),-
1688 fp == -
1689 ((void *)0) -
1690 ? "UNKNOWN" : fp);-
1691 free(fp);-
1692 return
never executed: return 1;
1;
never executed: return 1;
0
1693 }-
1694 }
never executed: end of block
0
1695 return
never executed: return 0;
0;
never executed: return 0;
0
1696}-
1697-
1698-
1699-
1700-
1701-
1702void-
1703auth2_update_session_info(Authctxt *authctxt, const char *method,-
1704 const char *submethod)-
1705{-
1706 int r;-
1707-
1708 if (authctxt->session_info ==
authctxt->sess...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1709 ((void *)0)
authctxt->sess...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1710 ) {-
1711 if ((
(authctxt->ses...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
authctxt->session_info = sshbuf_new()) ==
(authctxt->ses...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1712 ((void *)0)
(authctxt->ses...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1713 )-
1714 fatal("%s: sshbuf_new", __func__);
never executed: fatal("%s: sshbuf_new", __func__);
0
1715 }
never executed: end of block
0
1716-
1717-
1718 if ((
(r = sshbuf_pu...bmethod)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
r = sshbuf_putf(authctxt->session_info, "%s%s%s",
(r = sshbuf_pu...bmethod)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1719 method, submethod ==
(r = sshbuf_pu...bmethod)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1720 ((void *)0)
(r = sshbuf_pu...bmethod)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1721 ? "" : "/",
(r = sshbuf_pu...bmethod)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1722 submethod ==
(r = sshbuf_pu...bmethod)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1723 ((void *)0)
(r = sshbuf_pu...bmethod)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1724 ? "" : submethod)) != 0
(r = sshbuf_pu...bmethod)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1725 fatal("%s: append method: %s", __func__, ssh_err(r));
never executed: fatal("%s: append method: %s", __func__, ssh_err(r));
0
1726-
1727-
1728 if (authctxt->auth_method_key !=
authctxt->auth...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1729 ((void *)0)
authctxt->auth...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1730 ) {-
1731 if ((
(r = sshbuf_pu...fo, ' ')) != 0Description
TRUEnever evaluated
FALSEnever evaluated
r = sshbuf_put_u8(authctxt->session_info, ' ')) != 0
(r = sshbuf_pu...fo, ' ')) != 0Description
TRUEnever evaluated
FALSEnever evaluated
||
0
1732 (
(r = sshkey_fo...on_info)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
r = sshkey_format_text(authctxt->auth_method_key,
(r = sshkey_fo...on_info)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1733 authctxt->session_info)) != 0
(r = sshkey_fo...on_info)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1734 fatal("%s: append key: %s", __func__, ssh_err(r));
never executed: fatal("%s: append key: %s", __func__, ssh_err(r));
0
1735 }
never executed: end of block
0
1736-
1737 if (authctxt->auth_method_info !=
authctxt->auth...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1738 ((void *)0)
authctxt->auth...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1739 ) {-
1740-
1741 if (-
1742 (
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
__extension__ (__builtin_constant_p (
__builtin_constant_p ( '\n' )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1743 '\n'
__builtin_constant_p ( '\n' )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1744 )
__builtin_constant_p ( '\n' )Description
TRUEnever evaluated
FALSEnever evaluated
&& !__builtin_constant_p (
!__builtin_con..._method_info )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1745 authctxt->auth_method_info
!__builtin_con..._method_info )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1746 )
!__builtin_con..._method_info )Description
TRUEnever evaluated
FALSEnever evaluated
&& (
( '\n' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1747 '\n'
( '\n' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1748 ) == '\0'
( '\n' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
? (char *) __rawmemchr (
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1749 authctxt->auth_method_info
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1750 ,
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1751 '\n'
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1752 ) : __builtin_strchr (
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1753 authctxt->auth_method_info
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1754 ,
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1755 '\n'
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1756 )))
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1757 !=
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1758 ((void *)0)
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1759 )-
1760 fatal("%s: auth_method_info contains \\n", __func__);
never executed: fatal("%s: auth_method_info contains \\n", __func__);
0
1761 if ((
(r = sshbuf_pu...fo, ' ')) != 0Description
TRUEnever evaluated
FALSEnever evaluated
r = sshbuf_put_u8(authctxt->session_info, ' ')) != 0
(r = sshbuf_pu...fo, ' ')) != 0Description
TRUEnever evaluated
FALSEnever evaluated
||
0
1762 (
(r = sshbuf_pu...od_info)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
r = sshbuf_putf(authctxt->session_info, "%s",
(r = sshbuf_pu...od_info)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1763 authctxt->auth_method_info)) != 0
(r = sshbuf_pu...od_info)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1764 fatal("%s: append method info: %s",-
1765 __func__, ssh_err(r));-
1766 }
never executed: end of block
0
1767 }
never executed: end of block
0
1768 if ((
(r = sshbuf_pu...o, '\n')) != 0Description
TRUEnever evaluated
FALSEnever evaluated
r = sshbuf_put_u8(authctxt->session_info, '\n')) != 0
(r = sshbuf_pu...o, '\n')) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1769 fatal("%s: append: %s", __func__, ssh_err(r));
never executed: fatal("%s: append: %s", __func__, ssh_err(r));
0
1770}
never executed: end of block
0
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2