Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 11 Mar 2009 19:37:49 +0300 (MSK)
From:      Yuri Pankov <yuri.pankov@gmail.com>
To:        FreeBSD-gnats-submit@FreeBSD.org
Cc:        delphij@FreeBSD.org
Subject:   ports/132550: [PATCH] net/openldap24-server: don't try to free() result of getpass()
Message-ID:  <200903111637.n2BGbn52042762@darklight.homeunix.org>
Resent-Message-ID: <200903111640.n2BGe1JD096693@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         132550
>Category:       ports
>Synopsis:       [PATCH] net/openldap24-server: don't try to free() result of getpass()
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Wed Mar 11 16:40:01 UTC 2009
>Closed-Date:
>Last-Modified:
>Originator:     Yuri Pankov
>Release:        FreeBSD 8.0-CURRENT amd64
>Organization:
>Environment:
System: FreeBSD darklight.homeunix.org 8.0-CURRENT FreeBSD 8.0-CURRENT #1: Fri Mar  6 15:33:59 MSK
>Description:
`ldap{add,modify} -W` (may be others) try to free() pointer returned by getpass(), resulting in SIGBUS.
#ifndef HAVE_GETPASS the call to free().

Added file(s):
- files/patch-clients__tools__common.c

Port maintainer (delphij@FreeBSD.org) is cc'd.

Generated with FreeBSD Port Tools 0.77
>How-To-Repeat:
>Fix:

--- openldap-sasl-server-2.4.15.patch begins here ---
Index: Makefile
===================================================================
RCS file: /home/ncvs/ports/net/openldap24-server/Makefile,v
retrieving revision 1.166
diff -u -r1.166 Makefile
--- Makefile	2 Mar 2009 18:12:33 -0000	1.166
+++ Makefile	11 Mar 2009 16:28:13 -0000
@@ -38,7 +38,7 @@
 BROKEN=			incompatible OpenLDAP version: ${WANT_OPENLDAP_VER}
 .endif
 
-PORTREVISION_CLIENT=	1
+PORTREVISION_CLIENT=	2
 PORTREVISION_SERVER=	0
 
 .if !defined(CLIENT_ONLY)
Index: files/patch-clients__tools__common.c
===================================================================
RCS file: files/patch-clients__tools__common.c
diff -N files/patch-clients__tools__common.c
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ files/patch-clients__tools__common.c	11 Mar 2009 16:28:13 -0000
@@ -0,0 +1,14 @@
+--- ./clients/tools/common.c.orig	2009-03-11 19:24:18.523596600 +0300
++++ ./clients/tools/common.c	2009-03-11 19:24:52.443459786 +0300
+@@ -255,9 +255,11 @@
+ 		ber_memfree( binddn );
+ 	}
+ 
++#ifndef HAVE_GETPASS
+ 	if ( passwd.bv_val != NULL ) {
+ 		ber_memfree( passwd.bv_val );
+ 	}
++#endif
+ }
+ 
+ void
--- openldap-sasl-server-2.4.15.patch ends here ---

>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200903111637.n2BGbn52042762>