#!/home/hamaji/local/bin/tcc -Illc -run #include "llca.h" int main() { char* p; FILE* fp; ht* q = ht_new(); if ((p = getenv("REQUEST_METHOD")) && st_eq(p, "POST")) { char* qs = io_read(stdin); char** qa = st_split(qs, "&", NULL); for (; *qa; qa++) { char** kv = st_split(*qa, "=", 0); char* v = st_gsub(kv[1], "+", " "); while (reg_match(v, "%([0-9a-fA-F][0-9a-fA-F])")) { v = reg_sub(v, "%[0-9a-fA-F][0-9a-fA-F]", st_chr(st_hex(reg_m[1]))); } v = st_gsub(v, "&", "&"); v = st_gsub(v, "<", "<"); v = st_gsub(v, ">", ">"); ht_set(q, kv[0], v); } } if (ht_has(q, "name")) { puts("Status Code: 302 Moved Temporary\n" "Location: bbs_llc.c\n"); //fp = fopen("bbs.dat", "a"); //fprintf(fp, "%s\t%s\n", ht_get(q, "name"), ht_get(q, "body")); //fclose(fp); } else { puts("Content-Type: text/html; charset=EUC-JP\n" "\n" "\n" "\n" "" "" "bbs_llc.c" "" "" "" "" "" "

bbs_llc.c

" "
" "" "" "" "
" ""); } }