Pavel Šimerda f7dd0ad
%define snapshot .git20120619
Pavel Šimerda f7dd0ad
%define commit  0bb3c98
Pavel Šimerda f7dd0ad
Pavel Šimerda da32dd6
Name:           strongswan
Pavel Šimerda f7dd0ad
Version:        5.0.0
Pavel Šimerda f7dd0ad
Release:        0.1%{snapshot}%{?dist}
Pavel Šimerda da32dd6
Summary:        An OpenSource IPsec-based VPN Solution
Pavel Šimerda da32dd6
Group:          System Environment/Daemons
Pavel Šimerda da32dd6
License:        GPLv2+
Pavel Šimerda da32dd6
URL:            http://www.strongswan.org/
Pavel Šimerda f7dd0ad
Source0:        %{name}-%{commit}.tar.gz
Pavel Šimerda da32dd6
BuildRequires:  gmp-devel
Pavel Šimerda da32dd6
BuildRequires:  libcurl-devel
Pavel Šimerda da32dd6
BuildRequires:  openldap-devel
Pavel Šimerda a6d7ea5
BuildRequires:  NetworkManager-devel
Pavel Šimerda e959e5f
BuildRequires:  NetworkManager-glib-devel
Pavel Šimerda f7dd0ad
# when building from git
Pavel Šimerda f7dd0ad
BuildRequires:  gperf
Pavel Šimerda f7dd0ad
BuildRequires:  flex
Pavel Šimerda f7dd0ad
BuildRequires:  bison
Pavel Šimerda f7dd0ad
BuildRequires:  automake
Pavel Šimerda f7dd0ad
BuildRequires:  autoconf
Pavel Šimerda f89e53d
BuildRequires:  libtool
Pavel Šimerda a192db4
BuildRequires:  gettext-devel
Pavel Šimerda 60021c6
%if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
Pavel Šimerda da32dd6
BuildRequires:  systemd-units
Pavel Šimerda da32dd6
Requires(post): systemd-units
Pavel Šimerda da32dd6
Requires(preun): systemd-units
Pavel Šimerda da32dd6
Requires(postun): systemd-units
Pavel Šimerda 78c717c
%else
Pavel Šimerda 78c717c
Requires(post): chkconfig
Pavel Šimerda 78c717c
Requires(preun): chkconfig
Pavel Šimerda 78c717c
Requires(preun): initscripts
Pavel Šimerda da32dd6
%endif
Pavel Šimerda da32dd6
%description
Pavel Šimerda f7dd0ad
The strongSwan IPsec implementation supports both the IKEv1 and IKEv2 key exchange
Pavel Šimerda da32dd6
protocols in conjunction with the native NETKEY IPsec stack of the Linux
Pavel Šimerda da32dd6
kernel.
Pavel Šimerda da32dd6
Pavel Šimerda f7bc39a
%package NetworkManager
Pavel Šimerda f7bc39a
Summary:        NetworkManager plugin for Strongswan
Pavel Šimerda 0414fda
Group:          System Environment/Daemons
Pavel Šimerda 0414fda
%description NetworkManager
Pavel Šimerda f7bc39a
NetworkManager plugin integrates a subset of Strongswan capabilities
Pavel Šimerda f7bc39a
to NetworkManager.
Pavel Šimerda f7bc39a
Pavel Šimerda da32dd6
%prep
Pavel Šimerda f7dd0ad
%setup -q -n %{name}-%{commit}
Pavel Šimerda da32dd6
Pavel Šimerda da32dd6
%build
Pavel Šimerda f7dd0ad
./autogen.sh
Pavel Šimerda da32dd6
%configure --disable-static \
Pavel Šimerda f7dd0ad
    --with-ipsec-script=%{name} \
Pavel Šimerda da32dd6
    --sysconfdir=%{_sysconfdir}/%{name} \
Pavel Šimerda da32dd6
    --with-ipsecdir=%{_libexecdir}/%{name} \
Pavel Šimerda 4fd4529
    --with-ipseclibdir=%{_libdir}/%{name} \
Pavel Šimerda 4fd4529
    --enable-nm
Pavel Šimerda da32dd6
make %{?_smp_mflags}
Pavel Šimerda d97c699
sed -i 's/\t/    /' src/strongswan.conf src/starter/ipsec.conf
Pavel Šimerda da32dd6
Pavel Šimerda da32dd6
%install
Pavel Šimerda da32dd6
make install DESTDIR=%{buildroot}
Pavel Šimerda da32dd6
# prefix man pages
Pavel Šimerda da32dd6
for i in %{buildroot}%{_mandir}/*/*; do
Pavel Šimerda da32dd6
    if echo "$i" | grep -vq '/strongswan[^\/]*$'; then
Pavel Šimerda da32dd6
        mv "$i" "`echo "$i" | sed -re 's|/([^/]+)$|/strongswan_\1|'`"
Pavel Šimerda da32dd6
    fi
Pavel Šimerda da32dd6
done
Pavel Šimerda da32dd6
# delete unwanted library files
Pavel Šimerda da32dd6
rm %{buildroot}%{_libdir}/%{name}/*.so
Pavel Šimerda da32dd6
find %{buildroot} -type f -name '*.la' -delete
Pavel Šimerda da32dd6
# fix config permissions
Pavel Šimerda da32dd6
chmod 644 %{buildroot}%{_sysconfdir}/%{name}/%{name}.conf
Pavel Šimerda da32dd6
# protect configuration from ordinary user's eyes
Pavel Šimerda da32dd6
chmod 700 %{buildroot}%{_sysconfdir}/%{name}
Pavel Šimerda 78c717c
# setup systemd unit or initscript
Pavel Šimerda 78c717c
%if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
Pavel Šimerda 78c717c
%else
Pavel Šimerda a54ddf6
install -D -m 755 init/sysvinit/%{name} %{buildroot}/%{_initddir}/%{name}
Pavel Šimerda 78c717c
%endif
Pavel Šimerda 78c717c
Pavel Šimerda da32dd6
Pavel Šimerda da32dd6
%files
Pavel Šimerda da32dd6
%doc README COPYING NEWS CREDITS TODO
Pavel Šimerda da32dd6
%dir %{_sysconfdir}/%{name}
Pavel Šimerda da32dd6
%config(noreplace) %{_sysconfdir}/%{name}/ipsec.conf
Pavel Šimerda da32dd6
%config(noreplace) %{_sysconfdir}/%{name}/%{name}.conf
Pavel Šimerda 60021c6
%if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
Pavel Šimerda da32dd6
%{_unitdir}/%{name}.service
Pavel Šimerda 78c717c
%else
Pavel Šimerda 78c717c
%{_initddir}/%{name}
Pavel Šimerda da32dd6
%endif
Pavel Šimerda da32dd6
%dir %{_libdir}/%{name}
Pavel Šimerda da32dd6
%{_libdir}/%{name}/libcharon.so.0
Pavel Šimerda da32dd6
%{_libdir}/%{name}/libcharon.so.0.0.0
Pavel Šimerda da32dd6
%{_libdir}/%{name}/libhydra.so.0
Pavel Šimerda da32dd6
%{_libdir}/%{name}/libhydra.so.0.0.0
Pavel Šimerda da32dd6
%{_libdir}/%{name}/lib%{name}.so.0
Pavel Šimerda da32dd6
%{_libdir}/%{name}/lib%{name}.so.0.0.0
Pavel Šimerda da32dd6
%dir %{_libdir}/%{name}/plugins
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-aes.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-attr.so
Pavel Šimerda 35471fb
%{_libdir}/%{name}/plugins/lib%{name}-cmac.so
Pavel Šimerda f7dd0ad
%{_libdir}/%{name}/plugins/lib%{name}-constraints.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-des.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-dnskey.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-fips-prf.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-gmp.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-hmac.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-kernel-netlink.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-md5.so
Pavel Šimerda f7dd0ad
%{_libdir}/%{name}/plugins/lib%{name}-nonce.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-pem.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-pgp.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-pkcs1.so
Pavel Šimerda 56774d0
%{_libdir}/%{name}/plugins/lib%{name}-pkcs8.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-pubkey.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-random.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-resolve.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-revocation.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-sha1.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-sha2.so
Pavel Šimerda f7dd0ad
%{_libdir}/%{name}/plugins/lib%{name}-socket-default.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-stroke.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-updown.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-x509.so
Pavel Šimerda da32dd6
%{_libdir}/%{name}/plugins/lib%{name}-xcbc.so
Pavel Šimerda da32dd6
%dir %{_libexecdir}/%{name}
Pavel Šimerda da32dd6
%{_libexecdir}/%{name}/_copyright
Pavel Šimerda da32dd6
%{_libexecdir}/%{name}/_updown
Pavel Šimerda da32dd6
%{_libexecdir}/%{name}/_updown_espmark
Pavel Šimerda da32dd6
%{_libexecdir}/%{name}/charon
Pavel Šimerda da32dd6
%{_libexecdir}/%{name}/openac
Pavel Šimerda da32dd6
%{_libexecdir}/%{name}/pki
Pavel Šimerda da32dd6
%{_libexecdir}/%{name}/scepclient
Pavel Šimerda da32dd6
%{_libexecdir}/%{name}/starter
Pavel Šimerda da32dd6
%{_libexecdir}/%{name}/stroke
Pavel Šimerda da32dd6
%{_sbindir}/%{name}
Pavel Šimerda f7dd0ad
%{_mandir}/man5/%{name}.conf.5.gz
Pavel Šimerda da32dd6
%{_mandir}/man5/%{name}_ipsec.conf.5.gz
Pavel Šimerda da32dd6
%{_mandir}/man5/%{name}_ipsec.secrets.5.gz
Pavel Šimerda f7dd0ad
%{_mandir}/man8/%{name}.8.gz
Pavel Šimerda da32dd6
%{_mandir}/man8/%{name}__updown.8.gz
Pavel Šimerda da32dd6
%{_mandir}/man8/%{name}__updown_espmark.8.gz
Pavel Šimerda da32dd6
%{_mandir}/man8/%{name}_openac.8.gz
Pavel Šimerda da32dd6
%{_mandir}/man8/%{name}_scepclient.8.gz
Pavel Šimerda da32dd6
Pavel Šimerda f7bc39a
%files NetworkManager
Pavel Šimerda f7dd0ad
%{_libexecdir}/%{name}/charon-nm
Pavel Šimerda f7dd0ad
Pavel Šimerda f7bc39a
Pavel Šimerda da32dd6
%post
Pavel Šimerda da32dd6
/sbin/ldconfig
Pavel Šimerda 60021c6
%if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
Pavel Šimerda da32dd6
if [ $1 -eq 1 ] ; then
Pavel Šimerda da32dd6
    # Initial installation
Pavel Šimerda da32dd6
    /bin/systemctl daemon-reload >/dev/null 2>&1 || :
Pavel Šimerda da32dd6
fi
Pavel Šimerda 78c717c
%else
Pavel Šimerda 78c717c
/sbin/chkconfig --add %{name}
Pavel Šimerda da32dd6
%endif
Pavel Šimerda da32dd6
Pavel Šimerda da32dd6
%preun
Pavel Šimerda ed95ee1
%if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
Pavel Šimerda da32dd6
if [ $1 -eq 0 ] ; then
Pavel Šimerda da32dd6
    # Package removal, not upgrade
Pavel Šimerda da32dd6
    /bin/systemctl --no-reload disable %{name}.service > /dev/null 2>&1 || :
Pavel Šimerda da32dd6
    /bin/systemctl stop %{name}.service > /dev/null 2>&1 || :
Pavel Šimerda da32dd6
fi
Pavel Šimerda ed95ee1
%else
Pavel Šimerda 78c717c
if [ $1 -eq 0 ] ; then
Pavel Šimerda ed95ee1
    # Package removal, not upgrade
Pavel Šimerda 78c717c
    /sbin/service %{name} stop >/dev/null 2>&1
Pavel Šimerda 78c717c
    /sbin/chkconfig --del %{name}
Pavel Šimerda 78c717c
fi
Pavel Šimerda ed95ee1
%endif
Pavel Šimerda ed95ee1
Pavel Šimerda da32dd6
%postun
Pavel Šimerda da32dd6
/sbin/ldconfig
Pavel Šimerda 60021c6
%if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
Pavel Šimerda da32dd6
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
Pavel Šimerda da32dd6
if [ $1 -ge 1 ] ; then
Pavel Šimerda da32dd6
    # Package upgrade, not uninstall
Pavel Šimerda da32dd6
    /bin/systemctl try-restart %{name}.service >/dev/null 2>&1 || :
Pavel Šimerda da32dd6
fi
Pavel Šimerda 78c717c
%else
Pavel Šimerda da32dd6
%endif
Pavel Šimerda da32dd6
Pavel Šimerda da32dd6
%changelog
Pavel Šimerda f7dd0ad
* Tue Jun 19 2012 Pavel Šimerda - 5.0.0-0.1.git20120619
Pavel Šimerda f7dd0ad
- Snapshot of upcoming major release
Pavel Šimerda f7dd0ad
- Move patches and renaming upstream
Pavel Šimerda f7dd0ad
  http://wiki.strongswan.org/issues/194
Pavel Šimerda f7dd0ad
  http://wiki.strongswan.org/issues/195
Pavel Šimerda f7dd0ad
- Notified upstream about manpage issues
Pavel Šimerda f7dd0ad
Pavel Šimerda 4c9b59d
* Tue Jun 19 2012 Pavel Šimerda - 4.6.4-2
Pavel Šimerda 4c9b59d
- Make initscript patch more distro-neutral
Pavel Šimerda 4c9b59d
- Add links to bugreports for patches
Pavel Šimerda 4c9b59d
Pavel Šimerda 015f05e
* Fri Jun 01 2012 Pavel Šimerda <pavlix@pavlix.net> - 4.6.4-1
Pavel Šimerda 015f05e
- New upstream version (CVE-2012-2388)
Pavel Šimerda 015f05e
Pavel Šimerda 4fd4529
* Sat May 26 2012 Pavel Šimerda <pavlix@pavlix.net> - 4.6.3-2
Pavel Šimerda 4fd4529
- Add --enable-nm to configure
Pavel Šimerda a6d7ea5
- Add NetworkManager-devel to BuildRequires
Pavel Šimerda e959e5f
- Add NetworkManager-glib-devel to BuildRequires
Pavel Šimerda f7bc39a
- Add strongswan-NetworkManager package
Pavel Šimerda 4fd4529
Pavel Šimerda ed95ee1
* Sat May 26 2012 Pavel Šimerda <pavlix@pavlix.net> - 4.6.3-1
Pavel Šimerda ed95ee1
- New version of Strongswan
Pavel Šimerda ed95ee1
- Support for RFC 3110 DNSKEY (see upstream changelog)
Pavel Šimerda ed95ee1
- Fix corrupt scriptlets
Pavel Šimerda ed95ee1
Pavel Šimerda ff3d2ec
* Fri Mar 30 2012 Pavel Šimerda <pavlix@pavlix.net> - 4.6.2-2
Pavel Šimerda ff3d2ec
- #808612 - strongswan binary renaming side-effect
Pavel Šimerda ff3d2ec
Pavel Šimerda 5d24686
* Sun Feb 26 2012 Pavel Šimerda <pavlix@pavlix.net> - 4.6.2-1
Pavel Šimerda 5d24686
- New upstream version
Pavel Šimerda 5d24686
- Changed from .tar.gz to .tar.bz2
Pavel Šimerda 56774d0
- Added libstrongswan-pkcs8.so
Pavel Šimerda 5d24686
Pavel Šimerda af9e7a0
* Wed Feb 15 2012 Pavel Šimerda <pavlix@pavlix.net> - 4.6.1-8
Pavel Šimerda af9e7a0
- Fix initscript's status function
Pavel Šimerda af9e7a0
Pavel Šimerda 8302d44
* Wed Feb 15 2012 Pavel Šimerda <pavlix@pavlix.net> - 4.6.1-7
Pavel Šimerda 8302d44
- Expand tabs in config files for better readability
Pavel Šimerda 78c717c
- Add sysvinit script for epel6
Pavel Šimerda 8302d44
Pavel Šimerda 023cc8a
* Wed Feb 15 2012 Pavel Šimerda <pavlix@pavlix.net> - 4.6.1-6
Pavel Šimerda 023cc8a
- Fix program name in systemd unit file
Pavel Šimerda 023cc8a
Pavel Šimerda 60021c6
* Tue Feb 14 2012 Pavel Šimerda <pavlix@pavlix.net> - 4.6.1-5
Pavel Šimerda 60021c6
- Improve fedora/epel conditionals
Pavel Šimerda 60021c6
Pavel Šimerda da32dd6
* Sat Jan 21 2012 Pavel Šimerda <pavlix@pavlix.net> - 4.6.1-4
Pavel Šimerda da32dd6
- Protect configuration directory from ordinary users
Pavel Šimerda da32dd6
- Add still missing directory /etc/strongswan
Pavel Šimerda da32dd6
Pavel Šimerda da32dd6
* Fri Jan 20 2012 Pavel Šimerda <pavlix@pavlix.net> - 4.6.1-3
Pavel Šimerda da32dd6
- Change directory structure to avoid clashes with Openswan
Pavel Šimerda da32dd6
- Prefixed all manpages with 'strongswan_'
Pavel Šimerda da32dd6
- Every file now includes 'strongswan' somewhere in its path
Pavel Šimerda da32dd6
- Removed conflict with Openswan
Pavel Šimerda da32dd6
- Finally fix permissions on strongswan.conf
Pavel Šimerda da32dd6
Pavel Šimerda da32dd6
* Fri Jan 20 2012 Pavel Šimerda <pavlix@pavlix.net> - 4.6.1-2
Pavel Šimerda da32dd6
- Change license tag from GPL to GPLv2+
Pavel Šimerda da32dd6
- Change permissions on /etc/strongswan.conf to 644
Pavel Šimerda da32dd6
- Rename ipsec.8 manpage to strongswan.8
Pavel Šimerda da32dd6
- Fix empty scriptlets for non-fedora builds
Pavel Šimerda da32dd6
- Add ldconfig scriptlet
Pavel Šimerda da32dd6
- Add missing directories and files
Pavel Šimerda da32dd6
Pavel Šimerda da32dd6
* Sun Jan 01 2012 Pavel Šimerda 
Pavel Šimerda da32dd6
- Bump to version 4.6.1
Pavel Šimerda da32dd6
Pavel Šimerda da32dd6
* Sun Jan 01 2012 Pavel Šimerda 
Pavel Šimerda da32dd6
- Add systemd scriptlets
Pavel Šimerda da32dd6
- Add conditions to also support EPEL6
Pavel Šimerda da32dd6
Pavel Šimerda da32dd6
* Sat Dec 10 2011 Pavel Šimerda <pavlix@pavlix.net> - 4.6.0-2
Pavel Šimerda da32dd6
- Experimental build for development