ChangeLog | 42 ++++++++++++++++++++++++++ configure.ac | 2 - debian/changelog | 11 ++++++ debian/control | 12 +++---- debian/copyright | 2 - debian/patches/series | 1 debian/upstream/signing-key.asc | 64 ++++++++++++++++++++++++++++++++++++++++ debian/watch | 3 + src/Makefile.am | 2 - src/Xv.c | 46 ++++++++++++++++++---------- 10 files changed, 157 insertions(+), 28 deletions(-)
New commits: commit e2ebef6a1a2f50c1fac846ec55e78b19a46c06a6 Author: Andreas Boll <andreas.boll....@gmail.com> Date: Fri Oct 7 15:34:43 2016 +0200 Remove obsolete Conflicts/Replaces from pre-wheezy. diff --git a/debian/changelog b/debian/changelog index 72f434d..228544a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -5,6 +5,7 @@ libxv (2:1.0.11-1) UNRELEASED; urgency=medium * Let uscan verify tarball signatures. * Update a bunch of URLs in packaging to https. * Add placeholder comment into series file. + * Remove obsolete Conflicts/Replaces from pre-wheezy. -- Andreas Boll <andreas.boll....@gmail.com> Fri, 07 Oct 2016 15:20:58 +0200 diff --git a/debian/control b/debian/control index 13229ad..e161e88 100644 --- a/debian/control +++ b/debian/control @@ -77,8 +77,6 @@ Depends: libx11-dev, libxext-dev, x11proto-video-dev, -Conflicts: x11proto-video-dev (<< 2.2+cvs.20050712-1) -Replaces: x11proto-video-dev (<< 2.2+cvs.20050712-1) Description: X11 Video extension library (development headers) libXv provides an X Window System client interface to the XVideo extension to the X protocol. commit edfd931c1f5589fdc8410454c9af6f71ae1aa87e Author: Andreas Boll <andreas.boll....@gmail.com> Date: Fri Oct 7 15:28:34 2016 +0200 Add placeholder comment into series file. diff --git a/debian/changelog b/debian/changelog index 5513c24..72f434d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -4,6 +4,7 @@ libxv (2:1.0.11-1) UNRELEASED; urgency=medium - Fixes CVE-2016-5407. * Let uscan verify tarball signatures. * Update a bunch of URLs in packaging to https. + * Add placeholder comment into series file. -- Andreas Boll <andreas.boll....@gmail.com> Fri, 07 Oct 2016 15:20:58 +0200 diff --git a/debian/patches/series b/debian/patches/series index e69de29..fdffa2a 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -0,0 +1 @@ +# placeholder commit 61121213ca9be2cc246eb728ecc092106ec641c7 Author: Andreas Boll <andreas.boll....@gmail.com> Date: Fri Oct 7 15:28:24 2016 +0200 Update a bunch of URLs in packaging to https. diff --git a/debian/changelog b/debian/changelog index 1e84115..5513c24 100644 --- a/debian/changelog +++ b/debian/changelog @@ -3,6 +3,7 @@ libxv (2:1.0.11-1) UNRELEASED; urgency=medium * New upstream release. - Fixes CVE-2016-5407. * Let uscan verify tarball signatures. + * Update a bunch of URLs in packaging to https. -- Andreas Boll <andreas.boll....@gmail.com> Fri, 07 Oct 2016 15:20:58 +0200 diff --git a/debian/control b/debian/control index 3663be8..13229ad 100644 --- a/debian/control +++ b/debian/control @@ -14,8 +14,8 @@ Build-Depends: automake, libtool, xutils-dev (>= 1:7.5+4), -Vcs-Git: git://git.debian.org/git/pkg-xorg/lib/libxv -Vcs-Browser: http://git.debian.org/?p=pkg-xorg/lib/libxv.git +Vcs-Git: https://anonscm.debian.org/git/pkg-xorg/lib/libxv.git +Vcs-Browser: https://anonscm.debian.org/cgit/pkg-xorg/lib/libxv.git Package: libxv1 Section: libs @@ -35,7 +35,7 @@ Description: X11 Video extension library including YUV. . More information about X.Org can be found at: - <URL:http://www.X.org> + <URL:https://www.X.org> . This module can be found at git://anongit.freedesktop.org/git/xorg/lib/libXv @@ -61,7 +61,7 @@ Description: X11 Video extension library (debug package) Non-developers likely have little use for this package. . More information about X.Org can be found at: - <URL:http://www.X.org> + <URL:https://www.X.org> . This module can be found at git://anongit.freedesktop.org/git/xorg/lib/libXv @@ -91,7 +91,7 @@ Description: X11 Video extension library (development headers) libxv1. Non-developers likely have little use for this package. . More information about X.Org can be found at: - <URL:http://www.X.org> + <URL:https://www.X.org> . This module can be found at git://anongit.freedesktop.org/git/xorg/lib/libXv diff --git a/debian/copyright b/debian/copyright index 7aaa9d0..f93231b 100644 --- a/debian/copyright +++ b/debian/copyright @@ -1,5 +1,5 @@ This package was downloaded from -http://xorg.freedesktop.org/releases/individual/lib/ +https://xorg.freedesktop.org/releases/individual/lib/ Original Debian package author(s): Stephen Early, Mark Eichin, Branden Robinson, ISHIKAWA Mutsumi, Daniel Stone diff --git a/debian/watch b/debian/watch index 27b6755..8846da3 100644 --- a/debian/watch +++ b/debian/watch @@ -1,4 +1,4 @@ #git=git://anongit.freedesktop.org/xorg/lib/libXv version=3 opts=pgpsigurlmangle=s/$/.sig/ \ -http://xorg.freedesktop.org/releases/individual/lib/ libXv-(.*)\.tar\.gz +https://xorg.freedesktop.org/releases/individual/lib/ libXv-(.*)\.tar\.gz commit c305179918dc4ebcacfe1204fe144c41b1f877c9 Author: Andreas Boll <andreas.boll....@gmail.com> Date: Fri Oct 7 15:22:32 2016 +0200 Let uscan verify tarball signatures. diff --git a/debian/changelog b/debian/changelog index f931eae..1e84115 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,6 +2,7 @@ libxv (2:1.0.11-1) UNRELEASED; urgency=medium * New upstream release. - Fixes CVE-2016-5407. + * Let uscan verify tarball signatures. -- Andreas Boll <andreas.boll....@gmail.com> Fri, 07 Oct 2016 15:20:58 +0200 diff --git a/debian/upstream/signing-key.asc b/debian/upstream/signing-key.asc new file mode 100644 index 0000000..b4e5575 --- /dev/null +++ b/debian/upstream/signing-key.asc @@ -0,0 +1,64 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +79+hF4bWyw== +=WW1Z +-----END PGP PUBLIC KEY BLOCK----- diff --git a/debian/watch b/debian/watch index ab11350..27b6755 100644 --- a/debian/watch +++ b/debian/watch @@ -1,3 +1,4 @@ #git=git://anongit.freedesktop.org/xorg/lib/libXv version=3 +opts=pgpsigurlmangle=s/$/.sig/ \ http://xorg.freedesktop.org/releases/individual/lib/ libXv-(.*)\.tar\.gz commit 9ccc2ee8b935e086592064136598ed8882bb3eeb Author: Andreas Boll <andreas.boll....@gmail.com> Date: Fri Oct 7 15:21:30 2016 +0200 Bump changelogs diff --git a/ChangeLog b/ChangeLog index b8c4e88..8afa56a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,45 @@ +commit ef2a282876acc2316d338f8b66344ad5a2947057 +Author: Matthieu Herrb <matthieu.he...@laas.fr> +Date: Tue Oct 4 21:29:55 2016 +0200 + + libXv 1.0.11 + + Signed-off-by: Matthieu Herrb <matthieu.he...@laas.fr> + +commit d9da580b46a28ab497de2e94fdc7b9ff953dab17 +Author: Tobias Stoeckmann <tob...@stoeckmann.org> +Date: Sun Sep 25 21:30:03 2016 +0200 + + Protocol handling issues in libXv - CVE-2016-5407 + + The Xv query functions for adaptors and encodings suffer from out of + boundary accesses if a hostile X server sends a maliciously crafted + response. + + A previous fix already checks the received length against fixed values + but ignores additional length specifications which are stored inside + the received data. + + These lengths are accessed in a for-loop. The easiest way to guarantee + a correct processing is by validating all lengths against the + remaining size left before accessing referenced memory. + + This makes the previously applied check obsolete, therefore I removed + it. + + Signed-off-by: Tobias Stoeckmann <tob...@stoeckmann.org> + Reviewed-by: Matthieu Herrb <matth...@herrb.eu> + +commit cf8cc328f1e370a548b71581bada7e1ee073c756 +Author: Alan Coopersmith <alan.coopersm...@oracle.com> +Date: Sat Jul 26 14:07:26 2014 -0700 + + Fix typo in dependencies for lint library + + Breaks out of tree lintlib builds by causing VPATH lookup to fail. + + Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com> + commit 736d7ac5a94c7aa6761d50ab58339a3d9a116c51 Author: Alan Coopersmith <alan.coopersm...@oracle.com> Date: Sat Sep 7 22:19:48 2013 -0700 diff --git a/debian/changelog b/debian/changelog index df1d223..f931eae 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +libxv (2:1.0.11-1) UNRELEASED; urgency=medium + + * New upstream release. + - Fixes CVE-2016-5407. + + -- Andreas Boll <andreas.boll....@gmail.com> Fri, 07 Oct 2016 15:20:58 +0200 + libxv (2:1.0.10-1) unstable; urgency=medium * New upstream release. commit ef2a282876acc2316d338f8b66344ad5a2947057 Author: Matthieu Herrb <matthieu.he...@laas.fr> Date: Tue Oct 4 21:29:55 2016 +0200 libXv 1.0.11 Signed-off-by: Matthieu Herrb <matthieu.he...@laas.fr> diff --git a/configure.ac b/configure.ac index 4d651b5..4e68999 100644 --- a/configure.ac +++ b/configure.ac @@ -22,7 +22,7 @@ # Initialize Autoconf AC_PREREQ([2.60]) -AC_INIT([libXv], [1.0.10], +AC_INIT([libXv], [1.0.11], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [libXv]) AC_CONFIG_SRCDIR([Makefile.am]) AC_CONFIG_HEADERS([config.h]) commit d9da580b46a28ab497de2e94fdc7b9ff953dab17 Author: Tobias Stoeckmann <tob...@stoeckmann.org> Date: Sun Sep 25 21:30:03 2016 +0200 Protocol handling issues in libXv - CVE-2016-5407 The Xv query functions for adaptors and encodings suffer from out of boundary accesses if a hostile X server sends a maliciously crafted response. A previous fix already checks the received length against fixed values but ignores additional length specifications which are stored inside the received data. These lengths are accessed in a for-loop. The easiest way to guarantee a correct processing is by validating all lengths against the remaining size left before accessing referenced memory. This makes the previously applied check obsolete, therefore I removed it. Signed-off-by: Tobias Stoeckmann <tob...@stoeckmann.org> Reviewed-by: Matthieu Herrb <matth...@herrb.eu> diff --git a/src/Xv.c b/src/Xv.c index e47093a..be450c4 100644 --- a/src/Xv.c +++ b/src/Xv.c @@ -158,6 +158,7 @@ XvQueryAdaptors( size_t size; unsigned int ii, jj; char *name; + char *end; XvAdaptorInfo *pas = NULL, *pa; XvFormat *pfs, *pf; char *buffer = NULL; @@ -197,17 +198,13 @@ XvQueryAdaptors( /* GET INPUT ADAPTORS */ if (rep.num_adaptors == 0) { - /* If there's no adaptors, there's nothing more to do. */ + /* If there are no adaptors, there's nothing more to do. */ status = Success; goto out; } - if (size < (rep.num_adaptors * sz_xvAdaptorInfo)) { - /* If there's not enough data for the number of adaptors, - then we have a problem. */ - status = XvBadReply; - goto out; - } + u.buffer = buffer; + end = buffer + size; size = rep.num_adaptors * sizeof(XvAdaptorInfo); if ((pas = Xmalloc(size)) == NULL) { @@ -225,9 +222,12 @@ XvQueryAdaptors( pa++; } - u.buffer = buffer; pa = pas; for (ii = 0; ii < rep.num_adaptors; ii++) { + if (u.buffer + sz_xvAdaptorInfo > end) { + status = XvBadReply; + goto out; + } pa->type = u.pa->type; pa->base_id = u.pa->base_id; pa->num_ports = u.pa->num_ports; @@ -239,6 +239,10 @@ XvQueryAdaptors( size = u.pa->name_size; u.buffer += pad_to_int32(sz_xvAdaptorInfo); + if (u.buffer + size > end) { + status = XvBadReply; + goto out; + } if ((name = Xmalloc(size + 1)) == NULL) { status = XvBadAlloc; goto out; @@ -259,6 +263,11 @@ XvQueryAdaptors( pf = pfs; for (jj = 0; jj < pa->num_formats; jj++) { + if (u.buffer + sz_xvFormat > end) { + Xfree(pfs); + status = XvBadReply; + goto out; + } pf->depth = u.pf->depth; pf->visual_id = u.pf->visual; pf++; @@ -327,6 +336,7 @@ XvQueryEncodings( size_t size; unsigned int jj; char *name; + char *end; XvEncodingInfo *pes = NULL, *pe; char *buffer = NULL; union { @@ -364,17 +374,13 @@ XvQueryEncodings( /* GET ENCODINGS */ if (rep.num_encodings == 0) { - /* If there's no encodings, there's nothing more to do. */ + /* If there are no encodings, there's nothing more to do. */ status = Success; goto out; } - if (size < (rep.num_encodings * sz_xvEncodingInfo)) { - /* If there's not enough data for the number of adaptors, - then we have a problem. */ - status = XvBadReply; - goto out; - } + u.buffer = buffer; + end = buffer + size; size = rep.num_encodings * sizeof(XvEncodingInfo); if ((pes = Xmalloc(size)) == NULL) { @@ -391,10 +397,12 @@ XvQueryEncodings( pe++; } - u.buffer = buffer; - pe = pes; for (jj = 0; jj < rep.num_encodings; jj++) { + if (u.buffer + sz_xvEncodingInfo > end) { + status = XvBadReply; + goto out; + } pe->encoding_id = u.pe->encoding; pe->width = u.pe->width; pe->height = u.pe->height; @@ -405,6 +413,10 @@ XvQueryEncodings( size = u.pe->name_size; u.buffer += pad_to_int32(sz_xvEncodingInfo); + if (u.buffer + size > end) { + status = XvBadReply; + goto out; + } if ((name = Xmalloc(size + 1)) == NULL) { status = XvBadAlloc; goto out; commit cf8cc328f1e370a548b71581bada7e1ee073c756 Author: Alan Coopersmith <alan.coopersm...@oracle.com> Date: Sat Jul 26 14:07:26 2014 -0700 Fix typo in dependencies for lint library Breaks out of tree lintlib builds by causing VPATH lookup to fail. Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com> diff --git a/src/Makefile.am b/src/Makefile.am index 0948474..06e9ffd 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -23,7 +23,7 @@ lintlibdir = $(libdir) lintlib_DATA = $(LINTLIB) -$(LINTLIB): $(libXau_la_SOURCES) +$(LINTLIB): $(libXv_la_SOURCES) $(LINT) -y -oXv -x $(ALL_LINT_FLAGS) $(libXv_la_SOURCES) CLEANFILES = $(LINTLIB)