#include
Char * getCookie (Char * VAR) {char * p = getenv ("http_cookie"); char sstr [1024] = {0}; char * STR; char * q; char * RETSTR; char CH; if (p) { STRCPY (SSTR, VAR); STRCAT (SSTR, "="); Str = strstr (p, sstr); if (str) {STR = Strlen (var) 1; Q = Str; While (* Q! = '/ 0' && * q! = ';') Q ; if (q == Str) return null;
Retstr = malloc (Q-STR 1); Strncpy (RetStr, STR, Q-STR); RetStr [q-str] = '/ 0'; return Retstr;}} Return NULL;}
Void setCookie (Char * var, char * value) {char str [1024];
STRCPY (STR, VAR); STRCAT (STR, "="); strcat (str, value); strcat (str, ";");
Printf ("SET-Cookie:% S / N", STR);
Char * getValue (Char * Name) {char * p, * q; char * chp; char sstr [1024] = {0}; char * ret; int LEN;
P = GetENV ("Content_length"); if (p) len = atoi (p); else len = 0;
CHP = Malloc (LEN 1); FREAD (CHP, LEN, 1, STDIN); ChP [len] = '/ 0';
STRCPY (SSTR, NAME); STRCAT (SSTR, "="); p = strstr (chp, sstr); if (p) {p = strlen (Name) 1; q = p; while (* q! = '/ 0' && * q! = '&') Q ; if (q == p) return null;
RET = Malloc (Q-P 1); STRNCPY (RET, P, Q-P); RET [q-p] = '/ 0'; return RET;}
Return NULL;
INT main () {char * p; char * VP;
Int Len;
IF (STRCMP ("Request_Method"), "Post") == 0) {vp = getValue ("Value");} else {vp = null;}
P = getCookie ("name"); if (vp) {setcookie ("name", vp);}