heejeongkim commented on a change in pull request #222: HTTPCLIENT-2076: fix 
NPE in LaxExpiresHandler and ignore invalid Expires / MaxAge
URL: 
https://github.com/apache/httpcomponents-client/pull/222#discussion_r409788229
 
 

 ##########
 File path: 
httpclient5/src/main/java/org/apache/hc/client5/http/impl/cookie/BasicMaxAgeHandler.java
 ##########
 @@ -53,18 +53,16 @@ public void parse(final SetCookie cookie, final String 
value)
             throws MalformedCookieException {
         Args.notNull(cookie, "Cookie");
         if (value == null) {
-            throw new MalformedCookieException("Missing value for 'max-age' 
attribute");
+            return;
         }
         final int age;
         try {
             age = Integer.parseInt(value);
         } catch (final NumberFormatException e) {
-            throw new MalformedCookieException ("Invalid 'max-age' attribute: "
 
 Review comment:
   @ok2c 
[rfc6265#section-4.1.2](https://tools.ietf.org/html/rfc6265#section-4.1.2) 
states that '_User agents ignore unrecognized cookie attributes (but not the 
entire cookie)._' but If we throw MalformedCookieException while parsing 
invalid ```max-age``` / ```expires``` attribute, the entire set-cookie-string 
containing invalid attribute is failed to parse.
   
   ```java
   URL url = new 
URL("https://www.webmd.com/heartburn-gerd/news/20131210/acid-reflux-drugs-tied-to-lower-levels-of-vitamin-b-12";);
 
   CookieOrigin origin = new CookieOrigin(url.getHost(),
               url.getPort() > 0 ? url.getPort() : url.getDefaultPort(),
               url.getPath(),
               url.getProtocol().equalsIgnoreCase("https"));
   Header header = new BasicHeader("Set-Cookie", "gtinfo=info; 
Expirest=garbage; domain=.webmd.com; path=/");
   CookieSpec cookieSpec = new RFC6265StrictSpec();
   List<Cookie> cookies = cookieSpec.parse(header, origin); // 
MalformedCookieException is thrown in this line. So user cannot retrieve Cookie 
from the set-cookie string
   ```
   
   Do you think I need to open a separate issue for this like Michael Osipov 
suggested? 
([link](https://issues.apache.org/jira/browse/HTTPCLIENT-2076?focusedCommentId=17085053&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-17085053))

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to