]> code.citadel.org Git - citadel.git/blobdiff - citadel/event_client.h
libev migration - timeouts seem to be working.
[citadel.git] / citadel / event_client.h
index 35ce4246e214eb7d8b6f22b563928f4851507295..c5761ffae482c27ceee0cc73e04f09f329b1b981 100644 (file)
@@ -16,7 +16,7 @@ typedef enum _eNextState {
 }eNextState;
 
 typedef int (*EventContextAttach)(void *Data);
-typedef eNextState (*IO_CallBack)(void *Data);
+typedef eNextState (*IO_CallBack)(AsyncIO *IO);
 typedef eReadState (*IO_LineReaderCallback)(AsyncIO *IO);
 typedef void (*ParseDNSAnswerCb)(AsyncIO*, unsigned char*, int);
 typedef void (*FreeDNSReply)(void *DNSData);
@@ -34,7 +34,6 @@ struct AsyncIO {
        struct hostent *HEnt;
        int sock;
        unsigned short dport;
-       int active_event;
                eNextState NextState;
 
        ev_timer conn_fail, 
@@ -98,3 +97,7 @@ void InitEventIO(AsyncIO *IO,
                 int ReadFirst);
 
 int QueueQuery(ns_type Type, char *name, AsyncIO *IO, IO_CallBack PostDNS);
+
+void StopClient(AsyncIO *IO);
+
+void SetNextTimeout(AsyncIO *IO, int timeout);