aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Soutar <andrew@andrewsoutar.com>2017-07-31 02:19:16 -0400
committerMike Gilbert <floppym@gentoo.org>2017-08-13 19:14:50 -0400
commit793c786f470aeedf443686cff30f97acaff23a04 (patch)
treebf3c66d475f10edcc9de1066c82996332866523a
parentpath-lookup: look for generators in {,/usr}/lib/systemd/system-generators (diff)
downloadsystemd-793c786f470aeedf443686cff30f97acaff23a04.tar.gz
systemd-793c786f470aeedf443686cff30f97acaff23a04.tar.bz2
systemd-793c786f470aeedf443686cff30f97acaff23a04.zip
cryptsetup: fix infinite timeout (#6486)
0004f698d causes `arg_timeout` to be infinity instead of 0 when timeout=0. The logic here now matches this change. Fixes #6381
-rw-r--r--src/cryptsetup/cryptsetup.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/cryptsetup/cryptsetup.c b/src/cryptsetup/cryptsetup.c
index 3b4c08616..08ed7e53b 100644
--- a/src/cryptsetup/cryptsetup.c
+++ b/src/cryptsetup/cryptsetup.c
@@ -56,7 +56,7 @@ static bool arg_tcrypt_veracrypt = false;
static char **arg_tcrypt_keyfiles = NULL;
static uint64_t arg_offset = 0;
static uint64_t arg_skip = 0;
-static usec_t arg_timeout = 0;
+static usec_t arg_timeout = USEC_INFINITY;
/* Options Debian's crypttab knows we don't:
@@ -670,10 +670,10 @@ int main(int argc, char *argv[]) {
if (arg_discards)
flags |= CRYPT_ACTIVATE_ALLOW_DISCARDS;
- if (arg_timeout > 0)
- until = now(CLOCK_MONOTONIC) + arg_timeout;
- else
+ if (arg_timeout == USEC_INFINITY)
until = 0;
+ else
+ until = now(CLOCK_MONOTONIC) + arg_timeout;
arg_key_size = (arg_key_size > 0 ? arg_key_size : (256 / 8));