Hee Jeong Kim created HTTPCLIENT-2076:
-----------------------------------------

             Summary: LaxExpiresHandler throws NullPointerException when a 
value is null.
                 Key: HTTPCLIENT-2076
                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-2076
             Project: HttpComponents HttpClient
          Issue Type: Bug
    Affects Versions: 5.0, 4.5.12
            Reporter: Hee Jeong Kim
         Attachments: fix_NPE_in_LaxExpiresHandler.patch

Hi. I'm using RFC6265LaxSpec and would like to report two issues.

*1. LaxExpiresHandler throws NullPointerException when a value is null.*

[This 
line|https://github.com/apache/httpcomponents-client/blob/master/httpclient5/src/main/java/org/apache/hc/client5/http/impl/cookie/LaxExpiresHandler.java#L110]
 line is causing NPE.
You can easily reproduce this, with the following Set-Cookie string.
Set-Cookie: gtinfo=info; Expires; domain=.webmd.com; path=/

I think We need to check whether value is blank just like how LaxMaxAgeHandler 
is doing.
https://github.com/apache/httpcomponents-client/blob/master/httpclient5/src/main/java/org/apache/hc/client5/http/impl/cookie/LaxMaxAgeHandler.java#L60


*2. We need to 'ignore' invalid attributes only.*

LaxExpiresHandler throws MalformedCookieException when attribute is not valid, 
so the cookie with invalid Expires attributes is ignored entirely. But [RFC 
6265|https://tools.ietf.org/html/rfc6265#section-5.2.1] says, '_If the 
attribute-value failed to parse as a cookie date, ignore the cookie-av._' 



I think we should not throw MalformedCookieException but just ignore invalid 
attributes only. LaxMaxAgeHandler is also already doing this.
https://github.com/apache/httpcomponents-client/blob/master/httpclient5/src/main/java/org/apache/hc/client5/http/impl/cookie/LaxMaxAgeHandler.java#L69
https://github.com/apache/httpcomponents-client/blob/master/httpclient5/src/main/java/org/apache/hc/client5/http/impl/cookie/LaxMaxAgeHandler.java#L61

Followings are the classes needs to be considered.
- BasicExpiresHandler
- BasicMaxAgeHandler
- LaxExpiresHandler

Thanks.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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

Reply via email to