eloop.h

Go to the documentation of this file.
00001 
00024 #ifndef ELOOP_H
00025 #define ELOOP_H
00026 
00031 #define ELOOP_ALL_CTX (void *) -1
00032 
00040 typedef enum {
00041         EVENT_TYPE_READ = 0,
00042         EVENT_TYPE_WRITE,
00043         EVENT_TYPE_EXCEPTION
00044 } eloop_event_type;
00045 
00053 typedef void (*eloop_sock_handler)(int sock, void *eloop_ctx, void *sock_ctx);
00054 
00061 typedef void (*eloop_event_handler)(void *eloop_data, void *user_ctx);
00062 
00069 typedef void (*eloop_timeout_handler)(void *eloop_data, void *user_ctx);
00070 
00081 typedef void (*eloop_signal_handler)(int sig, void *eloop_ctx,
00082                                      void *signal_ctx);
00083 
00094 int eloop_init(void *user_data);
00095 
00111 int eloop_register_read_sock(int sock, eloop_sock_handler handler,
00112                              void *eloop_data, void *user_data);
00113 
00122 void eloop_unregister_read_sock(int sock);
00123 
00140 int eloop_register_sock(int sock, eloop_event_type type,
00141                         eloop_sock_handler handler,
00142                         void *eloop_data, void *user_data);
00143 
00153 void eloop_unregister_sock(int sock, eloop_event_type type);
00154 
00178 int eloop_register_event(void *event, size_t event_size,
00179                          eloop_event_handler handler,
00180                          void *eloop_data, void *user_data);
00181 
00191 void eloop_unregister_event(void *event, size_t event_size);
00192 
00206 int eloop_register_timeout(unsigned int secs, unsigned int usecs,
00207                            eloop_timeout_handler handler,
00208                            void *eloop_data, void *user_data);
00209 
00222 int eloop_cancel_timeout(eloop_timeout_handler handler,
00223                          void *eloop_data, void *user_data);
00224 
00236 int eloop_is_timeout_registered(eloop_timeout_handler handler,
00237                                 void *eloop_data, void *user_data);
00238 
00257 int eloop_register_signal(int sig, eloop_signal_handler handler,
00258                           void *user_data);
00259 
00282 int eloop_register_signal_terminate(eloop_signal_handler handler,
00283                                     void *user_data);
00284 
00307 int eloop_register_signal_reconfig(eloop_signal_handler handler,
00308                                    void *user_data);
00309 
00318 void eloop_run(void);
00319 
00327 void eloop_terminate(void);
00328 
00336 void eloop_destroy(void);
00337 
00348 int eloop_terminated(void);
00349 
00357 void eloop_wait_for_read_sock(int sock);
00358 
00364 void * eloop_get_user_data(void);
00365 
00366 #endif /* ELOOP_H */
00367 
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines

Generated on Sat Nov 21 23:16:53 2009 for hostapd by  doxygen 1.6.1