Hi Sean,

I applied your patch to my local repo and it doesn't compile, startWith -> startsWith ;-)

More critically it doesn't resolve the problem, isLocalDomain will be false for 'hostname.local'.

I am working on an alternative fix ( please feel free to work on an alternative fix also). Additional, we should update test/java/net/CookieHandler/TestHttpCookie.java ( under "Test domainMatches" ).

-Chris.

On 03/14/11 08:03 AM, Sean Chou wrote:
Hi,
    Is there any update to this issue? If not, I have a simple patch as
follows:


diff -r e947a98ea3c1 src/share/classes/java/net/HttpCookie.java
--- a/src/share/classes/java/net/HttpCookie.java    Thu Mar 10 17:11:08
2011 -0800
+++ b/src/share/classes/java/net/HttpCookie.java    Mon Mar 14 16:02:14
2011 +0800
@@ -771,6 +771,10 @@
                          host.equalsIgnoreCase(domain.substring(1)));
          }

+        if (isLocalDomain && domain.startWith(host)){
+            return true;
+        }
+
          return false;
      }


2011/3/2 Chris Hegarty <chris.hega...@oracle.com
<mailto:chris.hega...@oracle.com>>

    On 03/ 2/11 01:50 AM, Sean Chou wrote:

        Hi,
            If there's no different opinions or objection, can someone
        raise a
        bug on the Oracle bug system for me please?


    Sorry, I though I replied to this.

    It would appear to be a bug. I filed CR 7023713,
    "HttpCookie.domainMatches("hostname.local", "hostname") should
    return true", for this issue.

    -Chris.

            Thanks.


        2011/2/22 Sean Chou <zho...@linux.vnet.ibm.com
        <mailto:zho...@linux.vnet.ibm.com>
        <mailto:zho...@linux.vnet.ibm.com
        <mailto:zho...@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




--
Best Regards,
Sean Chou

Reply via email to