initialize unused sockets to -1

This commit is contained in:
Kay Sievers 2006-08-05 13:24:05 +02:00
parent b3518c16e3
commit 239cc98b80
2 changed files with 15 additions and 12 deletions

View file

@ -47,9 +47,9 @@
#include "udevd.h"
static struct udev_rules rules;
static int udevd_sock;
static int uevent_netlink_sock;
static int inotify_fd;
static int udevd_sock = -1;
static int uevent_netlink_sock = -1;
static int inotify_fd = -1;
static pid_t sid;
static int signal_pipe[2] = {-1, -1};
@ -770,6 +770,8 @@ static int init_udevd_socket(void)
retval = bind(udevd_sock, (struct sockaddr *) &saddr, addrlen);
if (retval < 0) {
err("bind failed: %s", strerror(errno));
close(udevd_sock);
udevd_sock = -1;
return -1;
}

View file

@ -1,7 +1,7 @@
/*
* udevmonitor.c
*
* Copyright (C) 2004-2005 Kay Sievers <kay.sievers@vrfy.org>
* Copyright (C) 2004-2006 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
@ -36,8 +36,8 @@
#include "udev.h"
#include "udevd.h"
static int uevent_netlink_sock;
static int udev_monitor_sock;
static int uevent_netlink_sock = -1;
static int udev_monitor_sock = -1;
static volatile int udev_exit;
static int init_udev_monitor_socket(void)
@ -148,6 +148,7 @@ int main(int argc, char *argv[])
retval = init_udev_monitor_socket();
if (retval)
goto out;
retval = init_uevent_netlink_sock();
if (retval)
goto out;
@ -165,9 +166,9 @@ int main(int argc, char *argv[])
buflen = 0;
FD_ZERO(&readfds);
if (uevent_netlink_sock > 0)
if (uevent_netlink_sock >= 0)
FD_SET(uevent_netlink_sock, &readfds);
if (udev_monitor_sock > 0)
if (udev_monitor_sock >= 0)
FD_SET(udev_monitor_sock, &readfds);
fdcount = select(UDEV_MAX(uevent_netlink_sock, udev_monitor_sock)+1, &readfds, NULL, NULL, NULL);
@ -183,7 +184,7 @@ int main(int argc, char *argv[])
} else
timestr[0] = '\0';
if ((uevent_netlink_sock > 0) && FD_ISSET(uevent_netlink_sock, &readfds)) {
if ((uevent_netlink_sock >= 0) && FD_ISSET(uevent_netlink_sock, &readfds)) {
buflen = recv(uevent_netlink_sock, &buf, sizeof(buf), 0);
if (buflen <= 0) {
fprintf(stderr, "error receiving uevent message: %s\n", strerror(errno));
@ -192,7 +193,7 @@ int main(int argc, char *argv[])
printf("UEVENT[%s] %s\n", timestr, buf);
}
if ((udev_monitor_sock > 0) && FD_ISSET(udev_monitor_sock, &readfds)) {
if ((udev_monitor_sock >= 0) && FD_ISSET(udev_monitor_sock, &readfds)) {
buflen = recv(udev_monitor_sock, &buf, sizeof(buf), 0);
if (buflen <= 0) {
fprintf(stderr, "error receiving udev message: %s\n", strerror(errno));
@ -227,9 +228,9 @@ int main(int argc, char *argv[])
}
out:
if (uevent_netlink_sock > 0)
if (uevent_netlink_sock >= 0)
close(uevent_netlink_sock);
if (udev_monitor_sock > 0)
if (udev_monitor_sock >= 0)
close(udev_monitor_sock);
if (retval)