chiark / gitweb /
resolved: only cache answer RRs, never additional or authoritative RRs of responses
[elogind.git] / src / resolve / resolved-dns-server.h
index adceb868a32576fd6869cd9ae301c2df5384e880..574616ef0fa625c3ee3567af139fd666317e30d2 100644 (file)
   along with systemd; If not, see <http://www.gnu.org/licenses/>.
 ***/
 
+#include "in-addr-util.h"
+
 typedef struct DnsServer DnsServer;
 typedef enum DnsServerSource DnsServerSource;
 
-#include "in-addr-util.h"
 #include "resolved.h"
 #include "resolved-link.h"
 #include "resolved-dns-server.h"
 
-enum DnsServerSource {
-        DNS_SERVER_SYSTEM,
-        DNS_SERVER_LINK,
-        DNS_SERVER_DHCP,
-        _DNS_SERVER_SOURCE_MAX
-};
-
 struct DnsServer {
         Manager *manager;
-        DnsServerSource source;
 
-        unsigned char family;
-        union in_addr_union address;
+        Link *link;
 
-        bool marked;
+        int family;
+        union in_addr_union address;
 
-        Link *link;
+        bool marked:1;
 
         LIST_FIELDS(DnsServer, servers);
 };
@@ -53,9 +46,8 @@ struct DnsServer {
 int dns_server_new(
                 Manager *m,
                 DnsServer **s,
-                DnsServerSource source,
                 Link *l,
-                unsigned char family,
-                union in_addr_union *in_addr);
+                int family,
+                const union in_addr_union *address);
 
 DnsServer* dns_server_free(DnsServer *s);