net/can: free ifname on socketcan finalization

can_host_socketcan_set_if allocates ifname via g_strdup, but no
instance_finalize existed to free it.

Fixes: ea15ea8a7c ("net/can: support for connecting to Linux host SocketCAN interface.")
Acked-by: Pavel Pisa <pisa@fel.cvut.cz>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
This commit is contained in:
Marc-André Lureau
2026-04-27 14:53:33 +04:00
parent 4dec6f135f
commit be9a6eafa5

View File

@@ -319,11 +319,19 @@ static void can_host_socketcan_class_init(ObjectClass *klass,
chc->disconnect = can_host_socketcan_disconnect;
}
static void can_host_socketcan_finalize(Object *obj)
{
CanHostSocketCAN *c = CAN_HOST_SOCKETCAN(obj);
g_free(c->ifname);
}
static const TypeInfo can_host_socketcan_info = {
.parent = TYPE_CAN_HOST,
.name = TYPE_CAN_HOST_SOCKETCAN,
.instance_size = sizeof(CanHostSocketCAN),
.instance_init = can_host_socketcan_instance_init,
.instance_finalize = can_host_socketcan_finalize,
.class_init = can_host_socketcan_class_init,
};