]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
network: fix LLDP field type in Interface Varlink IDL
authornoxiouz <atiurin@proton.me>
Thu, 26 Feb 2026 03:31:24 +0000 (03:31 +0000)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Mon, 2 Mar 2026 23:04:50 +0000 (00:04 +0100)
sd_lldp_tx_describe() returns a single object (the LLDP TX configuration),
but the IDL declared LLDP as SD_VARLINK_ARRAY|SD_VARLINK_NULLABLE. This
caused server-side validation failures ("Field 'LLDP' should be an array,
but it is of type 'object'") whenever networkctl status was called on an
interface with LLDP TX active.

Also fix the field comment: the LLDP field represents the transmit
configuration, not received neighbors.

Follow-up for dd2934d44e2c9cd1a92ae0fd6806985c4bc031e6.

src/shared/varlink-io.systemd.Network.c

index c67b857f12dcb1d8f83401037995dd88cbf457bc..9ae737714fb61257269a769d3ac3b8380229dd4a 100644 (file)
@@ -532,8 +532,8 @@ static SD_VARLINK_DEFINE_STRUCT_TYPE(
                 SD_VARLINK_DEFINE_FIELD(DHCPv4Client, SD_VARLINK_OBJECT, SD_VARLINK_NULLABLE),
                 SD_VARLINK_FIELD_COMMENT("DHCPv6 client configuration and lease information"),
                 SD_VARLINK_DEFINE_FIELD_BY_TYPE(DHCPv6Client, DHCPv6Client, SD_VARLINK_NULLABLE),
-                SD_VARLINK_FIELD_COMMENT("LLDP neighbors discovered on this interface"),
-                SD_VARLINK_DEFINE_FIELD_BY_TYPE(LLDP, LLDPNeighbor, SD_VARLINK_ARRAY|SD_VARLINK_NULLABLE));
+                SD_VARLINK_FIELD_COMMENT("LLDP transmit configuration for this interface"),
+                SD_VARLINK_DEFINE_FIELD_BY_TYPE(LLDP, LLDPNeighbor, SD_VARLINK_NULLABLE));
 
 static SD_VARLINK_DEFINE_METHOD(
                 Describe,