1 /* SPDX-License-Identifier: LGPL-2.1+ */
5 This file is part of systemd.
7 Copyright 2014 Zbigniew Jędrzejewski-Szmek
13 #include "journal-remote-parse.h"
14 #include "journal-remote-write.h"
15 #include "microhttpd-util.h"
17 typedef struct MHDDaemonWrapper MHDDaemonWrapper
;
19 struct MHDDaemonWrapper
{
21 struct MHD_Daemon
*daemon
;
23 sd_event_source
*io_event
;
24 sd_event_source
*timer_event
;
28 RemoteSource
**sources
;
33 sd_event_source
*sigterm_event
, *sigint_event
, *listen_event
;
36 Writer
*_single_writer
;
41 const char *output
; /* either the output file or directory */
43 JournalWriteSplitMode split_mode
;
48 extern RemoteServer
*journal_remote_server_global
;
50 int journal_remote_server_init(
53 JournalWriteSplitMode split_mode
,
57 int journal_remote_get_writer(RemoteServer
*s
, const char *host
, Writer
**writer
);
59 int journal_remote_add_source(RemoteServer
*s
, int fd
, char* name
, bool own_name
);
60 int journal_remote_add_raw_socket(RemoteServer
*s
, int fd
);
62 RemoteServer
* journal_remote_server_destroy(RemoteServer
*s
);