Index: chrome/common/extensions/api/quick_unlock_private.idl |
diff --git a/chrome/common/extensions/api/quick_unlock_private.idl b/chrome/common/extensions/api/quick_unlock_private.idl |
index c3121beffcaf4e61c5d7148737a66a8e72b6f317..29dd4fbee834963de1b7556e84d61dcd71996745 100644 |
--- a/chrome/common/extensions/api/quick_unlock_private.idl |
+++ b/chrome/common/extensions/api/quick_unlock_private.idl |
@@ -19,8 +19,35 @@ namespace quickUnlockPrivate { |
PIN |
}; |
+ // The problems a given PIN might have. |
+ enum CredentialProblem { |
+ TOO_SHORT, |
+ TOO_LONG, |
+ TOO_WEAK, |
+ CONTAINS_NONDIGIT |
+ }; |
+ |
+ dictionary CredentialCheck { |
+ // The given PINs errors. Users cannot proceed with an error. |
+ CredentialProblem[] errors; |
+ // THe given PINs warnings. Users can, but are not advised to proceed with |
+ // a warning. |
+ CredentialProblem[] warnings; |
+ }; |
+ |
+ dictionary CredentialRequirements { |
+ // The minimum allowed length for a PIN. |
+ long minLength; |
+ // The maximum allowed length for a PIN. A value of 0 indicates no maximum |
+ // length. |
+ long maxLength; |
+ }; |
+ |
callback BooleanResultCallback = void (boolean value); |
callback ModesCallback = void (QuickUnlockMode[] modes); |
+ callback CredentialCheckCallback = void (CredentialCheck check); |
+ callback CredentialRequirementsCallback = |
+ void (CredentialRequirements requirements); |
interface Functions { |
// Returns the set of quick unlock modes that are available for the user to |
@@ -31,6 +58,23 @@ namespace quickUnlockPrivate { |
// the lock screen. |
static void getActiveModes(ModesCallback onComplete); |
+ // Checks if the given credential can be used for the given unlock mode. |
+ // Enterprise policy can change credential requirements. |
+ // |mode|: The quick unlock mode that is used. |
+ // |credential|: The given credential. |
+ // |onComplete|: Called with a list of warnings and errors the given |
+ // |credential| has (or an empty list if there are none). |
+ static void checkCredential(QuickUnlockMode mode, |
+ DOMString credential, |
+ CredentialCheckCallback onComplete); |
+ |
+ // Gets the credential requirements for the given unlock mode. |
+ // |mode|: The quick unlock mode that is used. |
+ // |onComplete|: Called with the credential requirements of the given |
+ // |mode|. |
+ static void getCredentialRequirements( |
+ QuickUnlockMode mode, CredentialRequirementsCallback onComplete); |
+ |
// Update the set of quick unlock modes that are currently active/enabled. |
// |accountPassword|: The password associated with the account (e.g. the |
// GAIA password). This is required to change the quick unlock credentials. |