chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
shared: add ring buffer
[elogind.git]
/
src
/
journal
/
journald-syslog.c
diff --git
a/src/journal/journald-syslog.c
b/src/journal/journald-syslog.c
index 80eb9ff2db29cd971ff5e23d3a133df2bde2b9c6..fee7d9157218e735456e6e736c6ff061722cdd4b 100644
(file)
--- a/
src/journal/journald-syslog.c
+++ b/
src/journal/journald-syslog.c
@@
-30,6
+30,7
@@
#include "journald-syslog.h"
#include "journald-kmsg.h"
#include "journald-console.h"
#include "journald-syslog.h"
#include "journald-kmsg.h"
#include "journald-console.h"
+#include "journald-wall.h"
/* Warn once every 30s if we missed syslog message */
#define WARN_FORWARD_SYSLOG_MISSED_USEC (30 * USEC_PER_SEC)
/* Warn once every 30s if we missed syslog message */
#define WARN_FORWARD_SYSLOG_MISSED_USEC (30 * USEC_PER_SEC)
@@
-45,7
+46,7
@@
static void forward_syslog_iovec(Server *s, const struct iovec *iovec, unsigned
.msg_iovlen = n_iovec,
.msg_name = &sa,
.msg_namelen = offsetof(union sockaddr_union, un.sun_path)
.msg_iovlen = n_iovec,
.msg_name = &sa,
.msg_namelen = offsetof(union sockaddr_union, un.sun_path)
- + s
izeof("/run/systemd/journal/syslog") - 1
,
+ + s
trlen("/run/systemd/journal/syslog")
,
};
struct cmsghdr *cmsg;
union {
};
struct cmsghdr *cmsg;
union {
@@
-380,6
+381,9
@@
void server_process_syslog_message(
if (s->forward_to_console)
server_forward_console(s, priority, identifier, buf, ucred);
if (s->forward_to_console)
server_forward_console(s, priority, identifier, buf, ucred);
+ if (s->forward_to_wall)
+ server_forward_wall(s, priority, identifier, buf, ucred);
+
IOVEC_SET_STRING(iovec[n++], "_TRANSPORT=syslog");
if (asprintf(&syslog_priority, "PRIORITY=%i", priority & LOG_PRIMASK) >= 0)
IOVEC_SET_STRING(iovec[n++], "_TRANSPORT=syslog");
if (asprintf(&syslog_priority, "PRIORITY=%i", priority & LOG_PRIMASK) >= 0)
@@
-468,7
+472,7
@@
int server_open_syslog_socket(Server *s) {
return -errno;
}
return -errno;
}
- r = sd_event_add_io(s->event,
s->syslog_fd, EPOLLIN, process_datagram, s, &s->syslog_event_source
);
+ r = sd_event_add_io(s->event,
&s->syslog_event_source, s->syslog_fd, EPOLLIN, process_datagram, s
);
if (r < 0) {
log_error("Failed to add syslog server fd to event loop: %s", strerror(-r));
return r;
if (r < 0) {
log_error("Failed to add syslog server fd to event loop: %s", strerror(-r));
return r;