]> git.proxmox.com Git - systemd.git/commitdiff
libudev: rename libudev-utils.c libudev-util.c
authorKay Sievers <kay.sievers@vrfy.org>
Wed, 10 Sep 2008 15:12:33 +0000 (17:12 +0200)
committerKay Sievers <kay.sievers@vrfy.org>
Wed, 10 Sep 2008 15:12:33 +0000 (17:12 +0200)
12 files changed:
extras/ata_id/Makefile.am
extras/cdrom_id/Makefile.am
extras/edd_id/Makefile.am
extras/floppy/Makefile.am
extras/fstab_import/Makefile.am
extras/scsi_id/Makefile.am
extras/usb_id/Makefile.am
extras/volume_id/Makefile.am
udev/Makefile.am
udev/lib/Makefile.am
udev/lib/libudev-util.c [new file with mode: 0644]
udev/lib/libudev-utils.c [deleted file]

index 61c02fb9f56c92c075f728752bb1c310b5f48184..bc3b7001a42d52f4724366132181203d07c36f1b 100644 (file)
@@ -12,7 +12,7 @@ ata_id_SOURCES = \
        ata_id.c \
        ../../udev/lib/libudev.h \
        ../../udev/lib/libudev.c \
-       ../../udev/lib/libudev-utils.c \
+       ../../udev/lib/libudev-util.c \
        ../../udev/udev_sysdeps.c \
        ../../udev/udev_utils.c \
        ../../udev/udev_utils_string.c
index f0916ba557c9a6c53c8ead2ad263980d398d17ef..595d710965ff6c66169106c2a1cec708101eabe9 100644 (file)
@@ -15,7 +15,7 @@ cdrom_id_SOURCES = \
        cdrom_id.c \
        ../../udev/lib/libudev.h \
        ../../udev/lib/libudev.c \
-       ../../udev/lib/libudev-utils.c \
+       ../../udev/lib/libudev-util.c \
        ../../udev/udev_sysdeps.c \
        ../../udev/udev_utils.c \
        ../../udev/udev_utils_string.c
index d5dedda7d9e9efddb152d7a93fa53f71e7487009..e494c1e6725e1780375685cc449c2bae866d95a4 100644 (file)
@@ -15,7 +15,7 @@ edd_id_SOURCES = \
        edd_id.c \
        ../../udev/lib/libudev.h \
        ../../udev/lib/libudev.c \
-       ../../udev/lib/libudev-utils.c \
+       ../../udev/lib/libudev-util.c \
        ../../udev/udev_sysdeps.c \
        ../../udev/udev_utils.c \
        ../../udev/udev_utils_string.c
index de3876ee5105a8e32c22dfef3da913328659e9f7..92877a7778a292d2bf9c720d06cdfaf9a85b2a2a 100644 (file)
@@ -11,7 +11,7 @@ create_floppy_devices_SOURCES = \
        create_floppy_devices.c \
        ../../udev/lib/libudev.h \
        ../../udev/lib/libudev.c \
-       ../../udev/lib/libudev-utils.c \
+       ../../udev/lib/libudev-util.c \
        ../../udev/udev_sysdeps.c \
        ../../udev/udev_utils.c \
        ../../udev/udev_utils_string.c
index 07aadafd264d99789178534a34316f1c68964ec2..7b99471fa2aedd179750d34b081395c4b5f5fedc 100644 (file)
@@ -15,7 +15,7 @@ fstab_import_SOURCES = \
        fstab_import.c \
        ../../udev/lib/libudev.h \
        ../../udev/lib/libudev.c \
-       ../../udev/lib/libudev-utils.c \
+       ../../udev/lib/libudev-util.c \
        ../../udev/udev_sysdeps.c \
        ../../udev/udev_utils.c \
        ../../udev/udev_utils_string.c
index 61813fb65ced4779b17dc443e4425f6e204957c4..62e14e5adb927652cc037e97be2b352310ecdaef 100644 (file)
@@ -15,7 +15,7 @@ scsi_id_SOURCES = \
        bsg.h \
        ../../udev/lib/libudev.h \
        ../../udev/lib/libudev.c \
-       ../../udev/lib/libudev-utils.c \
+       ../../udev/lib/libudev-util.c \
        ../../udev/udev_sysdeps.c \
        ../../udev/udev_utils.c \
        ../../udev/udev_utils_string.c
index d69cfe43a1114c460b1b0e67a5da60a85b7332ee..07692df3a2df12fab89d37b7312d0b077bd61d0f 100644 (file)
@@ -11,7 +11,7 @@ usb_id_SOURCES = \
        usb_id.c \
        ../../udev/lib/libudev.h \
        ../../udev/lib/libudev.c \
-       ../../udev/lib/libudev-utils.c \
+       ../../udev/lib/libudev-util.c \
        ../../udev/udev_sysdeps.c \
        ../../udev/udev_sysfs.c \
        ../../udev/udev_utils.c \
index b4e76180aefa04c5cb98942732cf579472c27460..75f3e984d6c56aadde102e8a55dfb7cd19b0803c 100644 (file)
@@ -14,7 +14,7 @@ vol_id_SOURCES = \
        vol_id.c \
        ../../udev/lib/libudev.h \
        ../../udev/lib/libudev.c \
-       ../../udev/lib/libudev-utils.c \
+       ../../udev/lib/libudev-util.c \
        ../../udev/udev_sysdeps.c \
        ../../udev/udev_utils.c \
        ../../udev/udev_utils_string.c
index 7984e5d5f925f7d6a22f48b2654136e06d7b226b..47b4237efc515dab224d58ea6609f6dabf3d1c6c 100644 (file)
@@ -37,7 +37,7 @@ common_files = \
        lib/libudev.c \
        lib/libudev-device.c \
        lib/libudev-monitor.c \
-       lib/libudev-utils.c \
+       lib/libudev-util.c \
        lib/libudev-ctrl.c
 
 if USE_SELINUX
index b33addfbf781e4bd65dc041807436c249ee755ba..5d6438eb8e41946628256f54a05ae60ed3928aaf 100644 (file)
@@ -23,7 +23,7 @@ libudev_la_SOURCES =\
        exported_symbools \
        libudev-private.h \
        libudev.c \
-       libudev-utils.c \
+       libudev-util.c \
        libudev-device.c \
        libudev-enumerate.c \
        libudev-ctrl.c \
diff --git a/udev/lib/libudev-util.c b/udev/lib/libudev-util.c
new file mode 100644 (file)
index 0000000..dfd5f3c
--- /dev/null
@@ -0,0 +1,214 @@
+/*
+ * libudev - interface to udev device information
+ *
+ * Copyright (C) 2008 Kay Sievers <kay.sievers@vrfy.org>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "config.h"
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <stddef.h>
+#include <unistd.h>
+#include <errno.h>
+#include <string.h>
+#include <dirent.h>
+#include <sys/stat.h>
+
+#include "libudev.h"
+#include "libudev-private.h"
+#include "../udev.h"
+
+static ssize_t get_sys_link(struct udev *udev, const char *slink, const char *devpath, char *subsystem, size_t size)
+{
+       char path[PATH_SIZE];
+       ssize_t len;
+       const char *pos;
+
+       strlcpy(path, udev_get_sys_path(udev), sizeof(path));
+       strlcat(path, devpath, sizeof(path));
+       strlcat(path, "/", sizeof(path));
+       strlcat(path, slink, sizeof(path));
+       len = readlink(path, path, sizeof(path));
+       if (len < 0 || len >= (ssize_t) sizeof(path))
+               return -1;
+       path[len] = '\0';
+       pos = strrchr(path, '/');
+       if (pos == NULL)
+               return -1;
+       pos = &pos[1];
+       return strlcpy(subsystem, pos, size);
+}
+
+ssize_t util_get_sys_subsystem(struct udev *udev, const char *devpath, char *subsystem, size_t size)
+{
+       return get_sys_link(udev, "subsystem", devpath, subsystem, size);
+}
+
+ssize_t util_get_sys_driver(struct udev *udev, const char *devpath, char *driver, size_t size)
+{
+       return get_sys_link(udev, "driver", devpath, driver, size);
+}
+
+int util_resolve_sys_link(struct udev *udev, char *devpath, size_t size)
+{
+       char link_path[PATH_SIZE];
+       char link_target[PATH_SIZE];
+       int len;
+       int i;
+       int back;
+
+       strlcpy(link_path, udev_get_sys_path(udev), sizeof(link_path));
+       strlcat(link_path, devpath, sizeof(link_path));
+       len = readlink(link_path, link_target, sizeof(link_target));
+       if (len <= 0)
+               return -1;
+       link_target[len] = '\0';
+       dbg(udev, "path link '%s' points to '%s'\n", devpath, link_target);
+
+       for (back = 0; strncmp(&link_target[back * 3], "../", 3) == 0; back++)
+               ;
+       dbg(udev, "base '%s', tail '%s', back %i\n", devpath, &link_target[back * 3], back);
+       for (i = 0; i <= back; i++) {
+               char *pos = strrchr(devpath, '/');
+
+               if (pos == NULL)
+                       return -1;
+               pos[0] = '\0';
+       }
+       dbg(udev, "after moving back '%s'\n", devpath);
+       strlcat(devpath, "/", size);
+       strlcat(devpath, &link_target[back * 3], size);
+       return 0;
+}
+
+struct util_name_entry {
+       struct list_head node;
+       char *name;
+       int *i;
+};
+
+struct util_name_entry *util_name_list_add(struct udev *udev, struct list_head *name_list,
+                                          const char *name, int sort)
+{
+       struct util_name_entry *name_loop;
+       struct util_name_entry *name_new;
+
+       /* avoid duplicate entries */
+       list_for_each_entry(name_loop, name_list, node) {
+               if (strcmp(name_loop->name, name) == 0) {
+                       dbg(udev, "'%s' is already in the list\n", name);
+                       return name_loop;
+               }
+       }
+
+       if (sort) {
+               list_for_each_entry(name_loop, name_list, node) {
+                       if (strcmp(name_loop->name, name) > 0)
+                               break;
+               }
+       }
+
+       name_new->name = strdup(name);
+       if (name_new->name == NULL)
+               return NULL;
+       dbg(udev, "adding '%s'\n", name_new->name);
+       list_add_tail(&name_new->node, &name_loop->node);
+       return name_new;
+}
+
+void util_name_list_cleanup(struct udev *udev, struct list_head *name_list)
+{
+       struct util_name_entry *name_loop;
+       struct util_name_entry *name_tmp;
+
+       list_for_each_entry_safe(name_loop, name_tmp, name_list, node) {
+               list_del(&name_loop->node);
+               free(name_loop->name);
+               free(name_loop);
+       }
+}
+
+int util_log_priority(const char *priority)
+{
+       char *endptr;
+       int prio;
+
+       prio = strtol(priority, &endptr, 10);
+       if (endptr[0] == '\0')
+               return prio;
+       if (strncasecmp(priority, "err", 3) == 0)
+               return LOG_ERR;
+       if (strcasecmp(priority, "info") == 0)
+               return LOG_INFO;
+       if (strcasecmp(priority, "debug") == 0)
+               return LOG_DEBUG;
+       return 0;
+}
+
+size_t util_path_encode(char *s, size_t len)
+{
+       char t[(len * 3)+1];
+       size_t i, j;
+
+       t[0] = '\0';
+       for (i = 0, j = 0; s[i] != '\0'; i++) {
+               if (s[i] == '/') {
+                       memcpy(&t[j], "\\x2f", 4);
+                       j += 4;
+               } else if (s[i] == '\\') {
+                       memcpy(&t[j], "\\x5c", 4);
+                       j += 4;
+               } else {
+                       t[j] = s[i];
+                       j++;
+               }
+       }
+       t[j] = '\0';
+       strncpy(s, t, len);
+       return j;
+}
+
+size_t util_path_decode(char *s)
+{
+       size_t i, j;
+
+       for (i = 0, j = 0; s[i] != '\0'; j++) {
+               if (memcmp(&s[i], "\\x2f", 4) == 0) {
+                       s[j] = '/';
+                       i += 4;
+               }else if (memcmp(&s[i], "\\x5c", 4) == 0) {
+                       s[j] = '\\';
+                       i += 4;
+               } else {
+                       s[j] = s[i];
+                       i++;
+               }
+       }
+       s[j] = '\0';
+       return j;
+}
+
+void util_remove_trailing_chars(char *path, char c)
+{
+       size_t len;
+
+       if (path == NULL)
+               return;
+       len = strlen(path);
+       while (len > 0 && path[len-1] == c)
+               path[--len] = '\0';
+}
diff --git a/udev/lib/libudev-utils.c b/udev/lib/libudev-utils.c
deleted file mode 100644 (file)
index dfd5f3c..0000000
+++ /dev/null
@@ -1,214 +0,0 @@
-/*
- * libudev - interface to udev device information
- *
- * Copyright (C) 2008 Kay Sievers <kay.sievers@vrfy.org>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "config.h"
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <stddef.h>
-#include <unistd.h>
-#include <errno.h>
-#include <string.h>
-#include <dirent.h>
-#include <sys/stat.h>
-
-#include "libudev.h"
-#include "libudev-private.h"
-#include "../udev.h"
-
-static ssize_t get_sys_link(struct udev *udev, const char *slink, const char *devpath, char *subsystem, size_t size)
-{
-       char path[PATH_SIZE];
-       ssize_t len;
-       const char *pos;
-
-       strlcpy(path, udev_get_sys_path(udev), sizeof(path));
-       strlcat(path, devpath, sizeof(path));
-       strlcat(path, "/", sizeof(path));
-       strlcat(path, slink, sizeof(path));
-       len = readlink(path, path, sizeof(path));
-       if (len < 0 || len >= (ssize_t) sizeof(path))
-               return -1;
-       path[len] = '\0';
-       pos = strrchr(path, '/');
-       if (pos == NULL)
-               return -1;
-       pos = &pos[1];
-       return strlcpy(subsystem, pos, size);
-}
-
-ssize_t util_get_sys_subsystem(struct udev *udev, const char *devpath, char *subsystem, size_t size)
-{
-       return get_sys_link(udev, "subsystem", devpath, subsystem, size);
-}
-
-ssize_t util_get_sys_driver(struct udev *udev, const char *devpath, char *driver, size_t size)
-{
-       return get_sys_link(udev, "driver", devpath, driver, size);
-}
-
-int util_resolve_sys_link(struct udev *udev, char *devpath, size_t size)
-{
-       char link_path[PATH_SIZE];
-       char link_target[PATH_SIZE];
-       int len;
-       int i;
-       int back;
-
-       strlcpy(link_path, udev_get_sys_path(udev), sizeof(link_path));
-       strlcat(link_path, devpath, sizeof(link_path));
-       len = readlink(link_path, link_target, sizeof(link_target));
-       if (len <= 0)
-               return -1;
-       link_target[len] = '\0';
-       dbg(udev, "path link '%s' points to '%s'\n", devpath, link_target);
-
-       for (back = 0; strncmp(&link_target[back * 3], "../", 3) == 0; back++)
-               ;
-       dbg(udev, "base '%s', tail '%s', back %i\n", devpath, &link_target[back * 3], back);
-       for (i = 0; i <= back; i++) {
-               char *pos = strrchr(devpath, '/');
-
-               if (pos == NULL)
-                       return -1;
-               pos[0] = '\0';
-       }
-       dbg(udev, "after moving back '%s'\n", devpath);
-       strlcat(devpath, "/", size);
-       strlcat(devpath, &link_target[back * 3], size);
-       return 0;
-}
-
-struct util_name_entry {
-       struct list_head node;
-       char *name;
-       int *i;
-};
-
-struct util_name_entry *util_name_list_add(struct udev *udev, struct list_head *name_list,
-                                          const char *name, int sort)
-{
-       struct util_name_entry *name_loop;
-       struct util_name_entry *name_new;
-
-       /* avoid duplicate entries */
-       list_for_each_entry(name_loop, name_list, node) {
-               if (strcmp(name_loop->name, name) == 0) {
-                       dbg(udev, "'%s' is already in the list\n", name);
-                       return name_loop;
-               }
-       }
-
-       if (sort) {
-               list_for_each_entry(name_loop, name_list, node) {
-                       if (strcmp(name_loop->name, name) > 0)
-                               break;
-               }
-       }
-
-       name_new->name = strdup(name);
-       if (name_new->name == NULL)
-               return NULL;
-       dbg(udev, "adding '%s'\n", name_new->name);
-       list_add_tail(&name_new->node, &name_loop->node);
-       return name_new;
-}
-
-void util_name_list_cleanup(struct udev *udev, struct list_head *name_list)
-{
-       struct util_name_entry *name_loop;
-       struct util_name_entry *name_tmp;
-
-       list_for_each_entry_safe(name_loop, name_tmp, name_list, node) {
-               list_del(&name_loop->node);
-               free(name_loop->name);
-               free(name_loop);
-       }
-}
-
-int util_log_priority(const char *priority)
-{
-       char *endptr;
-       int prio;
-
-       prio = strtol(priority, &endptr, 10);
-       if (endptr[0] == '\0')
-               return prio;
-       if (strncasecmp(priority, "err", 3) == 0)
-               return LOG_ERR;
-       if (strcasecmp(priority, "info") == 0)
-               return LOG_INFO;
-       if (strcasecmp(priority, "debug") == 0)
-               return LOG_DEBUG;
-       return 0;
-}
-
-size_t util_path_encode(char *s, size_t len)
-{
-       char t[(len * 3)+1];
-       size_t i, j;
-
-       t[0] = '\0';
-       for (i = 0, j = 0; s[i] != '\0'; i++) {
-               if (s[i] == '/') {
-                       memcpy(&t[j], "\\x2f", 4);
-                       j += 4;
-               } else if (s[i] == '\\') {
-                       memcpy(&t[j], "\\x5c", 4);
-                       j += 4;
-               } else {
-                       t[j] = s[i];
-                       j++;
-               }
-       }
-       t[j] = '\0';
-       strncpy(s, t, len);
-       return j;
-}
-
-size_t util_path_decode(char *s)
-{
-       size_t i, j;
-
-       for (i = 0, j = 0; s[i] != '\0'; j++) {
-               if (memcmp(&s[i], "\\x2f", 4) == 0) {
-                       s[j] = '/';
-                       i += 4;
-               }else if (memcmp(&s[i], "\\x5c", 4) == 0) {
-                       s[j] = '\\';
-                       i += 4;
-               } else {
-                       s[j] = s[i];
-                       i++;
-               }
-       }
-       s[j] = '\0';
-       return j;
-}
-
-void util_remove_trailing_chars(char *path, char c)
-{
-       size_t len;
-
-       if (path == NULL)
-               return;
-       len = strlen(path);
-       while (len > 0 && path[len-1] == c)
-               path[--len] = '\0';
-}