3 static char *(hname[]) = {
30 , "content-transfer-encoding"
31 , "notice-requested-upon-delivery-to"
35 static int hmatch(s,len,t)
43 for (i = 0;ch = t[i];++i)
45 if (i >= len) return 0;
48 if (ch == '-') return 0;
49 if (ch - 32 != s[i]) return 0;
54 if (i >= len) return 0;
56 if (ch == ':') return 1;
57 if ((ch != ' ') && (ch != '\t')) return 0;
62 int hfield_known(s,len)
69 for (i = 1;t = hname[i];++i)
75 int hfield_valid(s,len)
83 for (j = 0;j < len;++j)
86 if (j >= len) return 0;
90 if ((ch != ' ') && (ch != '\t'))
99 if (ch <= 32) return 0;
100 if (ch >= 127) return 0;
105 unsigned int hfield_skipname(s,len)
112 for (i = 0;i < len;++i)
119 if ((ch != '\t') && (ch != '\n') && (ch != '\r') && (ch != ' '))