]> granicus.if.org Git - libevent/commitdiff
Expose a function to add a nameserver by sockaddr
authorNick Mathewson <nickm@torproject.org>
Fri, 3 Sep 2010 20:42:16 +0000 (16:42 -0400)
committerNick Mathewson <nickm@torproject.org>
Fri, 3 Sep 2010 20:42:16 +0000 (16:42 -0400)
evdns.c
include/event2/dns.h

diff --git a/evdns.c b/evdns.c
index 1248d2aee5d07e685ba59ef198b5d62921974e5e..9c6b104f4a4dc931e0b24d69b1d9ee1d8462833b 100644 (file)
--- a/evdns.c
+++ b/evdns.c
@@ -2499,6 +2499,18 @@ evdns_nameserver_ip_add(const char *ip_as_string) {
        return evdns_base_nameserver_ip_add(current_base, ip_as_string);
 }
 
+int
+evdns_base_nameserver_sockaddr_add(struct evdns_base *base,
+    const struct sockaddr *sa, ev_socklen_t len, unsigned flags)
+{
+       int res;
+       EVUTIL_ASSERT(base);
+       EVDNS_LOCK(base);
+       res = _evdns_nameserver_add_impl(base, sa, len);
+       EVDNS_UNLOCK(base);
+       return res;
+}
+
 /* remove from the queue */
 static void
 evdns_request_remove(struct request *req, struct request **head)
index 98eedb47ccad7dd1b752df9910999e603aa197e7..bfb6dc9f6d323e61ba63e79236e0f2e231e72007 100644 (file)
@@ -288,7 +288,7 @@ int evdns_base_clear_nameservers_and_suspend(struct evdns_base *base);
 int evdns_base_resume(struct evdns_base *base);
 
 /**
-  Add a nameserver.
+  Add a nameserver by string address.
 
   This function parses a n IPv4 or IPv6 address from a string and adds it as a
   nameserver.  It supports the following formats:
@@ -307,6 +307,13 @@ int evdns_base_resume(struct evdns_base *base);
 int evdns_base_nameserver_ip_add(struct evdns_base *base,
     const char *ip_as_string);
 
+/**
+   Add a nameserver by sockaddr.
+ **/
+int
+evdns_base_nameserver_sockaddr_add(struct evdns_base *base,
+    const struct sockaddr *sa, ev_socklen_t len, unsigned flags);
+
 struct evdns_request;
 
 /**