libudev udev_device_get_sysattr_value () возвращает NULL для idVendor / idProduct при удалении устройства - PullRequest
0 голосов
/ 30 декабря 2018

Я пытаюсь внедрить службу / демон монитора USB, чтобы обнаруживать только конкретные устройства PID / VID.Я легко могу определить атрибут действия «добавить» устройства, отфильтровывая PID / VID, но когда я удаляю ЛЮБОЕ USB-устройство из порта, то как часть атрибута действия «удалить», я пытаюсь отфильтровать PID / VID так же, как в действии «добавить».используя

const char* vendor = udev_device_get_sysattr_value(dev, "idVendor");

const char* product = udev_device_get_sysattr_value(dev, "idProduct");

, но в приведенных выше двух символах ptr я всегда получаю NULL.В связи с этим мое действие по удалению будет выполнено для всех USB-устройств, которые будут удалены из порта

Есть ли другой способ в API libudev для обнаружения только удаления определенного устройства?

...