]> git.ipfire.org Git - thirdparty/openssh-portable.git/commitdiff
upstream: ssh-keygen: make verify-time argument parsing optional
authordjm@openbsd.org <djm@openbsd.org>
Fri, 29 Oct 2021 03:20:46 +0000 (03:20 +0000)
committerDamien Miller <djm@mindrot.org>
Fri, 29 Oct 2021 03:25:23 +0000 (14:25 +1100)
From Fabian Stelzer

OpenBSD-Commit-ID: 1ff35e4c366a45a073663df90381be6a8ef4d370

ssh-keygen.c

index 81988683f852fe7a94fba090b1fcfe2d57d65727..248a0ae76bf66aa5496ee3d39b0440ebbc4ad59b 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: ssh-keygen.c,v 1.439 2021/10/28 02:54:18 djm Exp $ */
+/* $OpenBSD: ssh-keygen.c,v 1.440 2021/10/29 03:20:46 djm Exp $ */
 /*
  * Author: Tatu Ylonen <ylo@cs.hut.fi>
  * Copyright (c) 1994 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -2680,11 +2680,13 @@ sig_process_opts(char * const *opts, size_t nopts, uint64_t *verify_timep,
        size_t i;
        time_t now;
 
-       *verify_timep = 0;
+       if (verify_timep != NULL)
+               *verify_timep = 0;
        if (print_pubkey != NULL)
                *print_pubkey = 0;
        for (i = 0; i < nopts; i++) {
-               if (strncasecmp(opts[i], "verify-time=", 12) == 0) {
+               if (verify_timep &&
+                   strncasecmp(opts[i], "verify-time=", 12) == 0) {
                        if (parse_absolute_time(opts[i] + 12,
                            verify_timep) != 0 || *verify_timep == 0) {
                                error("Invalid \"verify-time\" option");
@@ -2698,7 +2700,7 @@ sig_process_opts(char * const *opts, size_t nopts, uint64_t *verify_timep,
                        return SSH_ERR_INVALID_ARGUMENT;
                }
        }
-       if (*verify_timep == 0) {
+       if (verify_timep && *verify_timep == 0) {
                if ((now = time(NULL)) < 0) {
                        error("Time is before epoch");
                        return SSH_ERR_INVALID_ARGUMENT;