HttpCookie.domainMatches("hostname.local", "hostname") return false
Chris Hegarty
chris.hegarty at oracle.com
Fri Aug 19 07:20:41 PDT 2011
Hi Sean,
I submitted a JPRT job with you patch. If all builds and tests are
successful I'll push this change for you.
diff -r 46b53f80ab0a src/share/classes/java/net/HttpCookie.java
--- a/src/share/classes/java/net/HttpCookie.java Fri Aug 19
10:55:05 2011 +0100
+++ b/src/share/classes/java/net/HttpCookie.java Fri Aug 19
15:16:36 2011 +0100
@@ -751,6 +751,11 @@ public final class HttpCookie implements
// if the host name contains no dot and the domain name is .local
int firstDotInHost = host.indexOf('.');
if (firstDotInHost == -1 && isLocalDomain)
+ return true;
+
+ // if the host name contains no dot and the domain name is
"host.local"
+ if (firstDotInHost == -1 &&
+ domain.equalsIgnoreCase(host + ".local"))
return true;
int domainLength = domain.length();
diff -r 46b53f80ab0a test/java/net/CookieHandler/TestHttpCookie.java
--- a/test/java/net/CookieHandler/TestHttpCookie.java Fri Aug 19
10:55:05 2011 +0100
+++ b/test/java/net/CookieHandler/TestHttpCookie.java Fri Aug 19
15:16:36 2011 +0100
@@ -362,12 +362,13 @@ public class TestHttpCookie {
eq(c1, c2, false);
header("Test domainMatches()");
- dm(".foo.com", "y.x.foo.com", false);
- dm(".foo.com", "x.foo.com", true);
- dm(".com", "whatever.com", false);
- dm(".com.", "whatever.com", false);
- dm(".ajax.com", "ajax.com", true);
- dm(".local", "example.local", true);
+ dm(".foo.com", "y.x.foo.com", false);
+ dm(".foo.com", "x.foo.com", true);
+ dm(".com", "whatever.com", false);
+ dm(".com.", "whatever.com", false);
+ dm(".ajax.com", "ajax.com", true);
+ dm(".local", "example.local", true);
+ dm("example.local", "example", true);
// bug 6277808
testCount++;
-Chris.
On 04/08/2011 08:09, Sean Chou wrote:
> Hi all,
>
> I checked with java8, this problem still exists; and I checked the
> patch, it is still working.
> The bug was filed with id 7023713 for java7, and the patch is here. So,
> would anyone like to
> take a look at it again? Thanks.
>
> 2011/2/22 Sean Chou <zhouyx at linux.vnet.ibm.com
> <mailto:zhouyx at linux.vnet.ibm.com>>
>
> Hi,
> I find that HttpCookie.domainMatches("hostname.local",
> "hostname") returns false, which may be a bug.
> According to spec, the effective host name of "hostname" is
> "hostname.local", which is string
> exactly the same with the first parameter. Thus the method should
> return true for this invocation.
>
> I attached the simple testcase here:
> // Testcase
> import java.net.HttpCookie;
>
> public class DomainMatchTest{
>
> public static void main(String args[]){
> // "true" should be printed, but get "false".
> System.out.println(HttpCookie.domainMatches("hostname.local",
> "hostname"));
> }
>
> }
> // End of testcase
>
> Any comments?
>
> --
> Best Regards,
> Sean Chou
>
>
>
>
> --
> Best Regards,
> Sean Chou
>
More information about the net-dev
mailing list