Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //#include <nlohmann/json.hpp>
- #include <iostream>
- #include <libudev.h>
- int main()
- {
- udev *dev = nullptr;
- udev_enumerate * udev_enum = nullptr;
- udev_list_entry * list_entry = nullptr, *current_list_entry = nullptr;
- dev = udev_new();
- udev_enum = udev_enumerate_new(dev);
- udev_enumerate_add_match_subsystem(udev_enum, "tty");
- udev_enumerate_scan_devices(udev_enum);
- list_entry = udev_enumerate_get_list_entry(udev_enum);
- udev_list_entry_foreach(current_list_entry, list_entry)
- {
- std::string idVendor, idProduct;
- const char* name = udev_list_entry_get_name(current_list_entry);
- udev_device* device = udev_device_new_from_syspath(dev, name);
- udev_device *parent = udev_device_get_parent_with_subsystem_devtype(device, "usb", "usb_device");
- if (parent == nullptr)
- {
- udev_device_unref(device);
- continue;
- }
- idVendor = udev_device_get_sysattr_value(parent, "idVendor");
- idProduct = udev_device_get_sysattr_value(parent, "idProduct");
- if (idVendor == "0403" && idProduct == "6015")
- {
- std::cout << udev_device_get_devnode(device) << std::endl;
- }
- udev_device_unref(device);
- }
- udev_enumerate_unref(udev_enum);
- udev_unref(dev);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement