mirror of
https://github.com/systemd/systemd.git
synced 2025-03-19 22:50:17 +03:00
[PATCH] close the syslog
Seems that we never closed the opened syslog. Here is a patch to do this in all our binaries.
This commit is contained in:
parent
0f634c33d7
commit
7257cb1845
13
logging.h
13
logging.h
@ -27,7 +27,8 @@
|
||||
#define info(format, arg...) do { } while (0)
|
||||
#define dbg(format, arg...) do { } while (0)
|
||||
#define dbg_parse(format, arg...) do { } while (0)
|
||||
#define init_logging(foo) do { } while (0)
|
||||
#define logging_init(foo) do { } while (0)
|
||||
#define logging_close(foo) do { } while (0)
|
||||
|
||||
#ifdef LOG
|
||||
#include <stdarg.h>
|
||||
@ -65,13 +66,19 @@ extern void log_message(int level, const char *format, ...)
|
||||
/* each program that uses syslog must declare this variable somewhere */
|
||||
extern unsigned char logname[LOGNAME_SIZE];
|
||||
|
||||
#undef init_logging
|
||||
static inline void init_logging(char *program_name)
|
||||
#undef logging_init
|
||||
static inline void logging_init(char *program_name)
|
||||
{
|
||||
snprintf(logname, LOGNAME_SIZE,"%s[%d]", program_name, getpid());
|
||||
openlog(logname, 0, LOG_DAEMON);
|
||||
}
|
||||
|
||||
#undef logging_close
|
||||
static inline void logging_close(void)
|
||||
{
|
||||
closelog();
|
||||
}
|
||||
|
||||
#endif /* LOG */
|
||||
|
||||
#endif
|
||||
|
3
udev.c
3
udev.c
@ -122,7 +122,7 @@ int main(int argc, char *argv[], char *envp[])
|
||||
main_argv = argv;
|
||||
main_envp = envp;
|
||||
|
||||
init_logging("udev");
|
||||
logging_init("udev");
|
||||
|
||||
udev_init_config();
|
||||
|
||||
@ -203,5 +203,6 @@ int main(int argc, char *argv[], char *envp[])
|
||||
udevdb_exit();
|
||||
|
||||
exit:
|
||||
logging_close();
|
||||
return retval;
|
||||
}
|
||||
|
5
udevd.c
5
udevd.c
@ -150,7 +150,7 @@ static void udev_run(struct hotplug_msg *msg)
|
||||
/* child */
|
||||
execle(udev_bin, "udev", msg->subsystem, NULL, env);
|
||||
dbg("exec of child failed");
|
||||
exit(1);
|
||||
_exit(1);
|
||||
break;
|
||||
case -1:
|
||||
dbg("fork of child failed");
|
||||
@ -403,7 +403,7 @@ int main(int argc, char *argv[])
|
||||
struct sigaction act;
|
||||
fd_set readfds;
|
||||
|
||||
init_logging("udevd");
|
||||
logging_init("udevd");
|
||||
dbg("version %s", UDEV_VERSION);
|
||||
|
||||
if (getuid() != 0) {
|
||||
@ -549,5 +549,6 @@ int main(int argc, char *argv[])
|
||||
}
|
||||
exit:
|
||||
close(ssock);
|
||||
logging_close();
|
||||
exit(1);
|
||||
}
|
||||
|
12
udevinfo.c
12
udevinfo.c
@ -447,18 +447,18 @@ help:
|
||||
|
||||
int main(int argc, char *argv[], char *envp[])
|
||||
{
|
||||
int retval;
|
||||
int rc = 0;
|
||||
|
||||
main_argv = argv;
|
||||
main_argc = argc;
|
||||
|
||||
init_logging("udevinfo");
|
||||
logging_init("udevinfo");
|
||||
|
||||
/* initialize our configuration */
|
||||
udev_init_config();
|
||||
|
||||
retval = process_options();
|
||||
if (retval != 0)
|
||||
exit(1);
|
||||
exit(0);
|
||||
rc = process_options();
|
||||
|
||||
logging_close();
|
||||
exit(rc);
|
||||
}
|
||||
|
@ -123,7 +123,7 @@ int main(int argc, char* argv[])
|
||||
socklen_t addrlen;
|
||||
int started_daemon = 0;
|
||||
|
||||
init_logging("udevsend");
|
||||
logging_init("udevsend");
|
||||
dbg("version %s", UDEV_VERSION);
|
||||
|
||||
subsystem = get_subsystem(argv[1]);
|
||||
@ -215,5 +215,7 @@ exit:
|
||||
if (sock != -1)
|
||||
close(sock);
|
||||
|
||||
logging_close();
|
||||
|
||||
return retval;
|
||||
}
|
||||
|
@ -392,7 +392,7 @@ int main(int argc, char *argv[], char *envp[])
|
||||
int rc = 0;
|
||||
const char *error = NULL;
|
||||
|
||||
init_logging("wait_for_sysfs");
|
||||
logging_init("wait_for_sysfs");
|
||||
|
||||
if (argc != 2) {
|
||||
dbg("error: subsystem");
|
||||
@ -475,5 +475,6 @@ exit:
|
||||
dbg("result: waiting for sysfs successful '%s'", devpath);
|
||||
}
|
||||
|
||||
logging_close();
|
||||
exit(rc);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user