You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by jb...@apache.org on 2022/10/09 16:45:31 UTC
[karaf] branch karaf-4.3.x updated: [KARAF-6769] - fix a bug where command options are not censored when using their aliases
This is an automated email from the ASF dual-hosted git repository.
jbonofre pushed a commit to branch karaf-4.3.x
in repository https://gitbox.apache.org/repos/asf/karaf.git
The following commit(s) were added to refs/heads/karaf-4.3.x by this push:
new 3a4f4c2443 [KARAF-6769] - fix a bug where command options are not censored when using their aliases
3a4f4c2443 is described below
commit 3a4f4c24431dc02dab9d162df6d31d0bede55646
Author: Aleksy Wróblewski <al...@bbbit.io>
AuthorDate: Sun Oct 9 00:45:46 2022 +0200
[KARAF-6769] - fix a bug where command options are not censored when using their aliases
(cherry picked from commit ff4fb20b859c853ccf3db299775799a9d79eb16d)
---
.../karaf/shell/impl/action/command/ActionMaskingCallback.java | 2 +-
.../karaf/shell/impl/action/command/ActionMaskingCallbackTest.java | 5 +++++
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/shell/core/src/main/java/org/apache/karaf/shell/impl/action/command/ActionMaskingCallback.java b/shell/core/src/main/java/org/apache/karaf/shell/impl/action/command/ActionMaskingCallback.java
index 0e30002c7f..fcb7df2793 100644
--- a/shell/core/src/main/java/org/apache/karaf/shell/impl/action/command/ActionMaskingCallback.java
+++ b/shell/core/src/main/java/org/apache/karaf/shell/impl/action/command/ActionMaskingCallback.java
@@ -53,7 +53,7 @@ public class ActionMaskingCallback {
booleanOptions.addAll(Arrays.asList(option.aliases()));
} else {
typedOptions.put(option.name(), option);
- Arrays.asList(option.aliases()).forEach(action -> typedOptions.put(option.name(), option));
+ Arrays.asList(option.aliases()).forEach(alias -> typedOptions.put(alias, option));
censor |= option.censor();
}
}
diff --git a/shell/core/src/test/java/org/apache/karaf/shell/impl/action/command/ActionMaskingCallbackTest.java b/shell/core/src/test/java/org/apache/karaf/shell/impl/action/command/ActionMaskingCallbackTest.java
index f5b1b11ab0..445b91c11d 100644
--- a/shell/core/src/test/java/org/apache/karaf/shell/impl/action/command/ActionMaskingCallbackTest.java
+++ b/shell/core/src/test/java/org/apache/karaf/shell/impl/action/command/ActionMaskingCallbackTest.java
@@ -72,6 +72,8 @@ public class ActionMaskingCallbackTest {
check("user-add --opt2=valOpt2 user password foo", "user-add --opt2=valOpt2 user ######## foo");
check("user-add --opt1 --opt2 valOpt2 --opt3=valOpt3 user password foo", "user-add --opt1 --opt2 valOpt2 --opt3=@@@@@@@ user ######## foo");
check("user-add --opt1 --opt2 valOpt2 --opt3 valOpt3 user password foo", "user-add --opt1 --opt2 valOpt2 --opt3 @@@@@@@ user ######## foo");
+ check("user-add --opt1 --opt2 valOpt2 --opt3 valOpt3 --opt4alias1 censorMe --opt4alias2 censorMeToo user password foo",
+ "user-add --opt1 --opt2 valOpt2 --opt3 @@@@@@@ --opt4alias1 ******** --opt4alias2 *********** user ######## foo");
}
private void check(String input, String expected) {
@@ -93,6 +95,9 @@ public class ActionMaskingCallbackTest {
@Option(name = "--opt3", censor = true, mask = '@')
private String opt3;
+ @Option(name = "--opt4", aliases = {"--opt4alias1", "--opt4alias2"}, censor = true, mask = '*')
+ private String opt4;
+
@Argument(index = 0, name = "username")
private String username;