Merge branch 'master' into timeheap
[ashd.git] / lib / mtio.h
... / ...
CommitLineData
1#ifndef _LIB_MTIO_H
2#define _LIB_MTIO_H
3
4#include <stdio.h>
5
6#define EV_READ 1
7#define EV_WRITE 2
8
9struct stdiofd {
10 int fd;
11 int sock;
12 int timeout;
13 int rights, sendrights;
14};
15
16struct selected {
17 int fd, ev;
18};
19
20struct selected mblock(time_t to, int n, struct selected *spec);
21int block(int fd, int ev, time_t to);
22int ioloop(void);
23void exitioloop(int status);
24FILE *mtstdopen(int fd, int issock, int timeout, char *mode, struct stdiofd **infop);
25struct bufio *mtbioopen(int fd, int issock, int timeout, char *mode, struct stdiofd **infop);
26void mtiopipe(FILE **read, FILE **write);
27
28#endif