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=f58bd54203464ade2bc851701162a4e6ee83b86a;hp=d4e5c0a00d81a64bccc7d8978112b181a44fa6c1;hb=d532366133a29136ad2dd95cb9268c7bbbb4d3ee;hpb=1716f6dcf54d4c181c2e2558e3d5414f54c8d9ca diff --git a/src/resolve/resolved-link.h b/src/resolve/resolved-link.h index d4e5c0a00..f58bd5420 100644 --- a/src/resolve/resolved-link.h +++ b/src/resolve/resolved-link.h @@ -32,15 +32,19 @@ typedef struct LinkAddress LinkAddress; #include "resolved.h" #include "resolved-dns-server.h" #include "resolved-dns-scope.h" +#include "resolved-dns-rr.h" struct LinkAddress { Link *link; - unsigned char family; + int family; union in_addr_union in_addr; unsigned char flags, scope; + DnsResourceRecord *llmnr_address_rr; + DnsResourceRecord *llmnr_ptr_rr; + LIST_FIELDS(LinkAddress, addresses); }; @@ -52,8 +56,7 @@ struct Link { LIST_HEAD(LinkAddress, addresses); - LIST_HEAD(DnsServer, link_dns_servers); - LIST_HEAD(DnsServer, dhcp_dns_servers); + LIST_HEAD(DnsServer, dns_servers); DnsServer *current_dns_server; DnsScope *unicast_scope; @@ -71,14 +74,14 @@ int link_new(Manager *m, Link **ret, int ifindex); 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, unsigned char family); -LinkAddress* link_find_address(Link *l, unsigned char family, union in_addr_union *in_addr); +bool link_relevant(Link *l, int family); +LinkAddress* link_find_address(Link *l, int family, const union in_addr_union *in_addr); -DnsServer* link_find_dns_server(Link *l, DnsServerSource source, unsigned char family, union in_addr_union *in_addr); +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, unsigned char 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);