You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by rg...@apache.org on 2016/01/12 17:09:14 UTC

svn commit: r1724269 - in /qpid/java/branches/6.0.x: ./ broker-core/src/main/java/org/apache/qpid/server/model/AttributeValueConverter.java

Author: rgodfrey
Date: Tue Jan 12 16:09:14 2016
New Revision: 1724269

URL: http://svn.apache.org/viewvc?rev=1724269&view=rev
Log:
QPID-6979 : Merge to 6.0.x

Modified:
    qpid/java/branches/6.0.x/   (props changed)
    qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/model/AttributeValueConverter.java

Propchange: qpid/java/branches/6.0.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jan 12 16:09:14 2016
@@ -9,5 +9,5 @@
 /qpid/branches/java-broker-vhost-refactor/java:1493674-1494547
 /qpid/branches/java-network-refactor/qpid/java:805429-821809
 /qpid/branches/qpid-2935/qpid/java:1061302-1072333
-/qpid/java/trunk:1715445-1715447,1715586,1715940,1716086-1716087,1716127-1716128,1716141,1716153,1716155,1716194,1716204,1716209,1716227,1716277,1716357,1716368,1716370,1716374,1716432,1716444-1716445,1716455,1716461,1716474,1716489,1716497,1716515,1716555,1716602,1716606-1716610,1716619,1716636,1717269,1717299,1717401,1717446,1717449,1717626,1717691,1717735,1717780,1718744,1719047,1719051,1720664,1721151,1721198,1723064
+/qpid/java/trunk:1715445-1715447,1715586,1715940,1716086-1716087,1716127-1716128,1716141,1716153,1716155,1716194,1716204,1716209,1716227,1716277,1716357,1716368,1716370,1716374,1716432,1716444-1716445,1716455,1716461,1716474,1716489,1716497,1716515,1716555,1716602,1716606-1716610,1716619,1716636,1717269,1717299,1717401,1717446,1717449,1717626,1717691,1717735,1717780,1718744,1719047,1719051,1720664,1721151,1721198,1723064,1724257
 /qpid/trunk/qpid:796646-796653

Modified: qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/model/AttributeValueConverter.java
URL: http://svn.apache.org/viewvc/qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/model/AttributeValueConverter.java?rev=1724269&r1=1724268&r2=1724269&view=diff
==============================================================================
--- qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/model/AttributeValueConverter.java (original)
+++ qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/model/AttributeValueConverter.java Tue Jan 12 16:09:14 2016
@@ -122,6 +122,12 @@ abstract class AttributeValueConverter<T
                                                                           (String) value);
                 try
                 {
+                    interpolated = interpolated.replaceAll("\\s","");
+                    if(!interpolated.matches("[A-Za-z0-9+/]*[=]*"))
+                    {
+                        throw new IllegalArgumentException("Cannot convert string '"+ interpolated+ "'to a byte[] - it does not appear to be base64 data");
+                    }
+
                     return DatatypeConverter.parseBase64Binary(interpolated);
                 }
                 catch(ArrayIndexOutOfBoundsException e)
@@ -175,6 +181,8 @@ abstract class AttributeValueConverter<T
             else if(value instanceof String)
             {
                 String strValue = AbstractConfiguredObject.interpolate(object, (String) value);
+                // convert all line endings to UNIX style
+                strValue = strValue.replaceAll("\r\n","\n").replaceAll("\r","\n");
                 if(strValue.contains(BEGIN_CERTIFICATE))
                 {
                     strValue = strValue.substring(strValue.indexOf(BEGIN_CERTIFICATE) + BEGIN_CERTIFICATE.length());
@@ -182,8 +190,13 @@ abstract class AttributeValueConverter<T
                     {
                         strValue = strValue.substring(0,strValue.indexOf(END_CERTIFICATE));
                     }
-                    strValue = strValue.replaceAll("\\s","");
+                    else
+                    {
+                        // contains begin but not end - invalid
+                        return null;
+                    }
                 }
+
                 return convert(BINARY_CONVERTER.convert(strValue, object),object);
             }
             else if(value == null)
@@ -197,7 +210,6 @@ abstract class AttributeValueConverter<T
         }
     };
 
-
     static final AttributeValueConverter<Long> LONG_CONVERTER = new AttributeValueConverter<Long>()
     {
 



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org