X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fresolve%2Fresolved.h;h=34eb7b5c5abca5815fcf0963ac636c6860c40180;hp=6aa0fc9e56dd846847ac489cc2a929a9a726842b;hb=eb60f9cd4e93ff5016dc1b5486fd1b7e1565fd92;hpb=623a4c97b9175f95c4b1c6fc34e36c56f1e4ddbf diff --git a/src/resolve/resolved.h b/src/resolve/resolved.h index 6aa0fc9e5..34eb7b5c5 100644 --- a/src/resolve/resolved.h +++ b/src/resolve/resolved.h @@ -51,7 +51,7 @@ struct Manager { sd_event_source *network_event_source; /* DNS query management */ - Hashmap *dns_query_transactions; + Hashmap *dns_transactions; LIST_HEAD(DnsQuery, dns_queries); unsigned n_dns_queries; @@ -90,6 +90,10 @@ struct Manager { char *hostname; DnsResourceKey *host_ipv4_key; DnsResourceKey *host_ipv6_key; + + /* Watch the system hostname */ + int hostname_fd; + sd_event_source *hostname_event_source; }; /* Manager */ @@ -103,6 +107,7 @@ int manager_write_resolv_conf(Manager *m); DnsServer* manager_find_dns_server(Manager *m, int family, const union in_addr_union *in_addr); DnsServer *manager_get_dns_server(Manager *m); void manager_next_dns_server(Manager *m); + uint32_t manager_find_mtu(Manager *m); int manager_send(Manager *m, int fd, int ifindex, int family, const union in_addr_union *addr, uint16_t port, DnsPacket *p); @@ -117,7 +122,12 @@ int manager_llmnr_ipv6_tcp_fd(Manager *m); int manager_ifindex_is_loopback(Manager *m, int ifindex); int manager_find_ifindex(Manager *m, int family, const union in_addr_union *in_addr); +LinkAddress* manager_find_address(Manager *m, int family, const union in_addr_union *in_addr); + +void manager_refresh_rrs(Manager *m); +int manager_next_hostname(Manager *m); +int manager_our_packet(Manager *m, DnsPacket *p); int manager_connect_bus(Manager *m); DEFINE_TRIVIAL_CLEANUP_FUNC(Manager*, manager_free);