X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;ds=sidebyside;f=src%2Fbasic%2Flog.c;h=1b8374cfdc10eec9a745da45d1aca50a43eb4fc9;hb=c733f9b08d9eadc5e671185112567ada81116bdf;hp=ca12c8b4133c5fdc10be7a84dd360e0e789f123f;hpb=07045a1a92c839fd2af80bd0c060a595021bc3b3;p=elogind.git diff --git a/src/basic/log.c b/src/basic/log.c index ca12c8b41..1b8374cfd 100644 --- a/src/basic/log.c +++ b/src/basic/log.c @@ -71,7 +71,9 @@ static bool syslog_is_stream = false; static bool show_color = false; static bool show_location = false; -/// UNNEEDED by elogind static bool upgrade_syslog_to_journal = false; +#if 0 /// UNNEEDED by elogind +static bool upgrade_syslog_to_journal = false; +#endif // 0 /* Akin to glibc's __abort_msg; which is private and we hence cannot * use here. */ @@ -165,7 +167,7 @@ static int log_open_syslog(void) { goto fail; } - if (connect(syslog_fd, &sa.sa, offsetof(struct sockaddr_un, sun_path) + strlen(sa.un.sun_path)) < 0) { + if (connect(syslog_fd, &sa.sa, SOCKADDR_UN_LEN(sa.un)) < 0) { safe_close(syslog_fd); /* Some legacy syslog systems still use stream @@ -177,7 +179,7 @@ static int log_open_syslog(void) { goto fail; } - if (connect(syslog_fd, &sa.sa, offsetof(struct sockaddr_un, sun_path) + strlen(sa.un.sun_path)) < 0) { + if (connect(syslog_fd, &sa.sa, SOCKADDR_UN_LEN(sa.un)) < 0) { r = -errno; goto fail; } @@ -193,11 +195,13 @@ fail: return r; } -#if 0 /// UNNEEDED by elogind void log_close_journal(void) { +#if 0 /// elogind does not support journald journal_fd = safe_close(journal_fd); +#endif // 0 } +#if 0 /// UNNEEDED by elogind static int log_open_journal(void) { static const union sockaddr_union sa = { @@ -216,7 +220,7 @@ static int log_open_journal(void) { goto fail; } - if (connect(journal_fd, &sa.sa, offsetof(struct sockaddr_un, sun_path) + strlen(sa.un.sun_path)) < 0) { + if (connect(journal_fd, &sa.sa, SOCKADDR_UN_LEN(sa.un)) < 0) { r = -errno; goto fail; } @@ -239,7 +243,7 @@ int log_open(void) { * because there is no reason to close it. */ if (log_target == LOG_TARGET_NULL) { - /// UNNEEDED by elogind log_close_journal(); + log_close_journal(); log_close_syslog(); log_close_console(); return 0; @@ -261,11 +265,12 @@ int log_open(void) { } } #endif // 0 + if (log_target == LOG_TARGET_SYSLOG_OR_KMSG || log_target == LOG_TARGET_SYSLOG) { r = log_open_syslog(); if (r >= 0) { - /// UNNEEDED by elogind log_close_journal(); + log_close_journal(); log_close_console(); return r; } @@ -273,12 +278,12 @@ int log_open(void) { if (log_target == LOG_TARGET_AUTO || log_target == LOG_TARGET_SAFE || - /// UNNEEDED by elogind log_target == LOG_TARGET_JOURNAL_OR_KMSG || + log_target == LOG_TARGET_JOURNAL_OR_KMSG || log_target == LOG_TARGET_SYSLOG_OR_KMSG || log_target == LOG_TARGET_KMSG) { r = log_open_kmsg(); if (r >= 0) { - /// UNNEEDED by elogind log_close_journal(); + log_close_journal(); log_close_syslog(); log_close_console(); return r; @@ -286,7 +291,7 @@ int log_open(void) { } } - /// UNNEEDED by elogind log_close_journal(); + log_close_journal(); log_close_syslog(); return log_open_console(); @@ -309,7 +314,7 @@ void log_set_target(LogTarget target) { } void log_close(void) { - /// UNNEDED by elogind log_close_journal(); + log_close_journal(); log_close_syslog(); log_close_kmsg(); log_close_console(); @@ -623,7 +628,7 @@ static int log_dispatch( (log_target == LOG_TARGET_AUTO || log_target == LOG_TARGET_SAFE || log_target == LOG_TARGET_SYSLOG_OR_KMSG || - /// UNNEEDED by elogind log_target == LOG_TARGET_JOURNAL_OR_KMSG || + log_target == LOG_TARGET_JOURNAL_OR_KMSG || log_target == LOG_TARGET_KMSG)) { k = write_to_kmsg(level, error, file, line, func, object_field, object, buffer);