* modify it under the terms of the GNU General Public License, version 3.
*/
+#define SHOW_ME_VAPPEND_PRINTF
+
#include <stdlib.h>
#include <unistd.h>
#include <stdio.h>
#include <netdb.h>
#include <sys/un.h>
#include <sys/poll.h>
+#include <sys/time.h>
#include <string.h>
#include <pwd.h>
#include <errno.h>
int tcp_connectsock(char *host, char *service);
void ctdl_a(struct http_transaction *, struct ctdlsession *);
void ctdl_r(struct http_transaction *, struct ctdlsession *);
+void ctdl_u(struct http_transaction *, struct ctdlsession *);
struct ctdlsession *connect_to_citadel(struct http_transaction *);
void disconnect_from_citadel(struct ctdlsession *);
char *header_val(struct http_transaction *h, char *requested_header);
void dav_put_message(struct http_transaction *h, struct ctdlsession *c, char *euid, long old_msgnum);
ssize_t ctdl_write(struct ctdlsession *ctdl, const void *buf, size_t count);
int login_to_citadel(struct ctdlsession *c, char *auth, char *resultbuf);
-void threaded_view(struct http_transaction *h, struct ctdlsession *c, char *which);
-void flat_view(struct http_transaction *h, struct ctdlsession *c, char *which);
StrBuf *ctdl_readtextmsg(struct ctdlsession *ctdl);
StrBuf *html2html(const char *supplied_charset, int treat_as_wiki, char *roomname, long msgnum, StrBuf *Source);
void download_mime_component(struct http_transaction *h, struct ctdlsession *c, long msgnum, char *partnum);
StrBuf *text2html(const char *supplied_charset, int treat_as_wiki, char *roomname, long msgnum, StrBuf *Source);
StrBuf *variformat2html(StrBuf *Source);
int ctdl_readline(struct ctdlsession *ctdl, char *buf, int maxbytes);
+int ctdl_read_binary(struct ctdlsession *ctdl, char *buf, int bytes_requested);
void ctdl_c(struct http_transaction *h, struct ctdlsession *c);
int webserver(char *webserver_interface, int webserver_port, int webserver_protocol);
void ctdl_printf(struct ctdlsession *ctdl, const char *format,...);
void do_404(struct http_transaction *h);
void do_412(struct http_transaction *h);
void UrlizeText(StrBuf* Target, StrBuf *Source, StrBuf *WrkBuf);
-void html_render_one_message(struct http_transaction *h, struct ctdlsession *c, long msgnum);
+void json_render_one_message(struct http_transaction *h, struct ctdlsession *c, long msgnum);