aboutsummaryrefslogtreecommitdiff
path: root/actions/recovery.go
diff options
context:
space:
mode:
authorEric Biggers <ebiggers@google.com>2020-01-27 20:16:35 -0800
committerEric Biggers <ebiggers@google.com>2020-01-28 10:45:52 -0800
commit4e0230bdbc9cf893099919170a10e44f84422747 (patch)
treed78443a66f19e5cd89bf2afdc94c9bc0bf17e953 /actions/recovery.go
parent9927ab8426e765db8de304e9f99ba5c520b5018c (diff)
actions/recovery: revert protector if it can't be added to policy
Ensure that a failed AddRecoveryPassphrase() doesn't leave around an unneeded protector file.
Diffstat (limited to 'actions/recovery.go')
-rw-r--r--actions/recovery.go1
1 files changed, 1 insertions, 0 deletions
diff --git a/actions/recovery.go b/actions/recovery.go
index 32d0030..1c55ec5 100644
--- a/actions/recovery.go
+++ b/actions/recovery.go
@@ -78,6 +78,7 @@ func AddRecoveryPassphrase(policy *Policy, dirname string) (*crypto.Key, *Protec
seq++
}
if err := policy.AddProtector(recoveryProtector); err != nil {
+ recoveryProtector.Revert()
return nil, nil, err
}
return passphrase, recoveryProtector, nil