X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fresolve%2Fresolved-link.h;h=38bb39271002fbceb33aac663eb48c71381bed3d;hp=cef0400b217bb192be92100d5552027a9ca2638f;hb=8db0d2f5c37e7e8f5bfce016cfdad7947a3ea939;hpb=6073b6f26ab9fc6bf335faa7073ec443eef093fd diff --git a/src/resolve/resolved-link.h b/src/resolve/resolved-link.h index cef0400b2..38bb39271 100644 --- a/src/resolve/resolved-link.h +++ b/src/resolve/resolved-link.h @@ -29,9 +29,10 @@ typedef struct Link Link; typedef struct LinkAddress LinkAddress; -#include "resolved.h" #include "resolved-dns-server.h" #include "resolved-dns-scope.h" +#include "resolved-dns-rr.h" +#include "resolved-manager.h" struct LinkAddress { Link *link; @@ -41,6 +42,9 @@ struct LinkAddress { unsigned char flags, scope; + DnsResourceRecord *llmnr_address_rr; + DnsResourceRecord *llmnr_ptr_rr; + LIST_FIELDS(LinkAddress, addresses); }; @@ -71,15 +75,18 @@ Link *link_free(Link *l); int link_update_rtnl(Link *l, sd_rtnl_message *m); int link_update_monitor(Link *l); bool link_relevant(Link *l, int family); -LinkAddress* link_find_address(Link *l, int family, union in_addr_union *in_addr); +LinkAddress* link_find_address(Link *l, int family, const union in_addr_union *in_addr); +void link_add_rrs(Link *l, bool force_remove); -DnsServer* link_find_dns_server(Link *l, int family, union in_addr_union *in_addr); +DnsServer* link_set_dns_server(Link *l, DnsServer *s); +DnsServer* link_find_dns_server(Link *l, int family, const union in_addr_union *in_addr); DnsServer* link_get_dns_server(Link *l); void link_next_dns_server(Link *l); -int link_address_new(Link *l, LinkAddress **ret, int family, union in_addr_union *in_addr); +int link_address_new(Link *l, LinkAddress **ret, int family, const union in_addr_union *in_addr); LinkAddress *link_address_free(LinkAddress *a); int link_address_update_rtnl(LinkAddress *a, sd_rtnl_message *m); bool link_address_relevant(LinkAddress *l); +void link_address_add_rrs(LinkAddress *a, bool force_remove); DEFINE_TRIVIAL_CLEANUP_FUNC(Link*, link_free);