%bcond_with hpn_none # with hpn (above) and '-z' none cipher option
#
%if %{with hpn_none}
-%undefine with_hpn
+%undefine with_hpn
%endif
# gtk2-based gnome-askpass means no gnome1-based
%{?with_gtk:%undefine with_gnome}
+%define _rel 0.1
Summary: OpenSSH free Secure Shell (SSH) implementation
Summary(de): OpenSSH - freie Implementation der Secure Shell (SSH)
Summary(es): Implementación libre de SSH
Summary(ru): OpenSSH - Ó×ÏÂÏÄÎÁÑ ÒÅÁÌÉÚÁÃÉÑ ÐÒÏÔÏËÏÌÁ Secure Shell (SSH)
Summary(uk): OpenSSH - צÌØÎÁ ÒÅÁ̦ÚÁÃ¦Ñ ÐÒÏÔÏËÏÌÕ Secure Shell (SSH)
Name: openssh
-Version: 4.3p1
-Release: 3%{?with_hpn:hpn}%{?with_hpn_none:hpn_none}
+Version: 4.4p1
+Release: %{_rel}%{?with_hpn:hpn}%{?with_hpn_none:hpn_none}
Epoch: 2
License: BSD
Group: Applications/Networking
Source0: ftp://ftp.ca.openbsd.org/pub/OpenBSD/OpenSSH/portable/%{name}-%{version}.tar.gz
-# Source0-md5: eaeb880b1b6c63b9a4d7c5b1e74727c4
+# Source0-md5: 793a709a8de695c22f523024d7e9bf07
Source1: %{name}d.conf
Source2: %{name}.conf
Source3: %{name}d.init
Source7: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
# Source7-md5: 66943d481cc422512b537bcc2c7400d1
Source9: http://www.taiyo.co.jp/~gotoh/ssh/connect.c
-# NoSource9-md5: e1c3cbed88f08ea778d90813d48cd428
+# Source9-md5: b856937f1cdfca7a3ccfb2fac36ef726
Source10: http://www.taiyo.co.jp/~gotoh/ssh/connect.html
-# NoSource10-md5: ec74f3e3b2ea3a7dc84c7988235b6fcf
+# Source10-md5: bb972b3a9d435c62023b355960d78f78
Source11: ssh-agent.sh
Source12: ssh-agent.conf
Patch0: %{name}-no_libnsl.patch
Patch3: %{name}-pam_misc.patch
Patch4: %{name}-sigpipe.patch
# http://www.opendarwin.org/projects/openssh-lpk/
-Patch5: %{name}-lpk-4.1p1-0.3.6.patch
+Patch5: %{name}-lpk-4.3p1-0.3.7.patch
Patch6: %{name}-heimdal.patch
Patch7: %{name}-pam-conv.patch
# http://chrootssh.sourceforge.net/download/osshChroot-3.7.1p2.diff
Patch8: %{name}-chroot.patch
Patch9: %{name}-selinux.patch
Patch10: %{name}-selinux-pld.patch
+# HPN patches rediffed due sigpipe patch.
# High Performance SSH/SCP - HPN-SSH - http://www.psc.edu/networking/projects/hpn-ssh/
# http://www.psc.edu/networking/projects/hpn-ssh/openssh-4.2p1-hpn11.diff
-Patch11: %{name}-4.2p1-hpn11.patch
+Patch11: %{name}-4.3p1-hpn11.patch
# Adds HPN (see p11) and an undocumented -z none cipher flag
# http://www.psc.edu/networking/projects/hpn-ssh/openssh-4.2p1-hpn11-none.diff
-Patch12: %{name}-4.2p1-hpn11-none.patch
+Patch12: %{name}-4.3p1-hpn11-none.patch
Patch13: %{name}-include.patch
URL: http://www.openssh.com/
BuildRequires: %{__perl}
BuildRequires: openssl-devel >= 0.9.7d
BuildRequires: pam-devel
%{?with_gtk:BuildRequires: pkgconfig}
-BuildRequires: rpmbuild(macros) >= 1.202
+BuildRequires: rpmbuild(macros) >= 1.318
BuildRequires: zlib-devel
Requires: FHS >= 2.1-24
Requires: pam >= 0.79.0
%{?with_ldap:%patch5 -p1}
%{?with_kerberos5:%patch6 -p1}
#%patch7 -p1
-%patch8 -p1
-%{?with_selinux:%patch9 -p1}
-%{?with_selinux:%patch10 -p1}
+#%patch8 -p1 ? MERGED IN?
+#%{?with_selinux:%patch9 -p1} ? MERGED IN?
+#%{?with_selinux:%patch10 -p1} ? NEEDS MERGE?
%{?with_hpn:%patch11 -p1}
%{?with_hpn_none:%patch12 -p1}
%patch13 -p1
%{?with_kerberos5:--with-kerberos5} \
--with-privsep-path=%{_privsepdir} \
--with-pid-dir=%{_localstatedir}/run \
- --with-xauth=/usr/bin/xauth
+ --with-xauth=/usr/bin/xauth \
+ --enable-utmpx \
+ --enable-wtmpx
-echo '#define LOGIN_PROGRAM "/bin/login"' >>config.h
+echo '#define LOGIN_PROGRAM "/bin/login"' >>config.h
%{__make}
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
-install connect $RPM_BUILD_ROOT%{_bindir}
+install connect $RPM_BUILD_ROOT%{_bindir}
install %{SOURCE4} $RPM_BUILD_ROOT/etc/pam.d/sshd
install %{SOURCE6} $RPM_BUILD_ROOT/etc/pam.d/passwdssh
install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/sshd
touch $RPM_BUILD_ROOT/etc/security/blacklist.sshd
%if "%{_lib}" != "lib"
-find $RPM_BUILD_ROOT%{_sysconfdir} -type f -print0 | xargs -0 perl -pi -e "s#/usr/lib#/usr/%{_lib}#"
+find $RPM_BUILD_ROOT%{_sysconfdir} -type f -print0 | xargs -0 sed -i -e 's#%{_prefix}/lib#%{_libdir}#'
%endif
-cat << EOF >$RPM_BUILD_ROOT/etc/env.d/SSH_ASKPASS
+cat << 'EOF' > $RPM_BUILD_ROOT/etc/env.d/SSH_ASKPASS
#SSH_ASKPASS="%{_libexecdir}/ssh-askpass"
EOF
%clean
rm -rf $RPM_BUILD_ROOT
+%post clients
+%env_update
+
+%postun clients
+%env_update
+
+%post gnome-askpass
+%env_update
+
+%postun gnome-askpass
+%env_update
+
%pre server
%useradd -P %{name}-server -u 40 -d %{_privsepdir} -s /bin/false -c "OpenSSH PrivSep User" -g nobody sshd
%post server
/sbin/chkconfig --add sshd
-if [ -f /var/lock/subsys/sshd ]; then
- /etc/rc.d/init.d/sshd restart 1>&2
-else
- echo "Run \"/etc/rc.d/init.d/sshd start\" to start openssh daemon."
-fi
+%service sshd reload "openssh daemon"
if ! grep -qs ssh /etc/security/passwd.conf ; then
umask 022
echo "ssh" >> /etc/security/passwd.conf
%preun server
if [ "$1" = "0" ]; then
- if [ -f /var/lock/subsys/sshd ]; then
- /etc/rc.d/init.d/sshd stop 1>&2
- fi
+ %service sshd stop
/sbin/chkconfig --del sshd
fi