mirror of
https://github.com/AuxXxilium/eudev.git
synced 2025-01-21 03:25:04 +07:00
[PATCH] make udevinfo's -r option also workimg for symlink queries
[kay@pim udev.kay]$ ./udevinfo -r -q symlink -p /class/video4linux/video0 /dev/camera0 /dev/kamera0 /dev/videocam0 /dev/webcam0 [kay@pim udev.kay]$ ./udevinfo -q symlink -p /class/video4linux/video0 camera0 kamera0 videocam0 webcam0
This commit is contained in:
parent
38753167e4
commit
31fd340352
@ -19,9 +19,10 @@ Print the version information.
|
||||
.B \-r
|
||||
Print the
|
||||
.B udev_root
|
||||
directory. When used in conjunction with a query for the node name, the
|
||||
directory. When used in conjunction with a query for the node name or the
|
||||
symlink names, the
|
||||
.B udev_root
|
||||
will be prepended.
|
||||
will be prepended to query result.
|
||||
.TP
|
||||
.BI \-q " query_type"
|
||||
Query the database for specified value of a created device node or network
|
||||
|
17
udevinfo.c
17
udevinfo.c
@ -266,7 +266,7 @@ static int process_options(void)
|
||||
int root = 0;
|
||||
int attributes = 0;
|
||||
enum query_type query = NONE;
|
||||
char result[NAME_SIZE] = "";
|
||||
char result[1024] = "";
|
||||
char path[NAME_SIZE] = "";
|
||||
char name[NAME_SIZE] = "";
|
||||
char temp[NAME_SIZE];
|
||||
@ -401,7 +401,20 @@ print:
|
||||
break;
|
||||
|
||||
case SYMLINK:
|
||||
strfieldcpy(result, udev.symlink);
|
||||
if (root) {
|
||||
int slen;
|
||||
char *spos;
|
||||
char slink[NAME_SIZE];
|
||||
|
||||
pos = result;
|
||||
foreach_strpart(udev.symlink, " \n\r", spos, slen) {
|
||||
strncpy(slink, spos, slen);
|
||||
slink[slen] = '\0';
|
||||
pos += sprintf(pos, "%s/%s ", udev_root, slink);
|
||||
}
|
||||
} else {
|
||||
strfieldcpy(result, udev.symlink);
|
||||
}
|
||||
break;
|
||||
|
||||
case PATH:
|
||||
|
Loading…
Reference in New Issue
Block a user