summaryrefslogtreecommitdiff
path: root/src/libudev
diff options
context:
space:
mode:
Diffstat (limited to 'src/libudev')
-rw-r--r--src/libudev/libudev-device-private.c2
-rw-r--r--src/libudev/libudev-device.c80
-rw-r--r--src/libudev/libudev-enumerate.c7
-rw-r--r--src/libudev/libudev-private.h1
-rw-r--r--src/libudev/libudev-util.c8
5 files changed, 48 insertions, 50 deletions
diff --git a/src/libudev/libudev-device-private.c b/src/libudev/libudev-device-private.c
index c58cde2ff6..a4dfa9bd39 100644
--- a/src/libudev/libudev-device-private.c
+++ b/src/libudev/libudev-device-private.c
@@ -60,7 +60,7 @@ int udev_device_tag_index(struct udev_device *dev, struct udev_device *dev_old,
udev_list_entry_foreach(list_entry_current, udev_device_get_tags_list_entry(dev)) {
const char *tag = udev_list_entry_get_name(list_entry_current);
- if (strcmp(tag, tag_old) == 0) {
+ if (streq(tag, tag_old)) {
found = true;
break;
}
diff --git a/src/libudev/libudev-device.c b/src/libudev/libudev-device.c
index 212163bb92..6a2b1d039a 100644
--- a/src/libudev/libudev-device.c
+++ b/src/libudev/libudev-device.c
@@ -276,7 +276,7 @@ _public_ const char *udev_device_get_subsystem(struct udev_device *udev_device)
return udev_device->subsystem;
}
/* implicit names */
- if (strncmp(udev_device->devpath, "/module/", 8) == 0) {
+ if (startswith(udev_device->devpath, "/module/")) {
udev_device_set_subsystem(udev_device, "module");
return udev_device->subsystem;
}
@@ -284,9 +284,9 @@ _public_ const char *udev_device_get_subsystem(struct udev_device *udev_device)
udev_device_set_subsystem(udev_device, "drivers");
return udev_device->subsystem;
}
- if (strncmp(udev_device->devpath, "/subsystem/", 11) == 0 ||
- strncmp(udev_device->devpath, "/class/", 7) == 0 ||
- strncmp(udev_device->devpath, "/bus/", 5) == 0) {
+ if (startswith(udev_device->devpath, "/subsystem/") ||
+ startswith(udev_device->devpath, "/class/") ||
+ startswith(udev_device->devpath, "/bus/")) {
udev_device_set_subsystem(udev_device, "subsystem");
return udev_device->subsystem;
}
@@ -353,18 +353,18 @@ static struct udev_list_entry *udev_device_add_property_from_string(struct udev_
*/
void udev_device_add_property_from_string_parse(struct udev_device *udev_device, const char *property)
{
- if (strncmp(property, "DEVPATH=", 8) == 0) {
+ if (startswith(property, "DEVPATH=")) {
char path[UTIL_PATH_SIZE];
util_strscpyl(path, sizeof(path), TEST_PREFIX "/sys", &property[8], NULL);
udev_device_set_syspath(udev_device, path);
- } else if (strncmp(property, "SUBSYSTEM=", 10) == 0) {
+ } else if (startswith(property, "SUBSYSTEM=")) {
udev_device_set_subsystem(udev_device, &property[10]);
- } else if (strncmp(property, "DEVTYPE=", 8) == 0) {
+ } else if (startswith(property, "DEVTYPE=")) {
udev_device_set_devtype(udev_device, &property[8]);
- } else if (strncmp(property, "DEVNAME=", 8) == 0) {
+ } else if (startswith(property, "DEVNAME=")) {
udev_device_set_devnode(udev_device, &property[8]);
- } else if (strncmp(property, "DEVLINKS=", 9) == 0) {
+ } else if (startswith(property, "DEVLINKS=")) {
char devlinks[UTIL_PATH_SIZE];
char *slink;
char *next;
@@ -380,7 +380,7 @@ void udev_device_add_property_from_string_parse(struct udev_device *udev_device,
}
if (slink[0] != '\0')
udev_device_add_devlink(udev_device, slink, 0);
- } else if (strncmp(property, "TAGS=", 5) == 0) {
+ } else if (startswith(property, "TAGS=")) {
char tags[UTIL_PATH_SIZE];
char *next;
@@ -400,23 +400,23 @@ void udev_device_add_property_from_string_parse(struct udev_device *udev_device,
udev_device_add_tag(udev_device, tag);
}
}
- } else if (strncmp(property, "USEC_INITIALIZED=", 19) == 0) {
+ } else if (startswith(property, "USEC_INITIALIZED=")) {
udev_device_set_usec_initialized(udev_device, strtoull(&property[19], NULL, 10));
- } else if (strncmp(property, "DRIVER=", 7) == 0) {
+ } else if (startswith(property, "DRIVER=")) {
udev_device_set_driver(udev_device, &property[7]);
- } else if (strncmp(property, "ACTION=", 7) == 0) {
+ } else if (startswith(property, "ACTION=")) {
udev_device_set_action(udev_device, &property[7]);
- } else if (strncmp(property, "MAJOR=", 6) == 0) {
+ } else if (startswith(property, "MAJOR=")) {
udev_device->maj = strtoull(&property[6], NULL, 10);
- } else if (strncmp(property, "MINOR=", 6) == 0) {
+ } else if (startswith(property, "MINOR=")) {
udev_device->min = strtoull(&property[6], NULL, 10);
- } else if (strncmp(property, "DEVPATH_OLD=", 12) == 0) {
+ } else if (startswith(property, "DEVPATH_OLD=")) {
udev_device_set_devpath_old(udev_device, &property[12]);
- } else if (strncmp(property, "SEQNUM=", 7) == 0) {
+ } else if (startswith(property, "SEQNUM=")) {
udev_device_set_seqnum(udev_device, strtoull(&property[7], NULL, 10));
- } else if (strncmp(property, "IFINDEX=", 8) == 0) {
+ } else if (startswith(property, "IFINDEX=")) {
udev_device_set_ifindex(udev_device, strtoull(&property[8], NULL, 10));
- } else if (strncmp(property, "DEVMODE=", 8) == 0) {
+ } else if (startswith(property, "DEVMODE=")) {
udev_device_set_devnode_mode(udev_device, strtoul(&property[8], NULL, 8));
} else {
udev_device_add_property_from_string(udev_device, property);
@@ -548,24 +548,24 @@ int udev_device_read_uevent_file(struct udev_device *udev_device)
continue;
pos[0] = '\0';
- if (strncmp(line, "DEVTYPE=", 8) == 0) {
+ if (startswith(line, "DEVTYPE=")) {
udev_device_set_devtype(udev_device, &line[8]);
continue;
}
- if (strncmp(line, "IFINDEX=", 8) == 0) {
+ if (startswith(line, "IFINDEX=")) {
udev_device_set_ifindex(udev_device, strtoull(&line[8], NULL, 10));
continue;
}
- if (strncmp(line, "DEVNAME=", 8) == 0) {
+ if (startswith(line, "DEVNAME=")) {
udev_device_set_devnode(udev_device, &line[8]);
continue;
}
- if (strncmp(line, "MAJOR=", 6) == 0)
+ if (startswith(line, "MAJOR="))
maj = strtoull(&line[6], NULL, 10);
- else if (strncmp(line, "MINOR=", 6) == 0)
+ else if (startswith(line, "MINOR="))
min = strtoull(&line[6], NULL, 10);
- else if (strncmp(line, "DEVMODE=", 8) == 0)
+ else if (startswith(line, "DEVMODE="))
udev_device->devnode_mode = strtoul(&line[8], NULL, 8);
udev_device_add_property_from_string(udev_device, line);
@@ -636,7 +636,7 @@ _public_ struct udev_device *udev_device_new_from_syspath(struct udev *udev, con
return NULL;
/* path starts in sys */
- if (strncmp(syspath, TEST_PREFIX "/sys", strlen(TEST_PREFIX "/sys")) != 0) {
+ if (!startswith(syspath, TEST_PREFIX "/sys")) {
dbg(udev, "not in sys :%s\n", syspath);
return NULL;
}
@@ -651,7 +651,7 @@ _public_ struct udev_device *udev_device_new_from_syspath(struct udev *udev, con
util_strscpy(path, sizeof(path), syspath);
util_resolve_sys_link(udev, path, sizeof(path));
- if (strncmp(path + strlen(TEST_PREFIX "/sys"), "/devices/", 9) == 0) {
+ if (startswith(path + strlen(TEST_PREFIX "/sys"), "/devices/")) {
char file[UTIL_PATH_SIZE];
/* all "devices" require a "uevent" file */
@@ -783,7 +783,7 @@ _public_ struct udev_device *udev_device_new_from_subsystem_sysname(struct udev
char path[UTIL_PATH_SIZE];
struct stat statbuf;
- if (strcmp(subsystem, "subsystem") == 0) {
+ if (streq(subsystem, "subsystem")) {
util_strscpyl(path, sizeof(path), TEST_PREFIX "/sys/subsystem/", sysname, NULL);
if (stat(path, &statbuf) == 0)
goto found;
@@ -798,14 +798,14 @@ _public_ struct udev_device *udev_device_new_from_subsystem_sysname(struct udev
goto out;
}
- if (strcmp(subsystem, "module") == 0) {
+ if (streq(subsystem, "module")) {
util_strscpyl(path, sizeof(path), TEST_PREFIX "/sys/module/", sysname, NULL);
if (stat(path, &statbuf) == 0)
goto found;
goto out;
}
- if (strcmp(subsystem, "drivers") == 0) {
+ if (streq(subsystem, "drivers")) {
char subsys[UTIL_NAME_SIZE];
char *driver;
@@ -966,11 +966,11 @@ _public_ struct udev_device *udev_device_get_parent_with_subsystem_devtype(struc
const char *parent_devtype;
parent_subsystem = udev_device_get_subsystem(parent);
- if (parent_subsystem != NULL && strcmp(parent_subsystem, subsystem) == 0) {
+ if (parent_subsystem != NULL && streq(parent_subsystem, subsystem)) {
if (devtype == NULL)
break;
parent_devtype = udev_device_get_devtype(parent);
- if (parent_devtype != NULL && strcmp(parent_devtype, devtype) == 0)
+ if (parent_devtype != NULL && streq(parent_devtype, devtype))
break;
}
parent = udev_device_get_parent(parent);
@@ -1237,7 +1237,7 @@ _public_ const char *udev_device_get_action(struct udev_device *udev_device)
**/
_public_ unsigned long long int udev_device_get_usec_since_initialized(struct udev_device *udev_device)
{
- unsigned long long now;
+ unsigned long long now_ts;
if (udev_device == NULL)
return 0;
@@ -1245,10 +1245,10 @@ _public_ unsigned long long int udev_device_get_usec_since_initialized(struct ud
udev_device_read_db(udev_device, NULL);
if (udev_device->usec_initialized == 0)
return 0;
- now = now_usec();
- if (now == 0)
+ now_ts = now_usec();
+ if (now_ts == 0)
return 0;
- return now - udev_device->usec_initialized;
+ return now_ts - udev_device->usec_initialized;
}
unsigned long long udev_device_get_usec_initialized(struct udev_device *udev_device)
@@ -1309,9 +1309,9 @@ _public_ const char *udev_device_get_sysattr_value(struct udev_device *udev_devi
* Some core links return only the last element of the target path,
* these are just values, the paths should not be exposed.
*/
- if (strcmp(sysattr, "driver") == 0 ||
- strcmp(sysattr, "subsystem") == 0 ||
- strcmp(sysattr, "module") == 0) {
+ if (streq(sysattr, "driver") ||
+ streq(sysattr, "subsystem") ||
+ streq(sysattr, "module")) {
if (util_get_sys_core_link_value(udev_device->udev, sysattr,
udev_device->syspath, value, sizeof(value)) < 0)
return NULL;
@@ -1497,7 +1497,7 @@ const char *udev_device_get_id_filename(struct udev_device *udev_device)
if (major(udev_device_get_devnum(udev_device)) > 0) {
/* use dev_t -- b259:131072, c254:0 */
if (asprintf(&udev_device->id_filename, "%c%u:%u",
- strcmp(udev_device_get_subsystem(udev_device), "block") == 0 ? 'b' : 'c',
+ streq(udev_device_get_subsystem(udev_device), "block") ? 'b' : 'c',
major(udev_device_get_devnum(udev_device)),
minor(udev_device_get_devnum(udev_device))) < 0)
udev_device->id_filename = NULL;
diff --git a/src/libudev/libudev-enumerate.c b/src/libudev/libudev-enumerate.c
index ed4f62c66c..4725912c36 100644
--- a/src/libudev/libudev-enumerate.c
+++ b/src/libudev/libudev-enumerate.c
@@ -232,7 +232,7 @@ static size_t devices_delay_later(struct udev *udev, const char *syspath)
c += 11;
c += strcspn(c, "/");
- if (strncmp(c, "/controlC", 9) == 0)
+ if (startswith(c, "/controlC"))
return c - syspath + 1;
}
@@ -595,13 +595,10 @@ static bool match_tag(struct udev_enumerate *udev_enumerate, struct udev_device
static bool match_parent(struct udev_enumerate *udev_enumerate, struct udev_device *dev)
{
- const char *parent;
-
if (udev_enumerate->parent_match == NULL)
return true;
- parent = udev_device_get_devpath(udev_enumerate->parent_match);
- return strncmp(parent, udev_device_get_devpath(dev), strlen(parent)) == 0;
+ return startswith(udev_device_get_devpath(dev), udev_device_get_devpath(udev_enumerate->parent_match));
}
static bool match_sysname(struct udev_enumerate *udev_enumerate, const char *sysname)
diff --git a/src/libudev/libudev-private.h b/src/libudev/libudev-private.h
index 986c40c91e..60bffa469a 100644
--- a/src/libudev/libudev-private.h
+++ b/src/libudev/libudev-private.h
@@ -17,6 +17,7 @@
#include <stdint.h>
#include <stdbool.h>
#include "macro.h"
+#include "util.h"
#include "libudev.h"
#define READ_END 0
diff --git a/src/libudev/libudev-util.c b/src/libudev/libudev-util.c
index cb17c3f48c..24d402cd2a 100644
--- a/src/libudev/libudev-util.c
+++ b/src/libudev/libudev-util.c
@@ -62,7 +62,7 @@ int util_resolve_sys_link(struct udev *udev, char *syspath, size_t size)
return -1;
link_target[len] = '\0';
- for (back = 0; strncmp(&link_target[back * 3], "../", 3) == 0; back++)
+ for (back = 0; startswith(&link_target[back * 3], "../"); back++)
;
for (i = 0; i <= back; i++) {
base = strrchr(syspath, '/');
@@ -84,11 +84,11 @@ int util_log_priority(const char *priority)
prio = strtol(priority, &endptr, 10);
if (endptr[0] == '\0' || isspace(endptr[0]))
return prio;
- if (strncmp(priority, "err", 3) == 0)
+ if (startswith(priority, "err"))
return LOG_ERR;
- if (strncmp(priority, "info", 4) == 0)
+ if (startswith(priority, "info"))
return LOG_INFO;
- if (strncmp(priority, "debug", 5) == 0)
+ if (startswith(priority, "debug"))
return LOG_DEBUG;
return 0;
}