Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 7 Mar 2000 12:14:49 -0800 (PST)
From:      tkato@prontomail.ne.jp
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/17252: Update port: x11/wdm to 1.20
Message-ID:  <200003072014.MAA74518@freefall.freebsd.org>

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

>Number:         17252
>Category:       ports
>Synopsis:       Update port: x11/wdm to 1.20
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Tue Mar  7 12:20:03 PST 2000
>Closed-Date:
>Last-Modified:
>Originator:     KATO Tsuguru
>Release:        3.4-RELEASE i386
>Organization:
>Environment:
>Description:
- Update to version 1.20

New file:
patches/patch-am  patches/patch-an
files/xdm-3.3.2-auth.patch

Remove file:
patches/patch-aj
files/xdm-3.3.2-pamwdm2.patch  files/xdm-3.3.2-pamwdm3.patch

>How-To-Repeat:

>Fix:
diff -urN /usr/ports/x11/wdm/Makefile x11/wdm/Makefile
--- /usr/ports/x11/wdm/Makefile	Tue Mar  7 21:28:42 2000
+++ x11/wdm/Makefile	Wed Mar  8 03:42:03 2000
@@ -1,11 +1,11 @@
 # New ports collection makefile for:	wdm
-# Version required:	1.19
+# Version required:	1.20
 # Date created:		August 31, 1998
 # Whom:			Thomas Gellekum <tg@FreeBSD.org>
 #
 # $FreeBSD: ports/x11/wdm/Makefile,v 1.32 2000/03/07 11:52:38 tg Exp $
 
-DISTNAME=	wdm-1.19
+DISTNAME=	wdm-1.20
 CATEGORIES=	x11 windowmaker
 MASTER_SITES=	http://cortex.unice.fr/~jerome/WindowMaker/wdm/ \
 		http://www.de.freebsd.org/de/gif/bsd/
@@ -20,9 +20,9 @@
 DIST_SUBDIR=	wdm
 USE_X_PREFIX=	yes
 USE_AUTOCONF=	yes
-CONFIGURE_ENV=	CPPFLAGS='-I${LOCALBASE}/include \
-			-DCSRG_BASED -DHAS_SETUSERCONTEXT' \
-		LIBS='-L${LOCALBASE}/lib'
+CONFIGURE_ENV=	CPPFLAGS="-I${LOCALBASE}/include \
+			-DCSRG_BASED -DHAS_SETUSERCONTEXT" \
+		LIBS="-L${LOCALBASE}/lib ${LIBPAM}"
 CONFIGURE_ARGS=	--with-logdir=/var/log \
 		--with-runlockdir=/var/run \
 		--with-wdmdir=${PREFIX}/lib/X11/wdm \
@@ -30,15 +30,26 @@
 		--with-defuserpath=/bin:/usr/bin:/sbin:/usr/sbin:${X11BASE}/bin:${LOCALBASE}/bin \
 		--with-defsystempath=/bin:/usr/bin:/sbin:/usr/sbin:${X11BASE}/bin \
 		--with-wmlist=wmaker:afterstep:blackbox:ctwm:enlightenment:fvwm:fvwm2:fvwm95:olvwm:qvwm:tvtwm
-CONFIGURE_ARGS+=--enable-pam
 
 MAN1=	wdm.1 wdmLogin.1
 
 DAEMONPIC=	daemon1-HQ-1280x960.jpg
 
+.if defined(USE_PAM)
+CONFIGURE_ARGS+=	--enable-pam
+LIBPAM=		-lpam
+.endif
+
+pre-fetch:
+.if !defined(USE_PAM)
+	@${ECHO_MSG} "To build this port with PAM support, define \"USE_PAM\"."
+.endif
+
+post-extract:
+	@${CP} ${FILESDIR}/*.patch ${WRKSRC}/patches
+
 post-patch:
-	@${PERL} -pi -e 's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/doc/*.man
-	cp ${FILESDIR}/xdm-3.3.2-pamwdm[23].patch ${WRKSRC}/patches
+	@${PERL} -pi -e "s|%%PREFIX%%|${PREFIX}|g" ${WRKSRC}/doc/*.man
 
 pre-configure:
 	@(cd ${WRKSRC}; automake -a --include-deps)
diff -urN /usr/ports/x11/wdm/files/md5 x11/wdm/files/md5
--- /usr/ports/x11/wdm/files/md5	Wed Nov 10 21:13:25 1999
+++ x11/wdm/files/md5	Tue Mar  7 21:44:52 2000
@@ -1,2 +1,2 @@
-MD5 (wdm/wdm-1.19.tar.gz) = eacbfec965f2ccf1840ad457cb04a67e
+MD5 (wdm/wdm-1.20.tar.gz) = ad6e284113f72dcfce92cf6b1cba54fb
 MD5 (wdm/daemon1-HQ-1280x960.jpg) = b38f175cf6b7167484afac423837ed1a
diff -urN /usr/ports/x11/wdm/files/xdm-3.3.2-auth.patch x11/wdm/files/xdm-3.3.2-auth.patch
--- /usr/ports/x11/wdm/files/xdm-3.3.2-auth.patch	Thu Jan  1 09:00:00 1970
+++ x11/wdm/files/xdm-3.3.2-auth.patch	Tue Mar  7 23:21:50 2000
@@ -0,0 +1,20 @@
+--- xdm/auth.c	Sat Jan 18 16:02:18 1997
++++ src/auth.c	Tue Mar  7 23:21:07 2000
+@@ -365,7 +365,7 @@
+ 	}
+     	sprintf (d->authFile, "%s/%s/%s/A%s-XXXXXX",
+ 		 authDir, authdir1, authdir2, cleanname);
+-    	(void) mktemp (d->authFile);
++    	(void) mkstemp (d->authFile);
+     }
+     return TRUE;
+ }
+@@ -1187,7 +1187,7 @@
+ 	}
+ 	if (lockStatus != LOCK_SUCCESS) {
+ 	    sprintf (backup_name, "%s/.XauthXXXXXX", d->userAuthDir);
+-	    (void) mktemp (backup_name);
++	    (void) mkstemp (backup_name);
+ 	    lockStatus = XauLockAuth (backup_name, 1, 2, 10);
+ 	    Debug ("backup lock is %d\n", lockStatus);
+ 	    if (lockStatus == LOCK_SUCCESS) {
diff -urN /usr/ports/x11/wdm/files/xdm-3.3.2-pamwdm2.patch x11/wdm/files/xdm-3.3.2-pamwdm2.patch
--- /usr/ports/x11/wdm/files/xdm-3.3.2-pamwdm2.patch	Tue Mar  7 20:52:40 2000
+++ x11/wdm/files/xdm-3.3.2-pamwdm2.patch	Thu Jan  1 09:00:00 1970
@@ -1,65 +0,0 @@
---- orig/session.c	Wed Feb 23 22:40:10 2000
-+++ src/session.c	Wed Feb 23 18:56:25 2000
-@@ -55,6 +55,9 @@
- #ifdef K5AUTH
- # include <krb5/krb5.h>
- #endif
-+#ifdef USE_PAM
-+# include <security/pam_appl.h>
-+#endif
- 
- #ifndef GREET_USER_STATIC
- #include <dlfcn.h>
-@@ -141,6 +144,10 @@
- 
- static Jmp_buf	abortSession;
- 
-+#ifdef USE_PAM
-+extern pam_handle_t *pamh;
-+#endif
-+
- /* ARGSUSED */
- static SIGVAL
- catchTerm (n)
-@@ -482,6 +489,14 @@
- 	    }
- 	}
- #endif /* K5AUTH */
-+#ifdef USE_PAM
-+	if (pamh) {
-+	  /* shutdown PAM session */
-+	  pam_close_session(pamh, 0);
-+	  pam_end(pamh, PAM_SUCCESS);
-+	  pamh = NULL;
-+	}
-+#endif
-     }
-     Debug ("Display %s exiting with status %d\n", d->name, status);
-     exit (status);
-@@ -660,11 +675,26 @@
- 		Debug ("%s ", *f);
- 	Debug ("\n");
-     }
-+#ifdef USE_PAM
-+    if (pamh) pam_open_session(pamh, 0);
-+#endif    
-     switch (pid = fork ()) {
-     case 0:
- 	CleanUpChild ();
- 
- 	/* Do system-dependent login setup here */
-+
-+#ifdef USE_PAM
-+    /* pass in environment variables set by libpam and modules it called */
-+        if (pamh) {
-+          long i;
-+          char **pam_env = pam_getenvlist(pamh);
-+          for(i = 0; pam_env && pam_env[i]; i++)
-+            {
-+              verify->userEnviron = putEnv(pam_env[i], verify->userEnviron);
-+            }
-+        }
-+#endif
- 
- #ifndef AIXV3
- #ifndef HAS_SETUSERCONTEXT
diff -urN /usr/ports/x11/wdm/files/xdm-3.3.2-pamwdm3.patch x11/wdm/files/xdm-3.3.2-pamwdm3.patch
--- /usr/ports/x11/wdm/files/xdm-3.3.2-pamwdm3.patch	Tue Mar  7 20:52:40 2000
+++ x11/wdm/files/xdm-3.3.2-pamwdm3.patch	Thu Jan  1 09:00:00 1970
@@ -1,37 +0,0 @@
---- xdm/util.c	Thu Oct  3 17:49:48 1996
-+++ src/util.c	Wed Feb 23 22:48:49 2000
-@@ -140,6 +141,34 @@
- 	new[envsize+1] = 0;
- 	return new;
- }
-+
-+#ifdef USE_PAM
-+char **
-+putEnv(string, env)
-+     const char *string;
-+     char ** env;
-+{
-+  char *v, *b, *n;
-+  int nl;
-+  
-+  if ((b = strchr(string, '=')) == NULL) return NULL;
-+  v = b + 1;
-+  
-+  nl = b - string;
-+  if ((n = malloc(nl + 1)) == NULL)
-+    {
-+      LogOutOfMem ("putAllEnv");
-+      return NULL;
-+    }
-+  
-+  strncpy(n, string,nl + 1);
-+  n[nl] = 0;
-+  
-+  env = setEnv(env,n,v);
-+  free(n);
-+  return env;
-+}
-+#endif
- 
- freeEnv (env)
-     char    **env;
diff -urN /usr/ports/x11/wdm/patches/patch-af x11/wdm/patches/patch-af
--- /usr/ports/x11/wdm/patches/patch-af	Tue Nov  9 21:45:58 1999
+++ x11/wdm/patches/patch-af	Thu Jan  1 09:00:00 1970
@@ -1,11 +0,0 @@
---- aclocal.m4.orig	Thu Sep 16 16:56:32 1999
-+++ aclocal.m4	Sun Oct 31 23:41:54 1999
-@@ -20,7 +20,7 @@
- dnl AM_INIT_AUTOMAKE(package,version, [no-define])
- 
- AC_DEFUN(AM_INIT_AUTOMAKE,
--[AC_REQUIRE([AM_PROG_INSTALL])
-+[AC_REQUIRE([AC_PROG_INSTALL])
- PACKAGE=[$1]
- AC_SUBST(PACKAGE)
- VERSION=[$2]
diff -urN /usr/ports/x11/wdm/patches/patch-ag x11/wdm/patches/patch-ag
--- /usr/ports/x11/wdm/patches/patch-ag	Tue Mar  7 21:28:42 2000
+++ x11/wdm/patches/patch-ag	Tue Mar  7 21:40:50 2000
@@ -1,29 +1,6 @@
 --- configure.in.orig	Tue Sep 21 23:16:21 1999
-+++ configure.in	Wed Feb 23 21:26:13 2000
-@@ -50,9 +50,9 @@
- AM_CONDITIONAL(INSTALLPAM, test x$enable_pam = xyes)
- 
- if test "$enable_pam" = yes; then
--	AC_CHECK_LIB(pam, main, [PASSWDLIB="-lpam -ldl"
-+	AC_CHECK_LIB(pam, main, [PASSWDLIB="-lpam"
- 		AC_DEFINE_UNQUOTED(HAVE_PAM_LIB)],
--		[],-ldl)
-+		[],)
- fi
- 
- AC_ARG_WITH(pamdir,
-@@ -66,6 +66,10 @@
-     AC_MSG_CHECKING(for pam directory $PAM_DIR_PATH)
-     if test -d "$PAM_DIR_PATH"; then
- 	AC_MSG_RESULT(exists)
-+    elif test -f "/etc/pam.conf"; then
-+	AC_MSG_RESULT(using /etc/pam.conf)
-+	PAMDIR=none
-+	PAM_DIR_PATH=none
-     else
- 	AC_MSG_RESULT(does not exist)
- 	AC_MSG_WARN([this may not be a pam system <<--------------])
-@@ -183,7 +187,7 @@
++++ configure.in	Mon Nov  1 05:26:32 1999
+@@ -183,7 +183,7 @@
  
  XLFLAGS="$X_LIBS"
  
@@ -32,7 +9,7 @@
  
  XDM_EXTRA_LIBS="-lXmu -lXau -lXdmcp"
  
-@@ -504,7 +508,7 @@
+@@ -504,7 +504,7 @@
  AC_DEFINE_UNQUOTED(WDMDIR,"$DMDIR")
  AC_DEFINE_UNQUOTED(DEF_XDM_CONFIG,"$DMDIR/wdm-config")
  AC_DEFINE_UNQUOTED(DEF_CHOOSER,"$DMDIR/chooser")
diff -urN /usr/ports/x11/wdm/patches/patch-aj x11/wdm/patches/patch-aj
--- /usr/ports/x11/wdm/patches/patch-aj	Tue Mar  7 20:52:41 2000
+++ x11/wdm/patches/patch-aj	Thu Jan  1 09:00:00 1970
@@ -1,70 +0,0 @@
---- patches/xdm-3.3.2-pamwdm.patch.orig	Fri Aug 14 20:48:30 1998
-+++ patches/xdm-3.3.2-pamwdm.patch	Wed Feb 23 22:47:16 2000
-@@ -18,13 +18,15 @@
-  
-  # include	"greet.h"
-  
--@@ -104,6 +108,49 @@
-+@@ -104,6 +108,51 @@
-      return env;
-  }
-  
- +#ifdef USE_PAM
- +static char *PAM_password;
- +
-++pam_handle_t *pamh;
-++
- +static int PAM_conv (int num_msg,
- +		     const struct pam_message **msg,
- +		     struct pam_response **resp,
-@@ -68,18 +70,17 @@
-  int
-  Verify (d, greet, verify)
-  struct display		*d;
--@@ -121,6 +168,10 @@
-+@@ -121,6 +170,9 @@
-  #endif
-  	char		*shell, *home;
-  	char		**argv;
- +#ifdef USE_PAM
--+	pam_handle_t *pamh;
- +	int pam_error;
- +#endif
-  
-  	Debug ("Verify %s ...\n", greet->name);
-  	p = getpwnam (greet->name);
--@@ -131,6 +182,7 @@
-+@@ -131,6 +183,7 @@
-  	} else {
-  	    user_pass = p->pw_passwd;
-  	}
-@@ -87,7 +88,7 @@
-  #ifdef USESHADOW
-  	errno = 0;
-  	sp = getspnam(greet->name);
--@@ -153,6 +205,26 @@
-+@@ -153,6 +206,23 @@
-  			return 0;
-  		} /* else: null passwd okay */
-  	}
-@@ -98,6 +99,8 @@
- +	PAM_password = greet->password;
- +	pam_error = pam_start("wdm", p->pw_name, &PAM_conversation, &pamh);
- +	PAM_BAIL;
-++	pam_error = pam_set_item(pamh, PAM_TTY, d->name);
-++	PAM_BAIL;
- +	pam_error = pam_authenticate(pamh, 0);
- +	PAM_BAIL;
- +	pam_error = pam_acct_mgmt(pamh, 0);
-@@ -105,11 +108,6 @@
- +	PAM_BAIL;
- +	pam_error = pam_setcred(pamh, 0);
- +	PAM_BAIL;
--+	/* unfortunately, it's not clear at the moment how to do session
--+	 * management; it's possible, since xdm hangs around, but I don't
--+	 * see yet how to tear the sessions down.
--+	 */
--+	pam_end(pamh, PAM_SUCCESS);
- +#endif /* USE_PAM */
-  	Debug ("verify succeeded\n");
-  	bzero(user_pass, strlen(user_pass)); /* in case shadow password */
diff -urN /usr/ports/x11/wdm/patches/patch-ak x11/wdm/patches/patch-ak
--- /usr/ports/x11/wdm/patches/patch-ak	Tue Mar  7 20:52:41 2000
+++ x11/wdm/patches/patch-ak	Tue Mar  7 23:20:24 2000
@@ -1,11 +1,10 @@
 --- src/Makefile.am.orig	Wed Sep  8 23:24:03 1999
-+++ src/Makefile.am	Thu Feb 24 01:44:42 2000
-@@ -268,6 +268,8 @@
++++ src/Makefile.am	Tue Mar  7 23:20:07 2000
+@@ -268,6 +268,7 @@
  	patch -p1 <../patches/xdm-3.3.2-resource2.patch
  	cp -pf ../xdm/greeter/verify.c verify.c
  	patch -p2 <../patches/xdm-3.3.2-pamwdm.patch
-+	patch -p1 <../patches/xdm-3.3.2-pamwdm2.patch
-+	patch -p1 <../patches/xdm-3.3.2-pamwdm3.patch
++	patch -p1 <../patches/xdm-3.3.2-auth.patch
  	touch LinksDone
  
  
diff -urN /usr/ports/x11/wdm/patches/patch-am x11/wdm/patches/patch-am
--- /usr/ports/x11/wdm/patches/patch-am	Thu Jan  1 09:00:00 1970
+++ x11/wdm/patches/patch-am	Tue Mar  7 22:05:21 2000
@@ -0,0 +1,12 @@
+--- src/TestLogin.c.orig	Thu Jul  1 21:51:28 1999
++++ src/TestLogin.c	Tue Mar  7 22:05:04 2000
+@@ -67,7 +67,9 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <signal.h>
++#ifndef __STDC__
+ #include <malloc.h>
++#endif
+ 
+ 
+ #define forever 1
diff -urN /usr/ports/x11/wdm/patches/patch-an x11/wdm/patches/patch-an
--- /usr/ports/x11/wdm/patches/patch-an	Thu Jan  1 09:00:00 1970
+++ x11/wdm/patches/patch-an	Wed Mar  8 02:58:00 2000
@@ -0,0 +1,14 @@
+--- src/config/wdm.pamd.orig	Mon Feb 28 18:55:43 2000
++++ src/config/wdm.pamd	Wed Mar  8 02:57:48 2000
+@@ -1,8 +1,4 @@
+ #%PAM-1.0
+-auth       required	/lib/security/pam_pwdb.so shadow nullok
+-auth       required	/lib/security/pam_nologin.so
+-account    required	/lib/security/pam_pwdb.so
+-password   required	/lib/security/pam_cracklib.so
+-password   required	/lib/security/pam_pwdb.so shadow nullok use_authtok
+-session    required	/lib/security/pam_pwdb.so
+-session    optional     /lib/security/pam_console.so
++auth       sufficient	/usr/lib/pam_permit.so
++account    sufficient	/usr/lib/pam_permit.so
++session    sufficient	/usr/lib/pam_permit.so


>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?200003072014.MAA74518>