Blob


1 #include <u.h>
2 #include <libc.h>
3 #include <bin.h>
4 #include <httpd.h>
6 int
7 httpfmt(Fmt *f)
8 {
9 char buf[HMaxWord*2];
10 Rune r;
11 char *t, *s;
12 Htmlesc *l;
14 s = va_arg(f->args, char*);
15 for(t = buf; t < buf + sizeof(buf) - 8; ){
16 s += chartorune(&r, s);
17 if(r == 0)
18 break;
19 for(l = htmlesc; l->name != nil; l++)
20 if(l->value == r)
21 break;
22 if(l->name != nil){
23 strcpy(t, l->name);
24 t += strlen(t);
25 }else
26 *t++ = r;
27 }
28 *t = 0;
29 return fmtstrcpy(f, buf);
30 }