chiark
/
gitweb
/
~ianmdlvl
/
secnet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
packaging: Add LSB headers to init script.
[secnet.git]
/
resolver.c
diff --git
a/resolver.c
b/resolver.c
index 9e0530cd840b04c12534279aee8a60995edf1b45..f60b11282e0bbdc41ba5830414903a3ecb0a3479 100644
(file)
--- a/
resolver.c
+++ b/
resolver.c
@@
-2,8
+2,12
@@
#include <errno.h>
#include "secnet.h"
#include <errno.h>
#include "secnet.h"
+#ifndef HAVE_LIBADNS
+#error secnet requires ADNS version 1.0 or above
+#endif
#include <adns.h>
#include <adns.h>
+
struct adns {
closure_t cl;
struct resolver_if ops;
struct adns {
closure_t cl;
struct resolver_if ops;
@@
-17,7
+21,8
@@
struct query {
adns_query query;
};
adns_query query;
};
-static bool_t resolve_request(void *sst, string_t name,
+static resolve_request_fn resolve_request;
+static bool_t resolve_request(void *sst, cstring_t name,
resolve_answer_fn *cb, void *cst)
{
struct adns *st=sst;
resolve_answer_fn *cb, void *cst)
{
struct adns *st=sst;
@@
-34,15
+39,13
@@
static bool_t resolve_request(void *sst, string_t name,
}
static int resolver_beforepoll(void *sst, struct pollfd *fds, int *nfds_io,
}
static int resolver_beforepoll(void *sst, struct pollfd *fds, int *nfds_io,
- int *timeout_io, const struct timeval *tv_now,
- uint64_t *now)
+ int *timeout_io)
{
struct adns *st=sst;
return adns_beforepoll(st->ast, fds, nfds_io, timeout_io, tv_now);
}
{
struct adns *st=sst;
return adns_beforepoll(st->ast, fds, nfds_io, timeout_io, tv_now);
}
-static void resolver_afterpoll(void *sst, struct pollfd *fds, int nfds,
- const struct timeval *tv_now, uint64_t *now)
+static void resolver_afterpoll(void *sst, struct pollfd *fds, int nfds)
{
struct adns *st=sst;
adns_query aq;
{
struct adns *st=sst;
adns_query aq;
@@
-70,7
+73,7
@@
static void resolver_afterpoll(void *sst, struct pollfd *fds, int nfds,
} else if (rv==EAGAIN || rv==ESRCH) {
break;
} else {
} else if (rv==EAGAIN || rv==ESRCH) {
break;
} else {
- fatal("resolver_afterpoll: adns_check() returned %d
\n
",rv);
+ fatal("resolver_afterpoll: adns_check() returned %d",rv);
}
}
}
}
@@
-118,7
+121,6
@@
static list_t *adnsresolver_apply(closure_t *self, struct cloc loc,
return new_closure(&st->cl);
}
return new_closure(&st->cl);
}
-init_module resolver_module;
void resolver_module(dict_t *dict)
{
add_closure(dict,"adns",adnsresolver_apply);
void resolver_module(dict_t *dict)
{
add_closure(dict,"adns",adnsresolver_apply);