Pārlūkot izejas kodu

HADOOP-11859. PseudoAuthenticationHandler fails with httpcomponents v4.4. Contributed by Eugene Koifman.

Jitendra Pandey 10 gadi atpakaļ
vecāks
revīzija
1f4767c7f2

+ 5 - 1
hadoop-common-project/hadoop-auth/src/main/java/org/apache/hadoop/security/authentication/server/PseudoAuthenticationHandler.java

@@ -142,7 +142,11 @@ public class PseudoAuthenticationHandler implements AuthenticationHandler {
   }
 
   private String getUserName(HttpServletRequest request) {
-    List<NameValuePair> list = URLEncodedUtils.parse(request.getQueryString(), UTF8_CHARSET);
+    String queryString = request.getQueryString();
+    if(queryString == null || queryString.length() == 0) {
+      return null;
+    }
+    List<NameValuePair> list = URLEncodedUtils.parse(queryString, UTF8_CHARSET);
     if (list != null) {
       for (NameValuePair nv : list) {
         if (PseudoAuthenticator.USER_NAME.equals(nv.getName())) {

+ 3 - 0
hadoop-common-project/hadoop-common/CHANGES.txt

@@ -533,6 +533,9 @@ Release 2.8.0 - UNRELEASED
     HADOOP-11846 TestCertificateUtil.testCorruptPEM failing on Jenkins JDK8.
     (Larry McCay via stevel)
 
+    HADOOP-11859. PseudoAuthenticationHandler fails with httpcomponents v4.4.
+    (Eugene Koifman via jitendra)
+
 Release 2.7.1 - UNRELEASED
 
   INCOMPATIBLE CHANGES