diff options
author | Bruno Wagner <bwagner@riseup.net> | 2015-09-29 12:04:04 -0300 |
---|---|---|
committer | Bruno Wagner <bwagner@riseup.net> | 2015-09-29 12:04:04 -0300 |
commit | 77d09d41a7876ef5dc380715319aaab6f8f061da (patch) | |
tree | 9fc83f5dfefd4fe1eb07606834ec676d02380f93 /service/pixelated/register.py | |
parent | 1946029d11775713a71e9b5b8daab5db13aad668 (diff) |
Fixed length check for password to mirror the leap webapp
Diffstat (limited to 'service/pixelated/register.py')
-rw-r--r-- | service/pixelated/register.py | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/service/pixelated/register.py b/service/pixelated/register.py index b8e6e4fc..2bdbb27b 100644 --- a/service/pixelated/register.py +++ b/service/pixelated/register.py @@ -16,6 +16,7 @@ import re import getpass import logging +import sys from pixelated.config import arguments from pixelated.config import logger as logger_config @@ -39,14 +40,16 @@ def register( provider_cert, provider_cert_fingerprint): - try: - validate_username(username) - except ValueError: - print('Only lowercase letters, digits, . - and _ allowed.') - if not password: password = getpass.getpass('Please enter password for %s: ' % username) + try: + validate_username(username) + validate_password(password) + except ValueError, e: + print(e.message) + sys.exit(1) + events_server.ensure_server() LeapCertificate.set_cert_and_fingerprint(provider_cert, provider_cert_fingerprint) config = LeapConfig(leap_home=leap_home) @@ -62,8 +65,13 @@ def register( def validate_username(username): accepted_characters = '^[a-z0-9\-\_\.]*$' - if not re.match(accepted_characters, username) or len(username) > 8: - raise ValueError + if (not re.match(accepted_characters, username)): + raise ValueError('Only lowercase letters, digits, . - and _ allowed.') + + +def validate_password(password): + if len(password) < 8: + raise ValueError('The password must have at least 8 characters') def initialize(): |