Commit Graph

16 Commits

Author SHA1 Message Date
Tony Ambardar
7ab8207ba7 siproxd: improve network device resolution
Resolve network devices by first trying 'network_get_device' (L3) and
falling back to 'network_get_physdev' (L2) on failure, which allows using
Wireguard interfaces. Both are needed to avoid breaking existing usage
for some interfaces (e.g. 'wan').

Also add myself as a maintainer.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2023-11-24 16:51:31 -08:00
Tony Ambardar
442a19214b siproxd: fix UID variable conflict in init
Variable 'UID' is set readonly in some calling contexts, yielding errors
during e.g. ImageBuilder usage:

  Enabling rpcd
  ./etc/init.d/siproxd: line 14: UID: readonly variable
  Enabling siproxd
  Enabling sysctl

Rename UID and GID variables as SIPROXD_UID and SIPROXD_GID.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2021-01-24 00:27:05 -08:00
Tony Ambardar
3fb223fa88 siproxd: update to version 0.8.3, improve logging and memory usage
This release includes bug fixes and improvements accumulated over the last
4 years of development snapshots [1].

Bump upstream version, build new plugins 'stats' and 'blacklist', and add
an 'sqlite3' package dependency for siproxd-mod-blacklist.

Disable procd capturing stderr to syslog, since siproxd in 'foreground'
mode writes both to syslog and stderr, duplicating log messages.

Include a patch to drastically reduce memory usage (RSS from 17MB to 5MB
on ipq40xx platform):

  * 005-reduce-rtpproxy-urlmap-size.patch

Drop the following patches now included upstream:

  * 010-syslog-msg.patch
  * 020-gcc10.patch
  * 100-musl-compat.patch

[1] http://siproxd.sourceforge.net/index.php?op=changelog.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2020-09-04 22:38:33 -07:00
guidosarducci
aac5a6f843 siproxd: capture debug output in syslog
Although siproxd normally logs to syslog, it's debug output appears to go
only to stderr. Adjust procd setup to also capture stderr in syslog.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2018-12-08 16:53:08 -08:00
guidosarducci
b65b20f6f8 siproxd: restructure code and use procd for init
Switch to use procd for init, with support for jails. Clean up code and
restructure callback processing to be more robust and understandable. This
also fixes a bug processing multiple siproxd config sections, as reported
by Michael Kuron.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2018-05-24 00:23:56 -07:00
guidosarducci
a3f6f176d5 siproxd: don't apply default values already built-in
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2018-05-24 00:18:54 -07:00
guidosarducci
09f32fb1a5 siproxd: use UCI callback processing, reduce code size
Switch to using callback functions for UCI config processing, and remove
the unnecessary scan_interfaces() call together with related code.

Instead of explicitly handling every possible siproxd config option, use
callbacks to deal with those defined in the UCI config file, and directly
handle only selected options with desired default values. This shrinks
the init code by ~3.5 KB and simplifies updating to future siproxd
versions with new options.

(Note: this change exposed some long-standing, broken aspects of UCI
callback handling, fixed in https://github.com/openwrt/openwrt/pull/805.)

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2018-03-17 18:34:16 -07:00
guidosarducci
456d10459f siproxd: fix support for domain-specific proxies
Use lists for the config entries outbound_domain_{name,host,port}.

This permits multiple outbound proxies and fixes:
https://github.com/openwrt/telephony/issues/127

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2017-07-03 16:59:23 -07:00
guidosarducci
3e16420743 siproxd: update to version 0.8.2
An upstream siproxd update was released after ~5 years, with bugfixes
and new features. This package supports the new plugins and their config
options, and updates required patches.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2017-07-03 16:59:23 -07:00
guidosarducci
055da10ad7 siproxd: use clearer runtime file and directory names
Use more conventional, clearer naming for config and registration files.
This includes having distinct directories and specific file suffixes.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2017-07-03 16:59:23 -07:00
guidosarducci
84695bea0c siproxd: add shell helper function to build config file
Using the append_conf_if_set() function removes much repetitive and
error-prone code, reduces the source size by ~30%, and fixes a typo
previously uncaught.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2017-07-03 16:59:04 -07:00
guidosarducci
ff3f6f8665 siproxd: clean up directory permissions, ownership
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2017-06-20 03:18:27 -07:00
guidosarducci
86615075b8 siproxd: use reasonable logging level by default
The previous default logging level is completely silent, making normal
monitoring or troubleshooting impossible. Use the sane upstream default
for logging which captures basic startup, shutdown and error messages.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2017-06-20 03:18:27 -07:00
guidosarducci
347cdf07bf siproxd: use standard interface names by default
Support using standard interface names and make "lan"/"wan" the defaults
for inbound/outbound SIP traffic. This change makes siproxd more portable
but preserves backwards compatibility for upgrades.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2017-06-20 03:18:27 -07:00
Jiri Slachta
4fc80c5f96 siproxd: fix typo in init script
Signed-off-by: Jiri Slachta <slachta@cesnet.cz>
2013-10-17 15:46:39 +02:00
Jiri Slachta
100f27f3bb Directory structure restructuralized.
Signed-off-by: Jiri Slachta <slachta@cesnet.cz>
2013-06-21 13:55:47 +02:00