diff options
| author | Eric Biggers <ebiggers@google.com> | 2020-05-09 15:21:07 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-05-09 15:21:07 -0700 |
| commit | 1cdefc21b8b07aad7aafeefd05d3124cf93b9216 (patch) | |
| tree | b5f304a4ecc101a5410bb2274d129dbc7dad6441 /actions | |
| parent | 338347ac4766f899fdc471d57f293798ff0e6c29 (diff) | |
| parent | de51add609bc74b7247ec4776bd694abbea24a45 (diff) | |
Merge pull request #217 from ebiggers/detect-incomplete-v1-locking
Try to detect incomplete locking of v1-encrypted directory
Diffstat (limited to 'actions')
| -rw-r--r-- | actions/policy.go | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/actions/policy.go b/actions/policy.go index 3baad72..6c2aa51 100644 --- a/actions/policy.go +++ b/actions/policy.go @@ -417,12 +417,6 @@ func (policy *Policy) IsProvisionedByTargetUser() bool { return policy.GetProvisioningStatus() == keyring.KeyPresent } -// IsFullyDeprovisioned returns true if the policy has been fully deprovisioned, -// including by all users and with all files protected by it having been closed. -func (policy *Policy) IsFullyDeprovisioned() bool { - return policy.GetProvisioningStatus() == keyring.KeyAbsent -} - // Provision inserts the Policy key into the kernel keyring. This allows reading // and writing of files encrypted with this directory. Requires unlocked Policy. func (policy *Policy) Provision() error { @@ -435,14 +429,15 @@ func (policy *Policy) Provision() error { // Deprovision removes the Policy key from the kernel keyring. This prevents // reading and writing to the directory --- unless the target keyring is a user -// keyring, in which case caches must be dropped too. +// keyring, in which case caches must be dropped too. If the Policy key was +// already removed, returns keyring.ErrKeyNotPresent. func (policy *Policy) Deprovision(allUsers bool) error { return keyring.RemoveEncryptionKey(policy.Descriptor(), policy.Context.getKeyringOptions(), allUsers) } // NeedsUserKeyring returns true if Provision and Deprovision for this policy -// will use a user keyring, not a filesystem keyring. +// will use a user keyring (deprecated), not a filesystem keyring. func (policy *Policy) NeedsUserKeyring() bool { return policy.Version() == 1 && !policy.Context.Config.GetUseFsKeyringForV1Policies() } |