/* buf.c */
void initibuf(Ibuf*, Ioproc*, int);
int readibuf(Ibuf*, char*, int);
void unreadline(Ibuf*, char*);
int readline(Ibuf*, char*, int);
/* client.c */
int newclient(int);
void closeclient(Client*);
void clonectl(Ctl*);
int ctlwrite(Req*, Ctl*, char*, char*);
int clientctlwrite(Req*, Client*, char*, char*);
int globalctlwrite(Req*, char*, char*);
void ctlread(Req*, Client*);
void globalctlread(Req*);
void plumburl(char*, char*);
/* cookies.c */
void cookieread(Req*);
void cookiewrite(Req*);
void cookieopen(Req*);
void cookieclunk(Fid*);
void initcookies(char*);
void closecookies(void);
void httpsetcookie(char*, char*, char*);
char* httpcookies(char*, char*, int);
/* fs.c */
void initfs(void);
/* http.c */
int httpopen(Client*, Url*);
int httpread(Client*, Req*);
void httpclose(Client*);
/* io.c */
int iotlsdial(Ioproc*, char*, char*, char*, int*, int);
int ioprint(Ioproc*, int, char*, ...);
#pragma varargck argpos ioprint 3
/* plumb.c */
void plumbinit(void);
void plumbstart(void);
void replumb(Client*);
/* url.c */
Url* parseurl(char*, Url*);
void freeurl(Url*);
void rewriteurl(Url*);
int seturlquery(Url*, char*);
Url* copyurl(Url*);
char* escapeurl(char*, int(*)(int));
char* unescapeurl(char*);
void initurl(void);
/* util.c */
char* estrdup(char*);
char* estrmanydup(char*, ...);
char* estredup(char*, char*);
void* emalloc(uint);
void* erealloc(void*, uint);
char* strlower(char*);
|