Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef SOFIA_RESOLV_SRES_ASYNC_H
00026
00027 #define SOFIA_RESOLV_SRES_ASYNC_H
00028
00047 #include "sofia-resolv/sres_config.h"
00048
00049 #ifdef __cplusplus
00050 extern "C" {
00051 #endif
00052
00053 #ifndef SRES_ASYNC_T
00054 #define SRES_ASYNC_T struct sres_async_s
00055 #endif
00056
00057 typedef SRES_ASYNC_T sres_async_t;
00058
00072 typedef int sres_update_f(sres_async_t *async,
00073 sres_socket_t new_socket,
00074 sres_socket_t old_socket);
00075
00077 SRESPUBFUN
00078 sres_async_t *sres_resolver_set_async(sres_resolver_t *res,
00079 sres_update_f *update,
00080 sres_async_t *async,
00081 int update_all);
00082
00084 SRESPUBFUN
00085 sres_async_t *sres_resolver_get_async(sres_resolver_t const *res,
00086 sres_update_f *update);
00087
00089 SRESPUBFUN int sres_resolver_sockets(sres_resolver_t *,
00090 sres_socket_t *sockets,
00091 int n);
00092
00094 SRESPUBFUN void sres_resolver_timer(sres_resolver_t *, int dummy);
00095
00106 typedef int sres_schedule_f(sres_async_t *async, unsigned long interval);
00107
00109 SRESPUBFUN int sres_resolver_set_timer_cb(sres_resolver_t *res,
00110 sres_schedule_f *callback,
00111 sres_async_t *async);
00112
00114 SRESPUBFUN int sres_resolver_receive(sres_resolver_t *, int socket);
00115
00117 SRESPUBFUN int sres_resolver_error(sres_resolver_t *, int socket);
00118
00119 #ifdef __cplusplus
00120 }
00121 #endif
00122
00123 #endif