diff options
author | Daan De Meyer <daan.j.demeyer@gmail.com> | 2020-04-28 19:04:33 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2020-05-06 10:22:54 +0200 |
commit | eff7c2d3c905dec9ea4e1d5e53a0efd6af7d3d26 (patch) | |
tree | 6d6859b1c5f04233d418da8ba26de65c924e3ac1 /src/resolve | |
parent | 7f3a5eb70e476708551445219f7aceb7afc0a4a0 (diff) | |
download | systemd-eff7c2d3c905dec9ea4e1d5e53a0efd6af7d3d26.tar.gz |
sd-bus: Add a nicer way of specifying sd-bus vtable method arguments
SD_BUS_NAMES_WITH_ARGS is a less error-prone way of specifying D-Bus
method arguments.
Diffstat (limited to 'src/resolve')
-rw-r--r-- | src/resolve/resolved-bus.c | 267 | ||||
-rw-r--r-- | src/resolve/resolved-link-bus.c | 95 |
2 files changed, 156 insertions, 206 deletions
diff --git a/src/resolve/resolved-bus.c b/src/resolve/resolved-bus.c index a06e9bcf7d..37b9863862 100644 --- a/src/resolve/resolved-bus.c +++ b/src/resolve/resolved-bus.c @@ -1855,162 +1855,117 @@ static const sd_bus_vtable resolve_vtable[] = { SD_BUS_PROPERTY("DNSSECNegativeTrustAnchors", "as", bus_property_get_ntas, 0, 0), SD_BUS_PROPERTY("DNSStubListener", "s", bus_property_get_dns_stub_listener_mode, offsetof(Manager, dns_stub_listener_mode), 0), - SD_BUS_METHOD_WITH_NAMES("ResolveHostname", - "isit", - SD_BUS_PARAM(ifindex) - SD_BUS_PARAM(name) - SD_BUS_PARAM(family) - SD_BUS_PARAM(flags), - "a(iiay)st", - SD_BUS_PARAM(addresses) - SD_BUS_PARAM(canonical) - SD_BUS_PARAM(flags), - bus_method_resolve_hostname, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("ResolveAddress", - "iiayt", - SD_BUS_PARAM(ifindex) - SD_BUS_PARAM(family) - SD_BUS_PARAM(address) - SD_BUS_PARAM(flags), - "a(is)t", - SD_BUS_PARAM(names) - SD_BUS_PARAM(flags), - bus_method_resolve_address, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("ResolveRecord", - "isqqt", - SD_BUS_PARAM(ifindex) - SD_BUS_PARAM(name) - SD_BUS_PARAM(class) - SD_BUS_PARAM(type) - SD_BUS_PARAM(flags), - "a(iqqay)t", - SD_BUS_PARAM(records) - SD_BUS_PARAM(flags), - bus_method_resolve_record, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("ResolveService", - "isssit", - SD_BUS_PARAM(ifindex) - SD_BUS_PARAM(name) - SD_BUS_PARAM(type) - SD_BUS_PARAM(domain) - SD_BUS_PARAM(family) - SD_BUS_PARAM(flags), - "a(qqqsa(iiay)s)aayssst", - SD_BUS_PARAM(srv_data) - SD_BUS_PARAM(txt_data) - SD_BUS_PARAM(canonical_name) - SD_BUS_PARAM(canonical_type) - SD_BUS_PARAM(canonical_domain) - SD_BUS_PARAM(flags), - bus_method_resolve_service, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("GetLink", - "i", - SD_BUS_PARAM(ifindex), - "o", - SD_BUS_PARAM(path), - bus_method_get_link, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("SetLinkDNS", - "ia(iay)", - SD_BUS_PARAM(ifindex) - SD_BUS_PARAM(addresses), - NULL,, - bus_method_set_link_dns_servers, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("SetLinkDomains", - "ia(sb)", - SD_BUS_PARAM(ifindex) - SD_BUS_PARAM(domains), - NULL,, - bus_method_set_link_domains, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("SetLinkDefaultRoute", - "ib", - SD_BUS_PARAM(ifindex) - SD_BUS_PARAM(enable), - NULL,, - bus_method_set_link_default_route, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("SetLinkLLMNR", - "is", - SD_BUS_PARAM(ifindex) - SD_BUS_PARAM(mode), - NULL,, - bus_method_set_link_llmnr, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("SetLinkMulticastDNS", - "is", - SD_BUS_PARAM(ifindex) - SD_BUS_PARAM(mode), - NULL,, - bus_method_set_link_mdns, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("SetLinkDNSOverTLS", - "is", - SD_BUS_PARAM(ifindex) - SD_BUS_PARAM(mode), - NULL,, - bus_method_set_link_dns_over_tls, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("SetLinkDNSSEC", - "is", - SD_BUS_PARAM(ifindex) - SD_BUS_PARAM(mode), - NULL,, - bus_method_set_link_dnssec, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("SetLinkDNSSECNegativeTrustAnchors", - "ias", - SD_BUS_PARAM(ifindex) - SD_BUS_PARAM(names), - NULL,, - bus_method_set_link_dnssec_negative_trust_anchors, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("RevertLink", - "i", - SD_BUS_PARAM(ifindex), - NULL,, - bus_method_revert_link, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("RegisterService", - "sssqqqaa{say}", - SD_BUS_PARAM(name) - SD_BUS_PARAM(name_template) - SD_BUS_PARAM(type) - SD_BUS_PARAM(service_port) - SD_BUS_PARAM(service_priority) - SD_BUS_PARAM(serwise_weight) - SD_BUS_PARAM(txt_datas), - "o", - SD_BUS_PARAM(service_path), - bus_method_register_service, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("UnregisterService", - "o", - SD_BUS_PARAM(service_path), - NULL,, - bus_method_unregister_service, - SD_BUS_VTABLE_UNPRIVILEGED), - - SD_BUS_METHOD("ResetStatistics", - NULL, - NULL, - bus_method_reset_statistics, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD("FlushCaches", - NULL, - NULL, - bus_method_flush_caches, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD("ResetServerFeatures", - NULL, - NULL, - bus_method_reset_server_features, - SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("ResolveHostname", + SD_BUS_ARGS("i", ifindex, "s", name, "i", family, "t", flags), + SD_BUS_RESULT("a(iiay)", addresses, "s", canonical, "t", flags), + bus_method_resolve_hostname, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("ResolveAddress", + SD_BUS_ARGS("i", ifindex, "i", family, "ay", address, "t", flags), + SD_BUS_RESULT("a(is)", names, "t", flags), + bus_method_resolve_address, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("ResolveRecord", + SD_BUS_ARGS("i", ifindex, "s", name, "q", class, "q", type, "t", flags), + SD_BUS_RESULT("a(iqqay)", records, "t", flags), + bus_method_resolve_record, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("ResolveService", + SD_BUS_ARGS("i", ifindex, + "s", name, + "s", type, + "s", domain, + "i", family, + "t", flags), + SD_BUS_RESULT("a(qqqsa(iiay)s)", srv_data, + "aay", txt_data, + "s", canonical_name, + "s", canonical_type, + "s", canonical_domain, + "t", flags), + bus_method_resolve_service, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("GetLink", + SD_BUS_ARGS("i", ifindex), + SD_BUS_RESULT("o", path), + bus_method_get_link, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("SetLinkDNS", + SD_BUS_ARGS("i", ifindex, "a(iay)", addresses), + SD_BUS_NO_RESULT, + bus_method_set_link_dns_servers, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("SetLinkDomains", + SD_BUS_ARGS("i", ifindex, "a(sb)", domains), + SD_BUS_NO_RESULT, + bus_method_set_link_domains, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("SetLinkDefaultRoute", + SD_BUS_ARGS("i", ifindex, "b", enable), + SD_BUS_NO_RESULT, + bus_method_set_link_default_route, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("SetLinkLLMNR", + SD_BUS_ARGS("i", ifindex, "s", mode), + SD_BUS_NO_RESULT, + bus_method_set_link_llmnr, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("SetLinkMulticastDNS", + SD_BUS_ARGS("i", ifindex, "s", mode), + SD_BUS_NO_RESULT, + bus_method_set_link_mdns, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("SetLinkDNSOverTLS", + SD_BUS_ARGS("i", ifindex, "s", mode), + SD_BUS_NO_RESULT, + bus_method_set_link_dns_over_tls, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("SetLinkDNSSEC", + SD_BUS_ARGS("i", ifindex, "s", mode), + SD_BUS_NO_RESULT, + bus_method_set_link_dnssec, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("SetLinkDNSSECNegativeTrustAnchors", + SD_BUS_ARGS("i", ifindex, "as", names), + SD_BUS_NO_RESULT, + bus_method_set_link_dnssec_negative_trust_anchors, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("RevertLink", + SD_BUS_ARGS("i", ifindex), + SD_BUS_NO_RESULT, + bus_method_revert_link, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("RegisterService", + SD_BUS_ARGS("s", name, + "s", name_template, + "s", type, + "q", service_port, + "q", service_priority, + "q", service_weight, + "a{say}", txt_datas), + SD_BUS_RESULT("o", service_path), + bus_method_register_service, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("UnregisterService", + SD_BUS_ARGS("o", service_path), + SD_BUS_NO_RESULT, + bus_method_unregister_service, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("ResetStatistics", + SD_BUS_NO_ARGS, + SD_BUS_NO_RESULT, + bus_method_reset_statistics, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("FlushCaches", + SD_BUS_NO_ARGS, + SD_BUS_NO_RESULT, + bus_method_flush_caches, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("ResetServerFeatures", + SD_BUS_NO_ARGS, + SD_BUS_NO_RESULT, + bus_method_reset_server_features, + SD_BUS_VTABLE_UNPRIVILEGED), SD_BUS_VTABLE_END, }; diff --git a/src/resolve/resolved-link-bus.c b/src/resolve/resolved-link-bus.c index a2d61f398d..d9b6d2c88d 100644 --- a/src/resolve/resolved-link-bus.c +++ b/src/resolve/resolved-link-bus.c @@ -697,56 +697,51 @@ const sd_bus_vtable link_vtable[] = { SD_BUS_PROPERTY("DNSSECNegativeTrustAnchors", "as", property_get_ntas, 0, 0), SD_BUS_PROPERTY("DNSSECSupported", "b", property_get_dnssec_supported, 0, 0), - SD_BUS_METHOD_WITH_NAMES("SetDNS", - "a(iay)", - SD_BUS_PARAM(addresses), - NULL,, - bus_link_method_set_dns_servers, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("SetDomains", - "a(sb)", - SD_BUS_PARAM(domains), - NULL,, - bus_link_method_set_domains, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("SetDefaultRoute", - "b", - SD_BUS_PARAM(enable), - NULL,, - bus_link_method_set_default_route, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("SetLLMNR", - "s", - SD_BUS_PARAM(mode), - NULL,, - bus_link_method_set_llmnr, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("SetMulticastDNS", - "s", - SD_BUS_PARAM(mode), - NULL,, - bus_link_method_set_mdns, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("SetDNSOverTLS", - "s", - SD_BUS_PARAM(mode), - NULL,, - bus_link_method_set_dns_over_tls, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("SetDNSSEC", - "s", - SD_BUS_PARAM(mode), - NULL,, - bus_link_method_set_dnssec, - SD_BUS_VTABLE_UNPRIVILEGED), - SD_BUS_METHOD_WITH_NAMES("SetDNSSECNegativeTrustAnchors", - "as", - SD_BUS_PARAM(names), - NULL,, - bus_link_method_set_dnssec_negative_trust_anchors, - SD_BUS_VTABLE_UNPRIVILEGED), - - SD_BUS_METHOD("Revert", NULL, NULL, bus_link_method_revert, SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("SetDNS", + SD_BUS_ARGS("a(iay)", addresses), + SD_BUS_NO_RESULT, + bus_link_method_set_dns_servers, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("SetDomains", + SD_BUS_ARGS("a(sb)", domains), + SD_BUS_NO_RESULT, + bus_link_method_set_domains, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("SetDefaultRoute", + SD_BUS_ARGS("b", enable), + SD_BUS_NO_RESULT, + bus_link_method_set_default_route, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("SetLLMNR", + SD_BUS_ARGS("s", mode), + SD_BUS_NO_RESULT, + bus_link_method_set_llmnr, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("SetMulticastDNS", + SD_BUS_ARGS("s", mode), + SD_BUS_NO_RESULT, + bus_link_method_set_mdns, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("SetDNSOverTLS", + SD_BUS_ARGS("s", mode), + SD_BUS_NO_RESULT, + bus_link_method_set_dns_over_tls, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("SetDNSSEC", + SD_BUS_ARGS("s", mode), + SD_BUS_NO_RESULT, + bus_link_method_set_dnssec, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("SetDNSSECNegativeTrustAnchors", + SD_BUS_ARGS("as", names), + SD_BUS_NO_RESULT, + bus_link_method_set_dnssec_negative_trust_anchors, + SD_BUS_VTABLE_UNPRIVILEGED), + SD_BUS_METHOD_WITH_ARGS("Revert", + SD_BUS_NO_ARGS, + SD_BUS_NO_RESULT, + bus_link_method_revert, + SD_BUS_VTABLE_UNPRIVILEGED), SD_BUS_VTABLE_END }; |