ref: 7eb61c82c8f04b7f4a93ecbed287b48b51583620
dir: /gemnine.h/
enum { Cinput = 10, Cinputnoecho = 11, Csuccess = 20, Credirtmp = 30, Credirperm = 31, Cfailtmp = 40, Cunavail = 41, Ccgierr = 42, Cproxyerr = 43, Cslowdown = 44, Cfailperm = 50, Cnotfound = 51, Cgone = 52, Cnoproxy = 53, Cbadrequest = 59, Ccertrequired = 60, Ccertnotauth = 61, Ccertinvalid = 62, }; typedef struct Response Response; typedef struct Url Url; struct Response { Url *url; char *mime; char *prompt; char *meta; char *status; int code; int fd; }; struct Url { char *full; char *scheme; char *user; char *pass; char *host; char *port; char *path; char *query; char *fragment; int free; }; typedef struct { char *s1; char *s2; }Str2; #pragma varargck type "U" Url* #pragma varargck type "E" Str2 #pragma varargck type "N" char* #pragma varargck type "]" char* /* req.c */ Response *request(Url *url); void freeresponse(Response *r); /* url.c */ int Efmt(Fmt*); int Nfmt(Fmt*); int Mfmt(Fmt*); int Ufmt(Fmt *f); Url *urlparse(Url *from, char *s); int matchurl(Url *u, Url *s); void freeurl(Url *u); char *Upath(Url *u); /* util.c */ void *emalloc(int n); char *estrdup(char *s);