From: Lennart Poettering Date: Tue, 7 Jan 2025 13:48:22 +0000 (+0100) Subject: varlink: rely on sd_varlink_dispatch() for validating zero-argument method calls... X-Git-Tag: v258-rc1~1559^2~6 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a7cc7038ac06d2c02cbaa5a749aa47b4f7cbe786;p=thirdparty%2Fsystemd.git varlink: rely on sd_varlink_dispatch() for validating zero-argument method calls, too --- diff --git a/src/shared/varlink-io.systemd.service.c b/src/shared/varlink-io.systemd.service.c index d029fda41ba..c369ad2646c 100644 --- a/src/shared/varlink-io.systemd.service.c +++ b/src/shared/varlink-io.systemd.service.c @@ -25,11 +25,16 @@ SD_VARLINK_DEFINE_INTERFACE( SD_VARLINK_SYMBOL_COMMENT("Sets the maximum log level."), &vl_method_SetLogLevel); +/* Generic implementations for some of the method calls above */ + int varlink_method_ping(sd_varlink *link, sd_json_variant *parameters, sd_varlink_method_flags_t flags, void *userdata) { + int r; + assert(link); - if (sd_json_variant_elements(parameters) > 0) - return sd_varlink_error_invalid_parameter(link, parameters); + r = sd_varlink_dispatch(link, parameters, /* dispatch_table= */ NULL, /* userdata= */ NULL); + if (r != 0) + return r; log_debug("Received io.systemd.service.Ping");