KR> +
KR> + vdev->id = strdup(id);
KR> + free(id);
Just asprintf() into vdev->id instead of using the intermediate
variable and two allocations.
Good call.
KR> +static int input_set_attr(CMPIInstance *instance,
KR> + struct input_device *dev)
KR> +{
KR> + uint16_t cim_type;
KR> +
KR> + if (STREQC(dev->type, "mouse"))
KR> + cim_type = CIM_INPUT_MOUSE;
KR> + else
KR> + cim_type = CIM_INPUT_UNKNOWN;
Does CIM not have a tablet device? If not, I think we can expose the
tablet devices as mice as well. IIRC, virt-manager gives most domains
a PS2 and USB tablet pointer device. The PS2 device is for
compatibility and boot, and the tablet provides an absolute-movement
pointer for more seamless host-to-guest cursor movement. I think it's
worth exposing both. What do you think?
I don't see anything more specific than "PointingDevice." I think this
is supposed to cover all mice, etc.
These patches do return instances for tablet devices, but the type isn't
set to mouse. I went back and added tablet support after first getting
the mouse support to work, and I never changed this to also set tablet
devices properly.
The devices are returned as:
localhost:5988/root/virt:KVM_PointingDevice.CreationClassName="KVM_PointingDevice",DeviceID="demo2/mouse:usb",SystemCreationClassName="KVM_ComputerSystem",SystemName="demo2"
localhost:5988/root/virt:KVM_PointingDevice.CreationClassName="KVM_PointingDevice",DeviceID="demo2/tablet:usb",SystemCreationClassName="KVM_ComputerSystem",SystemName="demo2"
localhost:5988/root/virt:KVM_PointingDevice.CreationClassName="KVM_PointingDevice",DeviceID="demo2/mouse:ps2",SystemCreationClassName="KVM_ComputerSystem",SystemName="demo2"
--
Kaitlin Rupert
IBM Linux Technology Center
kaitlin(a)linux.vnet.ibm.com