From bf209f590108a12a9758dcfcdf4297a3d593ce87 Mon Sep 17 00:00:00 2001 From: Tim Rice Date: Mon, 13 Feb 2006 12:46:44 -0800 Subject: - (tim) [buildpkg.sh.in] Make the names consistent. s/pkg_post_make_install_fixes.sh/pkg-post-make-install-fixes.sh/ OK dtucker@ --- buildpkg.sh.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'buildpkg.sh.in') diff --git a/buildpkg.sh.in b/buildpkg.sh.in index cb9eb3048..31db10d66 100644 --- a/buildpkg.sh.in +++ b/buildpkg.sh.in @@ -35,7 +35,7 @@ SSHDGID=67 # Default privsep gid SYSVINITSTART=S98 SYSVINITSTOPT=K30 # We will source these if they exist -POST_MAKE_INSTALL_FIXES=./pkg_post_make_install_fixes.sh +POST_MAKE_INSTALL_FIXES=./pkg-post-make-install-fixes.sh POST_PROTOTYPE_EDITS=./pkg-post-prototype-edit.sh # We'll be one level deeper looking for these PKG_PREINSTALL_LOCAL=../pkg-preinstall.local -- cgit v1.2.3 From 733a292c1125b070a2e49e3e514912460966a03e Mon Sep 17 00:00:00 2001 From: Darren Tucker Date: Sat, 9 Sep 2006 20:41:25 +1000 Subject: - (dtucker) [buildpkg.sh.in] Always create privsep user. ok djm@ --- ChangeLog | 3 ++- buildpkg.sh.in | 10 +--------- 2 files changed, 3 insertions(+), 10 deletions(-) (limited to 'buildpkg.sh.in') diff --git a/ChangeLog b/ChangeLog index 5791ec255..0ebeee281 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,7 @@ 20060909 - (dtucker) [openbsd-compat/bsd-snprintf.c] Add stdarg.h. - (dtucker) [contrib/aix/buildbff.sh] Always create privsep user. + - (dtucker) [buildpkg.sh.in] Always create privsep user. ok djm@ 20060908 - (dtucker) [auth-sia.c] Add includes required for build on Tru64. Patch @@ -5419,4 +5420,4 @@ - (djm) Trim deprecated options from INSTALL. Mention UsePAM - (djm) Fix quote handling in sftp; Patch from admorten AT umich.edu -$Id: ChangeLog,v 1.4539 2006/09/09 10:34:15 dtucker Exp $ +$Id: ChangeLog,v 1.4540 2006/09/09 10:41:25 dtucker Exp $ diff --git a/buildpkg.sh.in b/buildpkg.sh.in index 31db10d66..a3960cb89 100644 --- a/buildpkg.sh.in +++ b/buildpkg.sh.in @@ -311,14 +311,7 @@ then chroot=echo fi -if egrep '^[ \t]*UsePrivilegeSeparation[ \t]+no' \${PKG_INSTALL_ROOT}/$sysconfdir/sshd_config >/dev/null -then - echo "UsePrivilegeSeparation disabled in config, not creating PrivSep user" - echo "or group." -else - echo "UsePrivilegeSeparation enabled in config (or defaulting to on)." - - # user required? + echo "PrivilegeSeparation user always required." if cut -f1 -d: \${PKG_INSTALL_ROOT}/etc/passwd | egrep '^'$SSH_PRIVSEP_USER'\$' >/dev/null then echo "PrivSep user $SSH_PRIVSEP_USER already exists." @@ -363,7 +356,6 @@ else \$chroot ${PATH_USERADD_PROG} -c 'SSHD PrivSep User' -s /bin/false -g $SSH_PRIVSEP_USER \$sshduid $SSH_PRIVSEP_USER \$chroot ${PATH_PASSWD_PROG} -l $SSH_PRIVSEP_USER } -fi [ "\${POST_INS_START}" = "yes" ] && ${TEST_DIR}/etc/init.d/${SYSVINIT_NAME} start exit 0 -- cgit v1.2.3 From 223897a01af2f496577cbf8f7fa5c5209109ef8e Mon Sep 17 00:00:00 2001 From: Damien Miller Date: Tue, 12 Sep 2006 21:54:10 +1000 Subject: - (djm) [Makefile.in buildpkg.sh.in configure.ac openssh.xml.in] Support SMF in Solaris Packages if enabled by configure. Patch from Chad Mynhier, tested by dtucker@ --- ChangeLog | 7 ++- Makefile.in | 4 +- buildpkg.sh.in | 174 ++++++++++++++++++++++++++++++++++++++++++++++++--------- configure.ac | 9 +-- openssh.xml.in | 87 +++++++++++++++++++++++++++++ 5 files changed, 247 insertions(+), 34 deletions(-) create mode 100644 openssh.xml.in (limited to 'buildpkg.sh.in') diff --git a/ChangeLog b/ChangeLog index 128c91491..c61fd9343 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +20060912 + - (djm) [Makefile.in buildpkg.sh.in configure.ac openssh.xml.in] + Support SMF in Solaris Packages if enabled by configure. Patch from + Chad Mynhier, tested by dtucker@ + 20060911 - (dtucker) [cipher-aes.c] Include string.h for memcpy and friends. Noted by Pekka Savola. @@ -5428,4 +5433,4 @@ - (djm) Trim deprecated options from INSTALL. Mention UsePAM - (djm) Fix quote handling in sftp; Patch from admorten AT umich.edu -$Id: ChangeLog,v 1.4543 2006/09/11 10:46:13 dtucker Exp $ +$Id: ChangeLog,v 1.4544 2006/09/12 11:54:10 djm Exp $ diff --git a/Makefile.in b/Makefile.in index 525b08eba..71f3623f1 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,4 +1,4 @@ -# $Id: Makefile.in,v 1.281 2006/08/30 17:24:41 djm Exp $ +# $Id: Makefile.in,v 1.282 2006/09/12 11:54:10 djm Exp $ # uncomment if you run a non bourne compatable shell. Ie. csh #SHELL = @SH@ @@ -203,7 +203,7 @@ clean: regressclean distclean: regressclean rm -f *.o *.a $(TARGETS) logintest config.cache config.log - rm -f *.out core opensshd.init + rm -f *.out core opensshd.init openssh.xml rm -f Makefile buildpkg.sh config.h config.status ssh_prng_cmds rm -f survey.sh openbsd-compat/regress/Makefile *~ rm -rf autom4te.cache diff --git a/buildpkg.sh.in b/buildpkg.sh.in index a3960cb89..a3b9014bc 100644 --- a/buildpkg.sh.in +++ b/buildpkg.sh.in @@ -46,6 +46,8 @@ PKG_REQUEST_LOCAL=../pkg-request.local # end of sourced files # OPENSSHD=opensshd.init +OPENSSH_MANIFEST=openssh.xml +OPENSSH_FMRI=svc:/site/openssh:default PATH_GROUPADD_PROG=@PATH_GROUPADD_PROG@ PATH_USERADD_PROG=@PATH_USERADD_PROG@ @@ -60,6 +62,10 @@ SYSTEM_DIR="/etc \ /etc/rc1.d \ /etc/rc2.d \ /etc/opt \ +/lib \ +/lib/svc \ +/lib/svc/method \ +/lib/svc/method/site \ /opt \ /opt/bin \ /usr \ @@ -82,6 +88,9 @@ SYSTEM_DIR="/etc \ /var \ /var/opt \ /var/run \ +/var/svc \ +/var/svc/manifest \ +/var/svc/manifest/site \ /var/tmp \ /tmp" @@ -119,6 +128,12 @@ do eval $confvar=`grep "^$confvar=" Makefile | cut -d = -f 2` done +## Are we using Solaris' SMF? +DO_SMF=0 +if egrep "^#define USE_SOLARIS_PROCESS_CONTRACTS" config.h > /dev/null 2>&1 +then + DO_SMF=1 +fi ## Collect value of privsep user for confvar in SSH_PRIVSEP_USER @@ -168,10 +183,25 @@ then fi ## Setup our run level stuff while we are at it. -mkdir -p $FAKE_ROOT${TEST_DIR}/etc/init.d +if [ $DO_SMF -eq 1 ] +then + # For Solaris' SMF, /lib/svc/method/site is the preferred place + # for start/stop scripts that aren't supplied with the OS, and + # similarly /var/svc/manifest/site for manifests. + mkdir -p $FAKE_ROOT${TEST_DIR}/lib/svc/method/site + mkdir -p $FAKE_ROOT${TEST_DIR}/var/svc/manifest/site + + cp ${OPENSSHD} $FAKE_ROOT${TEST_DIR}/lib/svc/method/site/${SYSVINIT_NAME} + chmod 744 $FAKE_ROOT${TEST_DIR}/lib/svc/method/site/${SYSVINIT_NAME} + + cp ${OPENSSH_MANIFEST} $FAKE_ROOT${TEST_DIR}/var/svc/manifest/site + chmod 644 $FAKE_ROOT${TEST_DIR}/var/svc/manifest/site/${OPENSSH_MANIFEST} +else + mkdir -p $FAKE_ROOT${TEST_DIR}/etc/init.d -cp ${OPENSSHD} $FAKE_ROOT${TEST_DIR}/etc/init.d/${SYSVINIT_NAME} -chmod 744 $FAKE_ROOT${TEST_DIR}/etc/init.d/${SYSVINIT_NAME} + cp ${OPENSSHD} $FAKE_ROOT${TEST_DIR}/etc/init.d/${SYSVINIT_NAME} + chmod 744 $FAKE_ROOT${TEST_DIR}/etc/init.d/${SYSVINIT_NAME} +fi [ "${PERMIT_ROOT_LOGIN}" = no ] && \ perl -p -i -e "s/#PermitRootLogin yes/PermitRootLogin no/" \ @@ -221,15 +251,22 @@ touch depend ## Build space file echo "Building space file..." -cat > space << _EOF -# extra space required by start/stop links added by installf in postinstall +if [ $DO_SMF -eq 1 ] +then + # XXX Is this necessary? If not, remove space line from mk-proto.awk. + touch space +else + cat > space << _EOF +# extra space required by start/stop links added by installf +# in postinstall $TEST_DIR/etc/rc0.d/${SYSVINITSTOPT}${SYSVINIT_NAME} 0 1 $TEST_DIR/etc/rc2.d/${SYSVINITSTART}${SYSVINIT_NAME} 0 1 _EOF -[ "$RC1_D" = no ] || \ -echo "$TEST_DIR/etc/rc1.d/${SYSVINITSTOPT}${SYSVINIT_NAME} 0 1" >> space -[ "$RCS_D" = yes ] && \ -echo "$TEST_DIR/etc/rcS.d/${SYSVINITSTOPT}${SYSVINIT_NAME} 0 1" >> space + [ "$RC1_D" = no ] || \ + echo "$TEST_DIR/etc/rc1.d/${SYSVINITSTOPT}${SYSVINIT_NAME} 0 1" >> space + [ "$RCS_D" = yes ] && \ + echo "$TEST_DIR/etc/rcS.d/${SYSVINITSTOPT}${SYSVINIT_NAME} 0 1" >> space +fi ## Build preinstall file echo "Building preinstall file..." @@ -243,7 +280,16 @@ _EOF cat >> preinstall << _EOF # -[ "\${PRE_INS_STOP}" = "yes" ] && ${TEST_DIR}/etc/init.d/${SYSVINIT_NAME} stop +if [ "\${PRE_INS_STOP}" = "yes" ] +then + if [ $DO_SMF -eq 1 ] + then + svcadm disable $OPENSSH_FMRI + else + ${TEST_DIR}/etc/init.d/${SYSVINIT_NAME} stop + fi +fi + exit 0 _EOF @@ -265,28 +311,41 @@ cat > postinstall << _EOF } # make rc?.d dirs only if we are doing a test install -[ -n "${TEST_DIR}" ] && { +[ -n "${TEST_DIR}" ] && [ $DO_SMF -ne 1 ] && { [ "$RCS_D" = yes ] && mkdir -p ${TEST_DIR}/etc/rcS.d mkdir -p ${TEST_DIR}/etc/rc0.d [ "$RC1_D" = no ] || mkdir -p ${TEST_DIR}/etc/rc1.d mkdir -p ${TEST_DIR}/etc/rc2.d } -if [ "\${USE_SYM_LINKS}" = yes ] +if [ $DO_SMF -eq 1 ] then - [ "$RCS_D" = yes ] && \ -installf ${PKGNAME} \${PKG_INSTALL_ROOT}$TEST_DIR/etc/rcS.d/${SYSVINITSTOPT}${SYSVINIT_NAME}=../init.d/${SYSVINIT_NAME} s - installf ${PKGNAME} \${PKG_INSTALL_ROOT}$TEST_DIR/etc/rc0.d/${SYSVINITSTOPT}${SYSVINIT_NAME}=../init.d/${SYSVINIT_NAME} s - [ "$RC1_D" = no ] || \ - installf ${PKGNAME} \${PKG_INSTALL_ROOT}$TEST_DIR/etc/rc1.d/${SYSVINITSTOPT}${SYSVINIT_NAME}=../init.d/${SYSVINIT_NAME} s - installf ${PKGNAME} \${PKG_INSTALL_ROOT}$TEST_DIR/etc/rc2.d/${SYSVINITSTART}${SYSVINIT_NAME}=../init.d/${SYSVINIT_NAME} s + # Delete the existing service, if it exists, then import the + # new one. + if svcs $OPENSSH_FMRI > /dev/null 2>&1 + then + svccfg delete -f $OPENSSH_FMRI + fi + # NOTE, if manifest enables sshd by default, this will actually + # start the daemon, which may not be what the user wants. + svccfg import ${TEST_DIR}/var/svc/manifest/site/$OPENSSH_MANIFEST else - [ "$RCS_D" = yes ] && \ -installf ${PKGNAME} \${PKG_INSTALL_ROOT}$TEST_DIR/etc/rcS.d/${SYSVINITSTOPT}${SYSVINIT_NAME}=\${PKG_INSTALL_ROOT}$TEST_DIR/etc/init.d/${SYSVINIT_NAME} l - installf ${PKGNAME} \${PKG_INSTALL_ROOT}$TEST_DIR/etc/rc0.d/${SYSVINITSTOPT}${SYSVINIT_NAME}=\${PKG_INSTALL_ROOT}$TEST_DIR/etc/init.d/${SYSVINIT_NAME} l - [ "$RC1_D" = no ] || \ - installf ${PKGNAME} \${PKG_INSTALL_ROOT}$TEST_DIR/etc/rc1.d/${SYSVINITSTOPT}${SYSVINIT_NAME}=\${PKG_INSTALL_ROOT}$TEST_DIR/etc/init.d/${SYSVINIT_NAME} l - installf ${PKGNAME} \${PKG_INSTALL_ROOT}$TEST_DIR/etc/rc2.d/${SYSVINITSTART}${SYSVINIT_NAME}=\${PKG_INSTALL_ROOT}$TEST_DIR/etc/init.d/${SYSVINIT_NAME} l + if [ "\${USE_SYM_LINKS}" = yes ] + then + [ "$RCS_D" = yes ] && \ + installf ${PKGNAME} \${PKG_INSTALL_ROOT}$TEST_DIR/etc/rcS.d/${SYSVINITSTOPT}${SYSVINIT_NAME}=../init.d/${SYSVINIT_NAME} s + installf ${PKGNAME} \${PKG_INSTALL_ROOT}$TEST_DIR/etc/rc0.d/${SYSVINITSTOPT}${SYSVINIT_NAME}=../init.d/${SYSVINIT_NAME} s + [ "$RC1_D" = no ] || \ + installf ${PKGNAME} \${PKG_INSTALL_ROOT}$TEST_DIR/etc/rc1.d/${SYSVINITSTOPT}${SYSVINIT_NAME}=../init.d/${SYSVINIT_NAME} s + installf ${PKGNAME} \${PKG_INSTALL_ROOT}$TEST_DIR/etc/rc2.d/${SYSVINITSTART}${SYSVINIT_NAME}=../init.d/${SYSVINIT_NAME} s + else + [ "$RCS_D" = yes ] && \ + installf ${PKGNAME} \${PKG_INSTALL_ROOT}$TEST_DIR/etc/rcS.d/${SYSVINITSTOPT}${SYSVINIT_NAME}=\${PKG_INSTALL_ROOT}$TEST_DIR/etc/init.d/${SYSVINIT_NAME} l + installf ${PKGNAME} \${PKG_INSTALL_ROOT}$TEST_DIR/etc/rc0.d/${SYSVINITSTOPT}${SYSVINIT_NAME}=\${PKG_INSTALL_ROOT}$TEST_DIR/etc/init.d/${SYSVINIT_NAME} l + [ "$RC1_D" = no ] || \ + installf ${PKGNAME} \${PKG_INSTALL_ROOT}$TEST_DIR/etc/rc1.d/${SYSVINITSTOPT}${SYSVINIT_NAME}=\${PKG_INSTALL_ROOT}$TEST_DIR/etc/init.d/${SYSVINIT_NAME} l + installf ${PKGNAME} \${PKG_INSTALL_ROOT}$TEST_DIR/etc/rc2.d/${SYSVINITSTART}${SYSVINIT_NAME}=\${PKG_INSTALL_ROOT}$TEST_DIR/etc/init.d/${SYSVINIT_NAME} l + fi fi # If piddir doesn't exist we add it. (Ie. --with-pid-dir=/var/opt/ssh) @@ -357,7 +416,17 @@ fi \$chroot ${PATH_PASSWD_PROG} -l $SSH_PRIVSEP_USER } -[ "\${POST_INS_START}" = "yes" ] && ${TEST_DIR}/etc/init.d/${SYSVINIT_NAME} start +if [ "\${POST_INS_START}" = "yes" ] +then + if [ $DO_SMF -eq 1 ] + then + # See svccfg import note above. The service may already + # be started. + svcadm enable $OPENSSH_FMRI + else + ${TEST_DIR}/etc/init.d/${SYSVINIT_NAME} start + fi +fi exit 0 _EOF @@ -366,7 +435,12 @@ echo "Building preremove file..." cat > preremove << _EOF #! ${SCRIPT_SHELL} # -${TEST_DIR}/etc/init.d/${SYSVINIT_NAME} stop +if [ $DO_SMF -eq 1 ] +then + svcadm disable $OPENSSH_FMRI +else + ${TEST_DIR}/etc/init.d/${SYSVINIT_NAME} stop +fi _EOF # local preremove changes here @@ -381,6 +455,13 @@ echo "Building postremove file..." cat > postremove << _EOF #! ${SCRIPT_SHELL} # +if [ $DO_SMF -eq 1 ] +then + if svcs $OPENSSH_FMRI > /dev/null 2>&1 + then + svccfg delete -f $OPENSSH_FMRI + fi +fi _EOF # local postremove changes here @@ -446,7 +527,45 @@ done _EOF -cat >> request << _EOF +if [ $DO_SMF -eq 1 ] +then + # This could get hairy, as the running sshd may not be under SMF. + # We'll assume an earlier version of OpenSSH started via SMF. + cat >> request << _EOF +PRE_INS_STOP=no +POST_INS_START=no +# determine if should restart the daemon +if [ -s ${piddir}/sshd.pid ] && \ + /usr/bin/svcs $OPENSSH_FMRI 2>&1 | egrep "^online" > /dev/null 2>&1 +then + ans=\`ckyorn -d n \ +-p "Should the running sshd daemon be restarted? ${DEF_MSG}"\` || exit \$? + case \$ans in + [y,Y]*) PRE_INS_STOP=yes + POST_INS_START=yes + ;; + esac + +else + +# determine if we should start sshd + ans=\`ckyorn -d n \ +-p "Start the sshd daemon after installing this package? ${DEF_MSG}"\` || exit \$? + case \$ans in + [y,Y]*) POST_INS_START=yes ;; + esac +fi + +# make parameters available to installation service, +# and so to any other packaging scripts +cat >\$1 <> request << _EOF USE_SYM_LINKS=no PRE_INS_STOP=no POST_INS_START=no @@ -487,6 +606,7 @@ POST_INS_START='\$POST_INS_START' ! _EOF +fi # local request changes here [ -s "${PKG_REQUEST_LOCAL}" ] && . ${PKG_REQUEST_LOCAL} diff --git a/configure.ac b/configure.ac index 80b0360c0..cfc5d594a 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,4 @@ -# $Id: configure.ac,v 1.363 2006/09/10 10:25:51 dtucker Exp $ +# $Id: configure.ac,v 1.364 2006/09/12 11:54:11 djm Exp $ # # Copyright (c) 1999-2004 Damien Miller # @@ -15,7 +15,7 @@ # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. AC_INIT(OpenSSH, Portable, openssh-unix-dev@mindrot.org) -AC_REVISION($Revision: 1.363 $) +AC_REVISION($Revision: 1.364 $) AC_CONFIG_SRCDIR([ssh.c]) AC_CONFIG_HEADER(config.h) @@ -3897,8 +3897,9 @@ dnl Add now. CFLAGS="$CFLAGS $werror_flags" AC_EXEEXT -AC_CONFIG_FILES([Makefile buildpkg.sh opensshd.init openbsd-compat/Makefile \ - openbsd-compat/regress/Makefile scard/Makefile ssh_prng_cmds survey.sh]) +AC_CONFIG_FILES([Makefile buildpkg.sh opensshd.init openssh.xml \ + openbsd-compat/Makefile openbsd-compat/regress/Makefile \ + scard/Makefile ssh_prng_cmds survey.sh]) AC_OUTPUT # Print summary of options diff --git a/openssh.xml.in b/openssh.xml.in new file mode 100644 index 000000000..655ee5c9e --- /dev/null +++ b/openssh.xml.in @@ -0,0 +1,87 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -- cgit v1.2.3 From 09f1093a29e6dcbec76cfa1831d080ced2d4b627 Mon Sep 17 00:00:00 2001 From: Tim Rice Date: Fri, 6 Oct 2006 14:58:38 -0700 Subject: 20061006 - (tim) [buildpkg.sh.in] Use uname -r instead of -v in OS_VER for Solaris. Differentiate between OpenServer 5 and OpenServer 6 --- ChangeLog | 6 +++++- buildpkg.sh.in | 11 +++++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) (limited to 'buildpkg.sh.in') diff --git a/ChangeLog b/ChangeLog index 8bfd2b878..15bf56263 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +20061006 + - (tim) [buildpkg.sh.in] Use uname -r instead of -v in OS_VER for Solaris. + Differentiate between OpenServer 5 and OpenServer 6 + 20061003 - (tim) [configure.ac] Move CHECK_HEADERS test before platform specific section so additional platform specific CHECK_HEADER tests will work @@ -2515,4 +2519,4 @@ OpenServer 6 and add osr5bigcrypt support so when someone migrates passwords between UnixWare and OpenServer they will still work. OK dtucker@ -$Id: ChangeLog,v 1.4566 2006/10/03 16:34:35 tim Exp $ +$Id: ChangeLog,v 1.4567 2006/10/06 21:58:38 tim Exp $ diff --git a/buildpkg.sh.in b/buildpkg.sh.in index a3b9014bc..9e4ff4239 100644 --- a/buildpkg.sh.in +++ b/buildpkg.sh.in @@ -154,15 +154,22 @@ ARCH=`uname -m` DEF_MSG="\n" OS_VER=`uname -v` SCRIPT_SHELL=/sbin/sh +UNAME_R=`uname -r` UNAME_S=`uname -s` case ${UNAME_S} in SunOS) UNAME_S=Solaris + OS_VER=${UNAME_R} ARCH=`uname -p` RCS_D=yes DEF_MSG="(default: n)" ;; - SCO_SV) UNAME_S=OpenServer + SCO_SV) case ${UNAME_R} in + 3.2) UNAME_S=OpenServer5 OS_VER=`uname -X | grep Release | sed -e 's/^Rel.*3.2v//'` + ;; + 5) UNAME_S=OpenServer6 + ;; + esac SCRIPT_SHELL=/bin/sh RC1_D=no DEF_MSG="(default: n)" @@ -481,7 +488,7 @@ _EOF [ -x /usr/bin/ckyorn ] || cat >> request << _EOF ckyorn() { -# for some strange reason OpenServer has no ckyorn +# for some strange reason OpenServer5 has no ckyorn # We build a striped down version here DEFAULT=n -- cgit v1.2.3 From 77674b1efa744ad03eca3ca1cfcff3abecd55134 Mon Sep 17 00:00:00 2001 From: Tim Rice Date: Fri, 6 Oct 2006 18:49:36 -0700 Subject: - (tim) [buildpkg.sh.in] Some systems have really limited nawk (OpenServer). Allow setting alternate awk in openssh-config.local. --- ChangeLog | 4 +++- buildpkg.sh.in | 3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) (limited to 'buildpkg.sh.in') diff --git a/ChangeLog b/ChangeLog index 08f48d61c..b5f5fcc47 100644 --- a/ChangeLog +++ b/ChangeLog @@ -4,6 +4,8 @@ - (dtucker) [configure.ac] Set put -lselinux into $LIBS while testing for SELinux functions so they're detected correctly. Patch from pebenito at gentoo.org. + - (tim) [buildpkg.sh.in] Some systems have really limited nawk (OpenServer). + Allow setting alternate awk in openssh-config.local. 20061003 - (tim) [configure.ac] Move CHECK_HEADERS test before platform specific @@ -2522,4 +2524,4 @@ OpenServer 6 and add osr5bigcrypt support so when someone migrates passwords between UnixWare and OpenServer they will still work. OK dtucker@ -$Id: ChangeLog,v 1.4568 2006/10/06 23:07:20 dtucker Exp $ +$Id: ChangeLog,v 1.4569 2006/10/07 01:49:36 tim Exp $ diff --git a/buildpkg.sh.in b/buildpkg.sh.in index 9e4ff4239..17349f7fc 100644 --- a/buildpkg.sh.in +++ b/buildpkg.sh.in @@ -24,6 +24,7 @@ PKGNAME=OpenSSH # revisions within the same version (REV=a) #REV= SYSVINIT_NAME=opensshd +AWK=${AWK:="nawk"} MAKE=${MAKE:="make"} SSHDUID=67 # Default privsep uid SSHDGID=67 # Default privsep gid @@ -645,7 +646,7 @@ cat >mk-proto.awk << _EOF _EOF find . | egrep -v "prototype|pkginfo|mk-proto.awk" | sort | \ - pkgproto $PROTO_ARGS | nawk -f mk-proto.awk > prototype + pkgproto $PROTO_ARGS | ${AWK} -f mk-proto.awk > prototype # /usr/local is a symlink on some systems [ "${USR_LOCAL_IS_SYMLINK}" = yes ] && { -- cgit v1.2.3 From c3af6d4d130a35120713d937e7d5efc933e86c3a Mon Sep 17 00:00:00 2001 From: Tim Rice Date: Thu, 1 Mar 2007 09:34:52 -0800 Subject: - (tim) [buildpkg.sh.in openssh.xml.in] Clean up Solaris 10 smf(5) bits. "Looks sane" dtucker@ --- ChangeLog | 4 +++- buildpkg.sh.in | 16 +++++++--------- openssh.xml.in | 5 ++++- 3 files changed, 14 insertions(+), 11 deletions(-) (limited to 'buildpkg.sh.in') diff --git a/ChangeLog b/ChangeLog index feee3ff98..6377c49a6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -6,6 +6,8 @@ block as its interaction with KbdInteractive makes it difficult to support. Also, relocate the CR/kbdint option special-case code into servconf. "please commit" djm@, ok markus@ for the relocation. + - (tim) [buildpkg.sh.in openssh.xml.in] Clean up Solaris 10 smf(5) bits. + "Looks sane" dtucker@ 20070228 - (dtucker) OpenBSD CVS Sync @@ -2782,4 +2784,4 @@ OpenServer 6 and add osr5bigcrypt support so when someone migrates passwords between UnixWare and OpenServer they will still work. OK dtucker@ -$Id: ChangeLog,v 1.4625 2007/03/01 10:31:28 dtucker Exp $ +$Id: ChangeLog,v 1.4626 2007/03/01 17:34:52 tim Exp $ diff --git a/buildpkg.sh.in b/buildpkg.sh.in index 17349f7fc..8a96b9050 100644 --- a/buildpkg.sh.in +++ b/buildpkg.sh.in @@ -48,7 +48,7 @@ PKG_REQUEST_LOCAL=../pkg-request.local # OPENSSHD=opensshd.init OPENSSH_MANIFEST=openssh.xml -OPENSSH_FMRI=svc:/site/openssh:default +OPENSSH_FMRI=svc:/site/${SYSVINIT_NAME}:default PATH_GROUPADD_PROG=@PATH_GROUPADD_PROG@ PATH_USERADD_PROG=@PATH_USERADD_PROG@ @@ -202,8 +202,9 @@ then cp ${OPENSSHD} $FAKE_ROOT${TEST_DIR}/lib/svc/method/site/${SYSVINIT_NAME} chmod 744 $FAKE_ROOT${TEST_DIR}/lib/svc/method/site/${SYSVINIT_NAME} - cp ${OPENSSH_MANIFEST} $FAKE_ROOT${TEST_DIR}/var/svc/manifest/site - chmod 644 $FAKE_ROOT${TEST_DIR}/var/svc/manifest/site/${OPENSSH_MANIFEST} + cat ${OPENSSH_MANIFEST} | sed "s|__SYSVINIT_NAME__|${SYSVINIT_NAME}|" \ + > $FAKE_ROOT${TEST_DIR}/var/svc/manifest/site/${SYSVINIT_NAME}.xml + chmod 644 $FAKE_ROOT${TEST_DIR}/var/svc/manifest/site/${SYSVINIT_NAME}.xml else mkdir -p $FAKE_ROOT${TEST_DIR}/etc/init.d @@ -334,9 +335,8 @@ then then svccfg delete -f $OPENSSH_FMRI fi - # NOTE, if manifest enables sshd by default, this will actually - # start the daemon, which may not be what the user wants. - svccfg import ${TEST_DIR}/var/svc/manifest/site/$OPENSSH_MANIFEST + # NOTE, The manifest disables sshd by default. + svccfg import ${TEST_DIR}/var/svc/manifest/site/${SYSVINIT_NAME}.xml else if [ "\${USE_SYM_LINKS}" = yes ] then @@ -428,8 +428,6 @@ if [ "\${POST_INS_START}" = "yes" ] then if [ $DO_SMF -eq 1 ] then - # See svccfg import note above. The service may already - # be started. svcadm enable $OPENSSH_FMRI else ${TEST_DIR}/etc/init.d/${SYSVINIT_NAME} start @@ -544,7 +542,7 @@ PRE_INS_STOP=no POST_INS_START=no # determine if should restart the daemon if [ -s ${piddir}/sshd.pid ] && \ - /usr/bin/svcs $OPENSSH_FMRI 2>&1 | egrep "^online" > /dev/null 2>&1 + /usr/bin/svcs -H $OPENSSH_FMRI 2>&1 | egrep "^online" > /dev/null 2>&1 then ans=\`ckyorn -d n \ -p "Should the running sshd daemon be restarted? ${DEF_MSG}"\` || exit \$? diff --git a/openssh.xml.in b/openssh.xml.in index 655ee5c9e..2fcdea0a1 100644 --- a/openssh.xml.in +++ b/openssh.xml.in @@ -23,6 +23,9 @@ type='service' version='1'> + @@ -53,7 +56,7 @@ -- cgit v1.2.3