#ifndef RWBUFFER_H
#define RWBUFFER_H
+#include <sys/time.h>
+#include <sys/types.h>
+#include <unistd.h>
+#include <fcntl.h>
+#include <stdio.h>
+#include <assert.h>
+#include <ctype.h>
+#include <stdlib.h>
+#include <errno.h>
+#include <time.h>
+#include <sys/mman.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+#include <sys/un.h>
+#include <netdb.h>
+
+#include "dlist.h"
+
+
int min(int a, int b);
void callselect(void);
void startup(const char *const *argv);
+void startupcore(void);
+void *xmalloc(size_t sz);
+void nonblock(int fd, int yesno);
extern const char *progname; /* must be defined by main .c file */
extern unsigned char *buf, *wp, *rp;
-extern int used, seeneof;
+extern int used, seeneof, maxselfd;
extern size_t buffersize;
extern fd_set readfds;
extern fd_set writefds;
+
+void wrbufcore_startup(void);
+void wrbufcore_prepselect(int rdfd, int wrfd);
+void wrbufcore_afterselect(int rdfd, int wrfd);
+void fdsetset(int fd, fd_set *set);
+void wrbuf_report(const char *m);
+
+
#endif /*RWBUFFER_H*/