ios icon indicating copy to clipboard operation
ios copied to clipboard

“Unlock Canceled” showing when trying to unlock vault on SMB share ("No valid file provider found with identifier 'com.apple.SMBClient-Provider.FileProvider'.")

Open ericswpark opened this issue 3 years ago • 6 comments

Please agree to the following

Summary

Cryptomator sometimes fails to open vaults on SMB shares, through the iOS file provider

System Setup

  • iOS: 16.0 (20A362)
  • Cryptomator: Version 2.4.1 (997)

Cloud Type

Other File Provider

Steps to Reproduce

  1. Go to “Browse” tab in Files app
  2. Select Cryptomator vault located on SMB share
  3. Unlock (with Face ID)

Expected Behavior

The vault unlocks

Actual Behavior

The vault fails to unlock and displays:

“Unlock Canceled” “Unlock via Face ID was not successful. Please try again.”

Attempting to unlock again brings up the Cryptomator password input prompt. Trying to unlock via Face ID does nothing and the prompt stays there. Attempting to unlock with the password shows the following error:

“Error” “No valid file provider found with identifier 'com.apple.SMBClient-Provider.FileProvider'”

Reproducibility

Intermittent

Relevant Log Output

No response

Anything else?

Screen after initial unlock attempt: IMG_3450

Face ID unlock on this prompt does absolutely nothing (Face ID auth succeeds but nothing happens after): IMG_3451

Typing in the password results in the following error message: IMG_3452

ericswpark avatar Sep 18 '22 06:09 ericswpark

Honestly, given how many layers Cryptomator has to go through with the SMB file provider (like, does it automatically remount the SMB share if it has disconnected due to network problems? What if it can’t reach the share at all because the VPN is down? Etc etc) I think it would be really cool to add a SMB option in Cryptomator so it can handle mounting and all that every time the vault is opened. Hopefully by removing all the intermediate layers this unlock process is less prone to errors.

It doesn’t help that the iOS SMB implementation is horribly buggy (for example, large file copying still hangs the Files app when trying to paste the actual file).

ericswpark avatar Sep 18 '22 06:09 ericswpark

Relevant log:

2022/10/01 08:49:52:716  Error: Error Domain=NSFileProviderErrorDomain Code=-2001 "No valid file provider found with identifier ‘com.apple.SMBClientProvider.FileProvider‘." UserInfo={NSLocalizedDescription=No valid file provider found with identifier ‘com.apple.SMBClientProvider.FileProvider‘.}

ericswpark avatar Oct 01 '22 09:10 ericswpark

I suppose this is somewhat related to #265? I'm unable to reproduce this issue, it may be specific to the SMB share.

When using the "Other File Provider" option, Cryptomator is not doing anything fancy with it. I guess the complexity lies within the Files app. Cryptomator just tries to access the vault at the saved location. If it's missing, you have to "fix" it in the Files app.

tobihagemann avatar Oct 04 '22 09:10 tobihagemann

@tobihagemann the problem is the error shows even when the underlying SMB share is already mounted.

ericswpark avatar Oct 05 '22 01:10 ericswpark

I've found a good way to reproduce this bug, but it shows a different error message now, so I'll create another issue for this.

ericswpark avatar Jan 13 '23 11:01 ericswpark

I'm re-opening this issue because it's more likely what users will encounter, especially the error message you've posted. But I'm marking this as an upstream bug for now because the SMB client randomly disappears.

Workaround

As stated in #294, you have to re-add the vault.

tobihagemann avatar Jan 25 '23 11:01 tobihagemann