Author: olegk
Date: Thu May  4 03:29:08 2006
New Revision: 399651

URL: http://svn.apache.org/viewcvs?rev=399651&view=rev
Log:
Checked compliance with the spec

Modified:
    
jakarta/commons/proper/httpclient/branches/COOKIE_2_BRANCH/src/java/org/apache/commons/httpclient/cookie/RFC2965Spec.java

Modified: 
jakarta/commons/proper/httpclient/branches/COOKIE_2_BRANCH/src/java/org/apache/commons/httpclient/cookie/RFC2965Spec.java
URL: 
http://svn.apache.org/viewcvs/jakarta/commons/proper/httpclient/branches/COOKIE_2_BRANCH/src/java/org/apache/commons/httpclient/cookie/RFC2965Spec.java?rev=399651&r1=399650&r2=399651&view=diff
==============================================================================
--- 
jakarta/commons/proper/httpclient/branches/COOKIE_2_BRANCH/src/java/org/apache/commons/httpclient/cookie/RFC2965Spec.java
 (original)
+++ 
jakarta/commons/proper/httpclient/branches/COOKIE_2_BRANCH/src/java/org/apache/commons/httpclient/cookie/RFC2965Spec.java
 Thu May  4 03:29:08 2006
@@ -540,7 +540,7 @@
      * @param host host name where cookie is received from or being sent to.
      * @return
      */
-    private String getEffectiveHost(String host) {
+    private static String getEffectiveHost(final String host) {
         String effectiveHost = host;
         if (host.indexOf('.') < 0) {
             effectiveHost += ".local";
@@ -689,7 +689,6 @@
             if (cookie == null) {
                 throw new IllegalArgumentException("Cookie may not be null");
             }
-            //TODO (jain): how do we handle the case when domain is specified 
and equals host?
             if (domain == null) {
                 throw new MalformedCookieException(
                         "Missing value for domain attribute");
@@ -699,9 +698,14 @@
                         "Blank value for domain attribute");
             }
             domain = domain.toLowerCase();
-            // put a leading dot if domain does not start with a dot
-            if (!domain.startsWith("."))
+            if (!domain.startsWith(".")) {
+                // Per RFC 2965 section 3.2.2
+                // "... If an explicitly specified value does not start with
+                // a dot, the user agent supplies a leading dot ..."
+                // That effectively implies that the domain attribute 
+                // MAY NOT be an IP address of a host name
                 domain = "." + domain;
+            }
             cookie.setDomain(domain);
             cookie.setDomainAttributeSpecified(true);
         }
@@ -1077,12 +1081,6 @@
                 if (!cookie2.isVersionAttributeSpecified()) {
                     throw new MalformedCookieException(
                             "Violates RFC 2965. Version attribute is 
required.");
-                }
-                //TODO (jain): other versions for set-cookie2 ?
-                if (cookie2.getVersion() != 1) {
-                    throw new MalformedCookieException(
-                            "Violates RFC 2965. Invalid value for Version 
attribute." +
-                            "Must be \"1\".");
                 }
             }
         }



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to