From 77367740763b42ddf41e7ba1bfaebef96463a450 Mon Sep 17 00:00:00 2001 From: Bjørn Mork Date: Thu, 8 Dec 2011 13:58:37 +0100 Subject: v4.2.3-P1 imported from ftp://ftp.isc.org/isc/dhcp/4.2.3-P1/dhcp-4.2.3-P1.tar.gz MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Changes since 4.2.3 ! Add a check for a null pointer before calling the regexec function. Without out this check we could, under some circumstances, pass a null pointer to the regexec function causing it to segfault. Thanks to a report from BlueCat Networks. [ISC-Bugs #26704]. CVE: CVE-2011-4539 Signed-off-by: Bjørn Mork --- README | 13 +++++++------ RELNOTES | 13 +++++++++++-- bind/bind.tar.gz | Bin 8449376 -> 8462576 bytes bind/version.tmp | 6 +++--- common/dhcp-eval.5 | 8 ++++---- common/tree.c | 1 + configure | 20 ++++++++++---------- configure.ac | 2 +- 8 files changed, 37 insertions(+), 26 deletions(-) diff --git a/README b/README index f48d8b5..722dc56 100644 --- a/README +++ b/README @@ -1,6 +1,6 @@ Internet Systems Consortium DHCP Distribution - Version 4.2.3 - 18 October 2011 + Version 4.2.3-P1 + 29 November 2011 README FILE @@ -97,7 +97,8 @@ directory, it may not have up-to-date information). RELEASE STATUS -This is ISC DHCP 4.2.3, a maintenance release containing patches. +This is ISC DHCP 4.2.3-P1, a security release containing one security +patch to fix a potential DOS issue. In this release, the DHCPv6 server should be fully functional on Linux, Solaris, or any BSD. The DHCPv6 client should be similarly functional @@ -132,12 +133,12 @@ information. On Digital Unix, type ``man pfilt''. To build the DHCP Distribution, unpack the compressed tar file using the tar utility and the gzip command - type something like: - gunzip dhcp-4.2.3.tar.gz - tar xvf dhcp-4.2.3.tar + gunzip dhcp-4.2.3-P1.tar.gz + tar xvf dhcp-4.2.3-P1.tar CONFIGURING IT -Now, cd to the dhcp-4.2.3 subdirectory that you've just created and +Now, cd to the dhcp-4.2.3-P1 subdirectory that you've just created and configure the source tree by typing: ./configure diff --git a/RELNOTES b/RELNOTES index ab5b76b..87b46dd 100644 --- a/RELNOTES +++ b/RELNOTES @@ -1,6 +1,6 @@ Internet Systems Consortium DHCP Distribution - Version 4.2.3 - 18 October 2011 + Version 4.2.3-P1 + 29 Novemberr 2011 Release Notes @@ -39,6 +39,15 @@ The system has only been tested on Linux, FreeBSD, and Solaris, and may not work on other platforms. Please report any problems and suggested fixes to . + Changes since 4.2.3 + +! Add a check for a null pointer before calling the regexec function. + Without out this check we could, under some circumstances, pass + a null pointer to the regexec function causing it to segfault. + Thanks to a report from BlueCat Networks. + [ISC-Bugs #26704]. + CVE: CVE-2011-4539 + Changes since 4.2.2 - Fix the code that checks for an existing DDNS transaction to cancel diff --git a/bind/bind.tar.gz b/bind/bind.tar.gz index 4a7ea38..040ba04 100644 Binary files a/bind/bind.tar.gz and b/bind/bind.tar.gz differ diff --git a/bind/version.tmp b/bind/version.tmp index ede0ba0..249750e 100644 --- a/bind/version.tmp +++ b/bind/version.tmp @@ -1,4 +1,4 @@ -# $Id: version,v 1.53.8.9 2011-08-24 02:08:26 marka Exp $ +# $Id: version,v 1.53.8.9.6.1 2011-11-16 09:32:07 marka Exp $ # # This file must follow /bin/sh rules. It is imported directly via # configure. @@ -6,5 +6,5 @@ MAJORVER=9 MINORVER=8 PATCHVER=1 -RELEASETYPE= -RELEASEVER= +RELEASETYPE=-P +RELEASEVER=1 diff --git a/common/dhcp-eval.5 b/common/dhcp-eval.5 index 7228929..788c969 100644 --- a/common/dhcp-eval.5 +++ b/common/dhcp-eval.5 @@ -1,6 +1,6 @@ -.\" $Id: dhcp-eval.5,v 1.29.24.2 2010-07-06 19:03:11 sar Exp $ +.\" $Id: dhcp-eval.5,v 1.29.24.2.4.1 2011-11-28 18:18:51 sar Exp $ .\" -.\" Copyright (c) 2009-2010 by Internet Systems Consortium, Inc. ("ISC") +.\" Copyright (c) 2009-2011 by Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 2004,2007 by Internet Systems Consortium, Inc. ("ISC") .\" Copyright (c) 1996-2003 by Internet Software Consortium .\" @@ -133,8 +133,8 @@ extended regex(7) matching of the values of two data expressions, returning true if \fIdata-expression-1\fR matches against the regular expression evaluated by \fIdata-expression-2\fR, or false if it does not match or encounters some error. If either the left-hand side or the right-hand side -are null, the result is also false. The \fB~~\fR operator differs from the -\fB~=\fR operator in that it is case-insensitive. +are null or empty strings, the result is also false. The \fB~~\fR operator +differs from the \fB~=\fR operator in that it is case-insensitive. .RE .PP .I boolean-expression-1 \fBand\fR \fIboolean-expression-2\fR diff --git a/common/tree.c b/common/tree.c index d09107b..3c978b0 100644 --- a/common/tree.c +++ b/common/tree.c @@ -1120,6 +1120,7 @@ int evaluate_boolean_expression (result, packet, lease, client_state, *result = 0; memset(&re, 0, sizeof(re)); if (bleft && bright && + (left.data != NULL) && (right.data != NULL) && (regcomp(&re, (char *)right.data, regflags) == 0) && (regexec(&re, (char *)left.data, (size_t)0, NULL, 0) == 0)) *result = 1; diff --git a/configure b/configure index af937a2..2d8e85e 100755 --- a/configure +++ b/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.61 for DHCP 4.2.3. +# Generated by GNU Autoconf 2.61 for DHCP 4.2.3-P1. # # Report bugs to . # @@ -574,8 +574,8 @@ SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='DHCP' PACKAGE_TARNAME='dhcp' -PACKAGE_VERSION='4.2.3' -PACKAGE_STRING='DHCP 4.2.3' +PACKAGE_VERSION='4.2.3-P1' +PACKAGE_STRING='DHCP 4.2.3-P1' PACKAGE_BUGREPORT='dhcp-users@isc.org' # Factoring default headers for most tests. @@ -1213,7 +1213,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures DHCP 4.2.3 to adapt to many kinds of systems. +\`configure' configures DHCP 4.2.3-P1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1279,7 +1279,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of DHCP 4.2.3:";; + short | recursive ) echo "Configuration of DHCP 4.2.3-P1:";; esac cat <<\_ACEOF @@ -1419,7 +1419,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -DHCP configure 4.2.3 +DHCP configure 4.2.3-P1 generated by GNU Autoconf 2.61 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1433,7 +1433,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by DHCP $as_me 4.2.3, which was +It was created by DHCP $as_me 4.2.3-P1, which was generated by GNU Autoconf 2.61. Invocation command line was $ $0 $@ @@ -2126,7 +2126,7 @@ fi # Define the identity of the package. PACKAGE='dhcp' - VERSION='4.2.3' + VERSION='4.2.3-P1' cat >>confdefs.h <<_ACEOF @@ -9082,7 +9082,7 @@ exec 6>&1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by DHCP $as_me 4.2.3, which was +This file was extended by DHCP $as_me 4.2.3-P1, which was generated by GNU Autoconf 2.61. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -9135,7 +9135,7 @@ Report bugs to ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ -DHCP config.status 4.2.3 +DHCP config.status 4.2.3-P1 configured by $0, generated by GNU Autoconf 2.61, with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff --git a/configure.ac b/configure.ac index 3ed50de..0f3547a 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,4 @@ -AC_INIT([DHCP], [4.2.3], [dhcp-users@isc.org]) +AC_INIT([DHCP], [4.2.3-P1], [dhcp-users@isc.org]) # we specify "foreign" to avoid having to have the GNU mandated files, # like AUTHORS, COPYING, and such -- cgit v1.2.3