chiark / gitweb /
move syslog wrapper to libudev
[elogind.git] / extras / ata_id / ata_id.c
index dae464a4dc8121cb323168f6338f8ef8fc47282f..d976467817d1ce7bf274c264101b64067a12df80 100644 (file)
@@ -35,7 +35,8 @@
 #include <linux/types.h>
 #include <linux/hdreg.h>
 
 #include <linux/types.h>
 #include <linux/hdreg.h>
 
-#include "../../udev/udev.h"
+#include "libudev.h"
+#include "libudev-private.h"
 
 static void log_fn(struct udev *udev, int priority,
                   const char *file, int line, const char *fn,
 
 static void log_fn(struct udev *udev, int priority,
                   const char *file, int line, const char *fn,
@@ -49,6 +50,7 @@ int main(int argc, char *argv[])
        struct udev *udev;
        struct hd_driveid id;
        char model[41];
        struct udev *udev;
        struct hd_driveid id;
        char model[41];
+       char model_enc[256];
        char serial[21];
        char revision[9];
        const char *node = NULL;
        char serial[21];
        char revision[9];
        const char *node = NULL;
@@ -65,7 +67,7 @@ int main(int argc, char *argv[])
        if (udev == NULL)
                goto exit;
 
        if (udev == NULL)
                goto exit;
 
-       logging_init("ata_id");
+       udev_log_init("ata_id");
        udev_set_log_fn(udev, log_fn);
 
        while (1) {
        udev_set_log_fn(udev, log_fn);
 
        while (1) {
@@ -81,7 +83,7 @@ int main(int argc, char *argv[])
                        break;
                case 'h':
                        printf("Usage: ata_id [--export] [--help] <device>\n"
                        break;
                case 'h':
                        printf("Usage: ata_id [--export] [--help] <device>\n"
-                              "  --export    print values as environemt keys\n"
+                              "  --export    print values as environment keys\n"
                               "  --help      print this help text\n\n");
                default:
                        rc = 1;
                               "  --help      print this help text\n\n");
                default:
                        rc = 1;
@@ -114,6 +116,9 @@ int main(int argc, char *argv[])
                goto close;
        }
 
                goto close;
        }
 
+       memcpy (model, id.model, 40);
+       model[40] = '\0';
+       udev_util_encode_string(model, model_enc, sizeof(model_enc));
        udev_util_replace_whitespace((char *) id.model, model, 40);
        udev_util_replace_chars(model, NULL);
        udev_util_replace_whitespace((char *) id.serial_no, serial, 20);
        udev_util_replace_whitespace((char *) id.model, model, 40);
        udev_util_replace_chars(model, NULL);
        udev_util_replace_whitespace((char *) id.serial_no, serial, 20);
@@ -145,6 +150,7 @@ int main(int argc, char *argv[])
                        printf("ID_TYPE=disk\n");
                }
                printf("ID_MODEL=%s\n", model);
                        printf("ID_TYPE=disk\n");
                }
                printf("ID_MODEL=%s\n", model);
+               printf("ID_MODEL_ENC=%s\n", model_enc);
                printf("ID_SERIAL=%s\n", serial);
                printf("ID_REVISION=%s\n", revision);
                printf("ID_BUS=ata\n");
                printf("ID_SERIAL=%s\n", serial);
                printf("ID_REVISION=%s\n", revision);
                printf("ID_BUS=ata\n");
@@ -159,6 +165,6 @@ close:
        close(fd);
 exit:
        udev_unref(udev);
        close(fd);
 exit:
        udev_unref(udev);
-       logging_close();
+       udev_log_close();
        return rc;
 }
        return rc;
 }