Package: pjproject / 2.5.5~dfsg-6+deb9u1

Metadata

Package Version Patches format
pjproject 2.5.5~dfsg-6+deb9u1 3.0 (quilt)

Patch series

view the series file
Patch File delta Description
0001 Remove pointless linking with libasound.patch | (download)

aconfigure.ac | 4 1 + 3 - 0 !
1 file changed, 1 insertion(+), 3 deletions(-)

 remove pointless linking with libasound

Upstream: no

All libraries and applications were being linked against libasound,
but it was not being used anywhere.

Upstream says: this cannot be merged as-is.

0002 Reduce number of libraries linked with pjlib.patch | (download)

aconfigure.ac | 7 4 + 3 - 0 !
build.mak.in | 2 2 + 0 - 0 !
pjlib/build/Makefile | 2 1 + 1 - 0 !
3 files changed, 7 insertions(+), 4 deletions(-)

 reduce number of libraries linked with pjlib

All libraries and applications were gratuitously linked against
libcrypto, libssl and libuuid, but only libpj needs them.

0003 Reduce number of libraries linked with pjmedia.patch | (download)

build.mak.in | 7 4 + 3 - 0 !
pjmedia/build/Makefile | 3 3 + 0 - 0 !
2 files changed, 7 insertions(+), 3 deletions(-)

 reduce number of libraries linked with pjmedia

All libraries and applications were gratuitously linked against
libgsm, libportaudio, libspeex and libspeexdsp but only pjmedia
needs them.

0004 Enable building python bindings.patch | (download)

Makefile | 1 1 + 0 - 0 !
1 file changed, 1 insertion(+)

 enable building python bindings


0005 Remove video libs dependency for pj utils and pjnath.patch | (download)

build.mak.in | 1 0 + 1 - 0 !
pjlib-util/build/Makefile | 2 1 + 1 - 0 !
pjnath/build/Makefile | 2 1 + 1 - 0 !
3 files changed, 2 insertions(+), 3 deletions(-)

 remove video libs dependency for pj-utils and pjnath

The video LD flags were duplicated on the app LD flags and the HOST
LD flags. Remove them from the app LD flags. Remove HOST_LDFLAGS for
some projects.

0006 Reduce linkage of unused libraries.patch | (download)

aconfigure.ac | 24 19 + 5 - 0 !
build.mak.in | 5 5 + 0 - 0 !
pjlib-util/build/Makefile | 2 1 + 1 - 0 !
pjmedia/build/Makefile | 1 1 + 0 - 0 !
pjnath/build/Makefile | 3 2 + 1 - 0 !
5 files changed, 28 insertions(+), 7 deletions(-)

 reduce linkage of unused libraries

The following libraries: ffmpeg, v4l, opencore-amr and SDL are linked
with all the libraries. But are only needed for a small part of them.

Have them linked with the relevant ones explicitly.

0007 add v5 suffix to soname of libpjsua2 2.patch | (download)

build.mak.in | 2 1 + 1 - 0 !
pjsip/build/Makefile | 2 1 + 1 - 0 !
2 files changed, 2 insertions(+), 2 deletions(-)

 add 'v5' suffix to soname of libpjsua2-2

pjsua2 is a C++ library and its SONAME needs to be bumped as its ABI has
changed with GCC 5 (using C++11 ABI).

Remove this patch once the ABI for all libraries has been bumped.

asterisk/0008 asterisk 0001 r5397 pjsip_generic_array_max_count.patch | (download)

pjsip/include/pjsip-simple/evsub.h | 3 2 + 1 - 0 !
pjsip/include/pjsip/sip_endpoint.h | 3 2 + 1 - 0 !
pjsip/src/pjsip-simple/evsub.c | 4 3 + 1 - 0 !
pjsip/src/pjsip/sip_endpoint.c | 1 1 + 0 - 0 !
4 files changed, 8 insertions(+), 3 deletions(-)

 asterisk/0001-r5397-pjsip_generic_array_max_count

This patch updates array limit checks and docs
in pjsip_evsub_register_pkg() and pjsip_endpt_add_capability().

Patch-Category: asterisk

asterisk/0009 asterisk 0001 r5400 pjsip_tx_data_dec_ref.patch | (download)

pjsip/src/pjsip/sip_transport.c | 9 7 + 2 - 0 !
1 file changed, 7 insertions(+), 2 deletions(-)

 asterisk/0001-r5400-pjsip_tx_data_dec_ref

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.

Patch-Category: asterisk

asterisk/0010 Fix 1946 Avoid deinitialization of uninitialized cli.patch | (download)

pjsip/src/pjsip/sip_dialog.c | 18 6 + 12 - 0 !
1 file changed, 6 insertions(+), 12 deletions(-)

 fix #1946: avoid deinitialization of uninitialized client

 auth session.

Patch-Category: asterisk

asterisk/0011 asterisk 0002 r5435 add pjsip_inv_session ref_cnt.patch | (download)

pjsip/include/pjsip-ua/sip_inv.h | 30 30 + 0 - 0 !
pjsip/src/pjsip-ua/sip_inv.c | 95 74 + 21 - 0 !
2 files changed, 104 insertions(+), 21 deletions(-)

 asterisk/0002-r5435-add-pjsip_inv_session-ref_cnt

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.

Patch-Category: asterisk

asterisk/0012 asterisk 0003 r5403 pjsip_IPV6_V6ONLY.patch | (download)

pjlib/src/pj/sock_bsd.c | 4 4 + 0 - 0 !
1 file changed, 4 insertions(+)

 asterisk/0003-r5403-pjsip_ipv6_v6only

Patch-Category: asterisk

asterisk/0013 resolver.c Prevent SERVFAIL from marking name server.patch | (download)

pjlib-util/src/pjlib-util/resolver.c | 3 1 + 2 - 0 !
1 file changed, 1 insertion(+), 2 deletions(-)

 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.
Patch-Category: asterisk

asterisk/0014 Re 1969 Fix crash on using an already destroyed SSL.patch | (download)

pjlib/src/pj/ssl_sock_ossl.c | 66 42 + 24 - 0 !
1 file changed, 42 insertions(+), 24 deletions(-)

 re #1969: fix crash on using an already destroyed ssl

 socket.

Patch-Category: asterisk

asterisk/0015 r5471 svn backport Various fixes for DNS IPv6.patch | (download)

pjlib-util/src/pjlib-util/resolver.c | 11 5 + 6 - 0 !
pjlib-util/src/pjlib-util/srv_resolver.c | 17 15 + 2 - 0 !
pjsip/src/pjsip/sip_resolve.c | 14 7 + 7 - 0 !
3 files changed, 27 insertions(+), 15 deletions(-)

 r5471 svn backport various fixes for dns ipv6

Fixed #1974: Various fixes for DNS IPv6
Patch-Category: asterisk

asterisk/0016 r5473 svn backport Fix pending query.patch | (download)

pjlib-util/src/pjlib-util/resolver.c | 1 1 + 0 - 0 !
1 file changed, 1 insertion(+)

 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.
Patch-Category: asterisk

asterisk/0017 r5475 svn backport Remove DNS cache entry.patch | (download)

pjlib-util/src/pjlib-util/resolver.c | 29 15 + 14 - 0 !
1 file changed, 15 insertions(+), 14 deletions(-)

 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.
Patch-Category: asterisk

asterisk/0018 r5477 svn backport Fix DNS write on freed memory.patch | (download)

pjlib-util/src/pjlib-util/resolver.c | 8 7 + 1 - 0 !
1 file changed, 7 insertions(+), 1 deletion(-)

 r5477 svn backport fix dns write on freed memory.

Re #1974: Fix DNS write on freed memory.
Thanks to Richard Mudgett for the patch.
Patch-Category: asterisk

asterisk/0019 Parse zero length multipart body parts correctly.patch | (download)

pjsip/src/pjsip/sip_multipart.c | 16 9 + 7 - 0 !
1 file changed, 9 insertions(+), 7 deletions(-)

 parse zero-length multipart body parts correctly.

The calculation of end_body could result in a negative length being
passed to multipart_body_parse_part().

asterisk/0020 Ensure 2543 transaction key buffer is large enough.patch | (download)

pjsip/src/pjsip/sip_transaction.c | 3 2 + 1 - 0 !
1 file changed, 2 insertions(+), 1 deletion(-)

 ensure 2543 transaction key buffer is large enough.

The CSeq method length needs to be factored into the allocated buffer
length. Otherwise, the buffer may not be large enough to accommodate the
entire key.

0008 r5536 Fix SRV without AAAA.patch | (download)

pjlib-util/src/pjlib-util/srv_resolver.c | 24 18 + 6 - 0 !
1 file changed, 18 insertions(+), 6 deletions(-)

 [patch] re #1945 (misc): don't trigger srv complete callback when
 there is a parse error.
Bug-Debian: https://bugs.debian.org/881362

git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5536 74dad513-b988-da41-8d7b-12977e46ad98

CVE 2017 16875.patch | (download)

pjlib/src/pj/activesock.c | 19 15 + 4 - 0 !
pjlib/src/pj/ioqueue_epoll.c | 20 18 + 2 - 0 !
pjlib/src/pj/ioqueue_select.c | 19 17 + 2 - 0 !
3 files changed, 50 insertions(+), 8 deletions(-)

 [patch] fix #2055: - updated active socket to avoid double ioqueue
 key unregistration. - Updated ioqueue to avoid double ioq key unregistration
 (select & epoll only, winnt & uwp does not seem to be affected). - Added
 check for potential 'negative' ioqueue->count.

git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5680 74dad513-b988-da41-8d7b-12977e46ad98

CVE 2017 16872.patch | (download)

pjlib/build/pjlib.vcproj | 8 8 + 0 - 0 !
pjlib/build/pjlib.vcxproj.filters | 6 6 + 0 - 0 !
pjlib/include/pj/compat/limits.h | 65 65 + 0 - 0 !
pjlib/include/pj/compat/os_win32.h | 1 1 + 0 - 0 !
pjlib/include/pj/limits.h | 51 51 + 0 - 0 !
pjlib/include/pj/string.h | 46 44 + 2 - 0 !
pjlib/include/pj/types.h | 3 0 + 3 - 0 !
pjlib/src/pj/string.c | 118 116 + 2 - 0 !
pjlib/src/pj/timer.c | 1 1 + 0 - 0 !
pjsip/include/pjsip/sip_parser.h | 25 25 + 0 - 0 !
pjsip/src/pjsip/sip_parser.c | 166 132 + 34 - 0 !
pjsip/src/pjsip/sip_transaction.c | 4 2 + 2 - 0 !
pjsip/src/pjsip/sip_transport.c | 7 5 + 2 - 0 !
13 files changed, 456 insertions(+), 45 deletions(-)

 [patch] closed #2056: add validity checking for numeric header
 values.

git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5682 74dad513-b988-da41-8d7b-12977e46ad98

CVE 2018 1000099.patch | (download)

pjmedia/src/pjmedia/sdp.c | 9 8 + 1 - 0 !
1 file changed, 8 insertions(+), 1 deletion(-)

 [patch] fixed #2094: backported r5740.

git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/adhocs/2.7.x@5742 74dad513-b988-da41-8d7b-12977e46ad98

CVE 2018 1000098.patch | (download)

pjmedia/src/pjmedia/sdp.c | 5 3 + 2 - 0 !
1 file changed, 3 insertions(+), 2 deletions(-)

 [patch] fixed #2095: backported r5741

git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/adhocs/2.7.x@5743 74dad513-b988-da41-8d7b-12977e46ad98