]> mj.ucw.cz Git - libucw.git/commitdiff
Libucw: Update path parameter handling of URL to current RFC (2396).
authorMichal Vaner <vorner@ucw.cz>
Tue, 22 Jul 2008 12:45:46 +0000 (14:45 +0200)
committerMartin Mares <mj@ucw.cz>
Tue, 22 Jul 2008 16:32:31 +0000 (18:32 +0200)
Previous RFC had path parameters as separate component. With current RFC,
each path element can contain own path parameters.

When merging absolute/relative url, path parameters are taken as parts of
the elements, making special handling unnecessary.

ucw/url.c

index f9ae9a2c22413fd8bdfafc52752671141a1c0455..39f13a5f2f31b72fa90923b155739a82f021fbc6 100644 (file)
--- a/ucw/url.c
+++ b/ucw/url.c
@@ -7,10 +7,6 @@
  *     This software may be freely distributed and used according to the terms
  *     of the GNU Lesser General Public License.
  *
  *     This software may be freely distributed and used according to the terms
  *     of the GNU Lesser General Public License.
  *
- *     The URL syntax corresponds to RFC 2396 with several exceptions:
- *
- *        o  Interpretation of path parameters follows RFC 1808.
- *
  *     XXX: The buffer handling in this module is really horrible, but it works.
  */
 
  *     XXX: The buffer handling in this module is really horrible, but it works.
  */
 
@@ -323,15 +319,9 @@ relpath_merge(struct url *u, struct url *b)
        ;
       goto copy;
     }
        ;
       goto copy;
     }
-  if (a[0] == ';')                     /* Change parameters */
-    {
-      for(p=o; *p && *p != ';' && *p != '?' && *p != '#'; p++)
-       ;
-      goto copy;
-    }
 
   p = NULL;                            /* Copy original path and find the last slash */
 
   p = NULL;                            /* Copy original path and find the last slash */
-  while (*o && *o != ';' && *o != '?' && *o != '#')
+  while (*o && *o != '?' && *o != '#')
     {
       if (d >= e)
        return URL_ERR_TOO_LONG;
     {
       if (d >= e)
        return URL_ERR_TOO_LONG;