From 9784b45540e7cd94fb382eb10a0e24573797e2f3 Mon Sep 17 00:00:00 2001 From: Andrew John Hughes Date: Sat, 7 Apr 2007 11:19:08 +0000 Subject: 2007-04-07 Andrew John Hughes * javax/management/ObjectName.java: (checkComponents()): Separate value and key illegal characters to allow value wildcards. --- javax/management/ObjectName.java | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'javax') diff --git a/javax/management/ObjectName.java b/javax/management/ObjectName.java index f41740469..421b85a35 100644 --- a/javax/management/ObjectName.java +++ b/javax/management/ObjectName.java @@ -282,16 +282,17 @@ public class ObjectName if (domain.indexOf('\n') != -1) throw new MalformedObjectNameException("The domain includes a newline " + "character."); - char[] chars = new char[] { ':', ',', '*', '?', '=' }; + char[] keychars = new char[] { ':', ',', '*', '?', '=' }; + char[] valchars = new char[] { ':', ',', '=' }; Iterator i = properties.entrySet().iterator(); while (i.hasNext()) { Map.Entry entry = (Map.Entry) i.next(); String key = (String) entry.getKey(); - for (int a = 0; a < chars.length; ++a) - if (key.indexOf(chars[a]) != -1) + for (int a = 0; a < keychars.length; ++a) + if (key.indexOf(keychars[a]) != -1) throw new MalformedObjectNameException("A key contains a '" + - chars[a] + "' " + + keychars[a] + "' " + "character."); String value = (String) entry.getValue(); int quote = value.indexOf('"'); @@ -312,10 +313,10 @@ public class ObjectName "a '\"' character."); else { - for (int a = 0; a < chars.length; ++a) - if (value.indexOf(chars[a]) != -1) + for (int a = 0; a < valchars.length; ++a) + if (value.indexOf(valchars[a]) != -1) throw new MalformedObjectNameException("A value contains " + - "a '" + chars[a] + "' " + + "a '" + valchars[a] + "' " + "character."); } } -- cgit v1.2.1