]> git.pld-linux.org Git - packages/openssh.git/blobdiff - openssh.spec
one more 'ldap' bcond fix
[packages/openssh.git] / openssh.spec
index d25b1e8ac39ef332c9d91a85054742145b97e6c1..1b487ff3d9eecb10fa4c4e12444e23a534de3801 100644 (file)
@@ -1,3 +1,7 @@
+# TODO:
+# - add trigger to enable this:
+#  * sshd(8): This release turns on pre-auth sandboxing sshd by default for
+#   new installs, by setting UsePrivilegeSeparation=sandbox in sshd_config.
 #
 # Conditional build:
 %bcond_without audit           # sshd audit support
@@ -8,6 +12,7 @@
 %bcond_without kerberos5       # without kerberos5 support
 %bcond_without selinux         # build without SELinux support
 %bcond_with    hpn             # High Performance SSH/SCP - HPN-SSH including Cipher NONE (broken too often)
+%bcond_without tests
 
 # gtk2-based gnome-askpass means no gnome1-based
 %{?with_gtk:%undefine with_gnome}
@@ -29,13 +34,13 @@ Summary(pt_BR.UTF-8):       Implementação livre do SSH
 Summary(ru.UTF-8):     OpenSSH - свободная реализация протокола Secure Shell (SSH)
 Summary(uk.UTF-8):     OpenSSH - вільна реалізація протоколу Secure Shell (SSH)
 Name:          openssh
-Version:       5.9p1
-Release:       8
+Version:       6.1p1
+Release:       2
 Epoch:         2
 License:       BSD
 Group:         Applications/Networking
 Source0:       ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/%{name}-%{version}.tar.gz
-# Source0-md5: b50a499fa02616a47984b1920848b565
+# Source0-md5: 3345cbf4efe90ffb06a78670ab2d05d5
 Source1:       http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
 # Source1-md5: 66943d481cc422512b537bcc2c7400d1
 Source2:       %{name}d.init
@@ -47,6 +52,8 @@ Source7:      %{name}-lpk.schema
 Source8:       %{name}d.upstart
 Source9:       sshd.service
 Source10:      sshd-keygen
+Source11:      sshd.socket
+Source12:      sshd@.service
 Patch100:      %{name}-heimdal.patch
 Patch0:                %{name}-no_libnsl.patch
 Patch2:                %{name}-pam_misc.patch
@@ -67,8 +74,10 @@ Patch11:     %{name}-chroot.patch
 Patch12:       %{name}-blacklist.diff
 Patch13:       %{name}-kuserok.patch
 Patch14:       %{name}-bind.patch
+Patch15:       %{name}-disable_ldap.patch
 URL:           http://www.openssh.com/portable.html
 BuildRequires: %{__perl}
+%{?with_tests:BuildRequires:   %{name}-server}
 %{?with_audit:BuildRequires:   audit-libs-devel}
 BuildRequires: autoconf >= 2.50
 BuildRequires: automake
@@ -85,7 +94,8 @@ BuildRequires:        pam-devel
 BuildRequires: rpm >= 4.4.9-56
 BuildRequires: rpmbuild(macros) >= 1.627
 BuildRequires: sed >= 4.0
-BuildRequires: zlib-devel
+BuildRequires: zlib-devel >= 1.2.3
+Requires:      zlib >= 1.2.3
 %if "%{pld_release}" == "ac"
 Requires:      filesystem >= 2.0-1
 Requires:      pam >= 0.79.0
@@ -337,12 +347,13 @@ Requires(post,preun):     /sbin/chkconfig
 Requires(postun):      /usr/sbin/userdel
 Requires(pre): /bin/id
 Requires(pre): /usr/sbin/useradd
+Requires(post,preun,postun):   systemd-units >= 38
 Requires:      %{name} = %{epoch}:%{version}-%{release}
 # remove in 6.0, kept for flawless upgrade
-Requires:      %{name}-server-ldap = %{epoch}:%{version}-%{release}
+%{?with_ldap:Requires: %{name}-server-ldap = %{epoch}:%{version}-%{release}}
 Requires:      pam >= %{pam_ver}
 Requires:      rc-scripts >= 0.4.3.0
-Requires:      systemd-units >= 37-0.10
+Requires:      systemd-units >= 38
 Requires:      util-linux
 Suggests:      /bin/login
 Provides:      ssh-server
@@ -529,6 +540,7 @@ openldap-a.
 %patch12 -p1
 %patch13 -p1
 %patch14 -p1
+%patch15 -p1
 
 %if "%{pld_release}" == "ac"
 # fix for missing x11.pc
@@ -576,6 +588,8 @@ echo '#define LOGIN_PROGRAM            "/bin/login"' >>config.h
 
 %{__make}
 
+%{?with_tests:%{__make} tests}
+
 cd contrib
 %if %{with gnome}
 %{__make} gnome-ssh-askpass1 \
@@ -619,6 +633,9 @@ cp -p %{SOURCE8} $RPM_BUILD_ROOT/etc/init/sshd.conf
 %{__sed} -e 's|@@LIBEXECDIR@@|%{_libexecdir}|g' %{SOURCE9} >$RPM_BUILD_ROOT%{systemdunitdir}/sshd.service
 cp -p %{SOURCE10} $RPM_BUILD_ROOT%{_libexecdir}/sshd-keygen
 
+cp -p %{SOURCE11} $RPM_BUILD_ROOT%{systemdunitdir}
+cp -p %{SOURCE12} $RPM_BUILD_ROOT%{systemdunitdir}
+
 %if %{with gnome}
 install -p contrib/gnome-ssh-askpass1 $RPM_BUILD_ROOT%{_libexecdir}/ssh/ssh-askpass
 %endif
@@ -648,7 +665,7 @@ cat << 'EOF' > $RPM_BUILD_ROOT/etc/env.d/SSH_ASKPASS
 EOF
 
 %{__rm} $RPM_BUILD_ROOT%{_mandir}/README.openssh-non-english-man-pages
-%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/ldap.conf
+%{?with_ldap:%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/ldap.conf}
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -671,19 +688,6 @@ rm -rf $RPM_BUILD_ROOT
 %post server
 /sbin/chkconfig --add sshd
 %service sshd reload "OpenSSH Daemon"
-if ! grep -qs ssh /etc/security/passwd.conf ; then
-       umask 022
-       echo "ssh" >> /etc/security/passwd.conf
-fi
-if [ -x /bin/systemd_booted ] && /bin/systemd_booted; then
-%banner %{name}-server -e << EOF
-!!!!!!!!!!!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!!!!!!!!!!!!!
-! Native systemd support for sshd has been installed.   !
-! Restarting sshd.service with systemctl WILL kill all  !
-! active ssh sessions (daemon as such will be started). !
-!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-EOF
-fi
 NORESTART=1
 %systemd_post sshd.service
 
@@ -708,8 +712,8 @@ if grep -qE '^(UseLPK|Lpk)' %{_sysconfdir}/sshd_config; then
        %{__sed} -i -e '
                # disable old configs
                # just UseLPK/LkpLdapConf supported for now
-               s/^UseLPK/## Obsolete &/
-               s/^Lpk/## Obsolete &/
+               s/^\s*UseLPK/## Obsolete &/
+               s/^\s*Lpk/## Obsolete &/
                # Enable new ones, assumes /etc/ldap.conf defaults, see HOWTO.ldap-keys
                /UseLPK/iAuthorizedKeysCommand %{_libexecdir}/ssh-ldap-wrapper
        ' %{_sysconfdir}/sshd_config
@@ -720,6 +724,15 @@ if grep -qE '^(UseLPK|Lpk)' %{_sysconfdir}/sshd_config; then
        fi
 fi
 %systemd_trigger sshd.service
+if [ -x /bin/systemd_booted ] && /bin/systemd_booted; then
+%banner %{name}-server -e << EOF
+!!!!!!!!!!!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!!!!!!!!!!!!!
+! Native systemd support for sshd has been installed.   !
+! Restarting sshd.service with systemctl WILL kill all  !
+! active ssh sessions (daemon as such will be started). !
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+EOF
+fi
 
 %post server-upstart
 %upstart_post sshd
@@ -804,6 +817,8 @@ fi
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/sshd
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.sshd
 %{systemdunitdir}/sshd.service
+%{systemdunitdir}/sshd.socket
+%{systemdunitdir}/sshd@.service
 
 %if %{with ldap}
 %files server-ldap
This page took 0.04081 seconds and 4 git commands to generate.