chiark / gitweb /
[PATCH] udev - safer string handling all over the place
[elogind.git] / udevsend.c
index c738fe22459fc55e43211236e9125d3b18963b48..08212dfee62552cfb8c6bb3edc825c75a707e0b9 100644 (file)
@@ -82,9 +82,9 @@ static int build_hotplugmsg(struct hotplug_msg *msg, char *action,
        memset(msg, 0x00, sizeof(*msg));
        strfieldcpy(msg->magic, UDEV_MAGIC);
        msg->seqnum = seqnum;
-       strncpy(msg->action, action, 8);
-       strncpy(msg->devpath, devpath, 128);
-       strncpy(msg->subsystem, subsystem, 16);
+       strfieldcpy(msg->action, action);
+       strfieldcpy(msg->devpath, devpath);
+       strfieldcpy(msg->subsystem, subsystem);
        return sizeof(struct hotplug_msg);
 }
 
@@ -142,30 +142,35 @@ int main(int argc, char* argv[])
 #ifdef DEBUG
        init_logging("udevsend");
 #endif
+       dbg("version %s", UDEV_VERSION);
 
        subsystem = argv[1];
        if (subsystem == NULL) {
                dbg("no subsystem");
                goto exit;
        }
+       dbg("subsystem = '%s'", subsystem);
 
        devpath = get_devpath();
        if (devpath == NULL) {
                dbg("no devpath");
                goto exit;
        }
+       dbg("DEVPATH = '%s'", devpath);
 
        action = get_action();
        if (action == NULL) {
                dbg("no action");
                goto exit;
        }
+       dbg("ACTION = '%s'", action);
 
        seqnum = get_seqnum();
        if (seqnum == NULL)
                seq = -1;
        else
                seq = atoi(seqnum);
+       dbg("SEQNUM = '%d'", seq);
 
        sock = socket(AF_LOCAL, SOCK_DGRAM, 0);
        if (sock == -1) {