PERFORCE change 81642 for review
soc-bushman
soc-bushman at FreeBSD.org
Mon Aug 8 10:35:41 GMT 2005
http://perforce.freebsd.org/chv.cgi?CH=81642
Change 81642 by soc-bushman at soc-bushman_stinger on 2005/08/08 10:35:28
adding NIS support for openssh keys
Affected files ...
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/auth-rh-rsa.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/auth.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/auth.h#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/auth2-hostbased.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/auth2.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/config.h.in#2 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/configure.ac#2 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/hostfile.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/hostfile.h#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/initial_copy.sh#2 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/key.h#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/make.sh#2 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/patches/patch-auth-rh.rsa.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/patches/patch-auth.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/patches/patch-auth.h#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/patches/patch-auth2-hostbased.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/patches/patch-config.h.in#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/patches/patch-configure#2 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/patches/patch-configure.ac#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/patches/patch-hostfile.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/patches/patch-hostfile.h#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/patches/patch-sshconnect.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/Makefile#5 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/distinfo#2 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/batch.patch#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/gss-serv.c.patch#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-auth-pam.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-auth-rh.rsa.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-auth.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-auth.h#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-auth1.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-auth2-hostbased.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-auth2.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-clientloop.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-config.h.in#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-configure.ac#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-fake-rfc2553.h#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-hostfile.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-hostfile.h#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-loginrec.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-regress-test-exec.sh#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-session.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-sshconnect.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-sshd.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-sshd_config#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/patch-sshpty.c#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/servconf.c.patch#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/files/sshd.sh#3 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/pkg-descr#2 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/pkg-message#2 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/port/pkg-plist#2 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/result_copy.sh#2 edit
.. //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/sshconnect.c#3 edit
Differences ...
==== //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/auth-rh-rsa.c#3 (text+ko) ====
==== //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/auth.c#3 (text+ko) ====
==== //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/auth.h#3 (text+ko) ====
==== //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/auth2-hostbased.c#3 (text+ko) ====
==== //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/auth2.c#3 (text+ko) ====
==== //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/config.h.in#2 (text+ko) ====
==== //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/configure.ac#2 (text+ko) ====
==== //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/hostfile.c#3 (text+ko) ====
@@ -59,6 +59,13 @@
#if defined (HAVE_NSDISPATCH) && defined (USE_NSSWITCH)
+#ifdef YP
+#include <rpcsvc/ypclnt.h>
+#include <rpcsvc/yp.h>
+#include <sys/param.h>
+#include <unistd.h>
+#endif
+
#ifndef NSDB_SSH_HOSTKEYS
#define NSDB_SSH_HOSTKEYS "ssh_hostkeys"
#endif /* NSDB_SSH_HOSTKEYS */
@@ -82,6 +89,10 @@
static HostStatus check_host_in_hostfile_by_key_or_type(const char *,
const char *, const Key *, int, Key *, int *);
+#ifdef YP
+static HostStatus check_host_in_nis_by_key_or_type(const char *,
+ const Key *, int, Key *, int *);
+#endif
enum constants {
CHECK_HOST,
@@ -90,10 +101,16 @@
static const ns_src defaultsrc[] = {
{ NSSRC_FILES, NS_SUCCESS },
+#ifdef YP
+ { NSSRC_NIS, NS_SUCCESS },
+#endif
{ NULL, 0 }
};
static int files_check_host_by_key_or_type(void *, void *, va_list);
+#ifdef YP
+static int nis_check_host_by_key_or_type(void *, void *, va_list);
+#endif
/* files backend implementation */
static int
@@ -159,12 +176,181 @@
return (NS_NOTFOUND);
}
+#ifdef YP
+/* NIS backend implementation */
+static HostStatus
+check_host_in_hostfile_by_key_or_type(const char *host, const Key *key,
+ int keytype, Key *found, int *numret)
+{
+ u_int kbits;
+ int linenum;
+ char *cp, *cp2, *hashed_host;
+ HostStatus end_return;
+
+ char buf[YPMAXRECORD];
+ char domain[MAXHOSTNAMELEN];
+
+ char *lastkey;
+ char *current;
+ int current_len;
+
+ char *resultbuf;
+ int resultbuf_len;
+
+ int rv;
+
+ if (getdomainname(domain, sizeof(domain)) != 0)
+ return (HOST_NEW);
+
+ current = NULL;
+ current_len = 0;
+ resultbuf = NULL;
+ resultbuf_len = 0;
+ linenum = 0;
+
+ rv = yp_first(domain, "ssh_hostkeys", ¤t, ¤t_len,
+ &resultbuf, &resultbuf_len);
+
+ end_return = HOST_NEW;
+ while (rv) {
+ cp = resultbuf;
+
+ /* comments, trailing spaces and tabs should be deleted during
+ NIS map making, but we still should check for them - just in case */
+ for (; *cp == ' ' || *cp == '\t'; cp++)
+ ;
+ if (!*cp || *cp == '#' || *cp == '\n')
+ goto next_iter;
+
+ /* Find the end of the host name portion. */
+ for (cp2 = cp; *cp2 && *cp2 != ' ' && *cp2 != '\t'; cp2++)
+ ;
+
+ if (match_hostname(host, cp, (u_int) (cp2 - cp)) != 1) {
+ if (*cp != HASH_DELIM)
+ goto next_iter;
+ hashed_host = host_hash(host, cp, (u_int) (cp2 - cp));
+ if (hashed_host == NULL) {
+ debug("Invalid hashed host line %d of NIS source",
+ linenum);
+ goto next_iter;
+ }
+ if (strncmp(hashed_host, cp, (u_int) (cp2 - cp)) != 0)
+ goto next_iter;
+ }
+
+ /* Got a match. Skip host name. */
+ cp = cp2;
+
+ /*
+ * Extract the key from the line. This will skip any leading
+ * whitespace. Ignore badly formatted lines.
+ */
+ if (!hostfile_read_key(&cp, &kbits, found))
+ goto next_iter;
+
+ if (numret != NULL)
+ *numret = linenum;
+
+ if (key == NULL) {
+ /* we found a key of the requested type */
+ if (found->type == keytype) {
+ end_return = HOST_FOUND;
+ goto fin;
+ }
+ goto next_iter;
+ }
+
+ if (!hostfile_check_key(kbits, found, host, "NIS source", linenum))
+ goto next_iter;
+
+ /* Check if the current key is the same as the given key. */
+ if (key_equal(key, found)) {
+ /* Ok, they match. */
+ debug3("check_host_in_nis: match line %d", linenum);
+ end_return = HOST_OK;
+ goto fin;
+ }
+ /*
+ * They do not match. We will continue to go through the
+ * file; however, we note that we will not return that it is
+ * new.
+ */
+ end_return = HOST_CHANGED;
+
+next_iter:
+ lastkey = current;
+ rv = yp_next(domain, "ssh_hostkeys", current, current_len,
+ resultbuf, resultbuf_len);
+ free(lastkey);
+
+ ++linenum;
+ }
+
+fin:
+ free(resultbuf);
+ return (end_return);
+}
+
+static int
+nis_check_host_by_key_or_type(void *result, void *mdata, va_list ap)
+{
+ const char *host;
+ const Key *key;
+ Key *found;
+ int keytype;
+
+ int rv, numret;
+ enum constants how;
+
+ how = (enum constants)mdata;
+ switch (how) {
+ case CHECK_HOST:
+ host = va_arg(ap, const char *);
+ key = va_arg(ap, const Key *);
+ found = va_arg(ap, Key *);
+ break;
+ case LOOKUP_KEY_BY_TYPE:
+ host = va_arg(ap, const char *);
+ keytype = va_arg(ap, int);
+ found = va_arg(ap, Key *);
+ break;
+ default:
+ return NS_NOTFOUND;
+ }
+
+ switch (how) {
+ case CHECK_HOST:
+ rv = check_host_in_nis_by_key_or_type(host, key, 0, found, &numret);
+
+ debug3("nis_check_host_by_key_or_type: CHECK_HOST - %d", rv);
+ if (result != NULL)
+ *((int *)result) = rv;
+ return ((rv == HOST_NEW) ? NS_NOTFOUND : NS_SUCCESS);
+
+ case LOOKUP_KEY_BY_TYPE:
+ rv = (check_host_in_nis_by_key_or_type(host, NULL, keytype, found,
+ &numret) == HOST_FOUND);
+
+ debug3("nis_check_host_by_key_or_type: LOOKUP_KEY_BY_TYPE - %d", rv);
+ if (result != NULL)
+ *((int *)result) = rv;
+ return ((rv == 0) ? NS_NOTFOUND : NS_SUCCESS);
+ }
+
+ return (NS_NOTFOUND);
+}
+#endif
+
/* nsswitch interface functions implementation */
HostStatus
nsswitch_check_host(const char *host, const Key *key, Key *found)
{
static const ns_dtab dtab[] = {
{ NSSRC_FILES, files_check_host_by_key_or_type, (void *)CHECK_HOST },
+#ifdef YP
+ { NSSRC_NIS, nis_check_host_by_key_or_type, (void *)CHECK_HOST },
+#endif
{ NULL, NULL, NULL }
};
@@ -189,6 +375,9 @@
{
static const ns_dtab dtab[] = {
{ NSSRC_FILES, files_check_host_by_key_or_type, (void *)LOOKUP_KEY_BY_TYPE },
+#ifdef YP
+ { NSSRC_NIS, nis_check_host_by_key_or_type, (void *)LOOKUP_KEY_BY_TYPE },
+#endif
{ NULL, NULL, NULL }
};
==== //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/hostfile.h#3 (text+ko) ====
==== //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/initial_copy.sh#2 (text+ko) ====
==== //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/key.h#3 (text+ko) ====
==== //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/make.sh#2 (text+ko) ====
==== //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/patches/patch-auth-rh.rsa.c#3 (text+ko) ====
==== //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/patches/patch-auth.c#3 (text+ko) ====
==== //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/patches/patch-auth.h#3 (text+ko) ====
==== //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/patches/patch-auth2-hostbased.c#3 (text+ko) ====
==== //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/patches/patch-config.h.in#3 (text+ko) ====
==== //depot/projects/soc2005/nsswitch_cached/tests/ssh_hostkeys_test/patches/patch-configure#2 (text+ko) ====
@@ -1,19363 +1,0 @@
---- configure.orig Mon Jul 18 14:12:19 2005
-+++ configure Mon Jul 18 14:12:32 2005
-@@ -1,10 +1,19 @@
- #! /bin/sh
- # Guess values for system-dependent variables and create Makefiles.
--# Generated by GNU Autoconf 2.59 for OpenSSH Portable.
-+# Generated by GNU Autoconf 2.53 for OpenSSH Portable.
- #
--# Copyright (C) 2003 Free Software Foundation, Inc.
-+# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002
-+# Free Software Foundation, Inc.
- # This configure script is free software; the Free Software Foundation
- # gives unlimited permission to copy, distribute and modify it.
-+
-+if expr a : '\(a\)' >/dev/null 2>&1; then
-+ as_expr=expr
-+else
-+ as_expr=false
-+fi
-+
-+
- ## --------------------- ##
- ## M4sh Initialization. ##
- ## --------------------- ##
-@@ -13,57 +22,46 @@
- if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
- emulate sh
- NULLCMD=:
-- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
-- # is contrary to our usage. Disable this feature.
-- alias -g '${1+"$@"}'='"$@"'
- elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
- set -o posix
- fi
--DUALCASE=1; export DUALCASE # for MKS sh
-
-+# NLS nuisances.
- # Support unset when possible.
--if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
-+if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
- as_unset=unset
- else
- as_unset=false
- fi
-
--
--# Work around bugs in pre-3.0 UWIN ksh.
--$as_unset ENV MAIL MAILPATH
--PS1='$ '
--PS2='> '
--PS4='+ '
--
--# NLS nuisances.
--for as_var in \
-- LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
-- LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
-- LC_TELEPHONE LC_TIME
--do
-- if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
-- eval $as_var=C; export $as_var
-- else
-- $as_unset $as_var
-- fi
--done
--
--# Required to use basename.
--if expr a : '\(a\)' >/dev/null 2>&1; then
-- as_expr=expr
--else
-- as_expr=false
--fi
--
--if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
-- as_basename=basename
--else
-- as_basename=false
--fi
-+(set +x; test -n "`(LANG=C; export LANG) 2>&1`") &&
-+ { $as_unset LANG || test "${LANG+set}" != set; } ||
-+ { LANG=C; export LANG; }
-+(set +x; test -n "`(LC_ALL=C; export LC_ALL) 2>&1`") &&
-+ { $as_unset LC_ALL || test "${LC_ALL+set}" != set; } ||
-+ { LC_ALL=C; export LC_ALL; }
-+(set +x; test -n "`(LC_TIME=C; export LC_TIME) 2>&1`") &&
-+ { $as_unset LC_TIME || test "${LC_TIME+set}" != set; } ||
-+ { LC_TIME=C; export LC_TIME; }
-+(set +x; test -n "`(LC_CTYPE=C; export LC_CTYPE) 2>&1`") &&
-+ { $as_unset LC_CTYPE || test "${LC_CTYPE+set}" != set; } ||
-+ { LC_CTYPE=C; export LC_CTYPE; }
-+(set +x; test -n "`(LANGUAGE=C; export LANGUAGE) 2>&1`") &&
-+ { $as_unset LANGUAGE || test "${LANGUAGE+set}" != set; } ||
-+ { LANGUAGE=C; export LANGUAGE; }
-+(set +x; test -n "`(LC_COLLATE=C; export LC_COLLATE) 2>&1`") &&
-+ { $as_unset LC_COLLATE || test "${LC_COLLATE+set}" != set; } ||
-+ { LC_COLLATE=C; export LC_COLLATE; }
-+(set +x; test -n "`(LC_NUMERIC=C; export LC_NUMERIC) 2>&1`") &&
-+ { $as_unset LC_NUMERIC || test "${LC_NUMERIC+set}" != set; } ||
-+ { LC_NUMERIC=C; export LC_NUMERIC; }
-+(set +x; test -n "`(LC_MESSAGES=C; export LC_MESSAGES) 2>&1`") &&
-+ { $as_unset LC_MESSAGES || test "${LC_MESSAGES+set}" != set; } ||
-+ { LC_MESSAGES=C; export LC_MESSAGES; }
-
-
- # Name of the executable.
--as_me=`$as_basename "$0" ||
-+as_me=`(basename "$0") 2>/dev/null ||
- $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)$' \| \
-@@ -74,7 +72,6 @@
- /^X\/\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
-
--
- # PATH needs CR, and LINENO needs CR and PATH.
- # Avoid depending upon Character Ranges.
- as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-@@ -85,15 +82,15 @@
-
- # The user is always right.
- if test "${PATH_SEPARATOR+set}" != set; then
-- echo "#! /bin/sh" >conf$$.sh
-- echo "exit 0" >>conf$$.sh
-- chmod +x conf$$.sh
-- if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-+ echo "#! /bin/sh" >conftest.sh
-+ echo "exit 0" >>conftest.sh
-+ chmod +x conftest.sh
-+ if (PATH=".;."; conftest.sh) >/dev/null 2>&1; then
- PATH_SEPARATOR=';'
- else
- PATH_SEPARATOR=:
- fi
-- rm -f conf$$.sh
-+ rm -f conftest.sh
- fi
-
-
-@@ -141,8 +138,6 @@
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then
-- $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
-- $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
- CONFIG_SHELL=$as_dir/$as_base
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$0" ${1+"$@"}
-@@ -215,20 +210,13 @@
- fi
- rm -f conf$$ conf$$.exe conf$$.file
-
--if mkdir -p . 2>/dev/null; then
-- as_mkdir_p=:
--else
-- test -d ./-p && rmdir ./-p
-- as_mkdir_p=false
--fi
--
- as_executable_p="test -f"
-
- # Sed expression to map a string onto a valid CPP name.
--as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-+as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g"
-
- # Sed expression to map a string onto a valid variable name.
--as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-+as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g"
-
-
- # IFS
-@@ -238,7 +226,7 @@
- IFS=" $as_nl"
-
- # CDPATH.
--$as_unset CDPATH
-+$as_unset CDPATH || test "${CDPATH+set}" != set || { CDPATH=$PATH_SEPARATOR; export CDPATH; }
-
-
- # Name of the host.
-@@ -252,7 +240,6 @@
- # Initializations.
- #
- ac_default_prefix=/usr/local
--ac_config_libobj_dir=.
- cross_compiling=no
- subdirs=
- MFLAGS=
-@@ -309,8 +296,6 @@
- # include <unistd.h>
- #endif"
-
--ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT build build_cpu build_vendor build_os host host_cpu host_vendor host_os AWK CPP RANLIB ac_ct_RANLIB INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA AR CAT KILL PERL SED ENT TEST_MINUS_S_SH SH TEST_SHELL PATH_GROUPADD_PROG PATH_USERADD_PROG MAKE_PACKAGE_SUPPORTED LOGIN_PROGRAM_FALLBACK PATH_PASSWD_PROG LD EGREP LIBWRAP LIBEDIT LIBPAM INSTALL_SSH_RAND_HELPER SSH_PRIVSEP_USER PROG_LS PROG_NETSTAT PROG_ARP PROG_IFCONFIG PROG_JSTAT PROG_PS PROG_SAR PROG_W PROG_WHO PROG_LAST PROG_LASTLOG PROG_DF PROG_VMSTAT PROG_UPTIME PROG_IPCS PROG_TAIL INSTALL_SSH_PRNG_CMDS OPENSC_CONFIG PRIVSEP_PATH xauth_path
STRIP_OPT XAUTH_PATH NROFF MANTYPE mansubdir user_path piddir LIBOBJS LTLIBOBJS'
--ac_subst_files=''
-
- # Initialize some variables set by options.
- ac_init_help=
-@@ -668,7 +653,7 @@
-
- # Be sure to have absolute paths.
- for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
-- localstatedir libdir includedir oldincludedir infodir mandir
-+ localstatedir libdir includedir oldincludedir infodir mandir
- do
- eval ac_val=$`echo $ac_var`
- case $ac_val in
-@@ -708,10 +693,10 @@
- # Try the directory containing this script, then its parent.
- ac_confdir=`(dirname "$0") 2>/dev/null ||
- $as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-- X"$0" : 'X\(//\)[^/]' \| \
-- X"$0" : 'X\(//\)$' \| \
-- X"$0" : 'X\(/\)' \| \
-- . : '\(.\)' 2>/dev/null ||
-+ X"$0" : 'X\(//\)[^/]' \| \
-+ X"$0" : 'X\(//\)$' \| \
-+ X"$0" : 'X\(/\)' \| \
-+ . : '\(.\)' 2>/dev/null ||
- echo X"$0" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-@@ -734,9 +719,6 @@
- { (exit 1); exit 1; }; }
- fi
- fi
--(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null ||
-- { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2
-- { (exit 1); exit 1; }; }
- srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
- ac_env_build_alias_set=${build_alias+set}
- ac_env_build_alias_value=$build_alias
-@@ -803,9 +785,9 @@
- cat <<_ACEOF
- Installation directories:
- --prefix=PREFIX install architecture-independent files in PREFIX
-- [$ac_default_prefix]
-+ [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
-- [PREFIX]
-+ [PREFIX]
-
- By default, \`make install' will install all the files in
- \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
-@@ -941,45 +923,12 @@
- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_builddir$srcdir ;;
- esac
--
--# Do not use `cd foo && pwd` to compute absolute paths, because
--# the directories may not exist.
--case `pwd` in
--.) ac_abs_builddir="$ac_dir";;
--*)
-- case "$ac_dir" in
-- .) ac_abs_builddir=`pwd`;;
-- [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
-- *) ac_abs_builddir=`pwd`/"$ac_dir";;
-- esac;;
--esac
--case $ac_abs_builddir in
--.) ac_abs_top_builddir=${ac_top_builddir}.;;
--*)
-- case ${ac_top_builddir}. in
-- .) ac_abs_top_builddir=$ac_abs_builddir;;
-- [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
-- *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
-- esac;;
--esac
--case $ac_abs_builddir in
--.) ac_abs_srcdir=$ac_srcdir;;
--*)
-- case $ac_srcdir in
-- .) ac_abs_srcdir=$ac_abs_builddir;;
-- [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
-- *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
-- esac;;
--esac
--case $ac_abs_builddir in
--.) ac_abs_top_srcdir=$ac_top_srcdir;;
--*)
-- case $ac_top_srcdir in
-- .) ac_abs_top_srcdir=$ac_abs_builddir;;
-- [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
-- *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
-- esac;;
--esac
-+# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be
-+# absolute.
-+ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd`
-+ac_abs_top_builddir=`cd "$ac_dir" && cd $ac_top_builddir && pwd`
-+ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd`
-+ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd`
-
- cd $ac_dir
- # Check for guested configure; otherwise get Cygnus style configure.
-@@ -990,7 +939,7 @@
- echo
- $SHELL $ac_srcdir/configure --help=recursive
- elif test -f $ac_srcdir/configure.ac ||
-- test -f $ac_srcdir/configure.in; then
-+ test -f $ac_srcdir/configure.in; then
- echo
- $ac_configure --help
- else
-@@ -1004,9 +953,10 @@
- if $ac_init_version; then
- cat <<\_ACEOF
- OpenSSH configure Portable
--generated by GNU Autoconf 2.59
-+generated by GNU Autoconf 2.53
-
--Copyright (C) 2003 Free Software Foundation, Inc.
-+Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002
-+Free Software Foundation, Inc.
- This configure script is free software; the Free Software Foundation
- gives unlimited permission to copy, distribute and modify it.
- _ACEOF
-@@ -1018,7 +968,7 @@
- running configure, to aid debugging if configure makes a mistake.
-
- It was created by OpenSSH $as_me Portable, which was
--generated by GNU Autoconf 2.59. Invocation command line was
-+generated by GNU Autoconf 2.53. Invocation command line was
-
- $ $0 $@
-
-@@ -1070,54 +1020,27 @@
-
- # Keep a trace of the command line.
- # Strip out --no-create and --no-recursion so they do not pile up.
--# Strip out --silent because we don't want to record it for future runs.
- # Also quote any args containing shell meta-characters.
--# Make two passes to allow for proper duplicate-argument suppression.
- ac_configure_args=
--ac_configure_args0=
--ac_configure_args1=
- ac_sep=
--ac_must_keep_next=false
--for ac_pass in 1 2
-+for ac_arg
- do
-- for ac_arg
-- do
-- case $ac_arg in
-- -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
-- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-- | -silent | --silent | --silen | --sile | --sil)
-- continue ;;
-- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
-- ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
-- esac
-- case $ac_pass in
-- 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
-- 2)
-- ac_configure_args1="$ac_configure_args1 '$ac_arg'"
-- if test $ac_must_keep_next = true; then
-- ac_must_keep_next=false # Got value, back to normal.
-- else
-- case $ac_arg in
-- *=* | --config-cache | -C | -disable-* | --disable-* \
-- | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
-- | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
-- | -with-* | --with-* | -without-* | --without-* | --x)
-- case "$ac_configure_args0 " in
-- "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
-- esac
-- ;;
-- -* ) ac_must_keep_next=true ;;
-- esac
-- fi
-- ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
-- # Get rid of the leading space.
-- ac_sep=" "
-- ;;
-- esac
-- done
-+ case $ac_arg in
-+ -no-create | --no-create | --no-creat | --no-crea | --no-cre \
-+ | --no-cr | --no-c | -n ) continue ;;
-+ -no-recursion | --no-recursion | --no-recursio | --no-recursi \
-+ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
-+ continue ;;
-+ *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
-+ ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
-+ esac
-+ case " $ac_configure_args " in
-+ *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
-+ *) ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
-+ ac_sep=" " ;;
-+ esac
-+ # Get rid of the leading space.
- done
--$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
--$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
-
- # When interrupted or exit'd, cleanup temporary files, and complete
- # config.log. We remove comments because anyway the quotes in there
-@@ -1128,7 +1051,6 @@
- # Save into config.log some information that might help in debugging.
- {
- echo
--
- cat <<\_ASBOX
- ## ---------------- ##
- ## Cache variables. ##
-@@ -1141,45 +1063,16 @@
- case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- sed -n \
-- "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
-- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
-+ "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
-+ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
- ;;
- *)
- sed -n \
-- "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
-+ "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
- ;;
- esac;
- }
- echo
--
-- cat <<\_ASBOX
--## ----------------- ##
--## Output variables. ##
--## ----------------- ##
--_ASBOX
-- echo
-- for ac_var in $ac_subst_vars
-- do
-- eval ac_val=$`echo $ac_var`
-- echo "$ac_var='"'"'$ac_val'"'"'"
-- done | sort
-- echo
--
-- if test -n "$ac_subst_files"; then
-- cat <<\_ASBOX
--## ------------- ##
--## Output files. ##
--## ------------- ##
--_ASBOX
-- echo
-- for ac_var in $ac_subst_files
-- do
-- eval ac_val=$`echo $ac_var`
-- echo "$ac_var='"'"'$ac_val'"'"'"
-- done | sort
-- echo
-- fi
--
- if test -s confdefs.h; then
- cat <<\_ASBOX
- ## ----------- ##
-@@ -1187,14 +1080,14 @@
- ## ----------- ##
- _ASBOX
- echo
-- sed "/^$/d" confdefs.h | sort
-+ sed "/^$/d" confdefs.h
- echo
- fi
- test "$ac_signal" != 0 &&
- echo "$as_me: caught signal $ac_signal"
- echo "$as_me: exit $exit_status"
- } >&5
-- rm -f core *.core &&
-+ rm -f core core.* *.core &&
- rm -rf conftest* confdefs* conf$$* $ac_clean_files &&
- exit $exit_status
- ' 0
-@@ -1274,7 +1167,7 @@
- # value.
- ac_cache_corrupted=false
- for ac_var in `(set) 2>&1 |
-- sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
-+ sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
- eval ac_old_set=\$ac_cv_env_${ac_var}_set
- eval ac_new_set=\$ac_env_${ac_var}_set
- eval ac_old_val="\$ac_cv_env_${ac_var}_value"
-@@ -1291,13 +1184,13 @@
- ,);;
- *)
- if test "x$ac_old_val" != "x$ac_new_val"; then
-- { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
-+ { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
- echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
-- { echo "$as_me:$LINENO: former value: $ac_old_val" >&5
-+ { echo "$as_me:$LINENO: former value: $ac_old_val" >&5
- echo "$as_me: former value: $ac_old_val" >&2;}
-- { echo "$as_me:$LINENO: current value: $ac_new_val" >&5
-+ { echo "$as_me:$LINENO: current value: $ac_new_val" >&5
- echo "$as_me: current value: $ac_new_val" >&2;}
-- ac_cache_corrupted=:
-+ ac_cache_corrupted=:
- fi;;
- esac
- # Pass precious variables to config.status.
-@@ -1354,8 +1247,7 @@
-
-
-
--
-- ac_config_headers="$ac_config_headers config.h"
-+ac_config_headers="$ac_config_headers config.h"
-
- ac_ext=c
- ac_cpp='$CPP $CPPFLAGS'
-@@ -1561,7 +1453,9 @@
- # However, it has the same basename, so the bogon will be chosen
- # first if we set CC to just the basename; use the full file name.
- shift
-- ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
-+ set dummy "$as_dir/$ac_word" ${1+"$@"}
-+ shift
-+ ac_cv_prog_CC="$@"
- fi
- fi
- fi
-@@ -1666,10 +1560,8 @@
- fi
-
-
--test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
--See \`config.log' for more details." >&5
--echo "$as_me: error: no acceptable C compiler found in \$PATH
--See \`config.log' for more details." >&2;}
-+test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH" >&5
-+echo "$as_me: error: no acceptable C compiler found in \$PATH" >&2;}
- { (exit 1); exit 1; }; }
-
- # Provide some information about the compiler.
-@@ -1693,12 +1585,15 @@
- (exit $ac_status); }
-
- cat >conftest.$ac_ext <<_ACEOF
--/* confdefs.h. */
--_ACEOF
--cat confdefs.h >>conftest.$ac_ext
--cat >>conftest.$ac_ext <<_ACEOF
--/* end confdefs.h. */
-+#line $LINENO "configure"
-+#include "confdefs.h"
-
-+#ifdef F77_DUMMY_MAIN
-+# ifdef __cplusplus
-+ extern "C"
-+# endif
-+ int F77_DUMMY_MAIN() { return 1; }
-+#endif
- int
- main ()
- {
-@@ -1708,12 +1603,12 @@
- }
- _ACEOF
- ac_clean_files_save=$ac_clean_files
--ac_clean_files="$ac_clean_files a.out a.exe b.out"
-+ac_clean_files="$ac_clean_files a.out a.exe"
- # Try to create an executable without -o first, disregard a.out.
- # It will help us diagnose broken compilers, and finding out an intuition
- # of exeext.
--echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
--echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6
-+echo "$as_me:$LINENO: checking for C compiler default output" >&5
-+echo $ECHO_N "checking for C compiler default output... $ECHO_C" >&6
- ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
- if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5
- (eval $ac_link_default) 2>&5
-@@ -1727,39 +1622,26 @@
- # Be careful to initialize this variable, since it used to be cached.
- # Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile.
- ac_cv_exeext=
--# b.out is created by i960 compilers.
--for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out
--do
-- test -f "$ac_file" || continue
-+for ac_file in `ls a_out.exe a.exe conftest.exe 2>/dev/null;
-+ ls a.out conftest 2>/dev/null;
-+ ls a.* conftest.* 2>/dev/null`; do
- case $ac_file in
-- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj )
-- ;;
-- conftest.$ac_ext )
-- # This is the source file.
-- ;;
-- [ab].out )
-- # We found the default executable, but exeext='' is most
-- # certainly right.
-- break;;
-- *.* )
-- ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-- # FIXME: I believe we export ac_cv_exeext for Libtool,
-- # but it would be cool to find out if it's true. Does anybody
-- # maintain Libtool? --akim.
-- export ac_cv_exeext
-- break;;
-- * )
-- break;;
-+ *.$ac_ext | *.o | *.obj | *.xcoff | *.tds | *.d | *.pdb | *.xSYM ) ;;
-+ a.out ) # We found the default executable, but exeext='' is most
-+ # certainly right.
-+ break;;
-+ *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-+ # FIXME: I believe we export ac_cv_exeext for Libtool --akim.
-+ export ac_cv_exeext
-+ break;;
-+ * ) break;;
- esac
- done
- else
- echo "$as_me: failed program was:" >&5
--sed 's/^/| /' conftest.$ac_ext >&5
--
--{ { echo "$as_me:$LINENO: error: C compiler cannot create executables
--See \`config.log' for more details." >&5
--echo "$as_me: error: C compiler cannot create executables
--See \`config.log' for more details." >&2;}
-+cat conftest.$ac_ext >&5
-+{ { echo "$as_me:$LINENO: error: C compiler cannot create executables" >&5
-+echo "$as_me: error: C compiler cannot create executables" >&2;}
- { (exit 77); exit 77; }; }
- fi
-
-@@ -1786,11 +1668,9 @@
- cross_compiling=yes
- else
- { { echo "$as_me:$LINENO: error: cannot run C compiled programs.
--If you meant to cross compile, use \`--host'.
--See \`config.log' for more details." >&5
-+If you meant to cross compile, use \`--host'." >&5
- echo "$as_me: error: cannot run C compiled programs.
--If you meant to cross compile, use \`--host'.
--See \`config.log' for more details." >&2;}
-+If you meant to cross compile, use \`--host'." >&2;}
- { (exit 1); exit 1; }; }
- fi
- fi
-@@ -1798,7 +1678,7 @@
- echo "$as_me:$LINENO: result: yes" >&5
- echo "${ECHO_T}yes" >&6
-
--rm -f a.out a.exe conftest$ac_cv_exeext b.out
-+rm -f a.out a.exe conftest$ac_cv_exeext
- ac_clean_files=$ac_clean_files_save
- # Check the compiler produces executables we can run. If not, either
- # the compiler is broken, or we cross compile.
-@@ -1818,21 +1698,18 @@
- # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
- # work properly (i.e., refer to `conftest.exe'), while it won't with
- # `rm'.
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list