You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2017/05/24 03:27:00 UTC

openmeetings git commit: no jira: strong password validation is fixed

Repository: openmeetings
Updated Branches:
  refs/heads/3.3.x 4b5c310b7 -> 13fe2f382


no jira: strong password validation is fixed


Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/13fe2f38
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/13fe2f38
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/13fe2f38

Branch: refs/heads/3.3.x
Commit: 13fe2f382240eab90f3050ecb7ea84d7121f4081
Parents: 4b5c310
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Wed May 24 10:26:52 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Wed May 24 10:26:52 2017 +0700

----------------------------------------------------------------------
 .../openmeetings/core/util/StrongPasswordValidator.java  |  9 ++++++---
 .../src/main/java/org/apache/openmeetings/cli/Admin.java | 11 ++++++-----
 2 files changed, 12 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/openmeetings/blob/13fe2f38/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/StrongPasswordValidator.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/StrongPasswordValidator.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/StrongPasswordValidator.java
index d390596e..5e14cb3 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/StrongPasswordValidator.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/StrongPasswordValidator.java
@@ -105,15 +105,18 @@ public class StrongPasswordValidator implements IValidator<String> {
 
 	private void error(IValidatable<String> pass, String key, Map<String, Object> params) {
 		if (web) {
-			pass.error(new ValidationError().addKey(key).setVariables(params));
+			ValidationError err = new ValidationError().addKey(key);
+			if (params != null) {
+				err.setVariables(params);
+			}
+			pass.error(err);
 		} else {
 			String msg = LabelDao.getString(key, 1L);
 			if (params != null && !params.isEmpty() && !Strings.isEmpty(msg)) {
 				for (Map.Entry<String, Object> e : params.entrySet()) {
-					msg.replace(String.format("${%s}", e.getKey()), "" + e.getValue());
+					msg = msg.replace(String.format("${%s}", e.getKey()), "" + e.getValue());
 				}
 			}
-			System.err.print(msg); // for command line
 			log.warn(msg);
 			pass.error(new ValidationError(msg));
 		}

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/13fe2f38/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java b/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java
index 5fa6aae..1308d63 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java
@@ -419,18 +419,19 @@ public class Admin {
 			System.out.println("User group was not provided, or too short, should be at least 1 character long: " + cfg.group);
 			System.exit(1);
 		}
-		if (!cmdl.hasOption("password")) {
-			System.out.print("Please enter password for the user '" + cfg.username + "':");
-		} else {
+		if (cmdl.hasOption("password")) {
 			cfg.setPassword(cmdl.getOptionValue("password"));
 		}
 		ConfigurationDao cfgDao = getApplicationContext().getBean(ConfigurationDao.class);
-		IValidator<String> passValidator = new StrongPasswordValidator(true, getMinPasswdLength(cfgDao), new User());
+		IValidator<String> passValidator = new StrongPasswordValidator(false, getMinPasswdLength(cfgDao), new User());
 		Validatable<String> passVal;
 		do {
 			passVal = new Validatable<>(cfg.getPassword());
 			passValidator.validate(passVal);
-			cfg.setPassword(new BufferedReader(new InputStreamReader(System.in, UTF_8)).readLine());
+			if (!passVal.isValid()) {
+				System.out.print("Please enter password for the user '" + cfg.username + "':");
+				cfg.setPassword(new BufferedReader(new InputStreamReader(System.in, UTF_8)).readLine());
+			}
 		} while (!passVal.isValid());
 		Map<String, String> tzMap = ImportHelper.getAllTimeZones(TimeZone.getAvailableIDs());
 		cfg.ical_timeZone = null;