Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 27 May 2002 23:09:26 -0500 (CDT)
From:      "Scot W. Hetzel" <hetzels@westbend.net>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/38646: security/cyrus-sasl: problem with configure script on -CURRENT
Message-ID:  <200205280409.g4S49Q0t063634@wbiW009.westbend.net>

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

>Number:         38646
>Category:       ports
>Synopsis:       security/cyrus-sasl: problem with configure script on -CURRENT
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Mon May 27 21:10:01 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator:     Scot W. Hetzel
>Release:        FreeBSD 4.5-STABLE i386
>Organization:
West Bend Internet
>Environment:
System:

FreeBSD wbiW009.westbend.net 4.5-STABLE FreeBSD 4.5-STABLE #7: Wed Apr 24 10:46:07 CDT 2002     root@wbiW009.westbend.net:/usr/obj/usr/src/sys/GENERIC-SMP  i386


>Description:

	Autoconf213 generated configure scripts fail on -CURRENT with gcc 3.1,
	due to duplicated include directories.  The problem is that the
	cyrus-sasl port is adding "-I${OPENSSLINC} -I${OPENSSLINC}/openssl"
	to the CPPFLAGS, then when autoconf213's AC_CHECK_HEADERS is used
	these flags are being passed to gcc 3.1, which outputs a warning
	to conftest.out. Then conftest.out is grep'd for warning/error messages,
	which results in the configure script failing to detect these headers.

How-To-Repeat:

	On a 5.0-CURRENT system, try to build a port which adds "-I/usr/include"
	to the compile flags during configure stage:

	cd /usr/ports/security/cyrus-sasl
	make configure

	configures output shows that pwd.h & unistd.h were not detected, and then proced
	with a 'make build', and the following error occurs:

	...
	rm -f .libs/checkpw.lo
	cc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I/usr/include -I/usr/include/opens
	sl -Wall -W -O -pipe -c checkpw.c  -fPIC -DPIC
	cc1: warning: changing search order for system directory "/usr/include"
	cc1: warning:   as it has already been specified as a non-system directory
	cc1: warning: changing search order for system directory "/usr/include"
	cc1: warning:   as it has already been specified as a non-system directory
	checkpw.c: In function `passwd_verify_password':
	checkpw.c:651: warning: implicit declaration of function `getpwnam'
	checkpw.c:651: warning: assignment makes pointer from integer without a cast
	checkpw.c:654: dereferencing pointer to incomplete type
	checkpw.c:656: warning: implicit declaration of function `crypt'
	checkpw.c:656: warning: assignment makes pointer from integer without a cast
	checkpw.c:658: dereferencing pointer to incomplete type
	checkpw.c: In function `retry_writev':
	checkpw.c:1160: warning: comparison between signed and unsigned
	checkpw.c: In function `pwcheck_verify_password':
	checkpw.c:1223: warning: comparison between signed and unsigned
	checkpw.c:1224: warning: implicit declaration of function `read'
	checkpw.c:1229: warning: implicit declaration of function `close'
	*** Error code 1

>How-To-Repeat:

>Fix:
	The attached patch adds -I${OPENSSLINC} to the CPPFLAGS, only if
	${OPENSSLINC} != /usr/include.

	Also updated the Sendmail.README for Sendmail 8.10 - 8.12

	Changed Files:
	    files/Sendmail.README
	    files/patch-ab

Index: files/Sendmail.README
===================================================================
RCS file: /home/ncvs/ports/security/cyrus-sasl/files/Sendmail.README,v
retrieving revision 1.4
diff -u -r1.4 Sendmail.README
--- files/Sendmail.README	16 May 2002 02:45:25 -0000	1.4
+++ files/Sendmail.README	24 May 2002 20:51:59 -0000
@@ -1,12 +1,15 @@
-How to enable SMTP AUTH with FreeBSD default Sendmail 8.11
+How to enable SMTP AUTH with FreeBSD default Sendmail
 
 1) Add the following to  /etc/make.conf:
 
     # Add SMTP AUTH support to Sendmail
-    SENDMAIL_CFLAGS+=	-I/usr/local/include/sasl -DSASL -D_FFR_UNSAFE_SASL
+    SENDMAIL_CFLAGS+=	-I/usr/local/include/sasl -DSASL
     SENDMAIL_LDFLAGS+=	-L/usr/local/lib
     SENDMAIL_LDADD+=	-lsasl
 
+    NOTE: Sendmail 8.10 - 8.11 needS -D_FFR_UNSAFE_SASL added
+          to SENDMAIL_CFLAGS, if you need the GroupReadableSASLFile option
+
 2) Rebuild FreeBSD (make buildworld, ...)
 
 3) Create /usr/local/lib/sasl/Sendmail.conf with the following.
@@ -15,10 +18,17 @@
 
 4) Add the following to your sendmail.mc file:
 
+   dnl The group needs to be mail in order to read the sasldb file
+   define(`confRUN_AS_USER',`root:mail')dnl
+
    TRUST_AUTH_MECH(`DIGEST-MD5 CRAM-MD5')dnl
    define(`confAUTH_MECHANISMS',`DIGEST-MD5 CRAM-MD5')dnl
+
+   dnl Use the following for Sendmail 8.12
    define(`confDONT_BLAME_SENDMAIL',`GroupReadableSASLDBFile')dnl
-   define(`confRUN_AS_USER',`root:mail')dnl
+
+   dnl Use the following for Sendmail 8.10 - 8.11
+   define(`confDONT_BLAME_SENDMAIL',`GroupReadableSASLFile')dnl
 
  ----
 
@@ -36,6 +46,6 @@
    Communicator will use SASL Authentication when sendmail is compiled with
    SASL.
 
-   The DONT_BLAME_SENDMAIL option GroupReadableSASLFile is needed when you
+   The DONT_BLAME_SENDMAIL option GroupReadableSASL[DB]File is needed when you
    are using cyrus-imapd and sendmail on the same server that requires access
    to the sasldb database.
Index: files/patch-ab
===================================================================
RCS file: /home/ncvs/ports/security/cyrus-sasl/files/patch-ab,v
retrieving revision 1.13
diff -u -r1.13 patch-ab
--- files/patch-ab	21 May 2002 15:08:58 -0000	1.13
+++ files/patch-ab	27 May 2002 19:47:23 -0000
@@ -1,18 +1,21 @@
---- configure.in.orig	Mon May 20 19:02:49 2002
-+++ configure.in	Mon May 20 19:21:53 2002
-@@ -66,8 +66,9 @@
+--- configure.in.orig	Wed May 22 20:49:46 2002
++++ configure.in	Thu May 23 16:52:07 2002
+@@ -66,8 +66,12 @@
  dnl check for -R, etc. switch
  CMU_GUESS_RUNPATH_SWITCH
  dnl let's just link against local.  otherwise we never find anything useful.
 -CPPFLAGS="-I/usr/local/include ${CPPFLAGS}"
 -CMU_ADD_LIBPATH("/usr/local/lib")
-+CPPFLAGS="-I${OPENSSLINC} -I${OPENSSLINC}/openssl ${CPPFLAGS}"
++CPPFLAGS="-I${OPENSSLINC}/openssl ${CPPFLAGS}"
++if test "${OPENSSLINC}" != "/usr/include" ; then
++  CPPFLAGS="-I${OPENSSLINC} ${CPPFLAGS}"
++fi
 +CMU_ADD_LIBPATH("${OPENSSLLIB}")
 +CMU_ADD_LIBPATH("${LOCALBASE}/lib")
  
  AM_DISABLE_STATIC
  
-@@ -122,8 +123,6 @@
+@@ -122,8 +126,6 @@
  
    AC_SUBST(JAVA_INCLUDES)
    AC_MSG_RESULT(JAVA_INCLUDES)
@@ -21,7 +24,7 @@
  fi
  
  AM_CONDITIONAL(SAMPLE, test "$enable_sample" = yes)
-@@ -149,11 +148,13 @@
+@@ -149,11 +151,13 @@
  	AC_CHECK_HEADER(db.h,
  			AC_CHECK_LIB(db-3, db_create, SASL_DB_LIB="-ldb-3";
  			   dblib="berkeley",
@@ -36,7 +39,7 @@
  			dblib="no")
  	;;
    gdbm)
-@@ -175,11 +176,13 @@
+@@ -175,11 +179,13 @@
  	AC_CHECK_HEADER(db.h,
  			AC_CHECK_LIB(db-3, db_create, SASL_DB_LIB="-ldb-3";
  			   dblib="berkeley",
@@ -51,7 +54,7 @@
  			dblib="no")
  	if test "$dblib" = no; then
  	  dnl How about ndbm?
-@@ -229,6 +232,13 @@
+@@ -229,6 +235,13 @@
    berkeley)
      SASL_DB_BACKEND="db_${dblib}.lo"
      AC_DEFINE(SASL_BERKELEYDB)
@@ -65,7 +68,7 @@
      ;;
    *)
      AC_MSG_WARN([Disabling SASL authentication database support])
-@@ -534,12 +544,16 @@
+@@ -534,12 +547,16 @@
    fi
  
    if test "$with_des" != no; then
>Release-Note:
>Audit-Trail:
>Unformatted:

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




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