OpenCoverageOpenSSH

OpenSSH patch #3 - Test report of the modifications

Overview

Test Execution StatusStatistics
Passed
  0.000% (0/10)
Incident
  0.000% (0/10)
Skipped
  0.000% (0/10)
Failed
  0.000% (0/10)
Requires Manual Checking
  0.000% (0/10)
Unknown
  0.000% (0/10)
All
  0.000% (0/10)
CategoryRemoved LinesInserted LinesTotal
Modified lines executed:
  0.000% (0/16)
  0.000% (0/33)
  0.000% (0/49)
Modified lines not executed:
 87.500% (14/16)
 72.727% (24/33)
 77.551% (38/49)
Source code lines not instrumented:
 12.500% (2/16)
 27.273% (9/33)
 22.449% (11/49)

List of tests executing the changes

Execution NameState

Patch File

Showing: 

Modified File: clientloop.c

LineTestsDifference Output
diff --git a/clientloop.c b/clientloop.c
index ad35cb7b..8d312cda 100644
--- a/clientloop.c
+++ b/clientloop.c
@@ -1,4 +1,4 @@
1
-
No equivalent source code line in the reference code can be identified.
-/* $OpenBSD: clientloop.c,v 1.317 2018/07/11 18:53:29 markus Exp $ */
1
-
+/* $OpenBSD: clientloop.c,v 1.318 2018/09/21 12:46:22 djm Exp $ */
2 /*
3 * Author: Tatu Ylonen <ylo@cs.hut.fi>
4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -279,7 +279,7 @@ client_x11_get_proto(struct ssh *ssh, const char *display,
279 const char *xauth_path, u_int trusted, u_int timeout,
280 char **_proto, char **_data)
281 {
282
0
- char cmd[1024], line[512], xdisplay[512];
282
0
+ char *cmd, line[512], xdisplay[512];
283 char xauthfile[PATH_MAX], xauthdir[PATH_MAX];
284 static char proto[512], data[512];
285 FILE *f;
@@ -343,19 +343,30 @@ client_x11_get_proto(struct ssh *ssh, const char *display,
343 return -1;
344 }
345
346
0
- if (timeout >= UINT_MAX - X11_TIMEOUT_SLACK)
347
0
- x11_timeout_real = UINT_MAX;
348
0
- else
349
0
- x11_timeout_real = timeout + X11_TIMEOUT_SLACK;
350
0
- if ((r = snprintf(cmd, sizeof(cmd),
351
0
- "%s -f %s generate %s " SSH_X11_PROTO
352
0
- " untrusted timeout %u 2>" _PATH_DEVNULL,
353
0
- xauth_path, xauthfile, display,
354
0
- x11_timeout_real)) < 0 ||
355
0
- (size_t)r >= sizeof(cmd))
356
0
- fatal("%s: cmd too long", __func__);
346
0
+ if (timeout == 0) {
347
-
+ /* auth doesn't time out */
348
0
+ xasprintf(&cmd, "%s -f %s generate %s %s "
349
0
+ "untrusted 2>%s",
350
0
+ xauth_path, xauthfile, display,
351
0
+ SSH_X11_PROTO, _PATH_DEVNULL);
352
0
+ } else {
353
0
+ /* Add some slack to requested expiry */
354
0
+ if (timeout < UINT_MAX - X11_TIMEOUT_SLACK)
355
0
+ x11_timeout_real = timeout +
356
0
+ X11_TIMEOUT_SLACK;
357
-
+ else {
358
0
+ /* Don't overflow on long timeouts */
359
0
+ x11_timeout_real = UINT_MAX;
360
0
+ }
361
0
+ xasprintf(&cmd, "%s -f %s generate %s %s "
362
0
+ "untrusted timeout %u 2>%s",
363
0
+ xauth_path, xauthfile, display,
364
0
+ SSH_X11_PROTO, x11_timeout_real,
365
0
+ _PATH_DEVNULL);
366
0
+ }
357 ➡ 367 debug2("%s: %s", __func__, cmd);
358
0
- if (x11_refuse_time == 0) {
368
-
+
369
0
+ if (timeout != 0 && x11_refuse_time == 0) {
359 ➡ 370 now = monotime() + 1;
360 ➡ 371 if (UINT_MAX - timeout < now)
361 ➡ 372 x11_refuse_time = UINT_MAX;
@@ -366,6 +377,7 @@ client_x11_get_proto(struct ssh *ssh, const char *display,
366 ➡ 377 }
367 ➡ 378 if (system(cmd) == 0)
368 ➡ 379 generated = 1;
380
0
+ free(cmd);
369 ➡ 381 }
370 ➡ 382
371 ➡ 383 /*
@@ -374,7 +386,7 @@ client_x11_get_proto(struct ssh *ssh, const char *display,
374 ➡ 386 * above.
375 ➡ 387 */
376 ➡ 388 if (trusted || generated) {
377
0
- snprintf(cmd, sizeof(cmd),
389
0
+ xasprintf(&cmd,
378 ➡ 390 "%s %s%s list %s 2>" _PATH_DEVNULL,
379 ➡ 391 xauth_path,
380 ➡ 392 generated ? "-f " : "" ,
@@ -387,6 +399,7 @@ client_x11_get_proto(struct ssh *ssh, const char *display,
387 ➡ 399 got_data = 1;
388 ➡ 400 if (f)
389 ➡ 401 pclose(f);
402
0
+ free(cmd);
390 ➡ 403 }
391 ➡ 404 }
392 ➡ 405

Modified File: ssh_config.5

LineTestsDifference Output
diff --git a/ssh_config.5 b/ssh_config.5
index 2df1165f..27136dbd 100644
--- a/ssh_config.5
+++ b/ssh_config.5
@@ -33,7 +33,7 @@
33 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
34 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35 .\"
36
-
No equivalent source code line in the reference code can be identified.
-.\" $OpenBSD: ssh_config.5,v 1.284 2018/09/21 03:11:36 djm Exp $
36
-
+.\" $OpenBSD: ssh_config.5,v 1.285 2018/09/21 12:46:22 djm Exp $
37 .Dd $Mdocdate: September 21 2018 $
38 .Dt SSH_CONFIG 5
39 .Os
@@ -686,6 +686,10 @@ section of
686 X11 connections received by
687 .Xr ssh 1
688 after this time will be refused.
689
-
+Setting
690
-
+.Cm ForwardX11Timeout
691
-
+to zero will disable the timeout and permit X11 forwarding for the life
692
-
+of the connection.
689 ➡ 693 The default is to disable untrusted X11 forwarding after twenty minutes has
690 ➡ 694 elapsed.
691 ➡ 695 .It Cm ForwardX11Trusted

Generated by Squish Coco 4.2.2