chiark / gitweb /
writing udev rules: fix rule typos
[elogind.git] / udevmonitor.c
index a9cc0614ff8f0da7765403829eae813241ac0fc5..2430dd39a557fe1411d9b21380e501126b32ce36 100644 (file)
@@ -43,14 +43,13 @@ static int init_udev_monitor_socket(void)
 {
        struct sockaddr_un saddr;
        socklen_t addrlen;
-       const int feature_on = 1;
        int retval;
 
        memset(&saddr, 0x00, sizeof(saddr));
        saddr.sun_family = AF_LOCAL;
        /* use abstract namespace for socket path */
        strcpy(&saddr.sun_path[1], "/org/kernel/udev/monitor");
-       addrlen = offsetof(struct sockaddr_un, sun_path) + strlen(saddr.sun_path+1) + 1;
+       addrlen = offsetof(struct sockaddr_un, sun_path) + 1 + strlen(&saddr.sun_path[1]);
 
        udev_monitor_sock = socket(AF_LOCAL, SOCK_DGRAM, 0);
        if (udev_monitor_sock == -1) {
@@ -67,9 +66,6 @@ static int init_udev_monitor_socket(void)
                return -1;
        }
 
-       /* enable receiving of the sender credentials */
-       setsockopt(udev_monitor_sock, SOL_SOCKET, SO_PASSCRED, &feature_on, sizeof(feature_on));
-
        return 0;
 }
 
@@ -127,7 +123,7 @@ static const char *search_key(const char *searchkey, const char *buf, size_t buf
        return NULL;
 }
 
-int main(int argc, char *argv[])
+int udevmonitor(int argc, char *argv[], char *envp[])
 {
        struct sigaction act;
        int option;
@@ -161,7 +157,7 @@ int main(int argc, char *argv[])
                        udev = 1;
                        break;
                case 'h':
-                       printf("Usage: udevmonitor [--environment] [--kernel] [--udev] [--help]\n"
+                       printf("Usage: udevadm monitor [--environment] [--kernel] [--udev] [--help]\n"
                               "  --env    print the whole event environment\n"
                               "  --kernel print kernel uevents\n"
                               "  --udev   print udev events\n"