chiark
/
gitweb
/
~mdw
/
mLib
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Describe custom interface.
[mLib]
/
url.c
diff --git
a/url.c
b/url.c
index 75b6ff9872de4d0de5e1a7dd9a55a2df4ee4b1c8..d21242f61b829a29f08b2bc5be5acc9b22730fd5 100644
(file)
--- a/
url.c
+++ b/
url.c
@@
-1,6
+1,6
@@
/* -*-c-*-
*
/* -*-c-*-
*
- * $Id: url.c,v 1.
2 1999/09/03 08:02:05
mdw Exp $
+ * $Id: url.c,v 1.
3 2001/01/20 12:06:21
mdw Exp $
*
* Parsing and construction of url-encoded name/value pairs
*
*
* Parsing and construction of url-encoded name/value pairs
*
@@
-30,6
+30,9
@@
/*----- Revision history --------------------------------------------------*
*
* $Log: url.c,v $
/*----- Revision history --------------------------------------------------*
*
* $Log: url.c,v $
+ * Revision 1.3 2001/01/20 12:06:21 mdw
+ * Be more conservative in base-64 encoding.
+ *
* Revision 1.2 1999/09/03 08:02:05 mdw
* Make `#' a special character which needs escaping.
*
* Revision 1.2 1999/09/03 08:02:05 mdw
* Make `#' a special character which needs escaping.
*
@@
-81,15
+84,10
@@
static void encode(dstr *d, const char *p)
DPUTC(d, '+');
break;
default:
DPUTC(d, '+');
break;
default:
- if (
*p >= 33 && *p < 127
)
+ if (
isalnum((unsigned char)*p)
)
DPUTC(d, *p);
else
DPUTC(d, *p);
else
- case '&':
- case '+':
- case '=':
- case '%':
- case '#':
- dstr_putf(d, "%%%02x", *p);
+ dstr_putf(d, "%%%02x", *p);
break;
}
p++;
break;
}
p++;