diff options
-rw-r--r-- | databases/openldap-client/Makefile | 3 | ||||
-rw-r--r-- | databases/openldap-server/Makefile | 5 | ||||
-rw-r--r-- | databases/openldap/distinfo | 3 | ||||
-rw-r--r-- | databases/openldap/patches/patch-ap | 34 |
4 files changed, 41 insertions, 4 deletions
diff --git a/databases/openldap-client/Makefile b/databases/openldap-client/Makefile index 2c894d0c738..7c7d5c63d8e 100644 --- a/databases/openldap-client/Makefile +++ b/databases/openldap-client/Makefile @@ -1,6 +1,7 @@ -# $NetBSD: Makefile,v 1.2 2006/06/02 22:02:33 joerg Exp $ +# $NetBSD: Makefile,v 1.3 2006/11/27 12:44:36 ghen Exp $ PKGNAME= ${DISTNAME:S/-/-client-/} +PKGREVISION= 1 COMMENT= Lightweight Directory Access Protocol libraries and client programs CONFLICTS+= openldap<2.3.23nb1 diff --git a/databases/openldap-server/Makefile b/databases/openldap-server/Makefile index 644590510f9..109aff2f3a5 100644 --- a/databases/openldap-server/Makefile +++ b/databases/openldap-server/Makefile @@ -1,11 +1,12 @@ -# $NetBSD: Makefile,v 1.4 2006/08/25 07:02:28 ghen Exp $ +# $NetBSD: Makefile,v 1.5 2006/11/27 12:44:37 ghen Exp $ PKGNAME= ${DISTNAME:S/-/-server-/} +PKGREVISION= 1 COMMENT= Lightweight Directory Access Protocol server suite CONFLICTS+= openldap<2.3.23nb1 -DEPENDS+= openldap-client>=2.3.23:../../databases/openldap-client +DEPENDS+= openldap-client>=2.3.27nb1:../../databases/openldap-client # slapd options CONFIGURE_ARGS+= --enable-slapd diff --git a/databases/openldap/distinfo b/databases/openldap/distinfo index b0d19ecf614..122f9e621ac 100644 --- a/databases/openldap/distinfo +++ b/databases/openldap/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.50 2006/08/25 07:02:28 ghen Exp $ +$NetBSD: distinfo,v 1.51 2006/11/27 12:44:36 ghen Exp $ SHA1 (openldap-2.3.27.tgz) = c2b6ac3ec89d0f58d079592946d045dba45edafe RMD160 (openldap-2.3.27.tgz) = 8c25c39689daa515f14e88611490ae6d8df0911c @@ -13,3 +13,4 @@ SHA1 (patch-ak) = 80685a7b46ded94722ea91c2842db424572d6513 SHA1 (patch-am) = 06c17b10bb8cc091461b82fca2b5d6032b613c78 SHA1 (patch-an) = f98c6457474247c092dd0a062e86560cc894ec4e SHA1 (patch-ao) = 6276a1226689fc3be3ffacbcd8df2e4f3e51d1a0 +SHA1 (patch-ap) = 65173e053006d452eb9b60f51829f45bffe442ae diff --git a/databases/openldap/patches/patch-ap b/databases/openldap/patches/patch-ap new file mode 100644 index 00000000000..d7c3310814a --- /dev/null +++ b/databases/openldap/patches/patch-ap @@ -0,0 +1,34 @@ +$NetBSD: patch-ap,v 1.1 2006/11/27 12:44:36 ghen Exp $ + +Fix for CVE-2006-5779, from OpenLDAP CVS. Versions >= 2.3.29 will have it. + +--- libraries/libldap/getdn.c.orig 2006-01-16 20:06:12.000000000 +0100 ++++ libraries/libldap/getdn.c +@@ -2025,7 +2025,7 @@ static int + strval2strlen( struct berval *val, unsigned flags, ber_len_t *len ) + { + ber_len_t l, cl = 1; +- char *p; ++ char *p, *end; + int escaped_byte_len = LDAP_DN_IS_PRETTY( flags ) ? 1 : 3; + #ifdef PRETTY_ESCAPE + int escaped_ascii_len = LDAP_DN_IS_PRETTY( flags ) ? 2 : 3; +@@ -2039,7 +2039,8 @@ strval2strlen( struct berval *val, unsig + return( 0 ); + } + +- for ( l = 0, p = val->bv_val; p < val->bv_val + val->bv_len; p += cl ) { ++ end = val->bv_val + val->bv_len - 1; ++ for ( l = 0, p = val->bv_val; p <= end; p += cl ) { + + /* + * escape '%x00' +@@ -2068,7 +2069,7 @@ strval2strlen( struct berval *val, unsig + } else if ( LDAP_DN_NEEDESCAPE( p[ 0 ] ) + || LDAP_DN_SHOULDESCAPE( p[ 0 ] ) + || ( p == val->bv_val && LDAP_DN_NEEDESCAPE_LEAD( p[ 0 ] ) ) +- || ( !p[ 1 ] && LDAP_DN_NEEDESCAPE_TRAIL( p[ 0 ] ) ) ) { ++ || ( p == end && LDAP_DN_NEEDESCAPE_TRAIL( p[ 0 ] ) ) ) { + #ifdef PRETTY_ESCAPE + #if 0 + if ( LDAP_DN_WILLESCAPE_HEX( flags, p[ 0 ] ) ) { |