r = sd_json_buildo(
&entry,
- SD_JSON_BUILD_PAIR(
+ SD_JSON_BUILD_PAIR_STRING(
"updateFlag",
- SD_JSON_BUILD_STRING(browse_service_update_event_to_string(
- BROWSE_SERVICE_UPDATE_ADDED))),
- SD_JSON_BUILD_PAIR("family", SD_JSON_BUILD_INTEGER(owner_family)),
+ browse_service_update_event_to_string(
+ BROWSE_SERVICE_UPDATE_ADDED)),
+ SD_JSON_BUILD_PAIR_INTEGER("family", owner_family),
SD_JSON_BUILD_PAIR_CONDITION(
!isempty(name), "name", SD_JSON_BUILD_STRING(name)),
SD_JSON_BUILD_PAIR_CONDITION(
!isempty(type), "type", SD_JSON_BUILD_STRING(type)),
SD_JSON_BUILD_PAIR_CONDITION(
!isempty(domain), "domain", SD_JSON_BUILD_STRING(domain)),
- SD_JSON_BUILD_PAIR("ifindex", SD_JSON_BUILD_INTEGER(sb->ifindex)));
+ SD_JSON_BUILD_PAIR_INTEGER("ifindex", sb->ifindex));
if (r < 0) {
log_error_errno(r, "Failed to build JSON for new service: %m");
goto finish;
r = sd_json_buildo(
&entry,
- SD_JSON_BUILD_PAIR(
+ SD_JSON_BUILD_PAIR_STRING(
"updateFlag",
- SD_JSON_BUILD_STRING(browse_service_update_event_to_string(
- BROWSE_SERVICE_UPDATE_REMOVED))),
- SD_JSON_BUILD_PAIR("family", SD_JSON_BUILD_INTEGER(owner_family)),
- SD_JSON_BUILD_PAIR("name", SD_JSON_BUILD_STRING(name ?: "")),
- SD_JSON_BUILD_PAIR("type", SD_JSON_BUILD_STRING(type ?: "")),
- SD_JSON_BUILD_PAIR("domain", SD_JSON_BUILD_STRING(domain ?: "")),
- SD_JSON_BUILD_PAIR("ifindex", SD_JSON_BUILD_INTEGER(sb->ifindex)));
+ browse_service_update_event_to_string(
+ BROWSE_SERVICE_UPDATE_REMOVED)),
+ SD_JSON_BUILD_PAIR_INTEGER("family", owner_family),
+ SD_JSON_BUILD_PAIR_STRING("name", name ?: ""),
+ SD_JSON_BUILD_PAIR_STRING("type", type ?: ""),
+ SD_JSON_BUILD_PAIR_STRING("domain", domain ?: ""),
+ SD_JSON_BUILD_PAIR_INTEGER("ifindex", sb->ifindex));
if (r < 0) {
log_error_errno(r, "Failed to build JSON for removed service: %m");
goto finish;
if (!sd_json_variant_is_blank_array(array)) {
_cleanup_(sd_json_variant_unrefp) sd_json_variant *vm = NULL;
- r = sd_json_buildo(&vm, SD_JSON_BUILD_PAIR("browserServiceData", SD_JSON_BUILD_VARIANT(array)));
+ r = sd_json_buildo(&vm, SD_JSON_BUILD_PAIR_VARIANT("browserServiceData", array));
if (r < 0) {
log_error_errno(r,
"Failed to build JSON object for browser service data: %m");
r = sd_json_variant_append_arraybo(
&janswer,
SD_JSON_BUILD_PAIR_CONDITION(!!v, "rr", SD_JSON_BUILD_VARIANT(v)),
- SD_JSON_BUILD_PAIR("raw", SD_JSON_BUILD_BASE64(rri->rr->wire_format, rri->rr->wire_format_size)),
+ SD_JSON_BUILD_PAIR_BASE64("raw", rri->rr->wire_format, rri->rr->wire_format_size),
SD_JSON_BUILD_PAIR_CONDITION(rri->ifindex > 0, "ifindex", SD_JSON_BUILD_INTEGER(rri->ifindex)));
if (r < 0)
return log_debug_errno(r, "Failed to append notification entry to array: %m");
r = varlink_many_notifybo(
m->varlink_query_results_subscription,
- SD_JSON_BUILD_PAIR("state", SD_JSON_BUILD_STRING(dns_transaction_state_to_string(q->state))),
+ SD_JSON_BUILD_PAIR_STRING("state", dns_transaction_state_to_string(q->state)),
SD_JSON_BUILD_PAIR_CONDITION(q->state == DNS_TRANSACTION_DNSSEC_FAILED,
"result", SD_JSON_BUILD_STRING(dnssec_result_to_string(q->answer_dnssec_result))),
SD_JSON_BUILD_PAIR_CONDITION(q->state == DNS_TRANSACTION_RCODE_FAILURE,
DNS_TRANSACTION_RCODE_FAILURE) &&
q->answer_ede_rcode >= 0 && !isempty(q->answer_ede_msg),
"extendedDNSErrorMessage", SD_JSON_BUILD_STRING(q->answer_ede_msg)),
- SD_JSON_BUILD_PAIR("question", SD_JSON_BUILD_VARIANT(jquestion)),
+ SD_JSON_BUILD_PAIR_VARIANT("question", jquestion),
SD_JSON_BUILD_PAIR_CONDITION(!!jcollected_questions,
"collectedQuestions", SD_JSON_BUILD_VARIANT(jcollected_questions)),
SD_JSON_BUILD_PAIR_CONDITION(!!janswer,
r = sd_json_buildo(
&entry,
SD_JSON_BUILD_PAIR_CONDITION(ifindex > 0, "ifindex", SD_JSON_BUILD_INTEGER(ifindex)),
- SD_JSON_BUILD_PAIR("family", SD_JSON_BUILD_INTEGER(family)),
- SD_JSON_BUILD_PAIR("address", SD_JSON_BUILD_BYTE_ARRAY(p, FAMILY_ADDRESS_SIZE(family))));
+ SD_JSON_BUILD_PAIR_INTEGER("family", family),
+ SD_JSON_BUILD_PAIR_BYTE_ARRAY("address", p, FAMILY_ADDRESS_SIZE(family)));
if (r < 0)
return r;
r = sd_varlink_replybo(
q->varlink_request,
- SD_JSON_BUILD_PAIR("addresses", SD_JSON_BUILD_VARIANT(array)),
- SD_JSON_BUILD_PAIR("name", SD_JSON_BUILD_STRING(normalized)),
- SD_JSON_BUILD_PAIR("flags", SD_JSON_BUILD_INTEGER(dns_query_reply_flags_make(q))));
+ SD_JSON_BUILD_PAIR_VARIANT("addresses", array),
+ SD_JSON_BUILD_PAIR_STRING("name", normalized),
+ SD_JSON_BUILD_PAIR_INTEGER("flags", dns_query_reply_flags_make(q)));
finish:
if (r < 0) {
log_full_errno(ERRNO_IS_DISCONNECT(r) ? LOG_DEBUG : LOG_ERR, r, "Failed to send hostname reply: %m");
SD_JSON_BUILD_ARRAY(
SD_JSON_BUILD_OBJECT(
SD_JSON_BUILD_PAIR_CONDITION(ifindex > 0, "ifindex", SD_JSON_BUILD_INTEGER(ifindex)),
- SD_JSON_BUILD_PAIR("family", SD_JSON_BUILD_INTEGER(ff)),
- SD_JSON_BUILD_PAIR("address", SD_JSON_BUILD_BYTE_ARRAY(&parsed, FAMILY_ADDRESS_SIZE(ff)))))),
- SD_JSON_BUILD_PAIR("name", SD_JSON_BUILD_STRING(canonical)),
- SD_JSON_BUILD_PAIR("flags", SD_JSON_BUILD_INTEGER(SD_RESOLVED_FLAGS_MAKE(dns_synthesize_protocol(p->flags), ff, true, true)|
- SD_RESOLVED_SYNTHETIC)));
+ SD_JSON_BUILD_PAIR_INTEGER("family", ff),
+ SD_JSON_BUILD_PAIR_BYTE_ARRAY("address", &parsed, FAMILY_ADDRESS_SIZE(ff))))),
+ SD_JSON_BUILD_PAIR_STRING("name", canonical),
+ SD_JSON_BUILD_PAIR_INTEGER("flags", SD_RESOLVED_FLAGS_MAKE(dns_synthesize_protocol(p->flags), ff, true, true)|
+ SD_RESOLVED_SYNTHETIC));
}
static int vl_method_resolve_hostname(sd_varlink *link, sd_json_variant *parameters, sd_varlink_method_flags_t flags, void *userdata) {
r = sd_json_variant_append_arraybo(
&array,
SD_JSON_BUILD_PAIR_CONDITION(ifindex > 0, "ifindex", SD_JSON_BUILD_INTEGER(ifindex)),
- SD_JSON_BUILD_PAIR("name", SD_JSON_BUILD_STRING(normalized)));
+ SD_JSON_BUILD_PAIR_STRING("name", normalized));
if (r < 0)
goto finish;
}
r = sd_varlink_replybo(
q->varlink_request,
- SD_JSON_BUILD_PAIR("names", SD_JSON_BUILD_VARIANT(array)),
- SD_JSON_BUILD_PAIR("flags", SD_JSON_BUILD_INTEGER(dns_query_reply_flags_make(q))));
+ SD_JSON_BUILD_PAIR_VARIANT("names", array),
+ SD_JSON_BUILD_PAIR_INTEGER("flags", dns_query_reply_flags_make(q)));
finish:
if (r < 0) {
log_full_errno(ERRNO_IS_DISCONNECT(r) ? LOG_DEBUG : LOG_ERR, r, "Failed to send address reply: %m");
r = sd_json_buildo(
&v,
- SD_JSON_BUILD_PAIR("priority", SD_JSON_BUILD_UNSIGNED(rr->srv.priority)),
- SD_JSON_BUILD_PAIR("weight", SD_JSON_BUILD_UNSIGNED(rr->srv.weight)),
- SD_JSON_BUILD_PAIR("port", SD_JSON_BUILD_UNSIGNED(rr->srv.port)),
- SD_JSON_BUILD_PAIR("hostname", SD_JSON_BUILD_STRING(normalized)));
+ SD_JSON_BUILD_PAIR_UNSIGNED("priority", rr->srv.priority),
+ SD_JSON_BUILD_PAIR_UNSIGNED("weight", rr->srv.weight),
+ SD_JSON_BUILD_PAIR_UNSIGNED("port", rr->srv.port),
+ SD_JSON_BUILD_PAIR_STRING("hostname", normalized));
if (r < 0)
return r;
r = sd_varlink_replybo(
query->varlink_request,
- SD_JSON_BUILD_PAIR("services", SD_JSON_BUILD_VARIANT(srv)),
+ SD_JSON_BUILD_PAIR_VARIANT("services", srv),
SD_JSON_BUILD_PAIR_CONDITION(!sd_json_variant_is_blank_object(txt), "txt", SD_JSON_BUILD_VARIANT(txt)),
SD_JSON_BUILD_PAIR("canonical", SD_JSON_BUILD_OBJECT(
- SD_JSON_BUILD_PAIR("name", SD_JSON_BUILD_STRING(name)),
- SD_JSON_BUILD_PAIR("type", SD_JSON_BUILD_STRING(type)),
- SD_JSON_BUILD_PAIR("domain", SD_JSON_BUILD_STRING(domain)))),
- SD_JSON_BUILD_PAIR("flags", SD_JSON_BUILD_UNSIGNED(dns_query_reply_flags_make(query))));
+ SD_JSON_BUILD_PAIR_STRING("name", name),
+ SD_JSON_BUILD_PAIR_STRING("type", type),
+ SD_JSON_BUILD_PAIR_STRING("domain", domain))),
+ SD_JSON_BUILD_PAIR_UNSIGNED("flags", dns_query_reply_flags_make(query)));
finish:
if (r < 0) {
&array,
SD_JSON_BUILD_PAIR_CONDITION(ifindex > 0, "ifindex", SD_JSON_BUILD_INTEGER(ifindex)),
SD_JSON_BUILD_PAIR_CONDITION(!!v, "rr", SD_JSON_BUILD_VARIANT(v)),
- SD_JSON_BUILD_PAIR("raw", SD_JSON_BUILD_BASE64(rr->wire_format, rr->wire_format_size)));
+ SD_JSON_BUILD_PAIR_BASE64("raw", rr->wire_format, rr->wire_format_size));
if (r < 0)
goto finish;
r = sd_varlink_replybo(
q->varlink_request,
- SD_JSON_BUILD_PAIR("rrs", SD_JSON_BUILD_VARIANT(array)),
- SD_JSON_BUILD_PAIR("flags", SD_JSON_BUILD_INTEGER(dns_query_reply_flags_make(q))));
+ SD_JSON_BUILD_PAIR_VARIANT("rrs", array),
+ SD_JSON_BUILD_PAIR_INTEGER("flags", dns_query_reply_flags_make(q)));
finish:
if (r < 0) {
log_full_errno(ERRNO_IS_DISCONNECT(r) ? LOG_DEBUG : LOG_ERR, r, "Failed to send record reply: %m");
return r;
}
- return sd_varlink_replybo(link, SD_JSON_BUILD_PAIR("dump", SD_JSON_BUILD_VARIANT(list)));
+ return sd_varlink_replybo(link, SD_JSON_BUILD_PAIR_VARIANT("dump", list));
}
static int dns_server_dump_state_to_json_list(DnsServer *server, sd_json_variant **list) {
return r;
}
- return sd_varlink_replybo(link, SD_JSON_BUILD_PAIR("dump", SD_JSON_BUILD_VARIANT(list)));
+ return sd_varlink_replybo(link, SD_JSON_BUILD_PAIR_VARIANT("dump", list));
}
static int vl_method_dump_statistics(sd_varlink *link, sd_json_variant *parameters, sd_varlink_method_flags_t flags, void *userdata) {