Add support for bind-to-device option to omfwd and imudp modules.
Configured using device="name". Only new syntax format is supported.
e.g.,
input(type="imudp" port=["10514"] device="eth0" name="udp")
action(type="omfwd" Target="192.168.1.23" Port="10514" Device="eth0")
Signed-off-by: David Ahern <dsa@cumulusnetworks.com>
There is a regression in this feature-add commit and I don't have the
time to search for it. Refering it back to contributor.
see also https://github.com/rsyslog/rsyslog/pull/145
New options: (legacy counterparts)
keepalive.time $inputtcpserverkeepalive_time
keepalive.probes $inputtcpserverkeepalive_probes
keepalive.interval $inputtcpserverkeepalive_interval
The options are set separately for each instance.
This patch bumps the interface version of the nsd,
netstrm and tcpsrv modules.
so far, we always pulled a single event from the epoll interface.
Now 128, what should result in performance improvement (less API
calls) on busy systems. Most importantly affects imtcp.
The TLS server now checks the client fingerprint. This works, but
is highly experimental. Needs to be refined for practice. Also:
- implemented permittedPeers helper construct to store names
- changed omfwd implementation to use new permittedPeers
This is very experimental and needs some more work. It probably even
segfaults - but the base code is there and running. The rest is
refinement.
While working on this, I did these two bugfixes:
- bugfix: small mem leak in omfwd on exit (strmdriver name was not freed)
- bugfix: $ActionSendStreamDriver had no effect
... at least in some cases ;) I assume there are still a couple
of bugs inside the code. But at least we have something from
where we can continue to work on.
The objects for receiver-side socket abstraction have now be
specified. The project as whole does not yet compile and
definitely not run, but I'd like to commit some milestones along
this way.