mirror of
https://github.com/systemd/systemd.git
synced 2024-12-29 15:22:07 +03:00
f4d74c6105
Documentation is licensed under LGPL-2.1-or-later. Scripts are MIT to facilitate reuse. Examples are relicensed to CC0-1.0 to maximise copy-and-paste for users, with permission from authors.
31 lines
670 B
C
31 lines
670 B
C
/* SPDX-License-Identifier: CC0-1.0 */
|
|
|
|
#include <stdio.h>
|
|
#include <stdint.h>
|
|
#include <sd-hwdb.h>
|
|
|
|
int print_usb_properties(uint16_t vid, uint16_t pid) {
|
|
char match[STRLEN("usb:vp") + DECIMAL_STR_MAX(uint16_t) * 2];
|
|
sd_hwdb *hwdb;
|
|
const char *key, *value;
|
|
int r;
|
|
|
|
/* Match this USB vendor and product ID combination */
|
|
xsprintf(match, "usb:v%04Xp%04X", vid, pid);
|
|
|
|
r = sd_hwdb_new(&hwdb);
|
|
if (r < 0)
|
|
return r;
|
|
|
|
SD_HWDB_FOREACH_PROPERTY(hwdb, match, key, value)
|
|
printf("%s: \"%s\" → \"%s\"\n", match, key, value);
|
|
|
|
sd_hwdb_unref(hwdb);
|
|
return 0;
|
|
}
|
|
|
|
int main(int argc, char **argv) {
|
|
print_usb_properties(0x046D, 0xC534);
|
|
return 0;
|
|
}
|