freeswitch-stable: import 1.8.2 from master
This upgrades freeswitch from 1.6.20 to 1.8.2. All changes imported from master. Notable changes: Modules: - v8 removed as too difficult to maintain - new modules: fail2ban, raven and video_filter Init and hotplug: - changed init config to uci (/etc/default/freeswitch replaced with /etc/config/freeswitch) - logging can now be enabled via /etc/config/freeswitch - hotplug script is now included in the main package - the post-install script no longer disables freeswitch during upgrades Fixes: - freeswitch now sends console output properly to procd Misc: - the new release adds support for MSRP (Message Session Relay Protocol, see https://en.wikipedia.org/wiki/Message_Session_Relay_Protocol), this opens TCP ports by default, can be limited to localhost in autoload_configs/msrp.conf.xml Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
This commit is contained in:
parent
bdda0755a5
commit
a9c3b92d06
20 changed files with 260 additions and 821 deletions
|
@ -45,29 +45,6 @@ config FS_STABLE_WITH_SRTP
|
|||
help
|
||||
Compile with SRTP support.
|
||||
|
||||
config FS_STABLE_WITH_V8
|
||||
bool "Compile with V8 support"
|
||||
depends on arm||i386||mipsel||x86_64
|
||||
default y if x86_64
|
||||
help
|
||||
The sole purpose of this symbol is to prevent mod_v8 from being built
|
||||
by the build bots. Currently the only exception is x86_64. The build is
|
||||
time-consuming and the module is quite large, making it an unlikely
|
||||
choice for devices with limited resources.
|
||||
|
||||
If you want mod_v8 to become available, select 'y'.
|
||||
|
||||
config FS_STABLE_WITH_V8_SNAPSHOT
|
||||
bool "Include heap snapshot"
|
||||
depends on FS_STABLE_WITH_V8
|
||||
default n
|
||||
help
|
||||
V8 can be built with a heap snapshot for faster initialization. Default
|
||||
is 'n' because of seemingly random segmentation faults observed when
|
||||
generating the snapshot.
|
||||
|
||||
Only select 'y' if you know what you are doing.
|
||||
|
||||
config FS_STABLE_WITH_VPX
|
||||
bool "Compile with VPx support"
|
||||
depends on FS_STABLE_WITH_LIBYUV
|
||||
|
|
|
@ -9,13 +9,17 @@ include $(TOPDIR)/rules.mk
|
|||
|
||||
PRG_NAME:=freeswitch
|
||||
PKG_NAME:=$(PRG_NAME)-stable
|
||||
PKG_VERSION:=1.6.20
|
||||
PKG_RELEASE:=9
|
||||
PKG_VERSION:=1.8.2
|
||||
PKG_RELEASE:=1
|
||||
PKG_MAINTAINER:=Sebastian Kemper <sebastian_ml@gmx.net>
|
||||
|
||||
PKG_SOURCE:=$(PRG_NAME)-$(PKG_VERSION).tar.xz
|
||||
PKG_SOURCE_URL:=https://files.$(PRG_NAME).org/releases/$(PRG_NAME)
|
||||
PKG_HASH:=dbb0f73109171bd381772b247b8ef581f6a176964619082a1fe031b004086f6b
|
||||
PKG_SOURCE_URL := \
|
||||
https://sources.openwrt.org/ \
|
||||
https://files.$(PRG_NAME).org/releases/$(PRG_NAME)
|
||||
PKG_HASH:=ebcf3db970ea9bb534c0983a1c9eef88395deb6e0902d8d6407bf217b2f27b9a
|
||||
|
||||
PKG_CPE_ID:=cpe:/a:freeswitch:freeswitch
|
||||
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PRG_NAME)-$(PKG_VERSION)
|
||||
|
||||
|
@ -29,7 +33,7 @@ PKG_BUILD_DEPENDS:= \
|
|||
PKG_FIXUP:=autoreconf
|
||||
|
||||
# With mod_ssml and mod_rayo enabled the parallel compiles always failed
|
||||
#PKG_BUILD_PARALLEL:=1
|
||||
PKG_BUILD_PARALLEL:=0
|
||||
PKG_INSTALL:=1
|
||||
|
||||
PKG_LICENSE:= \
|
||||
|
@ -121,6 +125,7 @@ FS_STABLE_MOD_AVAILABLE:= \
|
|||
event_test \
|
||||
event_zmq \
|
||||
expr \
|
||||
fail2ban \
|
||||
fifo \
|
||||
format_cdr \
|
||||
$(FTDM) \
|
||||
|
@ -160,6 +165,7 @@ FS_STABLE_MOD_AVAILABLE:= \
|
|||
python \
|
||||
radius_cdr \
|
||||
random \
|
||||
raven \
|
||||
rayo \
|
||||
redis \
|
||||
rss \
|
||||
|
@ -203,9 +209,9 @@ FS_STABLE_MOD_AVAILABLE:= \
|
|||
translate \
|
||||
tts_commandline \
|
||||
unimrcp \
|
||||
v8 \
|
||||
valet_parking \
|
||||
verto \
|
||||
video_filter \
|
||||
vmd \
|
||||
voicemail \
|
||||
voicemail_ivr \
|
||||
|
@ -226,7 +232,6 @@ PKG_CONFIG_DEPENDS:= \
|
|||
CONFIG_FS_STABLE_WITH_PGSQL \
|
||||
CONFIG_FS_STABLE_WITH_PNG \
|
||||
CONFIG_FS_STABLE_WITH_SRTP \
|
||||
CONFIG_FS_STABLE_WITH_V8_SNAPSHOT \
|
||||
CONFIG_FS_STABLE_WITH_VPX \
|
||||
CONFIG_FS_STABLE_WITH_ZRTP \
|
||||
CONFIG_LIBC \
|
||||
|
@ -395,7 +400,7 @@ endef
|
|||
|
||||
define Package/$(PKG_NAME)/conffiles
|
||||
$(FS_STABLE_SYSCONF_DIR)/$(PRG_NAME)
|
||||
$(FS_STABLE_SYSCONF_DIR)/default/$(PRG_NAME)
|
||||
$(FS_STABLE_SYSCONF_DIR)/config/$(PRG_NAME)
|
||||
$(FS_STABLE_SYSCONF_DIR)/init.d/$(PRG_NAME)
|
||||
endef
|
||||
|
||||
|
@ -408,61 +413,42 @@ $(call Package/$(PKG_NAME)/install/lib,$(1),lib$(PRG_NAME))
|
|||
$(INSTALL_DIR) $(1)$(FS_STABLE_IMAGES_DIR)
|
||||
$(INSTALL_DIR) $(1)$(FS_STABLE_SCRIPTS_DIR)
|
||||
$(INSTALL_DIR) $(1)$(FS_STABLE_SOUNDS_DIR)
|
||||
$(INSTALL_DIR) $(1)$(FS_STABLE_SYSCONF_DIR)/default
|
||||
$(INSTALL_DIR) $(1)$(FS_STABLE_SYSCONF_DIR)/config
|
||||
$(INSTALL_DIR) $(1)$(FS_STABLE_SYSCONF_DIR)/hotplug.d/iface
|
||||
$(INSTALL_DIR) $(1)$(FS_STABLE_SYSCONF_DIR)/init.d
|
||||
$(INSTALL_DIR) $(1)$(FS_STABLE_TLS_DIR)
|
||||
$(INSTALL_BIN) ./files/$(PRG_NAME).init \
|
||||
$(1)$(FS_STABLE_SYSCONF_DIR)/init.d/$(PRG_NAME)
|
||||
$(INSTALL_CONF) ./files/$(PRG_NAME).default \
|
||||
$(1)$(FS_STABLE_SYSCONF_DIR)/default/$(PRG_NAME)
|
||||
$(INSTALL_BIN) ./files/$(PRG_NAME).hotplug \
|
||||
$(1)$(FS_STABLE_SYSCONF_DIR)/hotplug.d/iface/90-$(PRG_NAME)
|
||||
$(INSTALL_CONF) ./files/$(PRG_NAME).config \
|
||||
$(1)$(FS_STABLE_SYSCONF_DIR)/config/$(PRG_NAME)
|
||||
endef
|
||||
|
||||
define Package/$(PKG_NAME)/postinst
|
||||
#!/bin/sh
|
||||
if [ -z "$${IPKG_INSTROOT}" ]; then
|
||||
# Prevent $(PRG_NAME) from auto-starting after an upgrade. The modules may
|
||||
# not be upgraded yet and the user configuration may need a revision.
|
||||
sed -i '/^ENABLE_FREESWITCH="yes"/s/^/#/' \
|
||||
$(FS_STABLE_SYSCONF_DIR)/default/$(PRG_NAME)
|
||||
|
||||
echo
|
||||
echo "o-------------------------------------------------------------------o"
|
||||
echo "| FreeSWITCH note |"
|
||||
echo "o-------------------------------------------------------------------o"
|
||||
echo "| Edit /etc/default/freeswitch to change basic init configuration. |"
|
||||
echo "o-------------------------------------------------------------=^_^=-o"
|
||||
echo
|
||||
fi
|
||||
exit 0
|
||||
endef
|
||||
|
||||
define Package/$(PKG_NAME)-misc-hotplug
|
||||
$(call Package/$(PKG_NAME)/Default)
|
||||
TITLE:=Hotplug script
|
||||
DEPENDS:=$(PKG_NAME)
|
||||
PKGARCH:=all
|
||||
endef
|
||||
|
||||
define Package/$(PKG_NAME)-misc-hotplug/description
|
||||
This package includes a hotplug script for FreeSWITCH.
|
||||
endef
|
||||
|
||||
define Package/$(PKG_NAME)-misc-hotplug/install
|
||||
$(INSTALL_DIR) $(1)$(FS_STABLE_SYSCONF_DIR)/hotplug.d/iface
|
||||
$(INSTALL_BIN) ./files/$(PRG_NAME).hotplug \
|
||||
$(1)$(FS_STABLE_SYSCONF_DIR)/hotplug.d/iface/99-$(PRG_NAME)
|
||||
endef
|
||||
|
||||
define Package/$(PKG_NAME)-misc-hotplug/postinst
|
||||
#!/bin/sh
|
||||
if [ -z "$${IPKG_INSTROOT}" ]; then
|
||||
echo
|
||||
echo "o-------------------------------------------------------------------o"
|
||||
echo "| FreeSWITCH hotplug note |"
|
||||
echo "o-------------------------------------------------------------------o"
|
||||
echo "| See /etc/default/freeswitch for hotplug hints. |"
|
||||
echo "| Edit /etc/config/freeswitch to change basic init configuration. |"
|
||||
echo "| |"
|
||||
echo "| Also visit the Wiki at: |"
|
||||
echo "| https://openwrt.org/docs/guide-user/services/voip/freeswitch |"
|
||||
echo "o-------------------------------------------------------------=^_^=-o"
|
||||
echo
|
||||
[ -f /etc/hotplug.d/iface/99-freeswitch ] && {
|
||||
echo "o-------------------------------------------------------------------o"
|
||||
echo "| WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING |"
|
||||
echo "o-------------------------------------------------------------------o"
|
||||
echo "| Please remove freeswitch-stable-misc-hotplug. The hotplug script |"
|
||||
echo "| is now part of the main freeswitch-stable package. Please run: |"
|
||||
echo "| |"
|
||||
echo "| opkg remove freeswitch-stable-misc-hotplug |"
|
||||
echo "o-------------------------------------------------------------=^_^=-o"
|
||||
echo
|
||||
}
|
||||
fi
|
||||
exit 0
|
||||
endef
|
||||
|
@ -686,12 +672,6 @@ CONFIGURE_ARGS+= \
|
|||
--with-erlang=no
|
||||
endif
|
||||
|
||||
ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-mod-v8),)
|
||||
CONFIGURE_ARGS+= \
|
||||
--enable-static-v8 \
|
||||
$(if $(CONFIG_FS_STABLE_WITH_V8_SNAPSHOT),,--disable-snapshot-v8)
|
||||
endif
|
||||
|
||||
# Make mod_spandsp use fixed point math when soft float support is
|
||||
# enabled on target devices.
|
||||
ifeq ($(CONFIG_SOFT_FLOAT),y)
|
||||
|
@ -773,84 +753,6 @@ endif
|
|||
MAKE_VARS+= \
|
||||
ac_cv_dev_urandom=yes
|
||||
|
||||
ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-mod-v8),)
|
||||
|
||||
# arm
|
||||
ifeq ($(CONFIG_arm),y)
|
||||
FS_STABLE_MYARCH:=arm
|
||||
FS_STABLE_MYDEFINES:=v8_target_arch=arm
|
||||
ifeq ($(CONFIG_arm_v6),y)
|
||||
FS_STABLE_MYDEFINES+=arm_version=6
|
||||
else
|
||||
ifeq ($(CONFIG_arm_v7),y)
|
||||
FS_STABLE_MYDEFINES+=arm_version=7
|
||||
else
|
||||
FS_STABLE_MYDEFINES+=arm_version=default
|
||||
endif
|
||||
endif
|
||||
ifeq ($(CONFIG_VFP),y)
|
||||
ifeq ($(CONFIG_VFPv3),y)
|
||||
ifeq ($(CONFIG_NEON),y)
|
||||
FS_STABLE_MYDEFINES+=arm_fpu=neon
|
||||
else
|
||||
FS_STABLE_MYDEFINES+=arm_fpu=vfpv3
|
||||
endif
|
||||
else
|
||||
FS_STABLE_MYDEFINES+=arm_fpu=vfp
|
||||
endif
|
||||
else
|
||||
FS_STABLE_MYDEFINES+=arm_fpu=default
|
||||
endif
|
||||
ifeq ($(CONFIG_SOFT_FLOAT),y)
|
||||
FS_STABLE_MYDEFINES+=arm_float_abi=softfp
|
||||
else
|
||||
FS_STABLE_MYDEFINES+=arm_float_abi=hard
|
||||
endif
|
||||
endif
|
||||
|
||||
# i386
|
||||
ifeq ($(CONFIG_i386),y)
|
||||
FS_STABLE_MYARCH:=ia32
|
||||
FS_STABLE_MYDEFINES:=v8_target_arch=ia32
|
||||
endif
|
||||
|
||||
# mipsel
|
||||
ifeq ($(CONFIG_mipsel),y)
|
||||
FS_STABLE_MYARCH:=mipsel
|
||||
FS_STABLE_MYDEFINES:=v8_target_arch=mipsel
|
||||
ifeq ($(CONFIG_CPU_MIPS32),y)
|
||||
ifeq ($(CONFIG_CPU_MIPS32_R2),y)
|
||||
FS_STABLE_MYDEFINES+=mips_arch_variant=mips32r2
|
||||
else
|
||||
ifeq ($(CONFIG_CPU_MIPS32_R1),y)
|
||||
FS_STABLE_MYDEFINES+=mips_arch_variant=mips32r1
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
ifeq ($(CONFIG_SOFT_FLOAT),y)
|
||||
FS_STABLE_MYDEFINES+=v8_use_mips_abi_hardfloat=false
|
||||
else
|
||||
FS_STABLE_MYDEFINES+=v8_use_mips_abi_hardfloat=true
|
||||
endif
|
||||
endif
|
||||
|
||||
# x86_64
|
||||
ifeq ($(CONFIG_x86_64),y)
|
||||
FS_STABLE_MYARCH:=x64
|
||||
FS_STABLE_MYDEFINES:=v8_target_arch=x64
|
||||
endif
|
||||
|
||||
MAKE_VARS+= \
|
||||
FS_STABLE_HOSTCC="$(HOSTCC)" \
|
||||
FS_STABLE_HOSTCXX="$(HOSTCXX)" \
|
||||
FS_STABLE_HOST_CFLAGS="$(HOST_CFLAGS)" \
|
||||
FS_STABLE_HOST_LDFLAGS="$(HOST_LDFLAGS)" \
|
||||
FS_STABLE_HOST_PYTHONPATH="$(HOST_PYTHONPATH)" \
|
||||
FS_STABLE_MYARCH="$(FS_STABLE_MYARCH)" \
|
||||
FS_STABLE_MYDEFINES="$(FS_STABLE_MYDEFINES)"
|
||||
|
||||
endif
|
||||
|
||||
# Make sphinxbase use fixed point math when soft float support is
|
||||
# enabled on target devices.
|
||||
ifeq ($(CONFIG_SOFT_FLOAT),y)
|
||||
|
@ -878,12 +780,8 @@ FS_STABLE_SPHINXMODEL_FILE:=communicator_semi_6000_20080321.tar.gz
|
|||
FS_STABLE_SPHINXMODEL_HASH:=dbb5e9fb85000a7cb97d6958a3ef8d77532dc55fc730ac6979705e8645cb0c18
|
||||
|
||||
# mod_radius_cdr
|
||||
FS_STABLE_FREERADIUS_CLIENT_FILE:=freeradius-client-1.1.6.tar.gz
|
||||
FS_STABLE_FREERADIUS_CLIENT_HASH:=3fc609af328258e00345389d5478b099fe4ea3ad694d0472525ef3adab9cf053
|
||||
|
||||
# mod_v8
|
||||
FS_STABLE_V8_FILE:=v8-3.24.14.tar.bz2
|
||||
FS_STABLE_V8_HASH:=395f4eaf5580b973b1e33fe0aa27f8d013ddf1b163ad76992c50dd91ff182828
|
||||
FS_STABLE_FREERADIUS_CLIENT_FILE:=freeradius-client-1.1.7.tar.gz
|
||||
FS_STABLE_FREERADIUS_CLIENT_HASH:=eada2861b8f4928e3ac6b5bbfe11e92cd6cdcacfce40cae1085e77c1b6add0e9
|
||||
|
||||
ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-mod-event-zmq),)
|
||||
$(eval $(call Download/files,zmq,$(FS_STABLE_ZEROMQ_FILE),$(FS_STABLE_ZEROMQ_URL),$(FS_STABLE_ZEROMQ_HASH)))
|
||||
|
@ -899,10 +797,6 @@ ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-mod-radius-cdr),)
|
|||
$(eval $(call Download/files,freeradius-client,$(FS_STABLE_FREERADIUS_CLIENT_FILE),$(FS_STABLE_LIBS_URL),$(FS_STABLE_FREERADIUS_CLIENT_HASH)))
|
||||
endif
|
||||
|
||||
ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-mod-v8),)
|
||||
$(eval $(call Download/files,v8,$(FS_STABLE_V8_FILE),$(FS_STABLE_LIBS_URL),$(FS_STABLE_V8_HASH)))
|
||||
endif
|
||||
|
||||
# Need to update LDFLAGS for libs/unimrcp, otherwise it will try to link to a
|
||||
# different apr/apr-util if found.
|
||||
# FS_STABLE_ANCHOR: string in build/acmacros/apr.m4 that will be replaced
|
||||
|
@ -912,8 +806,6 @@ FS_STABLE_APR_LIBS:=-L$(PKG_BUILD_DIR)/libs/apr -L$(PKG_BUILD_DIR)/libs/apr-util
|
|||
define Build/Prepare
|
||||
$(call Build/Prepare/Default)
|
||||
|
||||
$(RM) -r $(PKG_BUILD_DIR)/libs/tiff-*
|
||||
|
||||
echo '#applications/mod_random' >> $(PKG_BUILD_DIR)/modules.conf
|
||||
echo '#codecs/mod_yuv' >> $(PKG_BUILD_DIR)/modules.conf
|
||||
echo '#event_handlers/mod_event_test' >> $(PKG_BUILD_DIR)/modules.conf
|
||||
|
@ -968,10 +860,6 @@ ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-mod-radius-cdr),)
|
|||
$(CP) $(DL_DIR)/$(FS_STABLE_FREERADIUS_CLIENT_FILE) $(PKG_BUILD_DIR)/libs
|
||||
endif
|
||||
|
||||
ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-mod-v8),)
|
||||
$(CP) $(DL_DIR)/$(FS_STABLE_V8_FILE) $(PKG_BUILD_DIR)/libs
|
||||
endif
|
||||
|
||||
# Compile FreeTDM first
|
||||
ifneq ($(CONFIG_PACKAGE_$(PKG_LIBFTDM)),)
|
||||
$(call Build/Compile/Default,-C $(PKG_BUILD_DIR)/libs/$(FTDM))
|
||||
|
@ -1032,7 +920,6 @@ endef
|
|||
|
||||
$(eval $(call BuildPackage,$(PKG_LIBFTDM)))
|
||||
$(eval $(call BuildPackage,$(PKG_NAME)))
|
||||
$(eval $(call BuildPackage,$(PKG_NAME)-misc-hotplug))
|
||||
$(eval $(call BuildPackage,$(PKG_NAME)-misc-perl-esl))
|
||||
$(eval $(call BuildPackage,$(PKG_NAME)-misc-python-esl))
|
||||
$(eval $(call BuildPackage,$(PKG_NAME)-misc-timezones))
|
||||
|
@ -1151,6 +1038,7 @@ $(eval $(call Package/$(PKG_NAME)/Module,event_socket,Event socket,Sends events
|
|||
$(eval $(call Package/$(PKG_NAME)/Module,event_test,Event test,Event demo module.,))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,event_zmq,ZMQ event,ZMQ event module.,@!USE_UCLIBCXX))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,expr,Expr,This module adds expr support for expression evaluation.,))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,fail2ban,Fail2ban logging,Provides support for Fail2ban logging.,))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,fifo,FIFO,This module adds a first-in first-out queue system.,))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,format_cdr,Multiformat CDR,A superset of mod_json_cdr and mod_xml_cdr.,))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,$(FTDM),FreeTDM endpoint,This module is the glue between FreeSWITCH and FreeTDM.,+$(PKG_LIBFTDM)))
|
||||
|
@ -1190,6 +1078,7 @@ $(eval $(call Package/$(PKG_NAME)/Module,prefix,Prefix match,This module provide
|
|||
$(eval $(call Package/$(PKG_NAME)/Module,python,Python,Python support module.,+python-light))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,radius_cdr,Radius CDR,Radius Call Detail Record handler.,))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,random,Entropy,This module extracts entropy from FreeSWITCH and feeds it into\n/dev/random.,))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,raven,Raven logging,Adds support for logging to Raven instances.,))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,rayo,Rayo,Rayo/XMPP 3PCC server for FreeSWITCH.,+$(PKG_NAME)-mod-ssml))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,redis,Redis limit backend,This module provides a mechanism to use Redis as a limit backend data\nstore.,))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,rss,RSS,Parses and reads XML based RSS feeds and reads the entries aloud via a TTS engine.,))
|
||||
|
@ -1233,9 +1122,9 @@ $(eval $(call Package/$(PKG_NAME)/Module,tone_stream,Tone stream,Tone generation
|
|||
$(eval $(call Package/$(PKG_NAME)/Module,translate,Number translation,This module implements number translation.,))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,tts_commandline,TTS command-line,Run a command-line and play the output file.,))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,unimrcp,UniMRCP,Allows communication with Media Resource Control Protocol servers.,))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,v8,V8,This package contains mod_v8 for FreeSWITCH.,@!USE_UCLIBCXX @FS_STABLE_WITH_V8 @arm||i386||mipsel||x86_64))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,valet_parking,Valet parking,This module implements the valet call parking strategy.,))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,verto,Verto,Verto signaling protocol.,))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,video_filter,Video filter chromakey,This module provides a media bug for chromakey functionality.,))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,vmd,Voicemail detection,This module detects voicemail beeps.,))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,voicemail,Voicemail,This module provides a voicemail system.,))
|
||||
$(eval $(call Package/$(PKG_NAME)/Module,voicemail_ivr,Voicemail IVR,This module provides an extensible voicemail IVR system.,))
|
||||
|
|
23
net/freeswitch-stable/files/freeswitch.config
Normal file
23
net/freeswitch-stable/files/freeswitch.config
Normal file
|
@ -0,0 +1,23 @@
|
|||
|
||||
config freeswitch 'general'
|
||||
option enabled '0'
|
||||
option user 'freeswitch'
|
||||
option group 'freeswitch'
|
||||
option log_stderr '1'
|
||||
option log_stdout '1'
|
||||
option options '-nonat -np'
|
||||
|
||||
config freeswitch 'directories'
|
||||
option cache '/tmp/freeswitch/cache'
|
||||
option db '/tmp/freeswitch/db'
|
||||
option log '/tmp/freeswitch/log'
|
||||
option recordings '/tmp/freeswitch/recordings'
|
||||
option storage '/tmp/freeswitch/storage'
|
||||
option temp '/tmp/freeswitch/temp'
|
||||
|
||||
config freeswitch 'hotplug'
|
||||
#option interface 'wan'
|
||||
#option mount_point '/mnt/usb'
|
||||
option ntpd '0'
|
||||
option timeout '60'
|
||||
|
|
@ -1,44 +0,0 @@
|
|||
### FreeSWITCH configuration ###
|
||||
|
||||
# Uncomment once you verified your configuration, otherwise the init script will
|
||||
# not start FreeSWITCH.
|
||||
#ENABLE_FREESWITCH="yes"
|
||||
|
||||
#FS_USER=freeswitch
|
||||
#FS_GROUP=freeswitch
|
||||
|
||||
#FS_DIR_CACHE="/tmp/freeswitch/cache"
|
||||
|
||||
# Don't point FS_DIR_DB toward a flash drive, e.g. the flash drive of your
|
||||
# router. FreeSWITCH will be writing constantly to its databases, which would
|
||||
# degrade the flash over time. Point it to a tmpfs destination like /dev/shm or
|
||||
# /tmp instead in order for the writes to go to RAM.
|
||||
#FS_DIR_DB="/tmp/freeswitch/db"
|
||||
|
||||
#FS_DIR_LOG="/tmp/freeswitch/log"
|
||||
#FS_DIR_RECORDINGS="/tmp/freeswitch/recordings"
|
||||
#FS_DIR_STORAGE="/tmp/freeswitch/storage"
|
||||
#FS_DIR_TEMP="/tmp/freeswitch/temp"
|
||||
|
||||
# The following is added to the command line when starting FreeSWITCH:
|
||||
OPTIONS="-nonat -np"
|
||||
|
||||
### Hotplug configuration ###
|
||||
|
||||
# Only used by the FreeSWITCH hotplug script (available in a seperate package).
|
||||
|
||||
# Provide the interface that needs to change its state to "up" (if unset the
|
||||
# hotplug script does nothing):
|
||||
#FS_HOTPLUG_INTERFACE="wan"
|
||||
|
||||
# You can add conditions which need to be met before FreeSWITCH is started.
|
||||
|
||||
# Uncomment to check if something is mounted here:
|
||||
#FS_HOTPLUG_MOUNTPOINT="/mnt/usb"
|
||||
|
||||
# Uncomment to check if ntpd is running and has set the system time:
|
||||
#FS_HOTPLUG_NTPD="check"
|
||||
|
||||
# Uncomment to change the default timeout of 60 seconds that the hotplug script
|
||||
# waits for a condition to turn from false to true:
|
||||
#FS_HOTPLUG_TIMEOUT="20"
|
|
@ -1,53 +1,51 @@
|
|||
#!/bin/sh
|
||||
|
||||
FS=freeswitch
|
||||
DEFAULT=/etc/default/$FS
|
||||
LOGGER="/usr/bin/logger -t ${FS}-hotplug"
|
||||
NAME=freeswitch
|
||||
COMMAND=/etc/init.d/$NAME
|
||||
|
||||
LOGGER="/usr/bin/logger -t $NAME-hotplug"
|
||||
LOG_ERR="$LOGGER -p user.err --"
|
||||
LOG_NOTICE="$LOGGER -p user.notice --"
|
||||
LOG_WARN="$LOGGER -p user.warn --"
|
||||
|
||||
[ "$ACTION" = ifup ] || exit 0
|
||||
|
||||
[ -f $DEFAULT ] && . $DEFAULT
|
||||
. /lib/functions.sh
|
||||
config_load $NAME
|
||||
|
||||
[ -n "$FS_HOTPLUG_INTERFACE" ] || exit 0
|
||||
config_get interface hotplug interface
|
||||
|
||||
[ "$INTERFACE" = "$FS_HOTPLUG_INTERFACE" ] || exit 0
|
||||
[ "$INTERFACE" = "$interface" ] || exit 0
|
||||
|
||||
pgrep $FS &> /dev/null
|
||||
pidof $NAME &> /dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
$LOG_NOTICE Stopping $FS
|
||||
/etc/init.d/$FS stop &> /dev/null
|
||||
pgrep $FS &> /dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
$LOG_ERR Failed to stop $FS
|
||||
exit 1
|
||||
else
|
||||
$LOG_NOTICE $FS stopped
|
||||
fi
|
||||
$LOG_NOTICE stopping $NAME
|
||||
$COMMAND stop &> /dev/null
|
||||
fi
|
||||
|
||||
[ "$FS_HOTPLUG_TIMEOUT" -gt 0 ] 2> /dev/null || unset FS_HOTPLUG_TIMEOUT
|
||||
TIMEOUT="${FS_HOTPLUG_TIMEOUT:-60}"
|
||||
config_get timeout hotplug timeout 60
|
||||
|
||||
# Mount condition, idea lifted from OpenWrt wiki
|
||||
[ -n "$FS_HOTPLUG_MOUNTPOINT" ] && {
|
||||
[ "$timeout" -gt 0 ] 2> /dev/null || unset timeout
|
||||
timeout="${timeout:-60}"
|
||||
|
||||
if ! [ -d "$FS_HOTPLUG_MOUNTPOINT" ]; then
|
||||
$LOG_ERR "$FS_HOTPLUG_MOUNTPOINT" not a valid mount point
|
||||
config_get mount_point hotplug mount_point
|
||||
|
||||
# Mount condition, idea lifted from OpenWrt Wiki
|
||||
[ -n "$mount_point" ] && {
|
||||
|
||||
if ! [ -d "$mount_point" ]; then
|
||||
$LOG_ERR "$mount_point" not a valid mount point
|
||||
exit 1
|
||||
fi
|
||||
|
||||
mnt="$FS_HOTPLUG_MOUNTPOINT"
|
||||
mnt="$mount_point"
|
||||
notReady=start
|
||||
timeout=$TIMEOUT
|
||||
tmp_timeout=$timeout
|
||||
|
||||
while [ -n "$notReady" -a $timeout -gt 0 ]; do
|
||||
while [ -n "$notReady" -a $tmp_timeout -gt 0 ]; do
|
||||
if [ "$notReady" != start ]; then
|
||||
$LOG_NOTICE "$mnt" not yet mounted, timeout in $timeout s
|
||||
$LOG_NOTICE "$mnt" not yet mounted, timeout in $tmp_timeout s
|
||||
sleep 5
|
||||
timeout=$(($timeout-5))
|
||||
tmp_timeout=$(($tmp_timeout-5))
|
||||
fi
|
||||
|
||||
notReady=
|
||||
|
@ -60,7 +58,7 @@ TIMEOUT="${FS_HOTPLUG_TIMEOUT:-60}"
|
|||
|
||||
if [ -n "$notReady" ]; then
|
||||
$LOG_ERR "$mnt" still not mounted
|
||||
$LOG_ERR Not starting $FS
|
||||
$LOG_ERR not starting $NAME
|
||||
exit 1
|
||||
else
|
||||
$LOG_NOTICE "$mnt" mounted
|
||||
|
@ -68,8 +66,10 @@ TIMEOUT="${FS_HOTPLUG_TIMEOUT:-60}"
|
|||
|
||||
}
|
||||
|
||||
config_get_bool ntpd hotplug ntpd 0
|
||||
|
||||
# ntpd condition
|
||||
[ -n "$FS_HOTPLUG_NTPD" ] && {
|
||||
[ $ntpd -eq 1 ] && {
|
||||
|
||||
type ntpq &> /dev/null
|
||||
[ $? -eq 0 ] || {
|
||||
|
@ -77,24 +77,19 @@ TIMEOUT="${FS_HOTPLUG_TIMEOUT:-60}"
|
|||
exit 1
|
||||
}
|
||||
|
||||
pgrep ntpd &> /dev/null || {
|
||||
pidof ntpd &> /dev/null || {
|
||||
$LOG_ERR ntpd not running
|
||||
exit 1
|
||||
}
|
||||
|
||||
notReady=start
|
||||
timeout=$TIMEOUT
|
||||
tmp_timeout=$timeout
|
||||
|
||||
result=$(uci get 'system.ntp.enabled' 2> /dev/null)
|
||||
[ "$result" -eq 1 ] 2> /dev/null && {
|
||||
$LOG_WARN BusyBox NTP client _and_ ntpd running
|
||||
}
|
||||
|
||||
while [ -n "$notReady" -a $timeout -gt 0 ]; do
|
||||
while [ -n "$notReady" -a $tmp_timeout -gt 0 ]; do
|
||||
if [ "$notReady" != start ]; then
|
||||
$LOG_NOTICE System time not in sync yet, timeout in $timeout s
|
||||
$LOG_NOTICE system time not in sync yet, timeout in $tmp_timeout s
|
||||
sleep 5
|
||||
timeout=$(($timeout-5))
|
||||
tmp_timeout=$(($tmp_timeout-5))
|
||||
fi
|
||||
|
||||
notReady=
|
||||
|
@ -102,7 +97,7 @@ TIMEOUT="${FS_HOTPLUG_TIMEOUT:-60}"
|
|||
result=$(ntpq -c 'timeout 300' -c 'rv 0 stratum' 2> /dev/null | \
|
||||
awk -F '=' '{print $2}' | grep -o -E '^[0-9]+')
|
||||
if [ -z $result ]; then
|
||||
$LOG_WARN Failed to extract stratum from ntpd
|
||||
$LOG_ERR failed to extract stratum from ntpd
|
||||
notReady="unable to extract stratum"
|
||||
else
|
||||
$LOG_NOTICE ntpd stratum $result
|
||||
|
@ -110,7 +105,7 @@ TIMEOUT="${FS_HOTPLUG_TIMEOUT:-60}"
|
|||
result=$(ntpq -c 'timeout 300' -c 'rv 0 offset' 2> /dev/null \
|
||||
| awk -F '=' '{print $2}' | grep -o -E '^-?[0-9]+')
|
||||
if [ -z $result ]; then
|
||||
$LOG_WARN Failed to extract offset from ntpd
|
||||
$LOG_ERR failed to extract offset from ntpd
|
||||
notReady="unable to extract offset"
|
||||
else
|
||||
# "-0" looks stupid, so remove "-"
|
||||
|
@ -126,22 +121,21 @@ TIMEOUT="${FS_HOTPLUG_TIMEOUT:-60}"
|
|||
done
|
||||
|
||||
if [ -n "$notReady" ]; then
|
||||
$LOG_ERR System time still not in sync
|
||||
$LOG_ERR Not starting $FS
|
||||
$LOG_ERR system time still not in sync
|
||||
$LOG_ERR not starting $NAME
|
||||
exit 1
|
||||
else
|
||||
$LOG_NOTICE System time in sync
|
||||
$LOG_NOTICE system time in sync
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
/etc/init.d/$FS start &> /dev/null
|
||||
# Wait a bit in order for pgrep to be able to find the new process
|
||||
$COMMAND start &> /dev/null
|
||||
sleep 1
|
||||
pgrep $FS &>/dev/null
|
||||
pidof $NAME &>/dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
$LOG_NOTICE Started $FS due to \"ifup "$INTERFACE"\" event
|
||||
$LOG_NOTICE started $NAME due to \"ifup "$INTERFACE"\" event
|
||||
else
|
||||
$LOG_ERR Start of $FS due to \"ifup "$INTERFACE"\" event failed
|
||||
$LOG_ERR start of $NAME due to \"ifup "$INTERFACE"\" event failed
|
||||
exit 1
|
||||
fi
|
||||
|
|
|
@ -7,133 +7,88 @@ USE_PROCD=1
|
|||
|
||||
#PROCD_DEBUG=1
|
||||
|
||||
FS=freeswitch
|
||||
DEFAULT=/etc/default/$FS
|
||||
LOGGER="/usr/bin/logger -p user.err -s -t $FS"
|
||||
OPTIONS=
|
||||
PROG=/usr/bin/$FS
|
||||
TIMEOUT=30
|
||||
NAME=freeswitch
|
||||
COMMAND=/usr/bin/$NAME
|
||||
|
||||
[ -f $DEFAULT ] && . $DEFAULT
|
||||
|
||||
fs_user="${FS_USER:-$FS}"
|
||||
fs_group="${FS_GROUP:-$FS}"
|
||||
|
||||
fs_dir_etc="/etc/$FS"
|
||||
fs_dir_localstate="/var/lib/$FS"
|
||||
fs_dir_run="/var/run/$FS"
|
||||
|
||||
fs_dir_cache="${FS_DIR_CACHE:-/tmp/$FS/cache}"
|
||||
fs_dir_db="${FS_DIR_DB:-/tmp/$FS/db}"
|
||||
fs_dir_log="${FS_DIR_LOG:-/tmp/$FS/log}"
|
||||
fs_dir_recordings="${FS_DIR_RECORDINGS:-/tmp/$FS/recordings}"
|
||||
fs_dir_storage="${FS_DIR_STORAGE:-/tmp/$FS/storage}"
|
||||
fs_dir_temp="${FS_DIR_TEMP:-/tmp/$FS/temp}"
|
||||
LOGGER="/usr/bin/logger -p user.err -s -t $NAME"
|
||||
|
||||
start_service() {
|
||||
local dir=
|
||||
local dir
|
||||
local enabled
|
||||
|
||||
if [ "$ENABLE_FREESWITCH" != yes ]; then
|
||||
$LOGGER User configuration incomplete - not starting $FS
|
||||
$LOGGER Check ENABLE_FREESWITCH in $DEFAULT
|
||||
local user
|
||||
local group
|
||||
|
||||
local log_stderr
|
||||
local log_stdout
|
||||
|
||||
local dir_cache
|
||||
local dir_db
|
||||
local dir_etc=/etc/$NAME
|
||||
local dir_localstate=/var/lib/$NAME
|
||||
local dir_log
|
||||
local dir_recordings
|
||||
local dir_run=/var/run/$NAME
|
||||
local dir_storage
|
||||
local dir_temp
|
||||
|
||||
local options
|
||||
|
||||
config_load $NAME
|
||||
|
||||
config_get_bool enabled general enabled 0
|
||||
if [ $enabled -eq 0 ]; then
|
||||
$LOGGER service not enabled in /etc/config/$NAME
|
||||
exit 1
|
||||
fi
|
||||
|
||||
for dir in "$fs_dir_cache" "$fs_dir_db" "$fs_dir_localstate" \
|
||||
"$fs_dir_log" "$fs_dir_recordings" "$fs_dir_run" "$fs_dir_storage" \
|
||||
"$fs_dir_temp"
|
||||
config_get user general user $NAME
|
||||
config_get group general group $NAME
|
||||
|
||||
config_get_bool log_stderr general log_stderr 1
|
||||
config_get_bool log_stdout general log_stdout 1
|
||||
|
||||
config_get dir_cache directories cache /tmp/$NAME/cache
|
||||
config_get dir_db directories db /tmp/$NAME/db
|
||||
config_get dir_log directories log /tmp/$NAME/log
|
||||
config_get dir_recordings directories recordings /tmp/$NAME/recordings
|
||||
config_get dir_storage directories storage /tmp/$NAME/storage
|
||||
config_get dir_temp directories temp /tmp/$NAME/temp
|
||||
|
||||
for dir in "$dir_cache" "$dir_db" "$dir_localstate" \
|
||||
"$dir_log" "$dir_recordings" "$dir_run" "$dir_storage" \
|
||||
"$dir_temp"
|
||||
do
|
||||
[ -n "$dir" ] && {
|
||||
[ ! -e "$dir" ] && {
|
||||
mkdir -p "$dir"
|
||||
chown "$fs_user":"$fs_group" "$dir"
|
||||
chown "$user":"$group" "$dir"
|
||||
chmod 750 "$dir"
|
||||
}
|
||||
done
|
||||
|
||||
#[ -d "$fs_dir_etc" ] && {
|
||||
# find "$fs_dir_etc" -type f -exec chown root:"$fs_group" {} \;
|
||||
# find "$fs_dir_etc" -type f -exec chmod 640 {} \;
|
||||
#}
|
||||
config_get options general options
|
||||
|
||||
procd_open_instance
|
||||
# starting with full path seems cleaner judging by 'ps' output
|
||||
procd_set_param command $PROG
|
||||
procd_set_param command $COMMAND
|
||||
# need to specify all or none of -conf, -log, and -db
|
||||
procd_append_param command \
|
||||
-cache "$fs_dir_cache" \
|
||||
-conf "$fs_dir_etc" \
|
||||
-db "$fs_dir_db" \
|
||||
-g "$fs_group" \
|
||||
-log "$fs_dir_log" \
|
||||
-recordings "$fs_dir_recordings" \
|
||||
-run "$fs_dir_run" \
|
||||
-storage "$fs_dir_storage" \
|
||||
-temp "$fs_dir_temp" \
|
||||
-u "$fs_user" \
|
||||
$OPTIONS \
|
||||
-nc \
|
||||
-nf
|
||||
-cache "$dir_cache" \
|
||||
-conf "$dir_etc" \
|
||||
-db "$dir_db" \
|
||||
-g "$group" \
|
||||
-log "$dir_log" \
|
||||
-recordings "$dir_recordings" \
|
||||
-run "$dir_run" \
|
||||
-storage "$dir_storage" \
|
||||
-temp "$dir_temp" \
|
||||
-u "$user" \
|
||||
$options \
|
||||
-c
|
||||
# forward stderr to logd
|
||||
procd_set_param stderr 1
|
||||
procd_set_param stderr $log_stderr
|
||||
# same for stdout
|
||||
procd_set_param stdout $log_stdout
|
||||
procd_close_instance
|
||||
}
|
||||
|
||||
stop_service() {
|
||||
local retval=
|
||||
local mypid=
|
||||
local timeout=$TIMEOUT
|
||||
|
||||
pgrep $FS &> /dev/null
|
||||
[ $? -ne 0 ] && exit 0
|
||||
|
||||
[ -f "$fs_dir_run"/${FS}.pid ]
|
||||
retval=$?
|
||||
|
||||
# init script could find itself in a scenario where FS was started
|
||||
# very recently, so make it wait a while for a pid file to appear
|
||||
while [ $retval -ne 0 -a $timeout -gt 0 ]; do
|
||||
sleep 1
|
||||
[ -f "$fs_dir_run"/${FS}.pid ]
|
||||
retval=$?
|
||||
timeout=$(($timeout-1))
|
||||
done
|
||||
|
||||
[ $retval -eq 0 ] || {
|
||||
$LOGGER PID file does not exist
|
||||
exit 1
|
||||
}
|
||||
|
||||
mypid=$(cat "$fs_dir_run"/${FS}.pid)
|
||||
|
||||
[ "$mypid" -gt 1 ] 2> /dev/null || {
|
||||
$LOGGER PID file contains garbage
|
||||
exit 1
|
||||
}
|
||||
|
||||
timeout=$TIMEOUT
|
||||
kill $mypid 2>/dev/null
|
||||
pgrep $FS | grep -w $mypid &>/dev/null
|
||||
retval=$?
|
||||
|
||||
while [ $retval -eq 0 -a $timeout -gt 0 ]; do
|
||||
sleep 10
|
||||
pgrep $FS | grep -w $mypid &>/dev/null
|
||||
retval=$?
|
||||
[ $retval -eq 0 ] && kill $mypid 2>/dev/null
|
||||
timeout=$(($timeout-10))
|
||||
done
|
||||
|
||||
[ $retval -ne 1 ] && {
|
||||
$LOGGER Application seems to hang
|
||||
$LOGGER Sending SIGKILL
|
||||
kill -SIGKILL $mypid 2>/dev/null
|
||||
sleep 3
|
||||
pgrep $FS | grep -w $mypid &>/dev/null
|
||||
retval=$?
|
||||
}
|
||||
|
||||
[ $retval -ne 1 ] && {
|
||||
$LOGGER Failed to stop $FS
|
||||
exit 1
|
||||
}
|
||||
}
|
||||
|
|
27
net/freeswitch-stable/patches/020-fix-fs_cli-typo.patch
Normal file
27
net/freeswitch-stable/patches/020-fix-fs_cli-typo.patch
Normal file
|
@ -0,0 +1,27 @@
|
|||
commit f76230b16ed6e28847a00e1fa4edd46d19a52251
|
||||
Author: Sebastian Kemper <sebastian_ml@gmx.net>
|
||||
Date: Thu Aug 2 23:38:43 2018 +0200
|
||||
|
||||
FS-11309: [fs_cli] fix typo
|
||||
|
||||
Commit bc3e1c9e7de1855eec454bba467fd2586e5e251b introduced a typo that
|
||||
results in EL_REFRESH never being used, even if available. This can
|
||||
cause the screen to garble.
|
||||
|
||||
This fixes the typo.
|
||||
|
||||
Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
|
||||
|
||||
diff --git a/libs/esl/fs_cli.c b/libs/esl/fs_cli.c
|
||||
index b4a5838175..d52422dd4c 100644
|
||||
--- a/libs/esl/fs_cli.c
|
||||
+++ b/libs/esl/fs_cli.c
|
||||
@@ -674,7 +674,7 @@ static void redisplay(void)
|
||||
esl_mutex_lock(MUTEX);
|
||||
{
|
||||
#ifdef HAVE_LIBEDIT
|
||||
-#ifdef XHAVE_DECL_EL_REFRESH
|
||||
+#ifdef HAVE_DECL_EL_REFRESH
|
||||
#ifdef HAVE_EL_WSET
|
||||
/* Current libedit versions don't implement EL_REFRESH in eln.c so
|
||||
* use the wide version instead. */
|
|
@ -31,7 +31,7 @@
|
|||
else
|
||||
CC_FOR_BUILD='$(CC)'
|
||||
fi
|
||||
@@ -667,7 +643,7 @@ AC_ARG_ENABLE(core-pgsql-pkgconfig,
|
||||
@@ -662,7 +638,7 @@ AC_ARG_ENABLE(core-pgsql-pkgconfig,
|
||||
[AS_HELP_STRING([--disable-core-pgsql-pkgconfig], [Use pg_config to get PGQSL build options])],[enable_core_pgsql_pkgconfig="$enableval"],[enable_core_pgsql_pkgconfig="yes"])
|
||||
|
||||
if test x"$enable_core_pgsql_support" = x"yes" ; then
|
||||
|
@ -40,7 +40,7 @@
|
|||
AC_PATH_PROG([PKG_CONFIG], [pkg-config], [no])
|
||||
if test "$PKG_CONFIG" = "no" \
|
||||
|| test x"$enable_core_pgsql_pkgconfig" = x"no" \
|
||||
@@ -1555,13 +1531,7 @@ AC_CHECK_PROG(PERL,perl,[ac_cv_have_perl
|
||||
@@ -1609,13 +1585,7 @@ AC_CHECK_PROG(PERL,perl,[ac_cv_have_perl
|
||||
# -a "x$ac_cv_have_EXTERN_h" != "xno"
|
||||
|
||||
if test "x$ac_cv_have_perl" != "xno"; then
|
||||
|
@ -55,7 +55,7 @@
|
|||
|
||||
save_CFLAGS="$CFLAGS"
|
||||
CFLAGS="$PERL_CFLAGS"
|
||||
@@ -1656,24 +1626,12 @@ then
|
||||
@@ -1710,24 +1680,12 @@ then
|
||||
if test "$python_has_distutils" != "no" ; then
|
||||
AC_MSG_CHECKING([location of site-packages])
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1941,7 +1941,12 @@ AC_SUBST(OUR_DISABLED_INSTALL_MODS)
|
||||
@@ -1995,7 +1995,12 @@ AC_SUBST(OUR_DISABLED_INSTALL_MODS)
|
||||
AC_SUBST(OUR_DISABLED_UNINSTALL_MODS)
|
||||
AC_SUBST(AM_MAKEFLAGS)
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -549,8 +549,13 @@ libs/libedit/src/.libs/libedit.a:
|
||||
@@ -572,8 +572,13 @@ libs/libedit/src/.libs/libedit.a:
|
||||
libs/libzrtp/libzrtp.a:
|
||||
cd libs/libzrtp && $(MAKE)
|
||||
|
||||
|
@ -8,10 +8,10 @@
|
|||
+# - added CROSS and set target to generic-gnu for cross-compile
|
||||
+# - added CPPFLAGS to CFLAGS, otherwise they would be ignored
|
||||
+# - disabled optimizations that would override OpenWrt's CFLAGS
|
||||
+# - added a size limit like Debian does to address CVE-2017-0641
|
||||
+
|
||||
libs/libvpx/Makefile:
|
||||
- cd libs/libvpx && CC="$(CC)" CXX="$(CXX)" CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" LDFLAGS="$(LDFLAGS)" ./configure --enable-pic --disable-docs --disable-examples --disable-install-bins --disable-install-srcs --disable-unit-tests --extra-cflags="$(VISIBILITY_FLAG)"
|
||||
+ cd libs/libvpx && CROSS="$(CROSS)" CC="$(CC)" CXX="$(CXX)" CFLAGS="$(CFLAGS) $(CPPFLAGS)" CXXFLAGS="$(CXXFLAGS)" LDFLAGS="$(LDFLAGS)" ./configure --target=generic-gnu --enable-pic --disable-docs --disable-examples --disable-install-bins --disable-install-srcs --disable-unit-tests --extra-cflags="$(VISIBILITY_FLAG)" --disable-optimizations --size-limit=16384x16384
|
||||
- cd libs/libvpx && CC="$(CC)" CXX="$(CXX)" CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" LDFLAGS="$(LDFLAGS)" ./configure --enable-pic --disable-docs --disable-examples --disable-install-bins --disable-install-srcs --disable-unit-tests --size-limit=16384x16384 --extra-cflags="$(VISIBILITY_FLAG)"
|
||||
+ cd libs/libvpx && CROSS="$(CROSS)" CC="$(CC)" CXX="$(CXX)" CFLAGS="$(CFLAGS) $(CPPFLAGS)" CXXFLAGS="$(CXXFLAGS)" LDFLAGS="$(LDFLAGS)" ./configure --target=generic-gnu --enable-pic --disable-docs --disable-examples --disable-install-bins --disable-install-srcs --disable-unit-tests --size-limit=16384x16384 --extra-cflags="$(VISIBILITY_FLAG)" --disable-optimizations
|
||||
|
||||
libs/libvpx/libvpx.a: libs/libvpx/Makefile
|
||||
@cd libs/libvpx && $(MAKE)
|
||||
|
|
|
@ -1,87 +0,0 @@
|
|||
--- a/src/mod/languages/mod_v8/Makefile.am
|
||||
+++ b/src/mod/languages/mod_v8/Makefile.am
|
||||
@@ -15,12 +15,17 @@ V8_LIBEXT=dylib
|
||||
V8_BUILDPARAMS=snapshot=off i18nsupport=off
|
||||
V8_SNAPSHOT=nosnapshot
|
||||
else
|
||||
-V8_LIBDIR=$(V8_BUILDDIR)/out/native/lib.target
|
||||
+V8_LIBDIR=$(V8_BUILDDIR)/out/$(FS_STABLE_MYARCH).release/lib.target
|
||||
V8_LIBEXT=so
|
||||
# Some gcc versions report warnings incorrectly
|
||||
V8_BUILDPARAMS=strictaliasing=off werror=no i18nsupport=off
|
||||
+if DISABLE_SNAPSHOT_V8
|
||||
+V8_BUILDPARAMS+=snapshot=off
|
||||
+V8_SNAPSHOT=nosnapshot
|
||||
+else
|
||||
V8_SNAPSHOT=snapshot
|
||||
endif
|
||||
+endif
|
||||
|
||||
if ENABLE_STATIC_V8
|
||||
# Build the static lib version of V8
|
||||
@@ -29,8 +34,8 @@ V8_STATIC_DIR=$(V8_BUILDDIR)/out/native
|
||||
V8_ICU_STATIC_DIR=$(V8_BUILDDIR)/out/native
|
||||
V8_CXXFLAGS =
|
||||
else
|
||||
-V8_STATIC_DIR=$(V8_BUILDDIR)/out/native/obj.target/tools/gyp
|
||||
-V8_ICU_STATIC_DIR=$(V8_BUILDDIR)/out/native/obj.target/third_party/icu
|
||||
+V8_STATIC_DIR=$(V8_BUILDDIR)/out/$(FS_STABLE_MYARCH).release/obj.target/tools/gyp
|
||||
+V8_ICU_STATIC_DIR=$(V8_BUILDDIR)/out/$(FS_STABLE_MYARCH).release/obj.target/third_party/icu
|
||||
V8_CXXFLAGS = -fPIC
|
||||
endif
|
||||
V8LIB=$(V8_STATIC_DIR)/libv8_base*.a
|
||||
@@ -46,11 +51,6 @@ else
|
||||
V8_EXTRA_BUILD_PARAMS=--no-parallel
|
||||
endif
|
||||
|
||||
-# Try to find the target platform for our configured CXX compiler
|
||||
-# Parse the result one extra time to handle different i386 platforms (i386, i486 etc)
|
||||
-CXX_TARGET_PLATFORM := $(shell $(CXX) -v 2>&1 | grep Target | cut '-d:' -f2 | cut '-d-' -f1 | tr -d ' ')
|
||||
-CXX_TARGET_PLATFORM_I386 := $(shell echo "$(CXX_TARGET_PLATFORM)" | sed 's/^\(.\{1\}\)\(.\{1\}\)/\13/')
|
||||
-
|
||||
MODNAME=mod_v8
|
||||
|
||||
AM_CFLAGS += -I. -I./include -I$(switch_srcdir)/src/mod/languages/mod_v8/include -I$(V8_DIR)/include
|
||||
@@ -121,21 +121,13 @@ $(V8_DIR)/.stamp-patch: $(V8_DIR)
|
||||
|
||||
$(V8LIB): $(V8_DIR) $(V8_DIR)/.stamp-patch
|
||||
mkdir -p $(V8_BUILDDIR)
|
||||
- if test "$(CXX_TARGET_PLATFORM)" = "x86_64"; then \
|
||||
- defines="v8_target_arch=x64 target_arch=x64"; \
|
||||
- else \
|
||||
- if test "$(CXX_TARGET_PLATFORM)" = "arm"; then \
|
||||
- defines="v8_target_arch=arm target_arch=arm"; \
|
||||
- else \
|
||||
- if test "$(CXX_TARGET_PLATFORM_I386)" = "i386"; then \
|
||||
- defines="v8_target_arch=ia32 target_arch=ia32"; \
|
||||
- fi; \
|
||||
- fi; \
|
||||
- fi; \
|
||||
- cd $(V8_BUILDDIR) && CFLAGS="$(V8_CXXFLAGS)" CXXFLAGS="$(V8_CXXFLAGS)" \
|
||||
- LINK=@CXX@ CXX=@CXX@ GYPFLAGS="$(V8_EXTRA_BUILD_PARAMS)" GYP_DEFINES="$$defines" \
|
||||
- OUTDIR=$(V8_BUILDDIR)/out \
|
||||
- PYTHONPATH="$(V8_DIR)/build/gyp/pylib:$(PYTHONPATH)" $(MAKE) -C $(V8_DIR) $(V8_BUILDPARAMS) native
|
||||
+ cd $(V8_BUILDDIR) && sed -i "/'want_separate_host_toolset': 0,/s/0/1/" build/standalone.gypi && \
|
||||
+ $(DEFAULT_VARS) CFLAGS+="$(V8_CXXFLAGS)" CXXFLAGS+="$(V8_CXXFLAGS)" \
|
||||
+ LINK=@CXX@ CXX=@CXX@ GYPFLAGS="$(V8_EXTRA_BUILD_PARAMS)" OUTDIR=./out/ \
|
||||
+ PYTHONPATH="$(V8_DIR)/build/gyp/pylib:$(FS_STABLE_HOST_PYTHONPATH)" $(MAKE) -C $(V8_DIR) \
|
||||
+ CC.host="$(FS_STABLE_HOSTCC)" CFLAGS.host="$(FS_STABLE_HOST_CFLAGS)" CXX.host="$(FS_STABLE_HOSTCXX)" \
|
||||
+ CXXFLAGS.host="$(FS_STABLE_HOST_CFLAGS)" LDFLAGS.host="$(FS_STABLE_HOST_LDFLAGS)" \
|
||||
+ $(V8_BUILDPARAMS) $(FS_STABLE_MYDEFINES) $(FS_STABLE_MYARCH).release
|
||||
|
||||
if ENABLE_STATIC_V8
|
||||
install-exec-local: $(V8LIB)
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1519,6 +1519,11 @@ AC_ARG_ENABLE(parallel-build-v8,
|
||||
[AS_HELP_STRING([--disable-parallel-build-v8], [Disable parallel build of V8])], [enable_parallel_build_v8="$enableval"], [enable_parallel_build_v8="yes"])
|
||||
AM_CONDITIONAL([ENABLE_PARALLEL_BUILD_V8],[test "x$enable_parallel_build_v8" != "xno"])
|
||||
|
||||
+# Option to force heap snapshot generation of Google's V8 to off
|
||||
+AC_ARG_ENABLE(snapshot-v8,
|
||||
+[AS_HELP_STRING([--disable-snapshot-v8], [Disable heap snapshot generation of V8])], [enable_snapshot_v8="$enableval"], [enable_snapshot_v8="yes"])
|
||||
+AM_CONDITIONAL([DISABLE_SNAPSHOT_V8],[test "x$enable_snapshot_v8" != "xyes"])
|
||||
+
|
||||
AM_CONDITIONAL([HAVE_ODBC],[test "x$enable_core_odbc_support" != "xno"])
|
||||
AM_CONDITIONAL([HAVE_MYSQL],[test "$found_mysql" = "yes"])
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
From ae56352cfff570f1b7ac0748aa339bd7bf373794 Mon Sep 17 00:00:00 2001
|
||||
From: Eneas U de Queiroz <cote2004-github@yahoo.com>
|
||||
Date: Sat, 9 Jun 2018 19:02:41 -0300
|
||||
Subject: [PATCH] mod_event_multicast.c: fix memory leak
|
||||
|
||||
Fixed two memory leaks with openssl 1.1.
|
||||
|
||||
Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
|
||||
---
|
||||
src/mod/event_handlers/mod_event_multicast/mod_event_multicast.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/mod/event_handlers/mod_event_multicast/mod_event_multicast.c b/src/mod/event_handlers/mod_event_multicast/mod_event_multicast.c
|
||||
index f591855a3e..fb952ce740 100644
|
||||
--- a/src/mod/event_handlers/mod_event_multicast/mod_event_multicast.c
|
||||
+++ b/src/mod/event_handlers/mod_event_multicast/mod_event_multicast.c
|
||||
@@ -324,7 +324,7 @@ static void event_handler(switch_event_t *event)
|
||||
&tmplen, (unsigned char *) MAGIC, (int) strlen((char *) MAGIC));
|
||||
outlen += tmplen;
|
||||
EVP_EncryptFinal(ctx, (unsigned char *) buf + SWITCH_UUID_FORMATTED_LENGTH + outlen, &tmplen);
|
||||
- EVP_CIPHER_CTX_cleanup(ctx);
|
||||
+ EVP_CIPHER_CTX_free(ctx);
|
||||
#else
|
||||
EVP_CIPHER_CTX_init(&ctx);
|
||||
EVP_EncryptInit(&ctx, EVP_bf_cbc(), NULL, NULL);
|
||||
@@ -570,7 +570,7 @@ SWITCH_MODULE_RUNTIME_FUNCTION(mod_event_multicast_runtime)
|
||||
EVP_DecryptInit(ctx, NULL, (unsigned char *) globals.psk, (unsigned char *) uuid_str);
|
||||
EVP_DecryptUpdate(ctx, (unsigned char *) tmp, &outl, (unsigned char *) packet, (int) len);
|
||||
EVP_DecryptFinal(ctx, (unsigned char *) tmp + outl, &tmplen);
|
||||
- EVP_CIPHER_CTX_cleanup(ctx);
|
||||
+ EVP_CIPHER_CTX_free(ctx);
|
||||
#else
|
||||
EVP_CIPHER_CTX_init(&ctx);
|
||||
EVP_DecryptInit(&ctx, EVP_bf_cbc(), NULL, NULL);
|
||||
--
|
||||
2.16.4
|
||||
|
|
@ -1,87 +0,0 @@
|
|||
commit 34c48368dcfef09ba4a694256aa9615d91252461
|
||||
Author: Mike Jerris <mike@jerris.com>
|
||||
Date: Tue Mar 14 17:39:05 2017 -0500
|
||||
|
||||
FS-10074: [libtiff] stop using embedded libtiff. Build now requires system libtiff
|
||||
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -125,7 +125,6 @@ CORE_CFLAGS += -DSWITCH_HAVE_YUV
|
||||
endif
|
||||
CORE_CFLAGS += -I$(switch_srcdir)/libs/srtp/crypto/include -Ilibs/srtp/crypto/include
|
||||
CORE_CFLAGS += -I$(switch_builddir)/libs/spandsp/src -I$(switch_srcdir)/libs/spandsp/src
|
||||
-CORE_CFLAGS += -I$(switch_builddir)/libs/tiff-4.0.2/libtiff -I$(switch_srcdir)/libs/tiff-4.0.2/libtiff
|
||||
if ENABLE_LIBVPX
|
||||
CORE_CFLAGS += -DSWITCH_HAVE_VPX
|
||||
endif
|
||||
@@ -736,11 +735,6 @@ sndfile-reconf:
|
||||
cd libs/libsndfile && ./config.status --recheck
|
||||
cd libs/libsndfile && ./config.status
|
||||
|
||||
-tiff-reconf:
|
||||
- cd libs/tiff-4.0.2 && autoreconf -fi
|
||||
- cd libs/tiff-4.0.2 && sh ./configure.gnu $(MY_DEFAULT_ARGS)
|
||||
- cd libs/tiff-4.0.2 && make
|
||||
-
|
||||
python-reconf:
|
||||
rm -f src/mod/languages/mod_python/Makefile
|
||||
./config.status
|
||||
@@ -762,7 +756,7 @@ iks-reconf:
|
||||
cd libs/iksemel && sh ./configure.gnu $(MY_DEFAULT_ARGS)
|
||||
$(MAKE) mod_dingaling-clean
|
||||
|
||||
-spandsp-reconf: tiff-reconf
|
||||
+spandsp-reconf:
|
||||
cd libs/spandsp && $(MAKE) clean || echo
|
||||
cd libs/spandsp && autoreconf -fi
|
||||
cd libs/spandsp && sh ./configure.gnu $(MY_DEFAULT_ARGS)
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1969,7 +1969,6 @@ AC_CONFIG_SUBDIRS([libs/libdingaling])
|
||||
AC_CONFIG_SUBDIRS([libs/sofia-sip])
|
||||
AC_CONFIG_SUBDIRS([libs/freetdm])
|
||||
AC_CONFIG_SUBDIRS([libs/unimrcp])
|
||||
-AC_CONFIG_SUBDIRS([libs/tiff-4.0.2])
|
||||
AC_CONFIG_SUBDIRS([libs/spandsp])
|
||||
if test "x${enable_zrtp}" = "xyes"; then
|
||||
AC_CONFIG_SUBDIRS([libs/libzrtp])
|
||||
--- a/libs/spandsp/configure.gnu
|
||||
+++ b/libs/spandsp/configure.gnu
|
||||
@@ -1,4 +1,4 @@
|
||||
#! /bin/sh
|
||||
srcpath=$(dirname $0 2>/dev/null ) || srcpath="."
|
||||
-$srcpath/configure "$@" --disable-shared --with-pic --enable-builtin-tiff
|
||||
+$srcpath/configure "$@" --disable-shared --with-pic
|
||||
|
||||
--- a/src/mod/applications/mod_spandsp/Makefile.am
|
||||
+++ b/src/mod/applications/mod_spandsp/Makefile.am
|
||||
@@ -1,24 +1,17 @@
|
||||
include $(top_srcdir)/build/modmake.rulesam
|
||||
MODNAME=mod_spandsp
|
||||
|
||||
-TIFF_DIR=$(switch_srcdir)/libs/tiff-4.0.2
|
||||
-TIFF_BUILDDIR=$(switch_builddir)/libs/tiff-4.0.2
|
||||
-TIFF_LA=$(TIFF_BUILDDIR)/libtiff/libtiff.la
|
||||
SPANDSP_DIR=$(switch_srcdir)/libs/spandsp
|
||||
SPANDSP_BUILDDIR=$(switch_builddir)/libs/spandsp
|
||||
SPANDSP_LA=$(SPANDSP_BUILDDIR)/src/libspandsp.la
|
||||
|
||||
mod_LTLIBRARIES = mod_spandsp.la
|
||||
mod_spandsp_la_SOURCES = mod_spandsp.c udptl.c mod_spandsp_fax.c mod_spandsp_dsp.c mod_spandsp_codecs.c mod_spandsp_modem.c
|
||||
-mod_spandsp_la_CFLAGS = $(AM_CFLAGS)
|
||||
-mod_spandsp_la_CPPFLAGS = -I$(SPANDSP_DIR)/src -I$(TIFF_DIR)/libtiff -I$(TIFF_BUILDDIR)/libtiff -I$(SPANDSP_BUILDDIR)/src -I$(TIFF_BUILDDIR)/libtiff -I.
|
||||
-mod_spandsp_la_LIBADD = $(switch_builddir)/libfreeswitch.la $(SPANDSP_LA) $(TIFF_LA) $(SPANDSP_LA_JBIG) $(SPANDSP_LA_LZMA) -ljpeg -lz
|
||||
+mod_spandsp_la_CFLAGS = $(AM_CFLAGS)
|
||||
+mod_spandsp_la_CPPFLAGS = -I$(SPANDSP_DIR)/src -I$(SPANDSP_BUILDDIR)/src -I.
|
||||
+mod_spandsp_la_LIBADD = $(switch_builddir)/libfreeswitch.la $(SPANDSP_LA) $(SPANDSP_LA_JBIG) $(SPANDSP_LA_LZMA) -ljpeg -lz -ltiff
|
||||
mod_spandsp_la_LDFLAGS = -avoid-version -module -no-undefined -shared
|
||||
|
||||
-$(SPANDSP_LA): $(TIFF_LA) $(SPANDSP_DIR) $(SPANDSP_DIR)/.update
|
||||
- cd $(SPANDSP_BUILDDIR) && $(MAKE) CPPFLAGS="$(CPPFLAGS) -I$(TIFF_BUILDDIR)/libtiff -I$(TIFF_DIR)/libtiff" CFLAGS="$(CFLAGS)"
|
||||
- $(TOUCH_TARGET)
|
||||
-
|
||||
-$(TIFF_LA): $(TIFF_DIR) $(TIFF_DIR)/.update
|
||||
- cd $(TIFF_BUILDDIR) && $(MAKE)
|
||||
+$(SPANDSP_LA): $(SPANDSP_DIR) $(SPANDSP_DIR)/.update
|
||||
+ cd $(SPANDSP_BUILDDIR) && $(MAKE) CPPFLAGS="$(CPPFLAGS)" CFLAGS="$(CFLAGS)"
|
||||
$(TOUCH_TARGET)
|
|
@ -1,34 +0,0 @@
|
|||
commit f51ab63c2628e3ff21bd8a301dbacbc23766554a
|
||||
Author: Mike Jerris <mike@jerris.com>
|
||||
Date: Wed Mar 15 09:57:03 2017 -0500
|
||||
|
||||
FS-10074: [libtiff] stop using embedded libtiff. Build now requires system libtiff
|
||||
|
||||
--- a/debian/bootstrap.sh
|
||||
+++ b/debian/bootstrap.sh
|
||||
@@ -310,6 +310,7 @@ Build-Depends:
|
||||
libpcre3-dev,
|
||||
libedit-dev (>= 2.11),
|
||||
libsqlite3-dev,
|
||||
+ libtiff5-dev,
|
||||
wget, pkg-config,
|
||||
yasm,
|
||||
# core codecs
|
||||
--- a/freeswitch.spec
|
||||
+++ b/freeswitch.spec
|
||||
@@ -150,6 +150,7 @@ BuildRequires: openssl-devel >= 1.0.1e
|
||||
BuildRequires: pcre-devel
|
||||
BuildRequires: speex-devel
|
||||
BuildRequires: sqlite-devel
|
||||
+BuildRequires: libtiff-devel
|
||||
BuildRequires: ldns-devel
|
||||
BuildRequires: libedit-devel
|
||||
BuildRequires: perl
|
||||
@@ -208,6 +209,7 @@ Requires: ncurses
|
||||
Requires: pcre
|
||||
Requires: speex
|
||||
Requires: sqlite
|
||||
+Requires: libtiff
|
||||
Requires: libedit
|
||||
Requires: openssl >= 1.0.1e
|
||||
Requires: unixODBC
|
|
@ -1,41 +0,0 @@
|
|||
commit 920d10afe725566a33c1c570d99ad2dc99625712
|
||||
Author: Mike Jerris <mike@jerris.com>
|
||||
Date: Wed Mar 15 15:00:15 2017 -0500
|
||||
|
||||
FS-10074: [libtiff] stop using embedded libtiff. Build now requires system libtiff
|
||||
|
||||
--- a/src/mod/endpoints/mod_skypopen/Makefile.am
|
||||
+++ b/src/mod/endpoints/mod_skypopen/Makefile.am
|
||||
@@ -1,10 +1,6 @@
|
||||
include $(top_srcdir)/build/modmake.rulesam
|
||||
MODNAME=mod_skypopen
|
||||
|
||||
-TIFF_DIR=$(switch_srcdir)/libs/tiff-4.0.2
|
||||
-TIFF_BUILDDIR=$(switch_builddir)/libs/tiff-4.0.2
|
||||
-TIFF_LA=$(TIFF_BUILDDIR)/libtiff/libtiff.la
|
||||
-
|
||||
SPANDSP_DIR=$(switch_srcdir)/libs/spandsp
|
||||
SPANDSP_BUILDDIR=$(switch_builddir)/libs/spandsp
|
||||
SPANDSP_LA=$(SPANDSP_BUILDDIR)/src/libspandsp.la
|
||||
@@ -12,16 +8,12 @@ SPANDSP_LA=$(SPANDSP_BUILDDIR)/src/libsp
|
||||
mod_LTLIBRARIES = mod_skypopen.la
|
||||
mod_skypopen_la_SOURCES = mod_skypopen.c skypopen_protocol.c
|
||||
mod_skypopen_la_CFLAGS = $(AM_CFLAGS)
|
||||
-mod_skypopen_la_CPPFLAGS = -I$(SPANDSP_DIR)/src -I$(TIFF_DIR)/libtiff -I$(SPANDSP_BUILDDIR)/src -I$(TIFF_BUILDDIR)/libtiff -I.
|
||||
-mod_skypopen_la_LIBADD = $(switch_builddir)/libfreeswitch.la $(SPANDSP_LA) $(TIFF_LA)
|
||||
+mod_skypopen_la_CPPFLAGS = -I$(SPANDSP_DIR)/src -I$(SPANDSP_BUILDDIR)/src -I.
|
||||
+mod_skypopen_la_LIBADD = $(switch_builddir)/libfreeswitch.la $(SPANDSP_LA)
|
||||
mod_skypopen_la_LDFLAGS = -avoid-version -module -no-undefined -shared -lX11
|
||||
|
||||
-BUILT_SOURCES = $(TIFF_LA) $(SPANDSP_LA)
|
||||
-
|
||||
-$(SPANDSP_LA): $(TIFF_LA) $(SPANDSP_DIR) $(SPANDSP_DIR)/.update
|
||||
- cd $(SPANDSP_BUILDDIR) && $(MAKE) CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS) -I$(TIFF_BUILDDIR)/libtiff -I$(TIFF_DIR)/libtiff"
|
||||
- $(TOUCH_TARGET)
|
||||
+BUILT_SOURCES = $(SPANDSP_LA)
|
||||
|
||||
-$(TIFF_LA): $(TIFF_DIR) $(TIFF_DIR)/.update
|
||||
- cd $(TIFF_BUILDDIR) && $(MAKE)
|
||||
+$(SPANDSP_LA): $(SPANDSP_DIR) $(SPANDSP_DIR)/.update
|
||||
+ cd $(SPANDSP_BUILDDIR) && $(MAKE) CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)"
|
||||
$(TOUCH_TARGET)
|
|
@ -1,41 +0,0 @@
|
|||
commit 4a7c459e37d77b05f258001ccae99935fb660caf
|
||||
Author: Mike Jerris <mike@jerris.com>
|
||||
Date: Wed Mar 15 15:02:04 2017 -0500
|
||||
|
||||
FS-10074: [libtiff] stop using embedded libtiff. Build now requires system libtiff
|
||||
|
||||
--- a/src/mod/endpoints/mod_gsmopen/Makefile.am
|
||||
+++ b/src/mod/endpoints/mod_gsmopen/Makefile.am
|
||||
@@ -1,10 +1,6 @@
|
||||
include $(top_srcdir)/build/modmake.rulesam
|
||||
MODNAME=mod_gsmopen
|
||||
|
||||
-TIFF_DIR=$(switch_srcdir)/libs/tiff-4.0.2
|
||||
-TIFF_BUILDDIR=$(switch_builddir)/libs/tiff-4.0.2
|
||||
-TIFF_LA=$(TIFF_BUILDDIR)/libtiff/libtiff.la
|
||||
-
|
||||
SPANDSP_DIR=$(switch_srcdir)/libs/spandsp
|
||||
SPANDSP_BUILDDIR=$(switch_builddir)/libs/spandsp
|
||||
SPANDSP_LA=$(SPANDSP_BUILDDIR)/src/libspandsp.la
|
||||
@@ -12,16 +8,12 @@ SPANDSP_LA=$(SPANDSP_BUILDDIR)/src/libsp
|
||||
mod_LTLIBRARIES = mod_gsmopen.la
|
||||
mod_gsmopen_la_SOURCES = mod_gsmopen.cpp gsmopen_protocol.cpp
|
||||
mod_gsmopen_la_CXXFLAGS = $(SWITCH_AM_CXXFLAGS)
|
||||
-mod_gsmopen_la_CPPFLAGS = -I$(SPANDSP_DIR)/src -I$(TIFF_DIR)/libtiff -I$(SPANDSP_BUILDDIR)/src -I$(TIFF_BUILDDIR)/libtiff -I.
|
||||
-mod_gsmopen_la_LIBADD = $(switch_builddir)/libfreeswitch.la $(SPANDSP_LA) $(TIFF_LA)
|
||||
+mod_gsmopen_la_CPPFLAGS = -I$(SPANDSP_DIR)/src -I$(SPANDSP_BUILDDIR)/src -I.
|
||||
+mod_gsmopen_la_LIBADD = $(switch_builddir)/libfreeswitch.la $(SPANDSP_LA)
|
||||
mod_gsmopen_la_LDFLAGS = -avoid-version -module -no-undefined -lctb-0.16 -lgsmme
|
||||
|
||||
-BUILT_SOURCES = $(TIFF_LA) $(SPANDSP_LA)
|
||||
-
|
||||
-$(SPANDSP_LA): $(TIFF_LA) $(SPANDSP_DIR) $(SPANDSP_DIR)/.update
|
||||
- cd $(SPANDSP_BUILDDIR) && $(MAKE) CPPFLAGS="$(CPPFLAGS) -I$(TIFF_BUILDDIR)/libtiff -I$(TIFF_DIR)/libtiff" CFLAGS="$(CFLAGS)"
|
||||
- $(TOUCH_TARGET)
|
||||
+BUILT_SOURCES = $(SPANDSP_LA)
|
||||
|
||||
-$(TIFF_LA): $(TIFF_DIR) $(TIFF_DIR)/.update
|
||||
- cd $(TIFF_BUILDDIR) && $(MAKE)
|
||||
+$(SPANDSP_LA): $(SPANDSP_DIR) $(SPANDSP_DIR)/.update
|
||||
+ cd $(SPANDSP_BUILDDIR) && $(MAKE) CPPFLAGS="$(CPPFLAGS)" CFLAGS="$(CFLAGS)"
|
||||
$(TOUCH_TARGET)
|
|
@ -1,92 +0,0 @@
|
|||
commit 7a4c76119114b82d26dab5d5adfe5a2429e32434
|
||||
Author: Mike Jerris <mike@jerris.com>
|
||||
Date: Thu Mar 16 11:29:08 2017 -0500
|
||||
|
||||
FS-10074: [libtiff] remove more libtiff references
|
||||
|
||||
--- a/debian/copyright
|
||||
+++ b/debian/copyright
|
||||
@@ -1700,27 +1700,6 @@ Copyright: 2007 <robs@users.sourceforge.
|
||||
2007-2009 Erik de Castro Lopo <erikd@mega-nerd.com>
|
||||
License: LGPL-2+
|
||||
|
||||
-Files: libs/tiff-4.0.2/*
|
||||
-Copyright: 1988-1997 Sam Leffler
|
||||
- 1991-1997 Silicon Graphics, Inc.
|
||||
- 2006-2010 Richard Nolde
|
||||
- 1999-2000 Frank Warmerdam
|
||||
- 1990 by Digital Equipment Corporation, Maynard, Massachusetts.
|
||||
- 1990 by Sun Microsystems, Inc.
|
||||
- Joris Van Damme <info@awaresystems.be>
|
||||
- AWare Systems <http://www.awaresystems.be/>
|
||||
-License: MIT/X11 (BSD like)
|
||||
-
|
||||
-Files: libs/tiff-4.0.2/port/getopt.c
|
||||
- libs/tiff-4.0.2/port/strcasecmp.c
|
||||
- libs/tiff-4.0.2/port/lfind.c
|
||||
-Copyright: 1987, 1993, 1994, The Regents of the University of California.
|
||||
-License: BSD-3-clause
|
||||
-
|
||||
-Files: libs/tiff-4.0.2/port/strtoull.c
|
||||
-Copyright: 1992, 1993, The Regents of the University of California.
|
||||
-License: BSD-4-clause
|
||||
-
|
||||
Files: src/switch_dso.c
|
||||
Copyright: 2008 Michael Jerris
|
||||
License: BSD-like
|
||||
--- a/debian/license-reconcile.yml
|
||||
+++ b/debian/license-reconcile.yml
|
||||
@@ -186,21 +186,6 @@ Rules:
|
||||
Copyright: 1999-2009 Erik de Castro Lopo <erikd@mega-nerd.com>
|
||||
Justification: prevent false-psitive copyright detection
|
||||
-
|
||||
- Glob: libs/tiff-4.0.2/libtiff/tif_tile.c
|
||||
- Matches: Copyright\s(c)\s1991-1997\sSam\sLeffler
|
||||
- Matches: copyright\snotices\sand\sthis\spermission\snotice\sappear\sin
|
||||
- Copyright: 1991-1997 Sam Leffler
|
||||
- -
|
||||
- Glob: libs/tiff-4.0.2/*
|
||||
- Matches: Additions\s\(c\)\sRichard\sNolde\s2006-2010
|
||||
- Matches: copyright\snotices\sand\sthis\spermission\snotice\sappear\sin
|
||||
- Copyright: 2006-2010 Richard Nolde
|
||||
- -
|
||||
- Glob: libs/tiff-4.0.2/libtiff/tiffvers.h
|
||||
- Matches: 1988-1996\sSam\sLeffler..Copyright\s\(c\)\s1991-1996\sSilicon\sGraphics,\sInc.
|
||||
- Copyright: 1991-1996 Sam Leffler
|
||||
- Copyright: 1991-1996 Silicon Graphics, Inc
|
||||
- -
|
||||
Glob: src/mod/endpoints/mod_khomp/*
|
||||
Matches: The\scontents\sof\sthis\sfile\sare\ssubject\sto\sthe\sMozilla\sPublic\sLicense\sVersion\s1.1
|
||||
Matches: Alternatively,\sthe\scontents\sof\sthis\sfile\smay\sbe\sused\sunder\sthe\sterms\sof\sthe
|
||||
--- a/docs/Doxygen.conf
|
||||
+++ b/docs/Doxygen.conf
|
||||
@@ -1240,15 +1240,9 @@ SEARCH_INCLUDES = YES
|
||||
# contain include files that are not input files but should be processed by
|
||||
# the preprocessor.
|
||||
|
||||
-INCLUDE_PATH =../libs/apr ../libs/apr-util \
|
||||
- ../libs/iksemel ../libs/ilbc ../libs/js \
|
||||
- ../libs/libg722_1 ../libs/libnatpmp \
|
||||
- ../libs/libsndfile ../libs/miniupnpc \
|
||||
- ../libs/portaudio ../libs/sofia-sip ../libs/spandsp \
|
||||
- ../libs/srtp \
|
||||
- ../libs/tiff-4.0.2 ../libs/udns \
|
||||
- ../libs/unimrcp ../libs/voipcodecs ../libs/win32 \
|
||||
- ../libs/xmlrpc-c
|
||||
+INCLUDE_PATH =../libs/apr ../libs/apr-util ../libs/iksemel ../libs/libnatpmp \
|
||||
+ ../libs/miniupnpc ../libs/sofia-sip ../libs/spandsp \
|
||||
+ ../libs/srtp ../libs/unimrcp ../libs/win32 ../libs/xmlrpc-c
|
||||
|
||||
# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
|
||||
# patterns (like *.h and *.hpp) to filter out the header-files in the
|
||||
--- a/rebootstrap.sh
|
||||
+++ b/rebootstrap.sh
|
||||
@@ -8,7 +8,7 @@ BGJOB=false
|
||||
VERBOSE=false
|
||||
BASEDIR=`pwd`;
|
||||
LIBDIR=${BASEDIR}/libs;
|
||||
-SUBDIRS="apr libzrtp iksemel libdingaling sofia-sip srtp freetdm spandsp unimrcp tiff-4.0.2 fs";
|
||||
+SUBDIRS="apr libzrtp iksemel libdingaling sofia-sip srtp freetdm spandsp unimrcp fs";
|
||||
|
||||
while getopts 'jhd:v' o; do
|
||||
case "$o" in
|
|
@ -1,45 +0,0 @@
|
|||
Subject: Fix OOB caused by odd frame width, CVE-2017-13194
|
||||
Origin: https://android.googlesource.com/platform/external/libvpx/+/55cd1dd7c8d0a3de907d22e0f12718733f4e41d
|
||||
|
||||
diff --git a/libs/libvpx/libvpx/vpx/src/vpx_image.c b/libs/libvpx/libvpx/vpx/src/vpx_image.c
|
||||
index dba439c..af7c529 100644
|
||||
--- a/libs/libvpx/vpx/src/vpx_image.c
|
||||
+++ b/libs/libvpx/vpx/src/vpx_image.c
|
||||
@@ -88,11 +88,10 @@
|
||||
default: ycs = 0; break;
|
||||
}
|
||||
|
||||
- /* Calculate storage sizes given the chroma subsampling */
|
||||
- align = (1 << xcs) - 1;
|
||||
- w = (d_w + align) & ~align;
|
||||
- align = (1 << ycs) - 1;
|
||||
- h = (d_h + align) & ~align;
|
||||
+ /* Calculate storage sizes. If the buffer was allocated externally, the width
|
||||
+ * and height shouldn't be adjusted. */
|
||||
+ w = d_w;
|
||||
+ h = d_h;
|
||||
s = (fmt & VPX_IMG_FMT_PLANAR) ? w : bps * w / 8;
|
||||
s = (s + stride_align - 1) & ~(stride_align - 1);
|
||||
stride_in_bytes = (fmt & VPX_IMG_FMT_HIGHBITDEPTH) ? s * 2 : s;
|
||||
@@ -111,9 +110,18 @@
|
||||
img->img_data = img_data;
|
||||
|
||||
if (!img_data) {
|
||||
- const uint64_t alloc_size = (fmt & VPX_IMG_FMT_PLANAR)
|
||||
- ? (uint64_t)h * s * bps / 8
|
||||
- : (uint64_t)h * s;
|
||||
+ uint64_t alloc_size;
|
||||
+ /* Calculate storage sizes given the chroma subsampling */
|
||||
+ align = (1 << xcs) - 1;
|
||||
+ w = (d_w + align) & ~align;
|
||||
+ align = (1 << ycs) - 1;
|
||||
+ h = (d_h + align) & ~align;
|
||||
+
|
||||
+ s = (fmt & VPX_IMG_FMT_PLANAR) ? w : bps * w / 8;
|
||||
+ s = (s + stride_align - 1) & ~(stride_align - 1);
|
||||
+ stride_in_bytes = (fmt & VPX_IMG_FMT_HIGHBITDEPTH) ? s * 2 : s;
|
||||
+ alloc_size = (fmt & VPX_IMG_FMT_PLANAR) ? (uint64_t)h * s * bps / 8
|
||||
+ : (uint64_t)h * s;
|
||||
|
||||
if (alloc_size != (size_t)alloc_size) goto fail;
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
--- a/src/switch_regex.c
|
||||
+++ b/src/switch_regex.c
|
||||
@@ -37,7 +37,7 @@ SWITCH_DECLARE(switch_regex_t *) switch_
|
||||
int options, const char **errorptr, int *erroroffset, const unsigned char *tables)
|
||||
{
|
||||
|
||||
- return pcre_compile(pattern, options, errorptr, erroroffset, tables);
|
||||
+ return (switch_regex_t *)pcre_compile(pattern, options, errorptr, erroroffset, tables);
|
||||
|
||||
}
|
||||
|
19
net/freeswitch-stable/patches/370-procd-compat.patch
Normal file
19
net/freeswitch-stable/patches/370-procd-compat.patch
Normal file
|
@ -0,0 +1,19 @@
|
|||
--- a/src/switch_console.c
|
||||
+++ b/src/switch_console.c
|
||||
@@ -1053,10 +1053,12 @@ static void *SWITCH_THREAD_FUNC console_
|
||||
while (running) {
|
||||
int32_t arg = 0;
|
||||
|
||||
- if (getppid() == 1) {
|
||||
- switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "We've become an orphan, no more console for us.\n");
|
||||
- break;
|
||||
- }
|
||||
+ // Parent PID is 1 when started by procd - so FS is not an orphan.
|
||||
+ // Plus we still want the output.
|
||||
+ //if (getppid() == 1) {
|
||||
+ // switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "We've become an orphan, no more console for us.\n");
|
||||
+ // break;
|
||||
+ //}
|
||||
|
||||
switch_core_session_ctl(SCSC_CHECK_RUNNING, &arg);
|
||||
if (!arg) {
|
Loading…
Reference in a new issue