X-Git-Url: http://git.pk910.de/?p=NeonServV5.git;a=blobdiff_plain;f=src%2FIOHandler.h;h=82781d61e0be415f1ad662b0154b8b461316b820;hp=95429859ba61cf7c01006056ae2fd8a532f63098;hb=259cd63d66c9870dc57aac7c34ef9b2033d9daf0;hpb=c7ddc504390c0e591b2b6296800f2bd401c1918e diff --git a/src/IOHandler.h b/src/IOHandler.h index 9542985..82781d6 100644 --- a/src/IOHandler.h +++ b/src/IOHandler.h @@ -83,6 +83,7 @@ struct IODescriptor { enum IOType type; enum IOStatus state; struct timeval timeout; + int constant_timeout; iohandler_callback *callback; struct IOBuffer readbuf; struct IOBuffer writebuf; @@ -115,8 +116,13 @@ struct IOEvent { #define IOHANDLER_CONNECT_IPV4 0x01 #define IOHANDLER_CONNECT_IPV6 0x02 /* overrides IOHANDLER_CONNECT_IPV4 */ +#define IOHANDLER_SETTING_HIGH_PRECISION_TIMER 0x01 + +void iohandler_set(int setting, int value); + struct IODescriptor *iohandler_add(int sockfd, enum IOType type, struct timeval *timeout, iohandler_callback *callback); struct IODescriptor *iohandler_timer(struct timeval timeout, iohandler_callback *callback); +struct IODescriptor *iohandler_constant_timer(int msec, iohandler_callback *callback); struct IODescriptor *iohandler_connect(const char *hostname, unsigned int port, int ssl, const char *bind, iohandler_callback *callback); struct IODescriptor *iohandler_connect_flags(const char *hostname, unsigned int port, int ssl, const char *bindhost, iohandler_callback *callback, int flags); struct IODescriptor *iohandler_listen(const char *hostname, unsigned int port, iohandler_callback *callback);