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
00070 typedef int sres_update_f(sres_async_t *async,
00071 int new_socket,
00072 int old_socket);
00073
00075 SRESPUBFUN
00076 sres_async_t *sres_resolver_set_async(sres_resolver_t *res,
00077 sres_update_f *update,
00078 sres_async_t *async,
00079 int update_all);
00080
00082 SRESPUBFUN
00083 sres_async_t *sres_resolver_get_async(sres_resolver_t const *res,
00084 sres_update_f *update);
00085
00087 SRESPUBFUN int sres_resolver_sockets(sres_resolver_t *, int *sockets, int n);
00088
00090 SRESPUBFUN void sres_resolver_timer(sres_resolver_t *, int dummy);
00091
00093 SRESPUBFUN int sres_resolver_receive(sres_resolver_t *, int socket);
00094
00096 SRESPUBFUN int sres_resolver_error(sres_resolver_t *, int socket);
00097
00098 #ifdef __cplusplus
00099 }
00100 #endif
00101
00102 #endif