]> err.no Git - varnish/commitdiff
Collapse the upper/lower alpha class until we need them separate.
authorphk <phk@d4fa192b-c00b-0410-8231-f00ffab90ce4>
Sat, 21 Jun 2008 18:37:48 +0000 (18:37 +0000)
committerphk <phk@d4fa192b-c00b-0410-8231-f00ffab90ce4>
Sat, 21 Jun 2008 18:37:48 +0000 (18:37 +0000)
Add "separator" class.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2756 d4fa192b-c00b-0410-8231-f00ffab90ce4

varnish-cache/include/vct.h
varnish-cache/lib/libvarnish/vct.c

index 6d9a218c66c617603852d2c7b9a545e07b3e53bd..fbd53f8d0c40668a552577f36a11d6f5b83d2ccc 100644 (file)
@@ -35,8 +35,8 @@
 #define VCT_CRLF       (1<<1)
 #define VCT_LWS        (VCT_CRLF | VCT_SP)
 #define VCT_CTL        (1<<2)
-#define VCT_UALPHA     (1<<3)
-#define VCT_LOALPHA    (1<<4)
+#define VCT_ALPHA      (1<<3)
+#define VCT_SEPARATOR  (1<<4)
 #define VCT_DIGIT      (1<<5)
 #define VCT_HEX                (1<<6)
 
@@ -53,6 +53,8 @@ vct_is(unsigned char x, unsigned char y)
 #define vct_iscrlf(x) vct_is(x, VCT_CRLF)
 #define vct_islws(x) vct_is(x, VCT_LWS)
 #define vct_isctl(x) vct_is(x, VCT_CTL)
+#define vct_isalpha(x) vct_is(x, VCT_ALPHA)
+#define vct_issep(x) vct_is(x, VCT_SEPARATOR)
 
 /* NB: VCT always operate in ASCII, don't replace 0x0d with \r etc. */
 #define vct_skipcrlf(p) (p[0] == 0x0d && p[1] == 0x0a ? 2 : 1)
index 5e41e0dd460d00a601b534f9708bce3f6b32e3e7..a838f28234d07fcc13bfe94c5bb60713e9804b63 100644 (file)
@@ -34,6 +34,9 @@
 
 /* NB: VCT always operate in ASCII, don't replace 0x0d with \r etc. */
 
+#define VCT_UPALPHA    VCT_ALPHA
+#define VCT_LOALPHA    VCT_ALPHA
+
 unsigned char vct_typtab[256] = {
        [0x00]  =       VCT_CTL,
        [0x01]  =       VCT_CTL,
@@ -44,7 +47,7 @@ unsigned char vct_typtab[256] = {
        [0x06]  =       VCT_CTL,
        [0x07]  =       VCT_CTL,
        [0x08]  =       VCT_CTL,
-       [0x09]  =       VCT_CTL | VCT_SP,
+       [0x09]  =       VCT_CTL | VCT_SP | VCT_SEPARATOR,
        [0x0a]  =       VCT_CTL | VCT_CRLF,
        [0x0b]  =       VCT_CTL,
        [0x0c]  =       VCT_CTL,
@@ -67,7 +70,12 @@ unsigned char vct_typtab[256] = {
        [0x1d]  =       VCT_CTL,
        [0x1e]  =       VCT_CTL,
        [0x1f]  =       VCT_CTL,
-        [0x20]  =      VCT_SP,
+        [0x20]  =      VCT_SP | VCT_SEPARATOR,
+        [0x22]  =      VCT_SEPARATOR,
+        [0x28]  =      VCT_SEPARATOR,
+        [0x29]  =      VCT_SEPARATOR,
+        [0x2c]  =      VCT_SEPARATOR,
+        [0x2f]  =      VCT_SEPARATOR,
        [0x30]  =       VCT_DIGIT | VCT_HEX,
        [0x31]  =       VCT_DIGIT | VCT_HEX,
        [0x32]  =       VCT_DIGIT | VCT_HEX,
@@ -78,32 +86,42 @@ unsigned char vct_typtab[256] = {
        [0x37]  =       VCT_DIGIT | VCT_HEX,
        [0x38]  =       VCT_DIGIT | VCT_HEX,
        [0x39]  =       VCT_DIGIT | VCT_HEX,
-       [0x41]  =       VCT_UALPHA | VCT_HEX,
-       [0x42]  =       VCT_UALPHA | VCT_HEX,
-       [0x43]  =       VCT_UALPHA | VCT_HEX,
-       [0x44]  =       VCT_UALPHA | VCT_HEX,
-       [0x45]  =       VCT_UALPHA | VCT_HEX,
-       [0x46]  =       VCT_UALPHA | VCT_HEX,
-       [0x47]  =       VCT_UALPHA,
-       [0x48]  =       VCT_UALPHA,
-       [0x49]  =       VCT_UALPHA,
-       [0x4a]  =       VCT_UALPHA,
-       [0x4b]  =       VCT_UALPHA,
-       [0x4c]  =       VCT_UALPHA,
-       [0x4d]  =       VCT_UALPHA,
-       [0x4e]  =       VCT_UALPHA,
-       [0x4f]  =       VCT_UALPHA,
-       [0x50]  =       VCT_UALPHA,
-       [0x51]  =       VCT_UALPHA,
-       [0x52]  =       VCT_UALPHA,
-       [0x53]  =       VCT_UALPHA,
-       [0x54]  =       VCT_UALPHA,
-       [0x55]  =       VCT_UALPHA,
-       [0x56]  =       VCT_UALPHA,
-       [0x57]  =       VCT_UALPHA,
-       [0x58]  =       VCT_UALPHA,
-       [0x59]  =       VCT_UALPHA,
-       [0x5a]  =       VCT_UALPHA,
+        [0x3a]  =      VCT_SEPARATOR,
+        [0x3b]  =      VCT_SEPARATOR,
+        [0x3c]  =      VCT_SEPARATOR,
+        [0x3d]  =      VCT_SEPARATOR,
+        [0x3e]  =      VCT_SEPARATOR,
+        [0x3f]  =      VCT_SEPARATOR,
+        [0x40]  =      VCT_SEPARATOR,
+       [0x41]  =       VCT_UPALPHA | VCT_HEX,
+       [0x42]  =       VCT_UPALPHA | VCT_HEX,
+       [0x43]  =       VCT_UPALPHA | VCT_HEX,
+       [0x44]  =       VCT_UPALPHA | VCT_HEX,
+       [0x45]  =       VCT_UPALPHA | VCT_HEX,
+       [0x46]  =       VCT_UPALPHA | VCT_HEX,
+       [0x47]  =       VCT_UPALPHA,
+       [0x48]  =       VCT_UPALPHA,
+       [0x49]  =       VCT_UPALPHA,
+       [0x4a]  =       VCT_UPALPHA,
+       [0x4b]  =       VCT_UPALPHA,
+       [0x4c]  =       VCT_UPALPHA,
+       [0x4d]  =       VCT_UPALPHA,
+       [0x4e]  =       VCT_UPALPHA,
+       [0x4f]  =       VCT_UPALPHA,
+       [0x50]  =       VCT_UPALPHA,
+       [0x51]  =       VCT_UPALPHA,
+       [0x52]  =       VCT_UPALPHA,
+       [0x53]  =       VCT_UPALPHA,
+       [0x54]  =       VCT_UPALPHA,
+       [0x55]  =       VCT_UPALPHA,
+       [0x56]  =       VCT_UPALPHA,
+       [0x57]  =       VCT_UPALPHA,
+       [0x58]  =       VCT_UPALPHA,
+       [0x59]  =       VCT_UPALPHA,
+       [0x5a]  =       VCT_UPALPHA,
+        [0x5b]  =      VCT_SEPARATOR,
+        [0x5c]  =      VCT_SEPARATOR,
+        [0x5d]  =      VCT_SEPARATOR,
        [0x61]  =       VCT_LOALPHA | VCT_HEX,
        [0x62]  =       VCT_LOALPHA | VCT_HEX,
        [0x63]  =       VCT_LOALPHA | VCT_HEX,
@@ -130,5 +148,7 @@ unsigned char vct_typtab[256] = {
        [0x78]  =       VCT_LOALPHA,
        [0x79]  =       VCT_LOALPHA,
        [0x7a]  =       VCT_LOALPHA,
+        [0x7b]  =      VCT_SEPARATOR,
+        [0x7d]  =      VCT_SEPARATOR,
        [0x7f]  =       VCT_CTL,
 };