summaryrefslogtreecommitdiff
path: root/service/pixelated/register.py
diff options
context:
space:
mode:
authorBruno Wagner <bwagner@riseup.net>2015-09-29 12:04:04 -0300
committerBruno Wagner <bwagner@riseup.net>2015-09-29 12:04:04 -0300
commit77d09d41a7876ef5dc380715319aaab6f8f061da (patch)
tree9fc83f5dfefd4fe1eb07606834ec676d02380f93 /service/pixelated/register.py
parent1946029d11775713a71e9b5b8daab5db13aad668 (diff)
Fixed length check for password to mirror the leap webapp
Diffstat (limited to 'service/pixelated/register.py')
-rw-r--r--service/pixelated/register.py22
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():