You can subscribe to this list here.
| 2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(6) |
Jul
(14) |
Aug
(156) |
Sep
(35) |
Oct
(48) |
Nov
(55) |
Dec
(16) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2007 |
Jan
(24) |
Feb
(154) |
Mar
(139) |
Apr
(175) |
May
(87) |
Jun
(34) |
Jul
(42) |
Aug
(68) |
Sep
(41) |
Oct
(76) |
Nov
(77) |
Dec
(50) |
| 2008 |
Jan
(98) |
Feb
(43) |
Mar
(102) |
Apr
(27) |
May
(55) |
Jun
(13) |
Jul
(58) |
Aug
(62) |
Sep
(61) |
Oct
(43) |
Nov
(87) |
Dec
(134) |
| 2009 |
Jan
(175) |
Feb
(106) |
Mar
(58) |
Apr
(41) |
May
(74) |
Jun
(123) |
Jul
(252) |
Aug
(192) |
Sep
(69) |
Oct
(38) |
Nov
(117) |
Dec
(95) |
| 2010 |
Jan
(146) |
Feb
(76) |
Mar
(90) |
Apr
(60) |
May
(23) |
Jun
(19) |
Jul
(208) |
Aug
(140) |
Sep
(103) |
Oct
(114) |
Nov
(50) |
Dec
(47) |
| 2011 |
Jan
(59) |
Feb
(47) |
Mar
(61) |
Apr
(58) |
May
(41) |
Jun
(11) |
Jul
(17) |
Aug
(49) |
Sep
(34) |
Oct
(166) |
Nov
(38) |
Dec
(70) |
| 2012 |
Jan
(87) |
Feb
(37) |
Mar
(28) |
Apr
(25) |
May
(29) |
Jun
(30) |
Jul
(43) |
Aug
(27) |
Sep
(46) |
Oct
(27) |
Nov
(51) |
Dec
(70) |
| 2013 |
Jan
(92) |
Feb
(34) |
Mar
(58) |
Apr
(37) |
May
(46) |
Jun
(9) |
Jul
(38) |
Aug
(22) |
Sep
(28) |
Oct
(42) |
Nov
(44) |
Dec
(34) |
| 2014 |
Jan
(63) |
Feb
(39) |
Mar
(48) |
Apr
(31) |
May
(21) |
Jun
(43) |
Jul
(36) |
Aug
(69) |
Sep
(53) |
Oct
(56) |
Nov
(46) |
Dec
(49) |
| 2015 |
Jan
(63) |
Feb
(35) |
Mar
(30) |
Apr
(38) |
May
(27) |
Jun
(42) |
Jul
(42) |
Aug
(63) |
Sep
(18) |
Oct
(45) |
Nov
(65) |
Dec
(71) |
| 2016 |
Jan
(54) |
Feb
(79) |
Mar
(59) |
Apr
(38) |
May
(32) |
Jun
(46) |
Jul
(42) |
Aug
(30) |
Sep
(58) |
Oct
(33) |
Nov
(98) |
Dec
(59) |
| 2017 |
Jan
(79) |
Feb
(12) |
Mar
(43) |
Apr
(32) |
May
(76) |
Jun
(59) |
Jul
(44) |
Aug
(14) |
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <abe...@us...> - 2016-11-11 16:08:40
|
Revision: 7945
http://sourceforge.net/p/astlinux/code/7945
Author: abelbeck
Date: 2016-11-11 16:08:37 +0000 (Fri, 11 Nov 2016)
Log Message:
-----------
web interface, Status tab, updated 'Show Licenses' information.
Modified Paths:
--------------
branches/1.0/package/webinterface/altweb/common/license-packages.txt
branches/1.0/package/webinterface/altweb/common/version.php
Modified: branches/1.0/package/webinterface/altweb/common/license-packages.txt
===================================================================
--- branches/1.0/package/webinterface/altweb/common/license-packages.txt 2016-11-11 14:50:16 UTC (rev 7944)
+++ branches/1.0/package/webinterface/altweb/common/license-packages.txt 2016-11-11 16:08:37 UTC (rev 7945)
@@ -47,13 +47,13 @@
darkstat~Copyright (c) 2001-2015 Emil Mikulic, et al.
NUT~Copyright (c) 1999-2016 Russell Kroll, Arnaud Quette, et al.
iftop~Copyright (c) 2002-2014 Paul Warren, Chris Lightfoot, et al.
-dnscrypt-proxy~Copyright (c) 2011-2016 Frank Denis
-libsodium~Copyright (c) 2013-2016 Frank Denis
+dnscrypt-proxy~Copyright (c) 2011-2016 Frank Denis.
+libsodium~Copyright (c) 2013-2016 Frank Denis.
phoneprov-tools~Copyright (c) 2015-2016 Lonnie Abelbeck and Michael Keuter.
smartmontools~Copyright (c) 2002-2016 Bruce Allen, Christian Franke, et al.
-Monit~Copyright (c) 2001-2016 Tildeslash. All rights reserved
-sqlite~Copyright (c) 1995-2016 SQLite Consortium
-sqliteodbc~Copyright (c) 2001-2016 Christian Werner
+Monit~Copyright (c) 2001-2016 Tildeslash. All rights reserved.
+sqlite~Copyright (c) 1995-2016 SQLite Consortium.
+sqliteodbc~Copyright (c) 2001-2016 Christian Werner.
Fossil~Copyright (c) 2007-2016 D. Richard Hipp. All rights reserved.
BusyBox~Copyright (c) 1998-2011 Erik Andersen, Rob Landley, Denys Vlasenko, et al.
dhcp6c~Copyright (c) 1998-2008 WIDE Project with 2016 Debian patches.
@@ -62,3 +62,4 @@
unbound~Copyright (c) 2007-2016 NLnet Labs. All rights reserved.
avahi~Copyright (c) 2004-2016 Lennart Poettering, Trent Lloyd, Avahi developers.
Linux Kernel~Copyright (c) 1997-2016 The Linux Kernel Organization, Inc.; Linux is a Registered Trademark of Linus Torvalds.
+whois~Copyright (c) 1999-2016 Marco d'Itri.
Modified: branches/1.0/package/webinterface/altweb/common/version.php
===================================================================
--- branches/1.0/package/webinterface/altweb/common/version.php 2016-11-11 14:50:16 UTC (rev 7944)
+++ branches/1.0/package/webinterface/altweb/common/version.php 2016-11-11 16:08:37 UTC (rev 7945)
@@ -1,6 +1,6 @@
<?php
// version.php for AstLinux Alternate Web Interface
-$GUI_VERSION = '1.8.38';
+$GUI_VERSION = '1.8.39';
?>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-11 14:50:18
|
Revision: 7944
http://sourceforge.net/p/astlinux/code/7944
Author: abelbeck
Date: 2016-11-11 14:50:16 +0000 (Fri, 11 Nov 2016)
Log Message:
-----------
update ChangeLog
Modified Paths:
--------------
branches/1.0/docs/ChangeLog.txt
Modified: branches/1.0/docs/ChangeLog.txt
===================================================================
--- branches/1.0/docs/ChangeLog.txt 2016-11-11 14:48:21 UTC (rev 7943)
+++ branches/1.0/docs/ChangeLog.txt 2016-11-11 14:50:16 UTC (rev 7944)
@@ -57,7 +57,7 @@
** Asterisk
--- Asterisk 11.24.1 (version bump) and 13.12.1 (version bump)
+-- Asterisk 11.24.1 (version bump) and 13.12.2 (version bump)
-- DAHDI, dahdi-linux 2.8.0.1 (no change) and dahdi-tools 2.8.0 (no change)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-11 14:48:23
|
Revision: 7943
http://sourceforge.net/p/astlinux/code/7943
Author: abelbeck
Date: 2016-11-11 14:48:21 +0000 (Fri, 11 Nov 2016)
Log Message:
-----------
asterisk, version bump to 13.12.2
Modified Paths:
--------------
branches/1.0/package/asterisk/asterisk-13-extension-changed-verbosity-chan_sip.patch
branches/1.0/package/asterisk/asterisk.mk
Removed Paths:
-------------
branches/1.0/package/asterisk/asterisk-13-upstream-chan_sip-revert-lastrtprx-fix.patch
Modified: branches/1.0/package/asterisk/asterisk-13-extension-changed-verbosity-chan_sip.patch
===================================================================
--- branches/1.0/package/asterisk/asterisk-13-extension-changed-verbosity-chan_sip.patch 2016-11-11 14:02:14 UTC (rev 7942)
+++ branches/1.0/package/asterisk/asterisk-13-extension-changed-verbosity-chan_sip.patch 2016-11-11 14:48:21 UTC (rev 7943)
@@ -1,6 +1,6 @@
--- asterisk-13/channels/chan_sip.c.orig 2015-04-23 10:22:04.000000000 -0500
+++ asterisk-13/channels/chan_sip.c 2015-04-23 10:22:40.000000000 -0500
-@@ -17358,7 +17358,7 @@
+@@ -17356,7 +17356,7 @@
}
if (!force) {
Deleted: branches/1.0/package/asterisk/asterisk-13-upstream-chan_sip-revert-lastrtprx-fix.patch
===================================================================
--- branches/1.0/package/asterisk/asterisk-13-upstream-chan_sip-revert-lastrtprx-fix.patch 2016-11-11 14:02:14 UTC (rev 7942)
+++ branches/1.0/package/asterisk/asterisk-13-upstream-chan_sip-revert-lastrtprx-fix.patch 2016-11-11 14:48:21 UTC (rev 7943)
@@ -1,17 +0,0 @@
-X-Git-Url: http://git.asterisk.org/gitweb/?p=asterisk%2Fasterisk.git;a=blobdiff_plain;f=channels%2Fchan_sip.c;h=b661f0de227ff5023155faf7181892b28699a519;hp=b6b4cc86e50c7eb36d26abb0620f0f5c3fbb09e0;hb=cb30963d222cb1e12af9bbf8dfed58001c9fcaf4;hpb=57a9797e0ac51eae3b8f3254627646b9698a60d2
-
-diff --git a/channels/chan_sip.c b/channels/chan_sip.c
-index b6b4cc8..b661f0d 100644
---- a/channels/chan_sip.c
-+++ b/channels/chan_sip.c
-@@ -8628,9 +8628,7 @@ static struct ast_frame *sip_read(struct ast_channel *ast)
-
- sip_pvt_lock(p);
- fr = sip_rtp_read(ast, p, &faxdetected);
-- if (fr && fr->frametype != AST_FRAME_NULL) {
-- p->lastrtprx = time(NULL);
-- }
-+ p->lastrtprx = time(NULL);
-
- /* If we detect a CNG tone and fax detection is enabled then send us off to the fax extension */
- if (faxdetected && ast_test_flag(&p->flags[1], SIP_PAGE2_FAX_DETECT_CNG)) {
Modified: branches/1.0/package/asterisk/asterisk.mk
===================================================================
--- branches/1.0/package/asterisk/asterisk.mk 2016-11-11 14:02:14 UTC (rev 7942)
+++ branches/1.0/package/asterisk/asterisk.mk 2016-11-11 14:48:21 UTC (rev 7943)
@@ -7,7 +7,7 @@
ASTERISK_VERSION := 11.24.1
else
ifeq ($(BR2_PACKAGE_ASTERISK_v13),y)
-ASTERISK_VERSION := 13.12.1
+ASTERISK_VERSION := 13.12.2
else
ASTERISK_VERSION := 15.0.0
endif
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-11 14:02:16
|
Revision: 7942
http://sourceforge.net/p/astlinux/code/7942
Author: abelbeck
Date: 2016-11-11 14:02:14 +0000 (Fri, 11 Nov 2016)
Log Message:
-----------
asterisk, the Asterisk-GUI is no longer supported, remove hack, related r7067
Revision Links:
--------------
http://sourceforge.net/p/astlinux/code/7067
Modified Paths:
--------------
branches/1.0/package/asterisk/asterisk.init
Modified: branches/1.0/package/asterisk/asterisk.init
===================================================================
--- branches/1.0/package/asterisk/asterisk.init 2016-11-08 14:01:45 UTC (rev 7941)
+++ branches/1.0/package/asterisk/asterisk.init 2016-11-11 14:02:14 UTC (rev 7942)
@@ -31,11 +31,6 @@
mkdir -p /var/tmp/asterisk/agi-bin
- # Asterisk-GUI tmp directory
- if [ -L /stat/var/lib/asterisk/static-http/config/tmp ]; then
- mkdir -p -m 0700 /var/tmp/asterisk-gui
- fi
-
if [ ! -d /var/log/asterisk ]; then
mkdir /var/log/asterisk
fi
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-08 14:01:46
|
Revision: 7941
http://sourceforge.net/p/astlinux/code/7941
Author: abelbeck
Date: 2016-11-08 14:01:45 +0000 (Tue, 08 Nov 2016)
Log Message:
-----------
whois, whois.denic.de was set to US-ASCII if no idn/iconv is used, which fails, use UTF-8 instead of US-ASCII
Added Paths:
-----------
branches/1.0/package/whois/whois-DENIC_PARAM_CHARSET-UTF-8.patch
Added: branches/1.0/package/whois/whois-DENIC_PARAM_CHARSET-UTF-8.patch
===================================================================
--- branches/1.0/package/whois/whois-DENIC_PARAM_CHARSET-UTF-8.patch (rev 0)
+++ branches/1.0/package/whois/whois-DENIC_PARAM_CHARSET-UTF-8.patch 2016-11-08 14:01:45 UTC (rev 7941)
@@ -0,0 +1,11 @@
+--- whois-5.2.13/whois.c.orig 2016-11-08 07:17:26.381230844 -0600
++++ whois-5.2.13/whois.c 2016-11-08 07:46:05.563327605 -0600
+@@ -661,7 +661,7 @@
+ #ifdef HAVE_ICONV
+ # define DENIC_PARAM_CHARSET ""
+ #else
+-# define DENIC_PARAM_CHARSET " -C US-ASCII"
++# define DENIC_PARAM_CHARSET " -C UTF-8"
+ #endif
+
+ /* add useful default flags if there are no flags or multiple arguments */
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-08 02:19:40
|
Revision: 7940
http://sourceforge.net/p/astlinux/code/7940
Author: abelbeck
Date: 2016-11-08 02:19:38 +0000 (Tue, 08 Nov 2016)
Log Message:
-----------
runnix, missed a mirror.astlinux.org to mirror.astlinux-project.org edit
Modified Paths:
--------------
branches/1.0/boot/runnix/runnix.mk
Modified: branches/1.0/boot/runnix/runnix.mk
===================================================================
--- branches/1.0/boot/runnix/runnix.mk 2016-11-07 17:54:29 UTC (rev 7939)
+++ branches/1.0/boot/runnix/runnix.mk 2016-11-08 02:19:38 UTC (rev 7940)
@@ -5,7 +5,7 @@
#############################################################
RUNNIX_VER:=0.4-7671
RUNNIX_SOURCE:=runnix-$(RUNNIX_VER).tar.gz
-RUNNIX_SITE:=http://mirror.astlinux.org/runnix4
+RUNNIX_SITE:=http://mirror.astlinux-project.org/runnix4
RUNNIX_DIR:=$(BUILD_DIR)/runnix-$(RUNNIX_VER)
RUNNIX_CAT:=zcat
RUNFS_DIR:=$(BUILD_DIR)/runfs
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-07 17:54:31
|
Revision: 7939
http://sourceforge.net/p/astlinux/code/7939
Author: abelbeck
Date: 2016-11-07 17:54:29 +0000 (Mon, 07 Nov 2016)
Log Message:
-----------
update ChangeLog
Modified Paths:
--------------
branches/1.0/docs/ChangeLog.txt
Modified: branches/1.0/docs/ChangeLog.txt
===================================================================
--- branches/1.0/docs/ChangeLog.txt 2016-11-07 17:49:50 UTC (rev 7938)
+++ branches/1.0/docs/ChangeLog.txt 2016-11-07 17:54:29 UTC (rev 7939)
@@ -19,10 +19,14 @@
-- sqlite, version bump to 3.15.1
+-- libxml2, security fixes: CVE-2016-5131, CVE-2016-4658
+
-- libusb, version bump to 1.0.21
-- nano, version bump to 2.7.1
+-- reload-blocklist-netset (optional CRON script), add 'firehol_webclient' blocklist support.
+
-- ca-certificates, update trusted root certificates 2016-11-02
-- Time Zone Database update, tzdata2016i and php-timezonedb-2016.9
@@ -44,6 +48,8 @@
-- tcpdump, version bump to 4.8.1
+-- stunnel, version bump to 5.37
+
-- iproute2 (ip, tc, bridge, etc.) version bump to version 3.16.0, now including the 'bridge' utility.
No longer use 'brctl' for managing bridge interfaces, instead use iproute2 tools.
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-07 17:49:52
|
Revision: 7938
http://sourceforge.net/p/astlinux/code/7938
Author: abelbeck
Date: 2016-11-07 17:49:50 +0000 (Mon, 07 Nov 2016)
Log Message:
-----------
reload-blocklist-netset, add 'firehol_webclient' blocklist support
Modified Paths:
--------------
branches/1.0/package/arnofw/reload-blocklist-netset
Modified: branches/1.0/package/arnofw/reload-blocklist-netset
===================================================================
--- branches/1.0/package/arnofw/reload-blocklist-netset 2016-11-07 17:22:42 UTC (rev 7937)
+++ branches/1.0/package/arnofw/reload-blocklist-netset 2016-11-07 17:49:50 UTC (rev 7938)
@@ -31,6 +31,7 @@
firehol_level1: Blacklist composed from IP lists, providing maximum protection with minimum false positives.
firehol_level2: Blacklist that track attacks, during about the last 48 hours.
firehol_level3: Blacklist that track attacks, spyware, viruses, reported or detected in the last 30 days.
+ firehol_webclient: Blacklist made from blocklists that a web client should never talk to. Use with firehol_level1.
voipbl: VoIP Blacklist - sponsored by ScopServ International - http://www.voipbl.org/
spamhaus_drop: Spamhaus DROP (Don't Route Or Peer), consisting of netblocks that are "hijacked" by cyber-crime operations.
spamhaus_edrop: Spamhaus EDROP is an extension of the DROP list that includes suballocated netblocks.
@@ -62,6 +63,11 @@
ALT_URL=""
AGE=3600
;;
+ firehol_webclient)
+ URL="https://raw.githubusercontent.com/firehol/blocklist-ipsets/master/firehol_webclient.netset"
+ ALT_URL=""
+ AGE=3600
+ ;;
voipbl)
URL="http://www.voipbl.org/update/"
ALT_URL="https://raw.githubusercontent.com/firehol/blocklist-ipsets/master/voipbl.netset"
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-07 17:22:45
|
Revision: 7937
http://sourceforge.net/p/astlinux/code/7937
Author: abelbeck
Date: 2016-11-07 17:22:42 +0000 (Mon, 07 Nov 2016)
Log Message:
-----------
More upstream Buildroot fakeroot fixes, Bail out on errors in fakeroot script
Ref: https://git.buildroot.net/buildroot/commit/fs/common.mk?id=4ef7ec585c904f3c68af391e220534981ded2bab
Ref: https://git.buildroot.net/buildroot/commit/fs/common.mk?id=6b577b3c3adf7de2582985160ab2906c8dabf22c
Ref: https://git.buildroot.net/buildroot/commit/fs/common.mk?id=974e83a8f9a1c9054b0d702d63b85557388d4b7d
Modified Paths:
--------------
branches/1.0/fs/common.mk
branches/1.0/fs/iso9660/iso9660.mk
Modified: branches/1.0/fs/common.mk
===================================================================
--- branches/1.0/fs/common.mk 2016-11-07 16:42:21 UTC (rev 7936)
+++ branches/1.0/fs/common.mk 2016-11-07 17:22:42 UTC (rev 7937)
@@ -46,8 +46,8 @@
$(foreach hook,$(ROOTFS_$(2)_PRE_GEN_HOOKS),$(call $(hook))$(sep))
rm -f $$@
rm -f $(FAKEROOT_SCRIPT)
- touch $(BUILD_DIR)/.fakeroot.00000
- cat $(BUILD_DIR)/.fakeroot* > $(FAKEROOT_SCRIPT)
+ echo '#!/bin/sh' > $$(FAKEROOT_SCRIPT)
+ echo 'set -e' >> $$(FAKEROOT_SCRIPT)
echo "chown -R 0:0 $(TARGET_DIR)" >> $(FAKEROOT_SCRIPT)
ifneq ($(ROOTFS_DEVICE_TABLES),)
cat $(ROOTFS_DEVICE_TABLES) > $(FULL_DEVICE_TABLE)
Modified: branches/1.0/fs/iso9660/iso9660.mk
===================================================================
--- branches/1.0/fs/iso9660/iso9660.mk 2016-11-07 16:42:21 UTC (rev 7936)
+++ branches/1.0/fs/iso9660/iso9660.mk 2016-11-07 17:22:42 UTC (rev 7937)
@@ -25,8 +25,8 @@
cp $(BINARIES_DIR)/rootfs.ext2 $(ISO9660_TARGET_DIR)/initrd
# Use fakeroot to pretend all target binaries are owned by root
rm -f $(FAKEROOT_SCRIPT)
- touch $(BUILD_DIR)/.fakeroot.00000
- cat $(BUILD_DIR)/.fakeroot* > $(FAKEROOT_SCRIPT)
+ echo '#!/bin/sh' > $$(FAKEROOT_SCRIPT)
+ echo 'set -e' >> $$(FAKEROOT_SCRIPT)
echo "chown -R 0:0 $(ISO9660_TARGET_DIR)" >> $(FAKEROOT_SCRIPT)
# Use fakeroot so mkisofs believes the previous fakery
echo "$(HOST_DIR)/usr/bin/genisoimage -R -b boot/grub/stage2_eltorito -no-emul-boot " \
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-07 16:42:23
|
Revision: 7936
http://sourceforge.net/p/astlinux/code/7936
Author: abelbeck
Date: 2016-11-07 16:42:21 +0000 (Mon, 07 Nov 2016)
Log Message:
-----------
stunnel, version bump to 5.37
Modified Paths:
--------------
branches/1.0/package/stunnel/stunnel.mk
Modified: branches/1.0/package/stunnel/stunnel.mk
===================================================================
--- branches/1.0/package/stunnel/stunnel.mk 2016-11-06 22:45:27 UTC (rev 7935)
+++ branches/1.0/package/stunnel/stunnel.mk 2016-11-07 16:42:21 UTC (rev 7936)
@@ -4,7 +4,7 @@
#
#############################################################
-STUNNEL_VERSION = 5.36
+STUNNEL_VERSION = 5.37
STUNNEL_SITE = http://www.usenix.org.uk/mirrors/stunnel/archive/5.x
STUNNEL_DEPENDENCIES = openssl
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-06 22:45:29
|
Revision: 7935
http://sourceforge.net/p/astlinux/code/7935
Author: abelbeck
Date: 2016-11-06 22:45:27 +0000 (Sun, 06 Nov 2016)
Log Message:
-----------
build system, host-makedevs, implement upstream Buildroot fixes, one 'mknod' call added since we are using fakeroot
Ref: https://git.buildroot.net/buildroot/commit/package/makedevs?id=ab1b6f7df4355244dfc54b877889ff7a3cde02a0
Ref: https://git.buildroot.net/buildroot/commit/package/makedevs?id=c85cd189dc1ded92b78c5968860ff447ec9815ad
Modified Paths:
--------------
branches/1.0/package/makedevs/makedevs.c
Modified: branches/1.0/package/makedevs/makedevs.c
===================================================================
--- branches/1.0/package/makedevs/makedevs.c 2016-11-06 18:13:41 UTC (rev 7934)
+++ branches/1.0/package/makedevs/makedevs.c 2016-11-06 22:45:27 UTC (rev 7935)
@@ -500,6 +500,9 @@
} else
{
dev_t rdev;
+ unsigned i;
+ char *full_name_inc;
+ struct stat st;
if (type == 'p') {
mode |= S_IFIFO;
@@ -515,43 +518,38 @@
goto loop;
}
- if (count > 0) {
- int i;
- char *full_name_inc;
-
- full_name_inc = xmalloc(strlen(full_name) + 8);
- for (i = 0; i < count; i++) {
- sprintf(full_name_inc, "%s%d", full_name, start + i);
- rdev = makedev(major, minor + i * increment);
- if (mknod(full_name_inc, mode, rdev) == -1) {
- bb_perror_msg("line %d: Couldnt create node %s", linenum, full_name_inc);
+ full_name_inc = xmalloc(strlen(full_name) + sizeof(int)*3 + 2);
+ if (count)
+ count--;
+ for (i = start; i <= start + count; i++) {
+ sprintf(full_name_inc, count ? "%s%u" : "%s", full_name, i);
+ rdev = makedev(major, minor + (i - start) * increment);
+ mknod(full_name_inc, mode, rdev); /* mknod required if using fakeroot */
+ if (stat(full_name_inc, &st) == 0) {
+ if ((mode & S_IFMT) != (st.st_mode & S_IFMT)) {
+ bb_error_msg("line %d: node %s exists but is of wrong file type", linenum, full_name_inc);
ret = EXIT_FAILURE;
+ continue;
}
- else if (chown(full_name_inc, uid, gid) == -1) {
- bb_perror_msg("line %d: chown failed for %s", linenum, full_name_inc);
+ if (st.st_rdev != rdev) {
+ bb_error_msg("line %d: node %s exists but is wrong device number", linenum, full_name_inc);
ret = EXIT_FAILURE;
+ continue;
}
- if ((mode != -1) && (chmod(full_name_inc, mode) < 0)){
- bb_perror_msg("line %d: chmod failed for %s", linenum, full_name_inc);
- ret = EXIT_FAILURE;
- }
- }
- free(full_name_inc);
- } else {
- rdev = makedev(major, minor);
- if (mknod(full_name, mode, rdev) == -1) {
- bb_perror_msg("line %d: Couldnt create node %s", linenum, full_name);
+ } else if (mknod(full_name_inc, mode, rdev) < 0) {
+ bb_perror_msg("line %d: can't create node %s", linenum, full_name_inc);
ret = EXIT_FAILURE;
+ continue;
}
- else if (chown(full_name, uid, gid) == -1) {
- bb_perror_msg("line %d: chown failed for %s", linenum, full_name);
+ if (chown(full_name_inc, uid, gid) < 0) {
+ bb_perror_msg("line %d: can't chown %s", linenum, full_name_inc);
ret = EXIT_FAILURE;
- }
- if ((mode != -1) && (chmod(full_name, mode) < 0)){
- bb_perror_msg("line %d: chmod failed for %s", linenum, full_name);
+ } else if (chmod(full_name_inc, mode) < 0) {
+ bb_perror_msg("line %d: can't chmod %s", linenum, full_name_inc);
ret = EXIT_FAILURE;
}
}
+ free(full_name_inc);
}
loop:
free(line);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-06 18:13:44
|
Revision: 7934
http://sourceforge.net/p/astlinux/code/7934
Author: abelbeck
Date: 2016-11-06 18:13:41 +0000 (Sun, 06 Nov 2016)
Log Message:
-----------
revert r7933
Revision Links:
--------------
http://sourceforge.net/p/astlinux/code/7933
Modified Paths:
--------------
branches/1.0/package/makedevs/makedevs.c
Modified: branches/1.0/package/makedevs/makedevs.c
===================================================================
--- branches/1.0/package/makedevs/makedevs.c 2016-11-06 14:13:15 UTC (rev 7933)
+++ branches/1.0/package/makedevs/makedevs.c 2016-11-06 18:13:41 UTC (rev 7934)
@@ -500,8 +500,6 @@
} else
{
dev_t rdev;
- unsigned i;
- char *full_name_inc;
if (type == 'p') {
mode |= S_IFIFO;
@@ -517,24 +515,43 @@
goto loop;
}
- full_name_inc = xmalloc(strlen(full_name) + sizeof(int)*3 + 2);
- if (count)
- count--;
- for (i = start; i <= start + count; i++) {
- sprintf(full_name_inc, count ? "%s%u" : "%s", full_name, i);
- rdev = makedev(major, minor + (i - start) * increment);
- if (mknod(full_name_inc, mode, rdev) < 0) {
- bb_perror_msg("line %d: can't create node %s", linenum, full_name_inc);
+ if (count > 0) {
+ int i;
+ char *full_name_inc;
+
+ full_name_inc = xmalloc(strlen(full_name) + 8);
+ for (i = 0; i < count; i++) {
+ sprintf(full_name_inc, "%s%d", full_name, start + i);
+ rdev = makedev(major, minor + i * increment);
+ if (mknod(full_name_inc, mode, rdev) == -1) {
+ bb_perror_msg("line %d: Couldnt create node %s", linenum, full_name_inc);
+ ret = EXIT_FAILURE;
+ }
+ else if (chown(full_name_inc, uid, gid) == -1) {
+ bb_perror_msg("line %d: chown failed for %s", linenum, full_name_inc);
+ ret = EXIT_FAILURE;
+ }
+ if ((mode != -1) && (chmod(full_name_inc, mode) < 0)){
+ bb_perror_msg("line %d: chmod failed for %s", linenum, full_name_inc);
+ ret = EXIT_FAILURE;
+ }
+ }
+ free(full_name_inc);
+ } else {
+ rdev = makedev(major, minor);
+ if (mknod(full_name, mode, rdev) == -1) {
+ bb_perror_msg("line %d: Couldnt create node %s", linenum, full_name);
ret = EXIT_FAILURE;
- } else if (chown(full_name_inc, uid, gid) < 0) {
- bb_perror_msg("line %d: can't chown %s", linenum, full_name_inc);
+ }
+ else if (chown(full_name, uid, gid) == -1) {
+ bb_perror_msg("line %d: chown failed for %s", linenum, full_name);
ret = EXIT_FAILURE;
- } else if (chmod(full_name_inc, mode) < 0) {
- bb_perror_msg("line %d: can't chmod %s", linenum, full_name_inc);
+ }
+ if ((mode != -1) && (chmod(full_name, mode) < 0)){
+ bb_perror_msg("line %d: chmod failed for %s", linenum, full_name);
ret = EXIT_FAILURE;
}
}
- free(full_name_inc);
}
loop:
free(line);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-06 14:13:17
|
Revision: 7933
http://sourceforge.net/p/astlinux/code/7933
Author: abelbeck
Date: 2016-11-06 14:13:15 +0000 (Sun, 06 Nov 2016)
Log Message:
-----------
build system, host-makedevs, resync device creation with upstream busybox
Ref: https://git.buildroot.net/buildroot/commit/package/makedevs?id=ab1b6f7df4355244dfc54b877889ff7a3cde02a0
Modified Paths:
--------------
branches/1.0/package/makedevs/makedevs.c
Modified: branches/1.0/package/makedevs/makedevs.c
===================================================================
--- branches/1.0/package/makedevs/makedevs.c 2016-11-06 13:53:32 UTC (rev 7932)
+++ branches/1.0/package/makedevs/makedevs.c 2016-11-06 14:13:15 UTC (rev 7933)
@@ -500,6 +500,8 @@
} else
{
dev_t rdev;
+ unsigned i;
+ char *full_name_inc;
if (type == 'p') {
mode |= S_IFIFO;
@@ -515,43 +517,24 @@
goto loop;
}
- if (count > 0) {
- int i;
- char *full_name_inc;
-
- full_name_inc = xmalloc(strlen(full_name) + 8);
- for (i = 0; i < count; i++) {
- sprintf(full_name_inc, "%s%d", full_name, start + i);
- rdev = makedev(major, minor + i * increment);
- if (mknod(full_name_inc, mode, rdev) == -1) {
- bb_perror_msg("line %d: Couldnt create node %s", linenum, full_name_inc);
- ret = EXIT_FAILURE;
- }
- else if (chown(full_name_inc, uid, gid) == -1) {
- bb_perror_msg("line %d: chown failed for %s", linenum, full_name_inc);
- ret = EXIT_FAILURE;
- }
- if ((mode != -1) && (chmod(full_name_inc, mode) < 0)){
- bb_perror_msg("line %d: chmod failed for %s", linenum, full_name_inc);
- ret = EXIT_FAILURE;
- }
- }
- free(full_name_inc);
- } else {
- rdev = makedev(major, minor);
- if (mknod(full_name, mode, rdev) == -1) {
- bb_perror_msg("line %d: Couldnt create node %s", linenum, full_name);
+ full_name_inc = xmalloc(strlen(full_name) + sizeof(int)*3 + 2);
+ if (count)
+ count--;
+ for (i = start; i <= start + count; i++) {
+ sprintf(full_name_inc, count ? "%s%u" : "%s", full_name, i);
+ rdev = makedev(major, minor + (i - start) * increment);
+ if (mknod(full_name_inc, mode, rdev) < 0) {
+ bb_perror_msg("line %d: can't create node %s", linenum, full_name_inc);
ret = EXIT_FAILURE;
- }
- else if (chown(full_name, uid, gid) == -1) {
- bb_perror_msg("line %d: chown failed for %s", linenum, full_name);
+ } else if (chown(full_name_inc, uid, gid) < 0) {
+ bb_perror_msg("line %d: can't chown %s", linenum, full_name_inc);
ret = EXIT_FAILURE;
- }
- if ((mode != -1) && (chmod(full_name, mode) < 0)){
- bb_perror_msg("line %d: chmod failed for %s", linenum, full_name);
+ } else if (chmod(full_name_inc, mode) < 0) {
+ bb_perror_msg("line %d: can't chmod %s", linenum, full_name_inc);
ret = EXIT_FAILURE;
}
}
+ free(full_name_inc);
}
loop:
free(line);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-06 13:53:33
|
Revision: 7932
http://sourceforge.net/p/astlinux/code/7932
Author: abelbeck
Date: 2016-11-06 13:53:32 +0000 (Sun, 06 Nov 2016)
Log Message:
-----------
libxml2, add upstream security fixes: CVE-2016-5131, CVE-2016-4658
Added Paths:
-----------
branches/1.0/package/libxml2/libxml2-0001-Fix-XPointer-paths-beginning-with-range-to.patch
branches/1.0/package/libxml2/libxml2-0002-Disallow-namespace-nodes-in-XPointer-ranges.patch
Added: branches/1.0/package/libxml2/libxml2-0001-Fix-XPointer-paths-beginning-with-range-to.patch
===================================================================
--- branches/1.0/package/libxml2/libxml2-0001-Fix-XPointer-paths-beginning-with-range-to.patch (rev 0)
+++ branches/1.0/package/libxml2/libxml2-0001-Fix-XPointer-paths-beginning-with-range-to.patch 2016-11-06 13:53:32 UTC (rev 7932)
@@ -0,0 +1,178 @@
+From 9ab01a277d71f54d3143c2cf333c5c2e9aaedd9e Mon Sep 17 00:00:00 2001
+From: Nick Wellnhofer <wel...@ae...>
+Date: Tue, 28 Jun 2016 14:22:23 +0200
+Subject: [PATCH] Fix XPointer paths beginning with range-to
+
+The old code would invoke the broken xmlXPtrRangeToFunction. range-to
+isn't really a function but a special kind of location step. Remove
+this function and always handle range-to in the XPath code.
+
+The old xmlXPtrRangeToFunction could also be abused to trigger a
+use-after-free error with the potential for remote code execution.
+
+Found with afl-fuzz.
+
+Fixes CVE-2016-5131.
+
+Signed-off-by: Baruch Siach <ba...@tk...>
+---
+Patch status: upstream commit 9ab01a277d7
+
+ result/XPath/xptr/vidbase | 13 ++++++++
+ test/XPath/xptr/vidbase | 1 +
+ xpath.c | 7 ++++-
+ xpointer.c | 76 ++++-------------------------------------------
+ 4 files changed, 26 insertions(+), 71 deletions(-)
+
+diff --git a/result/XPath/xptr/vidbase b/result/XPath/xptr/vidbase
+index 8b9e92d66d97..f19193e70edb 100644
+--- a/result/XPath/xptr/vidbase
++++ b/result/XPath/xptr/vidbase
+@@ -17,3 +17,16 @@ Object is a Location Set:
+ To node
+ ELEMENT p
+
++
++========================
++Expression: xpointer(range-to(id('chapter2')))
++Object is a Location Set:
++1 : Object is a range :
++ From node
++ /
++ To node
++ ELEMENT chapter
++ ATTRIBUTE id
++ TEXT
++ content=chapter2
++
+diff --git a/test/XPath/xptr/vidbase b/test/XPath/xptr/vidbase
+index b1463830570a..884b1065d7fd 100644
+--- a/test/XPath/xptr/vidbase
++++ b/test/XPath/xptr/vidbase
+@@ -1,2 +1,3 @@
+ xpointer(id('chapter1')/p)
+ xpointer(id('chapter1')/p[1]/range-to(following-sibling::p[2]))
++xpointer(range-to(id('chapter2')))
+diff --git a/xpath.c b/xpath.c
+index d992841ef0c2..5a01b1b399a2 100644
+--- a/xpath.c
++++ b/xpath.c
+@@ -10691,13 +10691,18 @@ xmlXPathCompPathExpr(xmlXPathParserContextPtr ctxt) {
+ lc = 1;
+ break;
+ } else if ((NXT(len) == '(')) {
+- /* Note Type or Function */
++ /* Node Type or Function */
+ if (xmlXPathIsNodeType(name)) {
+ #ifdef DEBUG_STEP
+ xmlGenericError(xmlGenericErrorContext,
+ "PathExpr: Type search\n");
+ #endif
+ lc = 1;
++#ifdef LIBXML_XPTR_ENABLED
++ } else if (ctxt->xptr &&
++ xmlStrEqual(name, BAD_CAST "range-to")) {
++ lc = 1;
++#endif
+ } else {
+ #ifdef DEBUG_STEP
+ xmlGenericError(xmlGenericErrorContext,
+diff --git a/xpointer.c b/xpointer.c
+index 676c5105837a..d74174a318f1 100644
+--- a/xpointer.c
++++ b/xpointer.c
+@@ -1332,8 +1332,6 @@ xmlXPtrNewContext(xmlDocPtr doc, xmlNodePtr here, xmlNodePtr origin) {
+ ret->here = here;
+ ret->origin = origin;
+
+- xmlXPathRegisterFunc(ret, (xmlChar *)"range-to",
+- xmlXPtrRangeToFunction);
+ xmlXPathRegisterFunc(ret, (xmlChar *)"range",
+ xmlXPtrRangeFunction);
+ xmlXPathRegisterFunc(ret, (xmlChar *)"range-inside",
+@@ -2243,76 +2241,14 @@ xmlXPtrRangeInsideFunction(xmlXPathParserContextPtr ctxt, int nargs) {
+ * @nargs: the number of args
+ *
+ * Implement the range-to() XPointer function
++ *
++ * Obsolete. range-to is not a real function but a special type of location
++ * step which is handled in xpath.c.
+ */
+ void
+-xmlXPtrRangeToFunction(xmlXPathParserContextPtr ctxt, int nargs) {
+- xmlXPathObjectPtr range;
+- const xmlChar *cur;
+- xmlXPathObjectPtr res, obj;
+- xmlXPathObjectPtr tmp;
+- xmlLocationSetPtr newset = NULL;
+- xmlNodeSetPtr oldset;
+- int i;
+-
+- if (ctxt == NULL) return;
+- CHECK_ARITY(1);
+- /*
+- * Save the expression pointer since we will have to evaluate
+- * it multiple times. Initialize the new set.
+- */
+- CHECK_TYPE(XPATH_NODESET);
+- obj = valuePop(ctxt);
+- oldset = obj->nodesetval;
+- ctxt->context->node = NULL;
+-
+- cur = ctxt->cur;
+- newset = xmlXPtrLocationSetCreate(NULL);
+-
+- for (i = 0; i < oldset->nodeNr; i++) {
+- ctxt->cur = cur;
+-
+- /*
+- * Run the evaluation with a node list made of a single item
+- * in the nodeset.
+- */
+- ctxt->context->node = oldset->nodeTab[i];
+- tmp = xmlXPathNewNodeSet(ctxt->context->node);
+- valuePush(ctxt, tmp);
+-
+- xmlXPathEvalExpr(ctxt);
+- CHECK_ERROR;
+-
+- /*
+- * The result of the evaluation need to be tested to
+- * decided whether the filter succeeded or not
+- */
+- res = valuePop(ctxt);
+- range = xmlXPtrNewRangeNodeObject(oldset->nodeTab[i], res);
+- if (range != NULL) {
+- xmlXPtrLocationSetAdd(newset, range);
+- }
+-
+- /*
+- * Cleanup
+- */
+- if (res != NULL)
+- xmlXPathFreeObject(res);
+- if (ctxt->value == tmp) {
+- res = valuePop(ctxt);
+- xmlXPathFreeObject(res);
+- }
+-
+- ctxt->context->node = NULL;
+- }
+-
+- /*
+- * The result is used as the new evaluation set.
+- */
+- xmlXPathFreeObject(obj);
+- ctxt->context->node = NULL;
+- ctxt->context->contextSize = -1;
+- ctxt->context->proximityPosition = -1;
+- valuePush(ctxt, xmlXPtrWrapLocationSet(newset));
++xmlXPtrRangeToFunction(xmlXPathParserContextPtr ctxt,
++ int nargs ATTRIBUTE_UNUSED) {
++ XP_ERROR(XPATH_EXPR_ERROR);
+ }
+
+ /**
+--
+2.10.2
+
Added: branches/1.0/package/libxml2/libxml2-0002-Disallow-namespace-nodes-in-XPointer-ranges.patch
===================================================================
--- branches/1.0/package/libxml2/libxml2-0002-Disallow-namespace-nodes-in-XPointer-ranges.patch (rev 0)
+++ branches/1.0/package/libxml2/libxml2-0002-Disallow-namespace-nodes-in-XPointer-ranges.patch 2016-11-06 13:53:32 UTC (rev 7932)
@@ -0,0 +1,253 @@
+From c1d1f7121194036608bf555f08d3062a36fd344b Mon Sep 17 00:00:00 2001
+From: Nick Wellnhofer <wel...@ae...>
+Date: Tue, 28 Jun 2016 18:34:52 +0200
+Subject: [PATCH] Disallow namespace nodes in XPointer ranges
+
+Namespace nodes must be copied to avoid use-after-free errors.
+But they don't necessarily have a physical representation in a
+document, so simply disallow them in XPointer ranges.
+
+Found with afl-fuzz.
+
+Fixes CVE-2016-4658.
+
+Signed-off-by: Baruch Siach <ba...@tk...>
+---
+Patch status: upstream commit c1d1f712119403
+
+ xpointer.c | 149 +++++++++++++++++++++++--------------------------------------
+ 1 file changed, 56 insertions(+), 93 deletions(-)
+
+diff --git a/xpointer.c b/xpointer.c
+index a7b03fbdae16..694d120e2e0b 100644
+--- a/xpointer.c
++++ b/xpointer.c
+@@ -320,6 +320,45 @@ xmlXPtrRangesEqual(xmlXPathObjectPtr range1, xmlXPathObjectPtr range2) {
+ }
+
+ /**
++ * xmlXPtrNewRangeInternal:
++ * @start: the starting node
++ * @startindex: the start index
++ * @end: the ending point
++ * @endindex: the ending index
++ *
++ * Internal function to create a new xmlXPathObjectPtr of type range
++ *
++ * Returns the newly created object.
++ */
++static xmlXPathObjectPtr
++xmlXPtrNewRangeInternal(xmlNodePtr start, int startindex,
++ xmlNodePtr end, int endindex) {
++ xmlXPathObjectPtr ret;
++
++ /*
++ * Namespace nodes must be copied (see xmlXPathNodeSetDupNs).
++ * Disallow them for now.
++ */
++ if ((start != NULL) && (start->type == XML_NAMESPACE_DECL))
++ return(NULL);
++ if ((end != NULL) && (end->type == XML_NAMESPACE_DECL))
++ return(NULL);
++
++ ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject));
++ if (ret == NULL) {
++ xmlXPtrErrMemory("allocating range");
++ return(NULL);
++ }
++ memset(ret, 0, sizeof(xmlXPathObject));
++ ret->type = XPATH_RANGE;
++ ret->user = start;
++ ret->index = startindex;
++ ret->user2 = end;
++ ret->index2 = endindex;
++ return(ret);
++}
++
++/**
+ * xmlXPtrNewRange:
+ * @start: the starting node
+ * @startindex: the start index
+@@ -344,17 +383,7 @@ xmlXPtrNewRange(xmlNodePtr start, int startindex,
+ if (endindex < 0)
+ return(NULL);
+
+- ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject));
+- if (ret == NULL) {
+- xmlXPtrErrMemory("allocating range");
+- return(NULL);
+- }
+- memset(ret, 0 , (size_t) sizeof(xmlXPathObject));
+- ret->type = XPATH_RANGE;
+- ret->user = start;
+- ret->index = startindex;
+- ret->user2 = end;
+- ret->index2 = endindex;
++ ret = xmlXPtrNewRangeInternal(start, startindex, end, endindex);
+ xmlXPtrRangeCheckOrder(ret);
+ return(ret);
+ }
+@@ -381,17 +410,8 @@ xmlXPtrNewRangePoints(xmlXPathObjectPtr start, xmlXPathObjectPtr end) {
+ if (end->type != XPATH_POINT)
+ return(NULL);
+
+- ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject));
+- if (ret == NULL) {
+- xmlXPtrErrMemory("allocating range");
+- return(NULL);
+- }
+- memset(ret, 0 , (size_t) sizeof(xmlXPathObject));
+- ret->type = XPATH_RANGE;
+- ret->user = start->user;
+- ret->index = start->index;
+- ret->user2 = end->user;
+- ret->index2 = end->index;
++ ret = xmlXPtrNewRangeInternal(start->user, start->index, end->user,
++ end->index);
+ xmlXPtrRangeCheckOrder(ret);
+ return(ret);
+ }
+@@ -416,17 +436,7 @@ xmlXPtrNewRangePointNode(xmlXPathObjectPtr start, xmlNodePtr end) {
+ if (start->type != XPATH_POINT)
+ return(NULL);
+
+- ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject));
+- if (ret == NULL) {
+- xmlXPtrErrMemory("allocating range");
+- return(NULL);
+- }
+- memset(ret, 0 , (size_t) sizeof(xmlXPathObject));
+- ret->type = XPATH_RANGE;
+- ret->user = start->user;
+- ret->index = start->index;
+- ret->user2 = end;
+- ret->index2 = -1;
++ ret = xmlXPtrNewRangeInternal(start->user, start->index, end, -1);
+ xmlXPtrRangeCheckOrder(ret);
+ return(ret);
+ }
+@@ -453,17 +463,7 @@ xmlXPtrNewRangeNodePoint(xmlNodePtr start, xmlXPathObjectPtr end) {
+ if (end->type != XPATH_POINT)
+ return(NULL);
+
+- ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject));
+- if (ret == NULL) {
+- xmlXPtrErrMemory("allocating range");
+- return(NULL);
+- }
+- memset(ret, 0 , (size_t) sizeof(xmlXPathObject));
+- ret->type = XPATH_RANGE;
+- ret->user = start;
+- ret->index = -1;
+- ret->user2 = end->user;
+- ret->index2 = end->index;
++ ret = xmlXPtrNewRangeInternal(start, -1, end->user, end->index);
+ xmlXPtrRangeCheckOrder(ret);
+ return(ret);
+ }
+@@ -486,17 +486,7 @@ xmlXPtrNewRangeNodes(xmlNodePtr start, xmlNodePtr end) {
+ if (end == NULL)
+ return(NULL);
+
+- ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject));
+- if (ret == NULL) {
+- xmlXPtrErrMemory("allocating range");
+- return(NULL);
+- }
+- memset(ret, 0 , (size_t) sizeof(xmlXPathObject));
+- ret->type = XPATH_RANGE;
+- ret->user = start;
+- ret->index = -1;
+- ret->user2 = end;
+- ret->index2 = -1;
++ ret = xmlXPtrNewRangeInternal(start, -1, end, -1);
+ xmlXPtrRangeCheckOrder(ret);
+ return(ret);
+ }
+@@ -516,17 +506,7 @@ xmlXPtrNewCollapsedRange(xmlNodePtr start) {
+ if (start == NULL)
+ return(NULL);
+
+- ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject));
+- if (ret == NULL) {
+- xmlXPtrErrMemory("allocating range");
+- return(NULL);
+- }
+- memset(ret, 0 , (size_t) sizeof(xmlXPathObject));
+- ret->type = XPATH_RANGE;
+- ret->user = start;
+- ret->index = -1;
+- ret->user2 = NULL;
+- ret->index2 = -1;
++ ret = xmlXPtrNewRangeInternal(start, -1, NULL, -1);
+ return(ret);
+ }
+
+@@ -541,6 +521,8 @@ xmlXPtrNewCollapsedRange(xmlNodePtr start) {
+ */
+ xmlXPathObjectPtr
+ xmlXPtrNewRangeNodeObject(xmlNodePtr start, xmlXPathObjectPtr end) {
++ xmlNodePtr endNode;
++ int endIndex;
+ xmlXPathObjectPtr ret;
+
+ if (start == NULL)
+@@ -549,7 +531,12 @@ xmlXPtrNewRangeNodeObject(xmlNodePtr start, xmlXPathObjectPtr end) {
+ return(NULL);
+ switch (end->type) {
+ case XPATH_POINT:
++ endNode = end->user;
++ endIndex = end->index;
++ break;
+ case XPATH_RANGE:
++ endNode = end->user2;
++ endIndex = end->index2;
+ break;
+ case XPATH_NODESET:
+ /*
+@@ -557,39 +544,15 @@ xmlXPtrNewRangeNodeObject(xmlNodePtr start, xmlXPathObjectPtr end) {
+ */
+ if (end->nodesetval->nodeNr <= 0)
+ return(NULL);
++ endNode = end->nodesetval->nodeTab[end->nodesetval->nodeNr - 1];
++ endIndex = -1;
+ break;
+ default:
+ /* TODO */
+ return(NULL);
+ }
+
+- ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject));
+- if (ret == NULL) {
+- xmlXPtrErrMemory("allocating range");
+- return(NULL);
+- }
+- memset(ret, 0 , (size_t) sizeof(xmlXPathObject));
+- ret->type = XPATH_RANGE;
+- ret->user = start;
+- ret->index = -1;
+- switch (end->type) {
+- case XPATH_POINT:
+- ret->user2 = end->user;
+- ret->index2 = end->index;
+- break;
+- case XPATH_RANGE:
+- ret->user2 = end->user2;
+- ret->index2 = end->index2;
+- break;
+- case XPATH_NODESET: {
+- ret->user2 = end->nodesetval->nodeTab[end->nodesetval->nodeNr - 1];
+- ret->index2 = -1;
+- break;
+- }
+- default:
+- STRANGE
+- return(NULL);
+- }
++ ret = xmlXPtrNewRangeInternal(start, -1, endNode, endIndex);
+ xmlXPtrRangeCheckOrder(ret);
+ return(ret);
+ }
+--
+2.10.2
+
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-05 17:22:23
|
Revision: 7931
http://sourceforge.net/p/astlinux/code/7931
Author: abelbeck
Date: 2016-11-05 17:22:21 +0000 (Sat, 05 Nov 2016)
Log Message:
-----------
update ChangeLog
Modified Paths:
--------------
branches/1.0/docs/ChangeLog.txt
Modified: branches/1.0/docs/ChangeLog.txt
===================================================================
--- branches/1.0/docs/ChangeLog.txt 2016-11-05 17:14:41 UTC (rev 7930)
+++ branches/1.0/docs/ChangeLog.txt 2016-11-05 17:22:21 UTC (rev 7931)
@@ -51,7 +51,7 @@
** Asterisk
--- Asterisk 11.23.1 (no change) and 13.11.2 (no change)
+-- Asterisk 11.24.1 (version bump) and 13.12.1 (version bump)
-- DAHDI, dahdi-linux 2.8.0.1 (no change) and dahdi-tools 2.8.0 (no change)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-05 17:14:43
|
Revision: 7930
http://sourceforge.net/p/astlinux/code/7930
Author: abelbeck
Date: 2016-11-05 17:14:41 +0000 (Sat, 05 Nov 2016)
Log Message:
-----------
asterisk, version bump to 11.24.1 and 13.12.1 w/pjsip patches
Modified Paths:
--------------
branches/1.0/package/asterisk/asterisk-11-configure-cross-fix.patch
branches/1.0/package/asterisk/asterisk-11-extension-changed-verbosity-chan_sip.patch
branches/1.0/package/asterisk/asterisk-11-make-clean-fix.patch
branches/1.0/package/asterisk/asterisk-11-voicemail-multiple-recipients.patch
branches/1.0/package/asterisk/asterisk-13-configure-menuselect-cross-fix.patch
branches/1.0/package/asterisk/asterisk-13-extension-changed-verbosity-chan_sip.patch
branches/1.0/package/asterisk/asterisk.mk
branches/1.0/package/pjsip/asterisk-config_site.h
Added Paths:
-----------
branches/1.0/package/asterisk/asterisk-13-upstream-chan_sip-revert-lastrtprx-fix.patch
branches/1.0/package/pjsip/pjsip-0001-r5397-pjsip_generic_array_max_count.patch
branches/1.0/package/pjsip/pjsip-0001-r5400-pjsip_tx_data_dec_ref.patch
branches/1.0/package/pjsip/pjsip-0002-r5435-add-pjsip_inv_session-ref_cnt.patch
branches/1.0/package/pjsip/pjsip-0003-r5403-pjsip_IPV6_V6ONLY.patch
branches/1.0/package/pjsip/pjsip-0004-resolver.c-Prevent-SERVFAIL-from-marking-name-server.patch
branches/1.0/package/pjsip/pjsip-0005-Re-1969-Fix-crash-on-using-an-already-destroyed-SSL-.patch
branches/1.0/package/pjsip/pjsip-0006-r5471-svn-backport-Various-fixes-for-DNS-IPv6.patch
branches/1.0/package/pjsip/pjsip-0006-r5473-svn-backport-Fix-pending-query.patch
branches/1.0/package/pjsip/pjsip-0006-r5475-svn-backport-Remove-DNS-cache-entry.patch
branches/1.0/package/pjsip/pjsip-0006-r5477-svn-backport-Fix-DNS-write-on-freed-memory.patch
Modified: branches/1.0/package/asterisk/asterisk-11-configure-cross-fix.patch
===================================================================
--- branches/1.0/package/asterisk/asterisk-11-configure-cross-fix.patch 2016-11-04 22:47:37 UTC (rev 7929)
+++ branches/1.0/package/asterisk/asterisk-11-configure-cross-fix.patch 2016-11-05 17:14:41 UTC (rev 7930)
@@ -1,6 +1,6 @@
---- asterisk-1.8.25.0/configure.ac.orig 2014-01-24 16:52:23.000000000 -0600
-+++ asterisk-1.8.25.0/configure.ac 2014-01-24 16:55:14.000000000 -0600
-@@ -2473,11 +2473,13 @@
+--- asterisk-11/configure.ac.orig 2014-01-24 16:52:23.000000000 -0600
++++ asterisk-11/configure.ac 2014-01-24 16:55:14.000000000 -0600
+@@ -2462,11 +2462,13 @@
AC_OUTPUT
${ac_cv_path_EGREP} 'CURSES|GTK2|OSARCH|NEWT' makeopts > makeopts.acbak2
Modified: branches/1.0/package/asterisk/asterisk-11-extension-changed-verbosity-chan_sip.patch
===================================================================
--- branches/1.0/package/asterisk/asterisk-11-extension-changed-verbosity-chan_sip.patch 2016-11-04 22:47:37 UTC (rev 7929)
+++ branches/1.0/package/asterisk/asterisk-11-extension-changed-verbosity-chan_sip.patch 2016-11-05 17:14:41 UTC (rev 7930)
@@ -1,6 +1,6 @@
---- asterisk-11.17.1/channels/chan_sip.c.orig 2015-04-23 10:22:04.000000000 -0500
-+++ asterisk-11.17.1/channels/chan_sip.c 2015-04-23 10:22:40.000000000 -0500
-@@ -16816,7 +16816,7 @@
+--- asterisk-11/channels/chan_sip.c.orig 2015-04-23 10:22:04.000000000 -0500
++++ asterisk-11/channels/chan_sip.c 2015-04-23 10:22:40.000000000 -0500
+@@ -16817,7 +16817,7 @@
}
if (!force) {
Modified: branches/1.0/package/asterisk/asterisk-11-make-clean-fix.patch
===================================================================
--- branches/1.0/package/asterisk/asterisk-11-make-clean-fix.patch 2016-11-04 22:47:37 UTC (rev 7929)
+++ branches/1.0/package/asterisk/asterisk-11-make-clean-fix.patch 2016-11-05 17:14:41 UTC (rev 7930)
@@ -1,5 +1,5 @@
---- asterisk-11.23.1/Makefile.orig 2016-10-09 17:19:53.204176413 -0500
-+++ asterisk-11.23.1/Makefile 2016-10-09 17:21:11.339716525 -0500
+--- asterisk-11/Makefile.orig 2016-10-09 17:19:53.204176413 -0500
++++ asterisk-11/Makefile 2016-10-09 17:21:11.339716525 -0500
@@ -98,8 +98,8 @@
export LDCONFIG_FLAGS
export PYTHON
Modified: branches/1.0/package/asterisk/asterisk-11-voicemail-multiple-recipients.patch
===================================================================
--- branches/1.0/package/asterisk/asterisk-11-voicemail-multiple-recipients.patch 2016-11-04 22:47:37 UTC (rev 7929)
+++ branches/1.0/package/asterisk/asterisk-11-voicemail-multiple-recipients.patch 2016-11-05 17:14:41 UTC (rev 7930)
@@ -1,5 +1,5 @@
---- asterisk-11.16.0/apps/app_voicemail.c.orig 2015-01-23 08:51:03.000000000 -0600
-+++ asterisk-11.16.0/apps/app_voicemail.c 2015-02-10 09:58:04.000000000 -0600
+--- asterisk-11/apps/app_voicemail.c.orig 2015-01-23 08:51:03.000000000 -0600
++++ asterisk-11/apps/app_voicemail.c 2015-02-10 09:58:04.000000000 -0600
@@ -753,7 +753,7 @@
char mailbox[AST_MAX_EXTENSION]; /*!< Mailbox id, unique within vm context */
char password[80]; /*!< Secret pin code, numbers only */
@@ -145,7 +145,7 @@
}
if (stringp && (s = strsep(&stringp, ","))) {
ast_copy_string(vmu->pager, s, sizeof(vmu->pager));
-@@ -14084,7 +14100,7 @@
+@@ -14088,7 +14105,7 @@
}
populate_defaults(vmu);
Modified: branches/1.0/package/asterisk/asterisk-13-configure-menuselect-cross-fix.patch
===================================================================
--- branches/1.0/package/asterisk/asterisk-13-configure-menuselect-cross-fix.patch 2016-11-04 22:47:37 UTC (rev 7929)
+++ branches/1.0/package/asterisk/asterisk-13-configure-menuselect-cross-fix.patch 2016-11-05 17:14:41 UTC (rev 7930)
@@ -1,6 +1,6 @@
---- asterisk-13.1.0/configure.ac.orig 2014-01-24 16:52:23.000000000 -0600
-+++ asterisk-13.1.0/configure.ac 2014-01-24 16:55:14.000000000 -0600
-@@ -2625,11 +2625,13 @@
+--- asterisk-13/configure.ac.orig 2014-01-24 16:52:23.000000000 -0600
++++ asterisk-13/configure.ac 2014-01-24 16:55:14.000000000 -0600
+@@ -2652,11 +2652,13 @@
AC_OUTPUT
${ac_cv_path_EGREP} 'CURSES|GTK2|OSARCH|NEWT' makeopts > makeopts.acbak2
Modified: branches/1.0/package/asterisk/asterisk-13-extension-changed-verbosity-chan_sip.patch
===================================================================
--- branches/1.0/package/asterisk/asterisk-13-extension-changed-verbosity-chan_sip.patch 2016-11-04 22:47:37 UTC (rev 7929)
+++ branches/1.0/package/asterisk/asterisk-13-extension-changed-verbosity-chan_sip.patch 2016-11-05 17:14:41 UTC (rev 7930)
@@ -1,6 +1,6 @@
---- asterisk-11.17.1/channels/chan_sip.c.orig 2015-04-23 10:22:04.000000000 -0500
-+++ asterisk-11.17.1/channels/chan_sip.c 2015-04-23 10:22:40.000000000 -0500
-@@ -17336,7 +17336,7 @@
+--- asterisk-13/channels/chan_sip.c.orig 2015-04-23 10:22:04.000000000 -0500
++++ asterisk-13/channels/chan_sip.c 2015-04-23 10:22:40.000000000 -0500
+@@ -17358,7 +17358,7 @@
}
if (!force) {
Added: branches/1.0/package/asterisk/asterisk-13-upstream-chan_sip-revert-lastrtprx-fix.patch
===================================================================
--- branches/1.0/package/asterisk/asterisk-13-upstream-chan_sip-revert-lastrtprx-fix.patch (rev 0)
+++ branches/1.0/package/asterisk/asterisk-13-upstream-chan_sip-revert-lastrtprx-fix.patch 2016-11-05 17:14:41 UTC (rev 7930)
@@ -0,0 +1,17 @@
+X-Git-Url: http://git.asterisk.org/gitweb/?p=asterisk%2Fasterisk.git;a=blobdiff_plain;f=channels%2Fchan_sip.c;h=b661f0de227ff5023155faf7181892b28699a519;hp=b6b4cc86e50c7eb36d26abb0620f0f5c3fbb09e0;hb=cb30963d222cb1e12af9bbf8dfed58001c9fcaf4;hpb=57a9797e0ac51eae3b8f3254627646b9698a60d2
+
+diff --git a/channels/chan_sip.c b/channels/chan_sip.c
+index b6b4cc8..b661f0d 100644
+--- a/channels/chan_sip.c
++++ b/channels/chan_sip.c
+@@ -8628,9 +8628,7 @@ static struct ast_frame *sip_read(struct ast_channel *ast)
+
+ sip_pvt_lock(p);
+ fr = sip_rtp_read(ast, p, &faxdetected);
+- if (fr && fr->frametype != AST_FRAME_NULL) {
+- p->lastrtprx = time(NULL);
+- }
++ p->lastrtprx = time(NULL);
+
+ /* If we detect a CNG tone and fax detection is enabled then send us off to the fax extension */
+ if (faxdetected && ast_test_flag(&p->flags[1], SIP_PAGE2_FAX_DETECT_CNG)) {
Modified: branches/1.0/package/asterisk/asterisk.mk
===================================================================
--- branches/1.0/package/asterisk/asterisk.mk 2016-11-04 22:47:37 UTC (rev 7929)
+++ branches/1.0/package/asterisk/asterisk.mk 2016-11-05 17:14:41 UTC (rev 7930)
@@ -4,10 +4,10 @@
#
##############################################################
ifeq ($(BR2_PACKAGE_ASTERISK_v11),y)
-ASTERISK_VERSION := 11.23.1
+ASTERISK_VERSION := 11.24.1
else
ifeq ($(BR2_PACKAGE_ASTERISK_v13),y)
-ASTERISK_VERSION := 13.11.2
+ASTERISK_VERSION := 13.12.1
else
ASTERISK_VERSION := 15.0.0
endif
@@ -352,7 +352,6 @@
rm -f $(TARGET_DIR)/usr/share/snmp/mibs/ASTERISK-MIB.txt
rm -f $(TARGET_DIR)/usr/share/snmp/mibs/DIGIUM-MIB.txt
-$(MAKE) -C $(ASTERISK_DIR) clean
- rm -rf $(BUILD_DIR)/asterisk
rm -rf $(BUILD_DIR)/asterisk-$(ASTERISK_VERSION)
asterisk-sounds-clean:
Modified: branches/1.0/package/pjsip/asterisk-config_site.h
===================================================================
--- branches/1.0/package/pjsip/asterisk-config_site.h 2016-11-04 22:47:37 UTC (rev 7929)
+++ branches/1.0/package/pjsip/asterisk-config_site.h 2016-11-05 17:14:41 UTC (rev 7930)
@@ -4,6 +4,14 @@
#include <sys/select.h>
+/*
+ * Defining PJMEDIA_HAS_SRTP to 0 does NOT disable Asterisk's ability to use srtp.
+ * It only disables the pjmedia srtp transport which Asterisk doesn't use.
+ * The reason for the disable is that while Asterisk works fine with older libsrtp
+ * versions, newer versions of pjproject won't compile with them.
+ */
+#define PJMEDIA_HAS_SRTP 0
+
#define PJ_HAS_IPV6 1
#define NDEBUG 1
#define PJ_MAX_HOSTNAME (256)
@@ -41,3 +49,9 @@
/* Defaults too low for WebRTC */
#define PJ_ICE_MAX_CAND 32
#define PJ_ICE_MAX_CHECKS (PJ_ICE_MAX_CAND * 2)
+
+/* Increase limits to allow more formats */
+#define PJMEDIA_MAX_SDP_FMT 64
+#define PJMEDIA_MAX_SDP_BANDW 4
+#define PJMEDIA_MAX_SDP_ATTR (PJMEDIA_MAX_SDP_FMT*2 + 4)
+#define PJMEDIA_MAX_SDP_MEDIA 16
Added: branches/1.0/package/pjsip/pjsip-0001-r5397-pjsip_generic_array_max_count.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0001-r5397-pjsip_generic_array_max_count.patch (rev 0)
+++ branches/1.0/package/pjsip/pjsip-0001-r5397-pjsip_generic_array_max_count.patch 2016-11-05 17:14:41 UTC (rev 7930)
@@ -0,0 +1,58 @@
+This patch updates array limit checks and docs
+in pjsip_evsub_register_pkg() and pjsip_endpt_add_capability().
+
+Index: pjsip/include/pjsip/sip_endpoint.h
+===================================================================
+--- a/pjsip/include/pjsip/sip_endpoint.h (revision 5396)
++++ b/pjsip/include/pjsip/sip_endpoint.h (revision 5397)
+@@ -583,7 +583,8 @@
+ * @param hname If htype specifies PJSIP_H_OTHER, then the header name
+ * must be supplied in this argument. Otherwise the value
+ * must be set to NULL.
+- * @param count The number of tags in the array.
++ * @param count The number of tags in the array. The value must not
++ * be greater than PJSIP_GENERIC_ARRAY_MAX_COUNT.
+ * @param tags Array of tags describing the capabilities or extensions
+ * to be added to the appropriate header.
+ *
+Index: pjsip/include/pjsip-simple/evsub.h
+===================================================================
+--- a/pjsip/include/pjsip-simple/evsub.h (revision 5396)
++++ b/pjsip/include/pjsip-simple/evsub.h (revision 5397)
+@@ -246,7 +246,8 @@
+ * registered.
+ * @param event_name Event package identification.
+ * @param expires Default subscription expiration time, in seconds.
+- * @param accept_cnt Number of strings in Accept array.
++ * @param accept_cnt Number of strings in Accept array. The value must
++ * not be greater than PJSIP_GENERIC_ARRAY_MAX_COUNT.
+ * @param accept Array of Accept value.
+ *
+ * @return PJ_SUCCESS on success.
+Index: pjsip/src/pjsip/sip_endpoint.c
+===================================================================
+--- a/pjsip/src/pjsip/sip_endpoint.c (revision 5396)
++++ b/pjsip/src/pjsip/sip_endpoint.c (revision 5397)
+@@ -371,6 +371,7 @@
+
+ /* Check arguments. */
+ PJ_ASSERT_RETURN(endpt!=NULL && count>0 && tags, PJ_EINVAL);
++ PJ_ASSERT_RETURN(count <= PJSIP_GENERIC_ARRAY_MAX_COUNT, PJ_ETOOMANY);
+ PJ_ASSERT_RETURN(htype==PJSIP_H_ACCEPT ||
+ htype==PJSIP_H_ALLOW ||
+ htype==PJSIP_H_SUPPORTED,
+Index: pjsip/src/pjsip-simple/evsub.c
+===================================================================
+--- a/pjsip/src/pjsip-simple/evsub.c (revision 5396)
++++ b/pjsip/src/pjsip-simple/evsub.c (revision 5397)
+@@ -412,7 +412,9 @@
+ unsigned i;
+
+ PJ_ASSERT_RETURN(pkg_mod && event_name, PJ_EINVAL);
+- PJ_ASSERT_RETURN(accept_cnt < PJ_ARRAY_SIZE(pkg->pkg_accept->values),
++
++ /* Make sure accept_cnt < PJ_ARRAY_SIZE(pkg->pkg_accept->values) */
++ PJ_ASSERT_RETURN(accept_cnt <= PJSIP_GENERIC_ARRAY_MAX_COUNT,
+ PJ_ETOOMANY);
+
+ /* Make sure evsub module has been initialized */
Added: branches/1.0/package/pjsip/pjsip-0001-r5400-pjsip_tx_data_dec_ref.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0001-r5400-pjsip_tx_data_dec_ref.patch (rev 0)
+++ branches/1.0/package/pjsip/pjsip-0001-r5400-pjsip_tx_data_dec_ref.patch 2016-11-05 17:14:41 UTC (rev 7930)
@@ -0,0 +1,24 @@
+This patch fixes the issue in pjsip_tx_data_dec_ref()
+when tx_data_destroy can be called more than once,
+and checks if invalid value (e.g. NULL) is passed to.
+
+Index: pjsip/src/pjsip/sip_transport.c
+===================================================================
+--- a/pjsip/src/pjsip/sip_transport.c (revision 5399)
++++ b/pjsip/src/pjsip/sip_transport.c (revision 5400)
+@@ -491,8 +491,13 @@
+ */
+ PJ_DEF(pj_status_t) pjsip_tx_data_dec_ref( pjsip_tx_data *tdata )
+ {
+- pj_assert( pj_atomic_get(tdata->ref_cnt) > 0);
+- if (pj_atomic_dec_and_get(tdata->ref_cnt) <= 0) {
++ pj_atomic_value_t ref_cnt;
++
++ PJ_ASSERT_RETURN(tdata && tdata->ref_cnt, PJ_EINVAL);
++
++ ref_cnt = pj_atomic_dec_and_get(tdata->ref_cnt);
++ pj_assert( ref_cnt >= 0);
++ if (ref_cnt == 0) {
+ tx_data_destroy(tdata);
+ return PJSIP_EBUFDESTROYED;
+ } else {
Added: branches/1.0/package/pjsip/pjsip-0002-r5435-add-pjsip_inv_session-ref_cnt.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0002-r5435-add-pjsip_inv_session-ref_cnt.patch (rev 0)
+++ branches/1.0/package/pjsip/pjsip-0002-r5435-add-pjsip_inv_session-ref_cnt.patch 2016-11-05 17:14:41 UTC (rev 7930)
@@ -0,0 +1,212 @@
+When a transport error occured on an INVITE session
+the stack calls on_tsx_state_changed with new state
+PJSIP_INV_STATE_DISCONNECTED and immediately destroys
+the INVITE session.
+At the same time this INVITE session could being processed
+on another thread. This thread could use the session's
+memory pools which were already freed, so we get segfault.
+
+This patch adds a reference counter and new functions:
+pjsip_inv_add_ref and pjsip_inv_dec_ref.
+The INVITE session is destroyed only when the reference
+counter has reached zero.
+
+To avoid race condition an application should call
+pjsip_inv_add_ref/pjsip_inv_dec_ref.
+
+Index: pjsip/include/pjsip-ua/sip_inv.h
+===================================================================
+--- a/pjsip/include/pjsip-ua/sip_inv.h (revision 5434)
++++ b/pjsip/include/pjsip-ua/sip_inv.h (revision 5435)
+@@ -383,6 +383,11 @@
+ * Other applications that want to use these pools must understand
+ * that the flip-flop pool's lifetimes are synchronized to the
+ * SDP offer-answer negotiation.
++ *
++ * The lifetime of this session is controlled by the reference counter in this
++ * structure, which is manipulated by calling #pjsip_inv_add_ref and
++ * #pjsip_inv_dec_ref. When the reference counter has reached zero, then
++ * this session will be destroyed.
+ */
+ struct pjsip_inv_session
+ {
+@@ -412,6 +417,7 @@
+ struct pjsip_timer *timer; /**< Session Timers. */
+ pj_bool_t following_fork; /**< Internal, following
+ forked media? */
++ pj_atomic_t *ref_cnt; /**< Reference counter. */
+ };
+
+
+@@ -631,6 +637,30 @@
+
+
+ /**
++ * Add reference counter to the INVITE session. The reference counter controls
++ * the life time of the session, ie. when the counter reaches zero, then it
++ * will be destroyed.
++ *
++ * @param inv The INVITE session.
++ * @return PJ_SUCCESS if the INVITE session reference counter
++ * was increased.
++ */
++PJ_DECL(pj_status_t) pjsip_inv_add_ref( pjsip_inv_session *inv );
++
++/**
++ * Decrement reference counter of the INVITE session.
++ * When the session is no longer used, it will be destroyed and
++ * caller is informed with PJ_EGONE return status.
++ *
++ * @param inv The INVITE session.
++ * @return PJ_SUCCESS if the INVITE session reference counter
++ * was decreased. A status PJ_EGONE will be returned to
++ * inform that session is destroyed.
++ */
++PJ_DECL(pj_status_t) pjsip_inv_dec_ref( pjsip_inv_session *inv );
++
++
++/**
+ * Forcefully terminate and destroy INVITE session, regardless of
+ * the state of the session. Note that this function should only be used
+ * when there is failure in the INVITE session creation. After the
+Index: pjsip/src/pjsip-ua/sip_inv.c
+===================================================================
+--- a/pjsip/src/pjsip-ua/sip_inv.c (revision 5434)
++++ b/pjsip/src/pjsip-ua/sip_inv.c (revision 5435)
+@@ -195,6 +195,65 @@
+ }
+
+ /*
++ * Add reference to INVITE session.
++ */
++PJ_DEF(pj_status_t) pjsip_inv_add_ref( pjsip_inv_session *inv )
++{
++ PJ_ASSERT_RETURN(inv && inv->ref_cnt, PJ_EINVAL);
++
++ pj_atomic_inc(inv->ref_cnt);
++
++ return PJ_SUCCESS;
++}
++
++static void inv_session_destroy(pjsip_inv_session *inv)
++{
++ if (inv->last_ack) {
++ pjsip_tx_data_dec_ref(inv->last_ack);
++ inv->last_ack = NULL;
++ }
++ if (inv->invite_req) {
++ pjsip_tx_data_dec_ref(inv->invite_req);
++ inv->invite_req = NULL;
++ }
++ if (inv->pending_bye) {
++ pjsip_tx_data_dec_ref(inv->pending_bye);
++ inv->pending_bye = NULL;
++ }
++ pjsip_100rel_end_session(inv);
++ pjsip_timer_end_session(inv);
++ pjsip_dlg_dec_session(inv->dlg, &mod_inv.mod);
++
++ /* Release the flip-flop pools */
++ pj_pool_release(inv->pool_prov);
++ inv->pool_prov = NULL;
++ pj_pool_release(inv->pool_active);
++ inv->pool_active = NULL;
++
++ pj_atomic_destroy(inv->ref_cnt);
++ inv->ref_cnt = NULL;
++}
++
++/*
++ * Decrease INVITE session reference, destroy it when the reference count
++ * reaches zero.
++ */
++PJ_DEF(pj_status_t) pjsip_inv_dec_ref( pjsip_inv_session *inv )
++{
++ pj_atomic_value_t ref_cnt;
++
++ PJ_ASSERT_RETURN(inv && inv->ref_cnt, PJ_EINVAL);
++
++ ref_cnt = pj_atomic_dec_and_get(inv->ref_cnt);
++ pj_assert( ref_cnt >= 0);
++ if (ref_cnt == 0) {
++ inv_session_destroy(inv);
++ return PJ_EGONE;
++ }
++ return PJ_SUCCESS;
++}
++
++/*
+ * Set session state.
+ */
+ static void inv_set_state(pjsip_inv_session *inv, pjsip_inv_state state,
+@@ -261,27 +320,7 @@
+ if (inv->state == PJSIP_INV_STATE_DISCONNECTED &&
+ prev_state != PJSIP_INV_STATE_DISCONNECTED)
+ {
+- if (inv->last_ack) {
+- pjsip_tx_data_dec_ref(inv->last_ack);
+- inv->last_ack = NULL;
+- }
+- if (inv->invite_req) {
+- pjsip_tx_data_dec_ref(inv->invite_req);
+- inv->invite_req = NULL;
+- }
+- if (inv->pending_bye) {
+- pjsip_tx_data_dec_ref(inv->pending_bye);
+- inv->pending_bye = NULL;
+- }
+- pjsip_100rel_end_session(inv);
+- pjsip_timer_end_session(inv);
+- pjsip_dlg_dec_session(inv->dlg, &mod_inv.mod);
+-
+- /* Release the flip-flop pools */
+- pj_pool_release(inv->pool_prov);
+- inv->pool_prov = NULL;
+- pj_pool_release(inv->pool_active);
+- inv->pool_active = NULL;
++ pjsip_inv_dec_ref(inv);
+ }
+ }
+
+@@ -838,6 +877,12 @@
+ inv = PJ_POOL_ZALLOC_T(dlg->pool, pjsip_inv_session);
+ pj_assert(inv != NULL);
+
++ status = pj_atomic_create(dlg->pool, 0, &inv->ref_cnt);
++ if (status != PJ_SUCCESS) {
++ pjsip_dlg_dec_lock(dlg);
++ return status;
++ }
++
+ inv->pool = dlg->pool;
+ inv->role = PJSIP_ROLE_UAC;
+ inv->state = PJSIP_INV_STATE_NULL;
+@@ -881,6 +926,7 @@
+ pjsip_100rel_attach(inv);
+
+ /* Done */
++ pjsip_inv_add_ref(inv);
+ *p_inv = inv;
+
+ pjsip_dlg_dec_lock(dlg);
+@@ -1471,6 +1517,12 @@
+ inv = PJ_POOL_ZALLOC_T(dlg->pool, pjsip_inv_session);
+ pj_assert(inv != NULL);
+
++ status = pj_atomic_create(dlg->pool, 0, &inv->ref_cnt);
++ if (status != PJ_SUCCESS) {
++ pjsip_dlg_dec_lock(dlg);
++ return status;
++ }
++
+ inv->pool = dlg->pool;
+ inv->role = PJSIP_ROLE_UAS;
+ inv->state = PJSIP_INV_STATE_NULL;
+@@ -1540,6 +1592,7 @@
+ }
+
+ /* Done */
++ pjsip_inv_add_ref(inv);
+ pjsip_dlg_dec_lock(dlg);
+ *p_inv = inv;
+
Added: branches/1.0/package/pjsip/pjsip-0003-r5403-pjsip_IPV6_V6ONLY.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0003-r5403-pjsip_IPV6_V6ONLY.patch (rev 0)
+++ branches/1.0/package/pjsip/pjsip-0003-r5403-pjsip_IPV6_V6ONLY.patch 2016-11-05 17:14:41 UTC (rev 7930)
@@ -0,0 +1,13 @@
+--- a/pjlib/src/pj/sock_bsd.c
++++ b/pjlib/src/pj/sock_bsd.c
+@@ -539,6 +539,10 @@
+ pj_sock_setsockopt(*sock, pj_SOL_SOCKET(), pj_SO_NOSIGPIPE(),
+ &val, sizeof(val));
+ }
++ if (af != PJ_AF_INET) { /* Linux Kernel 2.4.21; June 2003 */
++ pj_sock_setsockopt(*sock, PJ_SOL_IPV6, IPV6_V6ONLY,
++ &val, sizeof(val));
++ }
+ #if defined(PJ_IPHONE_OS_HAS_MULTITASKING_SUPPORT) && \
+ PJ_IPHONE_OS_HAS_MULTITASKING_SUPPORT!=0
+ if (type == pj_SOCK_DGRAM()) {
Added: branches/1.0/package/pjsip/pjsip-0004-resolver.c-Prevent-SERVFAIL-from-marking-name-server.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0004-resolver.c-Prevent-SERVFAIL-from-marking-name-server.patch (rev 0)
+++ branches/1.0/package/pjsip/pjsip-0004-resolver.c-Prevent-SERVFAIL-from-marking-name-server.patch 2016-11-05 17:14:41 UTC (rev 7930)
@@ -0,0 +1,48 @@
+From a5efddbe9151e9ad99279e59566c86f8bc27d3a9 Mon Sep 17 00:00:00 2001
+From: George Joseph <gj...@di...>
+Date: Wed, 7 Sep 2016 13:10:57 -0600
+Subject: [PATCH] resolver.c: Prevent SERVFAIL from marking name server bad
+
+A name server that returns "Server Failure" is indicating only that
+the server couldn't process that particular request. We should NOT
+assume that the name server is incapable of serving other requests.
+
+Here's the scenario we've been encountering...
+
+* 2 local name servers configured in resolv.conf.
+* An OPTIONS request causes a request for A and AAAA records to go out
+ to both nameservers.
+* The A responses both come back successfully resolved.
+* Because of an issue at some upstream nameserver, the AAAA responses
+ for that particular query come back as "SERVFAIL" from both local
+ name servers.
+* Both local servers are marked as bad and no further queries can be
+ sent until the 60 second ttl expires. Only previously cached results
+ can be used.
+* In this case, 60 seconds is just enough time for another OPTIONS
+ request to go out to the same host so the cycle repeats.
+
+We could set the bad ttl really low but that also affects REFUSED and
+NOTAUTH which probably DO signal a real server issue. Besides, even
+a really low bad ttl would be an issue on a pbx.
+---
+ pjlib-util/src/pjlib-util/resolver.c | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/pjlib-util/src/pjlib-util/resolver.c b/pjlib-util/src/pjlib-util/resolver.c
+index d277e4f..540f88f 100644
+--- a/pjlib-util/src/pjlib-util/resolver.c
++++ b/pjlib-util/src/pjlib-util/resolver.c
+@@ -1384,8 +1384,7 @@ static void report_nameserver_status(pj_dns_resolver *resolver,
+ q_id = (pj_uint32_t)-1;
+ }
+
+- if (!pkt || rcode == PJ_DNS_RCODE_SERVFAIL ||
+- rcode == PJ_DNS_RCODE_REFUSED ||
++ if (!pkt || rcode == PJ_DNS_RCODE_REFUSED ||
+ rcode == PJ_DNS_RCODE_NOTAUTH)
+ {
+ is_good = PJ_FALSE;
+--
+2.7.4
+
Added: branches/1.0/package/pjsip/pjsip-0005-Re-1969-Fix-crash-on-using-an-already-destroyed-SSL-.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0005-Re-1969-Fix-crash-on-using-an-already-destroyed-SSL-.patch (rev 0)
+++ branches/1.0/package/pjsip/pjsip-0005-Re-1969-Fix-crash-on-using-an-already-destroyed-SSL-.patch 2016-11-05 17:14:41 UTC (rev 7930)
@@ -0,0 +1,164 @@
+From 9e67e0d5c3fdc747530a956038b374fca4748b76 Mon Sep 17 00:00:00 2001
+From: riza <riza@localhost>
+Date: Thu, 13 Oct 2016 09:02:50 +0000
+Subject: [PATCH 1/4] Re #1969: Fix crash on using an already destroyed SSL
+ socket.
+
+---
+ pjlib/src/pj/ssl_sock_ossl.c | 66 ++++++++++++++++++++++++++++----------------
+ 1 file changed, 42 insertions(+), 24 deletions(-)
+
+diff --git a/pjlib/src/pj/ssl_sock_ossl.c b/pjlib/src/pj/ssl_sock_ossl.c
+index fa0db2d..ceab67a 100644
+--- a/pjlib/src/pj/ssl_sock_ossl.c
++++ b/pjlib/src/pj/ssl_sock_ossl.c
+@@ -822,7 +822,10 @@ static void close_sockets(pj_ssl_sock_t *ssock)
+ pj_lock_acquire(ssock->write_mutex);
+ asock = ssock->asock;
+ if (asock) {
+- ssock->asock = NULL;
++ // Don't set ssock->asock to NULL, as it may trigger assertion in
++ // send operation. This should be safe as active socket will simply
++ // return PJ_EINVALIDOP on any operation if it is already closed.
++ //ssock->asock = NULL;
+ ssock->sock = PJ_INVALID_SOCKET;
+ }
+ sock = ssock->sock;
+@@ -841,9 +844,9 @@ static void close_sockets(pj_ssl_sock_t *ssock)
+ /* Reset SSL socket state */
+ static void reset_ssl_sock_state(pj_ssl_sock_t *ssock)
+ {
++ pj_lock_acquire(ssock->write_mutex);
+ ssock->ssl_state = SSL_STATE_NULL;
+-
+- destroy_ssl(ssock);
++ pj_lock_release(ssock->write_mutex);
+
+ close_sockets(ssock);
+
+@@ -1612,6 +1615,21 @@ static pj_status_t do_handshake(pj_ssl_sock_t *ssock)
+ return PJ_EPENDING;
+ }
+
++static void ssl_on_destroy(void *arg)
++{
++ pj_pool_t *pool = NULL;
++ pj_ssl_sock_t *ssock = (pj_ssl_sock_t*)arg;
++
++ destroy_ssl(ssock);
++
++ pj_lock_destroy(ssock->write_mutex);
++
++ pool = ssock->pool;
++ ssock->pool = NULL;
++ if (pool)
++ pj_pool_release(pool);
++}
++
+
+ /*
+ *******************************************************************
+@@ -1830,7 +1848,7 @@ static pj_bool_t asock_on_accept_complete (pj_activesock_t *asock,
+
+ /* Create new SSL socket instance */
+ status = pj_ssl_sock_create(ssock_parent->pool,
+- &ssock_parent->newsock_param, &ssock);
++ &ssock_parent->newsock_param, &ssock);
+ if (status != PJ_SUCCESS)
+ goto on_return;
+
+@@ -1906,12 +1924,10 @@ static pj_bool_t asock_on_accept_complete (pj_activesock_t *asock,
+ if (status != PJ_SUCCESS)
+ goto on_return;
+
+- /* Temporarily add ref the group lock until active socket creation,
+- * to make sure that group lock is destroyed if the active socket
+- * creation fails.
+- */
+ pj_grp_lock_add_ref(glock);
+ asock_cfg.grp_lock = ssock->param.grp_lock = glock;
++ pj_grp_lock_add_handler(ssock->param.grp_lock, ssock->pool, ssock,
++ ssl_on_destroy);
+ }
+
+ pj_bzero(&asock_cb, sizeof(asock_cb));
+@@ -1927,11 +1943,6 @@ static pj_bool_t asock_on_accept_complete (pj_activesock_t *asock,
+ ssock,
+ &ssock->asock);
+
+- /* This will destroy the group lock if active socket creation fails */
+- if (asock_cfg.grp_lock) {
+- pj_grp_lock_dec_ref(asock_cfg.grp_lock);
+- }
+-
+ if (status != PJ_SUCCESS)
+ goto on_return;
+
+@@ -2251,17 +2262,26 @@ PJ_DEF(pj_status_t) pj_ssl_sock_create (pj_pool_t *pool,
+ /* Create secure socket mutex */
+ status = pj_lock_create_recursive_mutex(pool, pool->obj_name,
+ &ssock->write_mutex);
+- if (status != PJ_SUCCESS)
++ if (status != PJ_SUCCESS) {
++ pj_pool_release(pool);
+ return status;
++ }
+
+ /* Init secure socket param */
+ pj_ssl_sock_param_copy(pool, &ssock->param, param);
++
++ if (ssock->param.grp_lock) {
++ pj_grp_lock_add_ref(ssock->param.grp_lock);
++ pj_grp_lock_add_handler(ssock->param.grp_lock, pool, ssock,
++ ssl_on_destroy);
++ }
++
+ ssock->param.read_buffer_size = ((ssock->param.read_buffer_size+7)>>3)<<3;
+ if (!ssock->param.timer_heap) {
+ PJ_LOG(3,(ssock->pool->obj_name, "Warning: timer heap is not "
+ "available. It is recommended to supply one to avoid "
+- "a race condition if more than one worker threads "
+- "are used."));
++ "a race condition if more than one worker threads "
++ "are used."));
+ }
+
+ /* Finally */
+@@ -2277,8 +2297,6 @@ PJ_DEF(pj_status_t) pj_ssl_sock_create (pj_pool_t *pool,
+ */
+ PJ_DEF(pj_status_t) pj_ssl_sock_close(pj_ssl_sock_t *ssock)
+ {
+- pj_pool_t *pool;
+-
+ PJ_ASSERT_RETURN(ssock, PJ_EINVAL);
+
+ if (!ssock->pool)
+@@ -2290,12 +2308,11 @@ PJ_DEF(pj_status_t) pj_ssl_sock_close(pj_ssl_sock_t *ssock)
+ }
+
+ reset_ssl_sock_state(ssock);
+- pj_lock_destroy(ssock->write_mutex);
+-
+- pool = ssock->pool;
+- ssock->pool = NULL;
+- if (pool)
+- pj_pool_release(pool);
++ if (ssock->param.grp_lock) {
++ pj_grp_lock_dec_ref(ssock->param.grp_lock);
++ } else {
++ ssl_on_destroy(ssock);
++ }
+
+ return PJ_SUCCESS;
+ }
+@@ -2782,6 +2799,7 @@ pj_ssl_sock_start_accept2(pj_ssl_sock_t *ssock,
+
+ /* Start accepting */
+ pj_ssl_sock_param_copy(pool, &ssock->newsock_param, newsock_param);
++ ssock->newsock_param.grp_lock = NULL;
+ status = pj_activesock_start_accept(ssock->asock, pool);
+ if (status != PJ_SUCCESS)
+ goto on_error;
+--
+2.7.4
+
Added: branches/1.0/package/pjsip/pjsip-0006-r5471-svn-backport-Various-fixes-for-DNS-IPv6.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0006-r5471-svn-backport-Various-fixes-for-DNS-IPv6.patch (rev 0)
+++ branches/1.0/package/pjsip/pjsip-0006-r5471-svn-backport-Various-fixes-for-DNS-IPv6.patch 2016-11-05 17:14:41 UTC (rev 7930)
@@ -0,0 +1,134 @@
+From 2ab7a9f67caf73be3f2215473f72882cfaef4972 Mon Sep 17 00:00:00 2001
+From: Richard Mudgett <rmu...@di...>
+Date: Fri, 28 Oct 2016 12:11:30 -0500
+Subject: [PATCH 1/3] r5471 svn backport Various fixes for DNS IPv6
+
+Fixed #1974: Various fixes for DNS IPv6
+---
+ pjlib-util/src/pjlib-util/resolver.c | 11 +++++------
+ pjlib-util/src/pjlib-util/srv_resolver.c | 17 +++++++++++++++--
+ pjsip/src/pjsip/sip_resolve.c | 14 +++++++-------
+ 3 files changed, 27 insertions(+), 15 deletions(-)
+
+diff --git a/pjlib-util/src/pjlib-util/resolver.c b/pjlib-util/src/pjlib-util/resolver.c
+index e5e1bed..d24ef9d 100644
+--- a/pjlib-util/src/pjlib-util/resolver.c
++++ b/pjlib-util/src/pjlib-util/resolver.c
+@@ -835,7 +835,7 @@ PJ_DEF(pj_status_t) pj_dns_resolver_start_query( pj_dns_resolver *resolver,
+ pj_time_val now;
+ struct res_key key;
+ struct cached_res *cache;
+- pj_dns_async_query *q;
++ pj_dns_async_query *q, *p_q = NULL;
+ pj_uint32_t hval;
+ pj_status_t status = PJ_SUCCESS;
+
+@@ -849,9 +849,6 @@ PJ_DEF(pj_status_t) pj_dns_resolver_start_query( pj_dns_resolver *resolver,
+ /* Check type */
+ PJ_ASSERT_RETURN(type > 0 && type < 0xFFFF, PJ_EINVAL);
+
+- if (p_query)
+- *p_query = NULL;
+-
+ /* Build resource key for looking up hash tables */
+ init_res_key(&key, type, name);
+
+@@ -970,10 +967,12 @@ PJ_DEF(pj_status_t) pj_dns_resolver_start_query( pj_dns_resolver *resolver,
+ pj_hash_set_np(resolver->hquerybyres, &q->key, sizeof(q->key),
+ 0, q->hbufkey, q);
+
+- if (p_query)
+- *p_query = q;
++ p_q = q;
+
+ on_return:
++ if (p_query)
++ *p_query = p_q;
++
+ pj_mutex_unlock(resolver->mutex);
+ return status;
+ }
+diff --git a/pjlib-util/src/pjlib-util/srv_resolver.c b/pjlib-util/src/pjlib-util/srv_resolver.c
+index 02672aa..ff9c979 100644
+--- a/pjlib-util/src/pjlib-util/srv_resolver.c
++++ b/pjlib-util/src/pjlib-util/srv_resolver.c
+@@ -187,9 +187,12 @@ PJ_DEF(pj_status_t) pj_dns_srv_cancel_query(pj_dns_srv_async_query *query,
+ has_pending = PJ_TRUE;
+ }
+ if (srv->q_aaaa) {
+- pj_dns_resolver_cancel_query(srv->q_aaaa, PJ_FALSE);
++ /* Check if it is a dummy query. */
++ if (srv->q_aaaa != (pj_dns_async_query*)0x1) {
++ pj_dns_resolver_cancel_query(srv->q_aaaa, PJ_FALSE);
++ has_pending = PJ_TRUE;
++ }
+ srv->q_aaaa = NULL;
+- has_pending = PJ_TRUE;
+ }
+ }
+
+@@ -485,12 +488,22 @@ static pj_status_t resolve_hostnames(pj_dns_srv_async_query *query_job)
+ srv->common.type = PJ_DNS_TYPE_A;
+ srv->common_aaaa.type = PJ_DNS_TYPE_AAAA;
+ srv->parent = query_job;
++ srv->q_a = NULL;
++ srv->q_aaaa = NULL;
+
+ status = PJ_SUCCESS;
+
+ /* Start DNA A record query */
+ if ((query_job->option & PJ_DNS_SRV_RESOLVE_AAAA_ONLY) == 0)
+ {
++ if ((query_job->option & PJ_DNS_SRV_RESOLVE_AAAA) != 0) {
++ /* If there will be DNS AAAA query too, let's setup
++ * a dummy one here, otherwise app callback may be called
++ * immediately (before DNS AAAA query is sent) when
++ * DNS A record is available in the cache.
++ */
++ srv->q_aaaa = (pj_dns_async_query*)0x1;
++ }
+ status = pj_dns_resolver_start_query(query_job->resolver,
+ &srv->target_name,
+ PJ_DNS_TYPE_A, 0,
+diff --git a/pjsip/src/pjsip/sip_resolve.c b/pjsip/src/pjsip/sip_resolve.c
+index ed326ba..3f3654d 100644
+--- a/pjsip/src/pjsip/sip_resolve.c
++++ b/pjsip/src/pjsip/sip_resolve.c
+@@ -452,7 +452,7 @@ PJ_DEF(void) pjsip_resolve( pjsip_resolver_t *resolver,
+ }
+
+ /* Resolve DNS AAAA record if address family is not fixed to IPv4 */
+- if (af != pj_AF_INET()) {
++ if (af != pj_AF_INET() && status == PJ_SUCCESS) {
+ status = pj_dns_resolver_start_query(resolver->res,
+ &query->naptr[0].name,
+ PJ_DNS_TYPE_AAAA, 0,
+@@ -530,9 +530,9 @@ static void dns_a_callback(void *user_data,
+
+ ++srv->count;
+ }
+-
+- } else {
+-
++ }
++
++ if (status != PJ_SUCCESS) {
+ char errmsg[PJ_ERR_MSG_SIZE];
+
+ /* Log error */
+@@ -593,9 +593,9 @@ static void dns_aaaa_callback(void *user_data,
+
+ ++srv->count;
+ }
+-
+- } else {
+-
++ }
++
++ if (status != PJ_SUCCESS) {
+ char errmsg[PJ_ERR_MSG_SIZE];
+
+ /* Log error */
+--
+1.7.9.5
+
Added: branches/1.0/package/pjsip/pjsip-0006-r5473-svn-backport-Fix-pending-query.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0006-r5473-svn-backport-Fix-pending-query.patch (rev 0)
+++ branches/1.0/package/pjsip/pjsip-0006-r5473-svn-backport-Fix-pending-query.patch 2016-11-05 17:14:41 UTC (rev 7930)
@@ -0,0 +1,28 @@
+From 509d4339747f11cfbde3a0acc447ef5d521eea93 Mon Sep 17 00:00:00 2001
+From: Richard Mudgett <rmu...@di...>
+Date: Fri, 28 Oct 2016 12:12:28 -0500
+Subject: [PATCH 2/3] r5473 svn backport Fix pending query
+
+Re #1974:
+If there is a pending query, set the return value to that query (instead of NULL)
+
+Thanks to Richard Mudgett for the patch.
+---
+ pjlib-util/src/pjlib-util/resolver.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/pjlib-util/src/pjlib-util/resolver.c b/pjlib-util/src/pjlib-util/resolver.c
+index d24ef9d..fe687b7 100644
+--- a/pjlib-util/src/pjlib-util/resolver.c
++++ b/pjlib-util/src/pjlib-util/resolver.c
+@@ -940,6 +940,7 @@ PJ_DEF(pj_status_t) pj_dns_resolver_start_query( pj_dns_resolver *resolver,
+ /* Done. This child query will be notified once the "parent"
+ * query completes.
+ */
++ p_q = nq;
+ status = PJ_SUCCESS;
+ goto on_return;
+ }
+--
+1.7.9.5
+
Added: branches/1.0/package/pjsip/pjsip-0006-r5475-svn-backport-Remove-DNS-cache-entry.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0006-r5475-svn-backport-Remove-DNS-cache-entry.patch (rev 0)
+++ branches/1.0/package/pjsip/pjsip-0006-r5475-svn-backport-Remove-DNS-cache-entry.patch 2016-11-05 17:14:41 UTC (rev 7930)
@@ -0,0 +1,70 @@
+From 46e1cfa18853a38b7fcdebad782710c5db676657 Mon Sep 17 00:00:00 2001
+From: Richard Mudgett <rmu...@di...>
+Date: Fri, 28 Oct 2016 12:15:44 -0500
+Subject: [PATCH 3/3] r5475 svn backport Remove DNS cache entry
+
+Re #1974: Remove DNS cache entry from resolver's hash table when app callback has a reference.
+
+Thanks to Richard Mudgett for the patch.
+---
+ pjlib-util/src/pjlib-util/resolver.c | 29 +++++++++++++++--------------
+ 1 file changed, 15 insertions(+), 14 deletions(-)
+
+diff --git a/pjlib-util/src/pjlib-util/resolver.c b/pjlib-util/src/pjlib-util/resolver.c
+index fe687b7..52b7655 100644
+--- a/pjlib-util/src/pjlib-util/resolver.c
++++ b/pjlib-util/src/pjlib-util/resolver.c
+@@ -1444,10 +1444,12 @@ static void update_res_cache(pj_dns_resolver *resolver,
+ if (ttl > resolver->settings.cache_max_ttl)
+ ttl = resolver->settings.cache_max_ttl;
+
++ /* Get a cache response entry */
++ cache = (struct cached_res *) pj_hash_get(resolver->hrescache, key,
++ sizeof(*key), &hval);
++
+ /* If TTL is zero, clear the same entry in the hash table */
+ if (ttl == 0) {
+- cache = (struct cached_res *) pj_hash_get(resolver->hrescache, key,
+- sizeof(*key), &hval);
+ /* Remove the entry before releasing its pool (see ticket #1710) */
+ pj_hash_set(NULL, resolver->hrescache, key, sizeof(*key), hval, NULL);
+
+@@ -1457,24 +1459,23 @@ static void update_res_cache(pj_dns_resolver *resolver,
+ return;
+ }
+
+- /* Get a cache response entry */
+- cache = (struct cached_res *) pj_hash_get(resolver->hrescache, key,
+- sizeof(*key), &hval);
+ if (cache == NULL) {
+ cache = alloc_entry(resolver);
+- } else if (cache->ref_cnt > 1) {
+- /* When cache entry is being used by callback (to app), just decrement
+- * ref_cnt so it will be freed after the callback returns and allocate
+- * new entry.
+- */
+- cache->ref_cnt--;
+- cache = alloc_entry(resolver);
+ } else {
+ /* Remove the entry before resetting its pool (see ticket #1710) */
+ pj_hash_set(NULL, resolver->hrescache, key, sizeof(*key), hval, NULL);
+
+- /* Reset cache to avoid bloated cache pool */
+- reset_entry(&cache);
++ if (cache->ref_cnt > 1) {
++ /* When cache entry is being used by callback (to app),
++ * just decrement ref_cnt so it will be freed after
++ * the callback returns and allocate new entry.
++ */
++ cache->ref_cnt--;
++ cache = alloc_entry(resolver);
++ } else {
++ /* Reset cache to avoid bloated cache pool */
++ reset_entry(&cache);
++ }
+ }
+
+ /* Duplicate the packet.
+--
+1.7.9.5
+
Added: branches/1.0/package/pjsip/pjsip-0006-r5477-svn-backport-Fix-DNS-write-on-freed-memory.patch
===================================================================
--- branches/1.0/package/pjsip/pjsip-0006-r5477-svn-backport-Fix-DNS-write-on-freed-memory.patch (rev 0)
+++ branches/1.0/package/pjsip/pjsip-0006-r5477-svn-backport-Fix-DNS-write-on-freed-memory.patch 2016-11-05 17:14:41 UTC (rev 7930)
@@ -0,0 +1,33 @@
+From 732a997010d60fe93a7453e809672386749b0afc Mon Sep 17 00:00:00 2001
+From: Richard Mudgett <rmu...@di...>
+Date: Tue, 1 Nov 2016 12:55:31 -0500
+Subject: [PATCH] r5477 svn backport Fix DNS write on freed memory.
+
+Re #1974: Fix DNS write on freed memory.
+Thanks to Richard Mudgett for the patch.
+---
+ pjlib-util/src/pjlib-util/resolver.c | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/pjlib-util/src/pjlib-util/resolver.c b/pjlib-util/src/pjlib-util/resolver.c
+index 52b7655..365772e 100644
+--- a/pjlib-util/src/pjlib-util/resolver.c
++++ b/pjlib-util/src/pjlib-util/resolver.c
+@@ -908,7 +908,13 @@ PJ_DEF(pj_status_t) pj_dns_resolver_start_query( pj_dns_resolver *resolver,
+ /* Must return PJ_SUCCESS */
+ status = PJ_SUCCESS;
+
+- goto on_return;
++ /*
++ * We cannot write to *p_query after calling cb because what
++ * p_query points to may have been freed by cb.
++ * Refer to ticket #1974.
++ */
++ pj_mutex_unlock(resolver->mutex);
++ return status;
+ }
+
+ /* At this point, we have a cached entry, but this entry has expired.
+--
+1.7.9.5
+
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-04 22:47:40
|
Revision: 7929
http://sourceforge.net/p/astlinux/code/7929
Author: abelbeck
Date: 2016-11-04 22:47:37 +0000 (Fri, 04 Nov 2016)
Log Message:
-----------
update ChangeLog
Modified Paths:
--------------
branches/1.0/docs/ChangeLog.txt
Modified: branches/1.0/docs/ChangeLog.txt
===================================================================
--- branches/1.0/docs/ChangeLog.txt 2016-11-04 22:26:53 UTC (rev 7928)
+++ branches/1.0/docs/ChangeLog.txt 2016-11-04 22:47:37 UTC (rev 7929)
@@ -10,6 +10,11 @@
Released @TBD@
+** IMPORTANT NOTICE
+
+-- Sangoma Wanpipe card support is no longer supplied in the standard AstLinux images.
+ Use a custom build to enable 'wanpipe' support.
+
** System
-- sqlite, version bump to 3.15.1
@@ -52,6 +57,8 @@
-- pjsip 2.5.5 (no change)
+-- (Custom Build Only) wanpipe, version 7.0.20 (no change)
+
-- FOP2, available version bump to 2.31.05.
Note: If you have a license, you may need to purchase an "Annual Software Maintenance" license if you upgrade.
More info: http://doc.astlinux.org/userdoc:tt_asterisk-fop2-upgrade
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-04 22:26:55
|
Revision: 7928
http://sourceforge.net/p/astlinux/code/7928
Author: abelbeck
Date: 2016-11-04 22:26:53 +0000 (Fri, 04 Nov 2016)
Log Message:
-----------
No longer enable 'wanpipe' for standard builds, use a custom build to enable it
Modified Paths:
--------------
branches/1.0/astlinux-ast11.config
branches/1.0/astlinux-ast13.config
branches/1.0/scripts/master-build
branches/1.0/x86_64-configs/astlinux-ast11.config
branches/1.0/x86_64-configs/astlinux-ast13.config
Modified: branches/1.0/astlinux-ast11.config
===================================================================
--- branches/1.0/astlinux-ast11.config 2016-11-04 22:16:28 UTC (rev 7927)
+++ branches/1.0/astlinux-ast11.config 2016-11-04 22:26:53 UTC (rev 7928)
@@ -184,7 +184,7 @@
BR2_PACKAGE_PROSODY=y
# BR2_PACKAGE_RTPPROXY is not set
BR2_PACKAGE_RHINO=y
-BR2_PACKAGE_WANPIPE=y
+# BR2_PACKAGE_WANPIPE is not set
#
# Audio and video libraries and applications
Modified: branches/1.0/astlinux-ast13.config
===================================================================
--- branches/1.0/astlinux-ast13.config 2016-11-04 22:16:28 UTC (rev 7927)
+++ branches/1.0/astlinux-ast13.config 2016-11-04 22:26:53 UTC (rev 7928)
@@ -184,7 +184,7 @@
BR2_PACKAGE_PROSODY=y
# BR2_PACKAGE_RTPPROXY is not set
BR2_PACKAGE_RHINO=y
-BR2_PACKAGE_WANPIPE=y
+# BR2_PACKAGE_WANPIPE is not set
#
# Audio and video libraries and applications
Modified: branches/1.0/scripts/master-build
===================================================================
--- branches/1.0/scripts/master-build 2016-11-04 22:16:28 UTC (rev 7927)
+++ branches/1.0/scripts/master-build 2016-11-04 22:26:53 UTC (rev 7928)
@@ -65,9 +65,6 @@
# disable BR2_PACKAGE_RHINO
sed -i 's:^BR2_PACKAGE_RHINO=y.*$:# BR2_PACKAGE_RHINO is not set:' .config
- # disable BR2_PACKAGE_WANPIPE
- sed -i 's:^BR2_PACKAGE_WANPIPE=y.*$:# BR2_PACKAGE_WANPIPE is not set:' .config
-
# disable BR2_PACKAGE_DAHDI_HFCS
sed -i 's:^BR2_PACKAGE_DAHDI_HFCS=y.*$:# BR2_PACKAGE_DAHDI_HFCS is not set:' .config
Modified: branches/1.0/x86_64-configs/astlinux-ast11.config
===================================================================
--- branches/1.0/x86_64-configs/astlinux-ast11.config 2016-11-04 22:16:28 UTC (rev 7927)
+++ branches/1.0/x86_64-configs/astlinux-ast11.config 2016-11-04 22:26:53 UTC (rev 7928)
@@ -165,7 +165,7 @@
BR2_PACKAGE_PROSODY=y
# BR2_PACKAGE_RTPPROXY is not set
BR2_PACKAGE_RHINO=y
-BR2_PACKAGE_WANPIPE=y
+# BR2_PACKAGE_WANPIPE is not set
#
# Audio and video libraries and applications
Modified: branches/1.0/x86_64-configs/astlinux-ast13.config
===================================================================
--- branches/1.0/x86_64-configs/astlinux-ast13.config 2016-11-04 22:16:28 UTC (rev 7927)
+++ branches/1.0/x86_64-configs/astlinux-ast13.config 2016-11-04 22:26:53 UTC (rev 7928)
@@ -165,7 +165,7 @@
BR2_PACKAGE_PROSODY=y
# BR2_PACKAGE_RTPPROXY is not set
BR2_PACKAGE_RHINO=y
-BR2_PACKAGE_WANPIPE=y
+# BR2_PACKAGE_WANPIPE is not set
#
# Audio and video libraries and applications
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-04 22:16:31
|
Revision: 7927
http://sourceforge.net/p/astlinux/code/7927
Author: abelbeck
Date: 2016-11-04 22:16:28 +0000 (Fri, 04 Nov 2016)
Log Message:
-----------
update ChangeLog
Modified Paths:
--------------
branches/1.0/docs/ChangeLog.txt
Modified: branches/1.0/docs/ChangeLog.txt
===================================================================
--- branches/1.0/docs/ChangeLog.txt 2016-11-04 22:06:53 UTC (rev 7926)
+++ branches/1.0/docs/ChangeLog.txt 2016-11-04 22:16:28 UTC (rev 7927)
@@ -12,6 +12,8 @@
** System
+-- sqlite, version bump to 3.15.1
+
-- libusb, version bump to 1.0.21
-- nano, version bump to 2.7.1
@@ -27,6 +29,8 @@
-- libcurl (curl) version bump to 7.51.0, security fixes: CVE-2016-8615, CVE-2016-8616, CVE-2016-8617, CVE-2016-8618,
CVE-2016-8619, CVE-2016-8620, CVE-2016-8621, CVE-2016-8622, CVE-2016-8623, CVE-2016-8624, CVE-2016-8625
+-- OpenVPN, version bump to 2.3.13
+
-- prosody, version bump to 0.9.11
-- ipset, version bump to 6.30
@@ -35,6 +39,9 @@
-- tcpdump, version bump to 4.8.1
+-- iproute2 (ip, tc, bridge, etc.) version bump to version 3.16.0, now including the 'bridge' utility.
+ No longer use 'brctl' for managing bridge interfaces, instead use iproute2 tools.
+
-- whois, version 5.2.13, new package to perform Whois lookups for domains and IP's.
** Asterisk
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-04 22:06:56
|
Revision: 7926
http://sourceforge.net/p/astlinux/code/7926
Author: abelbeck
Date: 2016-11-04 22:06:53 +0000 (Fri, 04 Nov 2016)
Log Message:
-----------
sqlite, version bump to 3.15.1
Modified Paths:
--------------
branches/1.0/package/sqlite/sqlite.mk
Modified: branches/1.0/package/sqlite/sqlite.mk
===================================================================
--- branches/1.0/package/sqlite/sqlite.mk 2016-11-04 21:44:20 UTC (rev 7925)
+++ branches/1.0/package/sqlite/sqlite.mk 2016-11-04 22:06:53 UTC (rev 7926)
@@ -4,7 +4,7 @@
#
#############################################################
-SQLITE_VERSION = 3150000
+SQLITE_VERSION = 3150100
SQLITE_SOURCE = sqlite-autoconf-$(SQLITE_VERSION).tar.gz
SQLITE_SITE = http://www.sqlite.org/2016
SQLITE_INSTALL_STAGING = YES
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-04 21:44:23
|
Revision: 7925
http://sourceforge.net/p/astlinux/code/7925
Author: abelbeck
Date: 2016-11-04 21:44:20 +0000 (Fri, 04 Nov 2016)
Log Message:
-----------
No longer use brctl for managing bridge interfaces, instead use iproute2 tools
Modified Paths:
--------------
branches/1.0/project/astlinux/target_skeleton/etc/init.d/network
Modified: branches/1.0/project/astlinux/target_skeleton/etc/init.d/network
===================================================================
--- branches/1.0/project/astlinux/target_skeleton/etc/init.d/network 2016-11-04 16:17:05 UTC (rev 7924)
+++ branches/1.0/project/astlinux/target_skeleton/etc/init.d/network 2016-11-04 21:44:20 UTC (rev 7925)
@@ -384,31 +384,28 @@
#BRIDGES
if [ -n "$BRIDGE0" ]; then
modprobe bridge
- brctl addbr br0
- brctl setfd br0 0
+ ip link add name br0 type bridge
for i in $BRIDGE0; do
ip link set dev $i up
- brctl addif br0 $i
+ ip link set dev $i master br0
done
fi
if [ -n "$BRIDGE1" ]; then
modprobe bridge
- brctl addbr br1
- brctl setfd br1 0
+ ip link add name br1 type bridge
for i in $BRIDGE1; do
ip link set dev $i up
- brctl addif br1 $i
+ ip link set dev $i master br1
done
fi
if [ -n "$BRIDGE2" ]; then
modprobe bridge
- brctl addbr br2
- brctl setfd br2 0
+ ip link add name br2 type bridge
for i in $BRIDGE2; do
ip link set dev $i up
- brctl addif br2 $i
+ ip link set dev $i master br2
done
fi
@@ -768,17 +765,29 @@
#BRIDGES
if [ -n "$BRIDGE0" ]; then
ip link set dev br0 down
- brctl delbr br0
+ for i in $BRIDGE0; do
+ ip link set dev $i nomaster
+ ip link set dev $i down
+ done
+ ip link delete br0 type bridge
fi
if [ -n "$BRIDGE1" ]; then
ip link set dev br1 down
- brctl delbr br1
+ for i in $BRIDGE1; do
+ ip link set dev $i nomaster
+ ip link set dev $i down
+ done
+ ip link delete br1 type bridge
fi
if [ -n "$BRIDGE2" ]; then
ip link set dev br2 down
- brctl delbr br2
+ for i in $BRIDGE2; do
+ ip link set dev $i nomaster
+ ip link set dev $i down
+ done
+ ip link delete br2 type bridge
fi
#VLANS
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-04 16:17:07
|
Revision: 7924
http://sourceforge.net/p/astlinux/code/7924
Author: abelbeck
Date: 2016-11-04 16:17:05 +0000 (Fri, 04 Nov 2016)
Log Message:
-----------
iproute2, version bump to 3.16.0, adds 'bridge' command
Modified Paths:
--------------
branches/1.0/package/iproute2/iproute2.mk
Modified: branches/1.0/package/iproute2/iproute2.mk
===================================================================
--- branches/1.0/package/iproute2/iproute2.mk 2016-11-04 14:16:35 UTC (rev 7923)
+++ branches/1.0/package/iproute2/iproute2.mk 2016-11-04 16:17:05 UTC (rev 7924)
@@ -4,12 +4,12 @@
#
#############################################################
-IPROUTE2_VERSION = 3.4.0
-IPROUTE2_SOURCE = iproute2-$(IPROUTE2_VERSION).tar.bz2
+IPROUTE2_VERSION = 3.16.0
+IPROUTE2_SOURCE = iproute2-$(IPROUTE2_VERSION).tar.xz
IPROUTE2_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/net/iproute2
-IPROUTE2_TARGET_SBINS = ctstat genl ifstat ip lnstat nstat routef routel rtacct rtmon rtpr rtstat ss tc
+IPROUTE2_TARGET_SBINS = ip tc bridge ss rtmon ifcfg rtpr routel routef nstat ifstat rtacct lnstat genl ctstat rtstat
-IPROUTE2_DEPENDENCIES += host-bison
+IPROUTE2_DEPENDENCIES += host-bison host-flex host-pkg-config
# If both iproute2 and busybox are selected, make certain we win
# the fight over who gets to have their utils actually installed.
@@ -39,7 +39,10 @@
define IPROUTE2_BUILD_CMDS
$(SED) 's/$$(CCOPTS)//' $(@D)/netem/Makefile
- $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" CCOPTS="$(TARGET_CFLAGS) -D_GNU_SOURCE" -C $(@D)
+ $(TARGET_MAKE_ENV) LDFLAGS="$(TARGET_LDFLAGS)" $(MAKE) \
+ DBM_INCLUDE="$(STAGING_DIR)/usr/include" \
+ SHARED_LIBS=y \
+ CC="$(TARGET_CC)" CCOPTS="$(TARGET_CFLAGS) -D_GNU_SOURCE" -C $(@D)
endef
define IPROUTE2_INSTALL_TARGET_CMDS
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-04 14:16:38
|
Revision: 7923
http://sourceforge.net/p/astlinux/code/7923
Author: abelbeck
Date: 2016-11-04 14:16:35 +0000 (Fri, 04 Nov 2016)
Log Message:
-----------
openvpn, version bump to 2.3.13
Modified Paths:
--------------
branches/1.0/package/openvpn/openvpn.mk
Modified: branches/1.0/package/openvpn/openvpn.mk
===================================================================
--- branches/1.0/package/openvpn/openvpn.mk 2016-11-03 21:53:12 UTC (rev 7922)
+++ branches/1.0/package/openvpn/openvpn.mk 2016-11-04 14:16:35 UTC (rev 7923)
@@ -4,7 +4,7 @@
#
#############################################################
-OPENVPN_VERSION = 2.3.12
+OPENVPN_VERSION = 2.3.13
OPENVPN_SITE = http://swupdate.openvpn.net/community/releases
OPENVPN_DEPENDENCIES = host-pkg-config
OPENVPN_CONF_OPT = --disable-plugins --enable-iproute2
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-03 21:53:14
|
Revision: 7922
http://sourceforge.net/p/astlinux/code/7922
Author: abelbeck
Date: 2016-11-03 21:53:12 +0000 (Thu, 03 Nov 2016)
Log Message:
-----------
update ChangeLog
Modified Paths:
--------------
branches/1.0/docs/ChangeLog.txt
Modified: branches/1.0/docs/ChangeLog.txt
===================================================================
--- branches/1.0/docs/ChangeLog.txt 2016-11-03 21:28:44 UTC (rev 7921)
+++ branches/1.0/docs/ChangeLog.txt 2016-11-03 21:53:12 UTC (rev 7922)
@@ -10,7 +10,50 @@
Released @TBD@
+** System
+-- libusb, version bump to 1.0.21
+
+-- nano, version bump to 2.7.1
+
+-- ca-certificates, update trusted root certificates 2016-11-02
+
+-- Time Zone Database update, tzdata2016i and php-timezonedb-2016.9
+
+** Networking
+
+-- OpenSSL, quasi-major version bump to 1.0.2j, LTS series.
+
+-- libcurl (curl) version bump to 7.51.0, security fixes: CVE-2016-8615, CVE-2016-8616, CVE-2016-8617, CVE-2016-8618,
+ CVE-2016-8619, CVE-2016-8620, CVE-2016-8621, CVE-2016-8622, CVE-2016-8623, CVE-2016-8624, CVE-2016-8625
+
+-- prosody, version bump to 0.9.11
+
+-- ipset, version bump to 6.30
+
+-- libpcap, version bump to 1.8.1
+
+-- tcpdump, version bump to 4.8.1
+
+-- whois, version 5.2.13, new package to perform Whois lookups for domains and IP's.
+
+** Asterisk
+
+-- Asterisk 11.23.1 (no change) and 13.11.2 (no change)
+
+-- DAHDI, dahdi-linux 2.8.0.1 (no change) and dahdi-tools 2.8.0 (no change)
+
+-- pjsip 2.5.5 (no change)
+
+-- FOP2, available version bump to 2.31.05.
+ Note: If you have a license, you may need to purchase an "Annual Software Maintenance" license if you upgrade.
+ More info: http://doc.astlinux.org/userdoc:tt_asterisk-fop2-upgrade
+
+** Web Interface
+
+-- no change
+
+
Additions for AstLinux 1.2.8:
=============================
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <abe...@us...> - 2016-11-03 21:28:47
|
Revision: 7921
http://sourceforge.net/p/astlinux/code/7921
Author: abelbeck
Date: 2016-11-03 21:28:44 +0000 (Thu, 03 Nov 2016)
Log Message:
-----------
prosody, version bump to 0.9.11
Modified Paths:
--------------
branches/1.0/package/prosody/prosody.mk
Modified: branches/1.0/package/prosody/prosody.mk
===================================================================
--- branches/1.0/package/prosody/prosody.mk 2016-11-03 21:12:11 UTC (rev 7920)
+++ branches/1.0/package/prosody/prosody.mk 2016-11-03 21:28:44 UTC (rev 7921)
@@ -4,7 +4,7 @@
#
#############################################################
-PROSODY_VERSION = 0.9.10
+PROSODY_VERSION = 0.9.11
PROSODY_SOURCE = prosody-$(PROSODY_VERSION).tar.gz
PROSODY_SITE = http://prosody.im/downloads/source
PROSODY_DEPENDENCIES = lua libidn openssl luafilesystem luaexpat luasocket luasec
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|