Add generic host config struct and related helpers for TCP-based probes
and use them for ctrl probe.
This will be used in follow-up patch for OpenVPN probe as well.
Change-Id: Ie321655a92cdbefbfaa056ac0d583397c83beccb
In case of multiple ctrl-client entries in .cfg file it's impossible to
see which one is causing particular ctrl error. Fix this by introducing
macro wrapper for stderr logging which always show host:port relevant to
the error.
Change-Id: I788d51359965a66c54075a3971aa7824c3bfb0bf
Related: SYS#2655
Use liboping (new dependency) to add 'ping XXX' entries support in .cfg
file, where XXX can be either IP address or FQDN.
Sample output:
...
ping
ya.ru
IP: 2a02:6b8::2:242
dropped: 3/3
8.8.8.8
IP: 8.8.8.8
dropped: 0/3
latency: 20.4 ms
TTL: 120
...
N. B: to gather actual ping statistic we have to be able to send ICMP
requests (have enough privileges to work with RAW sockets).
Related: SYS#2655
Change-Id: Ife32540b532fb54368f63c78fb7837b84d4e8c76
The simple_ctrl.c is used by 2 independent binaries. Let's build it as a
convenience libtool library [1] to make it easier to add further
external dependencies in future.
While at it, also move osmo-sysmon dependencies to program-specific
_CFLAGS from generic one.
[1] https://www.gnu.org/software/automake/manual/html_node/Libtool-Convenience-Libraries.html
Change-Id: Idfaba17b54983709278e1c24bf55edbbb4abd961
Moving configuration data from anonymous struct into shared header as a
preparation for ctrl logging improvements in follow-up patches.
Change-Id: I3520e14ca6e1b8e270dbd4b1bf2378fe486991ce
Related: SYS#2655
Same files are available in other osmocom projects, otherwise configure
fails with "Please install autoconf-archive; re-run 'autoreconf -fi' for
it to take effect.".
Change-Id: Iabe3207fff8f076a3f4ddc81720bb7fdc671a46c
Don't forget to close the file which was opened at the
beginning of this function's scope. Found by Coverity.
Change-Id: Ie1b5734748438c6d785cd96dfa9af6303cd102da
Related: CID#189756
This check is not in all our repos that use git-version-gen. Indeed it
seems to be a leftover of openbsc where I think it wanted to ensure
being called in the openbsc subfolder or something? libosmocore e.g.
doesn't have it.
In any case .git being a directory is not always true (if using git
worktree) so remove this check.
Change-Id: I414111b27db9951314e6bc7eff8bc1f10775b3ff
That's a bit of an ugly layering violation, but it's the easiest way
how the ip-address related code can find the corresponding netdev
node that was created by the link related rtnl code.