1 /* buf.c */ 2 void initibuf(Ibuf*, Ioproc*, int); 3 int readibuf(Ibuf*, char*, int); 4 void unreadline(Ibuf*, char*); 5 int readline(Ibuf*, char*, int); 6 7 /* client.c */ 8 int newclient(int); 9 void closeclient(Client*); 10 void clonectl(Ctl*); 11 int ctlwrite(Req*, Ctl*, char*, char*); 12 int clientctlwrite(Req*, Client*, char*, char*); 13 int globalctlwrite(Req*, char*, char*); 14 void ctlread(Req*, Client*); 15 void globalctlread(Req*); 16 void plumburl(char*, char*); 17 18 /* cookies.c */ 19 void cookieread(Req*); 20 void cookiewrite(Req*); 21 void cookieopen(Req*); 22 void cookieclunk(Fid*); 23 void initcookies(char*); 24 void closecookies(void); 25 void httpsetcookie(char*, char*, char*); 26 char* httpcookies(char*, char*, int); 27 28 /* fs.c */ 29 void initfs(void); 30 31 /* http.c */ 32 int httpopen(Client*, Url*); 33 int httpread(Client*, Req*); 34 void httpclose(Client*); 35 36 /* io.c */ 37 Ioproc* ioproc(void); 38 void closeioproc(Ioproc*); 39 40 /* plumb.c */ 41 void plumbinit(void); 42 void plumbstart(void); 43 void replumb(Client*); 44 45 /* url.c */ 46 Url* parseurl(char*, Url*); 47 void freeurl(Url*); 48 void rewriteurl(Url*); 49 int seturlquery(Url*, char*); 50 Url* copyurl(Url*); 51 char* escapeurl(char*, int(*)(int)); 52 char* unescapeurl(char*); 53 void initurl(void); 54 55 /* util.c */ 56 char* estrdup(char*); 57 char* estrmanydup(char*, ...); 58 char* estredup(char*, char*); 59 void* emalloc(uint); 60 void* erealloc(void*, uint); 61 char* strlower(char*); 62