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>
Add a configuration option SIPROXD_MAX_CLIENTS used for compile-time sizing
of the maximum supported proxy clients. Set this to a default value of 32,
which is more suitable for a small network or CPE router and uses much
less memory than the upstream value of 512 (e.g. RSS of 2 MB vs 17 MB).
Drop the following patch in favour of the new config option:
* 005-reduce-rtpproxy-urlmap-size.patch
Also fix an incorrect configure option, and silence many warnings due to
unused VCS 'ident' variables in the sources.
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
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>
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>
This has the advantage of being available in the package catalog and
hence anytime both pre- and post-installation for someone looking for
information, using only the 'opkg info siproxd' command.
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
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>
Underscores should not be used in package base names as they're used as
semantic separators by opkg.
Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
Use explicit ident string ("siproxd") instead of NULL, as the latter is
not guaranteed to prepend the program name (e.g. unspecified in POSIX),
and may result in syslog messages identified only by PID.
Use consistent facility (LOG_DAEMON) across openlog() and syslog() calls.
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Explain default configuration options and potential firewall settings.
Provide examples of using documented siproxd configuration directives.
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
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>
Use $(INSTALL_BIN) as the modules are installed by siproxd as
executables. Remove the wildcards from this line as they're not needed.
Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
Remove LIBLTDL from the Makefile as well as a patch related to LTDL.
Both have in common that they accomplish absolutely nothing.
Also explicitly disable the use of the internal libltdl.
Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
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>
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>
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>
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>
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>
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>
- Add missing `sys/types.h` include to provide `u_short` type under musl
- Add missing `string.h` includes to avoid implicit function declarations
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>