e836f2a
Name:           munge
7b0caca
Version:        0.5.11
3919c11
Release:        5%{?dist}
e836f2a
Summary:        Enables uid & gid authentication across a host cluster
e836f2a
e836f2a
Group:          Applications/System
e836f2a
License:        GPLv2+
afd9c8f
URL:            http://munge.googlecode.com/
afd9c8f
Source0:        http://munge.googlecode.com/files/munge-%{version}.tar.bz2
e836f2a
Source1:        create-munge-key
e836f2a
Source2:        munge.logrotate
e836f2a
36d33fc
BuildRequires:  systemd-units
7b0caca
BuildRequires:  zlib-devel bzip2-devel openssl-devel
7b0caca
Requires:       munge-libs = %{version}-%{release}
e836f2a
91b0aa3
Requires(pre):    shadow-utils
e836f2a
7b0caca
Requires(post):   systemd
7b0caca
Requires(preun):  systemd
7b0caca
Requires(postun): systemd
7b0caca
e836f2a
e836f2a
%description
e836f2a
MUNGE (MUNGE Uid 'N' Gid Emporium) is an authentication service for creating 
e836f2a
and validating credentials. It is designed to be highly scalable for use 
e836f2a
in an HPC cluster environment. 
e836f2a
It allows a process to authenticate the UID and GID of another local or 
e836f2a
remote process within a group of hosts having common users and groups. 
e836f2a
These hosts form a security realm that is defined by a shared cryptographic 
e836f2a
key. Clients within this security realm can create and validate credentials 
e836f2a
without the use of root privileges, reserved ports, or platform-specific 
e836f2a
methods.
e836f2a
e836f2a
%package devel
ecacefc
Summary:        Development files for uid * gid authentication across a host cluster
91b0aa3
Group:          Applications/System
64d8dce
Requires:       munge-libs%{?_isa} = %{version}-%{release}
e836f2a
e836f2a
%description devel
e836f2a
Header files for developing using MUNGE.
e836f2a
a178a82
%package libs
ecacefc
Summary:        Runtime libs for uid * gid authentication across a host cluster
91b0aa3
Group:          Applications/System
a178a82
a178a82
%description libs
a178a82
Runtime libraries for using MUNGE.
a178a82
a178a82
e836f2a
%prep
e836f2a
%setup -q
36d33fc
cp -p %{SOURCE1} create-munge-key
36d33fc
cp -p %{SOURCE2} munge.logrotate
e836f2a
e836f2a
%build
e836f2a
%configure  --disable-static
e836f2a
# Get rid of some rpaths for /usr/sbin
e836f2a
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
e836f2a
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
e836f2a
make %{?_smp_mflags} 
e836f2a
e836f2a
e836f2a
%install
e836f2a
7b0caca
rm -rf %{buildroot}
7b0caca
make install DESTDIR=%{buildroot}
e836f2a
36d33fc
# Install extra files.
7b0caca
install -p -m 755 create-munge-key %{buildroot}/%{_sbindir}/create-munge-key
7b0caca
install -p -D -m 644 munge.logrotate %{buildroot}/%{_sysconfdir}/logrotate.d/munge
36d33fc
36d33fc
# rm unneeded files.
7b0caca
rm %{buildroot}/%{_sysconfdir}/sysconfig/munge
7b0caca
# 
7b0caca
rm %{buildroot}/%{_initddir}/munge
36d33fc
e836f2a
# Exclude .la files 
7b0caca
rm %{buildroot}/%{_libdir}/libmunge.la
e836f2a
e836f2a
e836f2a
# Fix a few permissions
7b0caca
chmod 700 %{buildroot}%{_var}/lib/munge %{buildroot}%{_var}/log/munge
7b0caca
chmod 700 %{buildroot}%{_sysconfdir}/munge
e836f2a
44108b7
# Create and empty key file and pid file to be marked as a ghost file below.
e836f2a
# i.e it is not actually included in the rpm, only the record 
e836f2a
# of it is.
7b0caca
touch %{buildroot}%{_var}/run/munge/munged.pid
e836f2a
e836f2a
%clean
7b0caca
rm -rf %{buildroot}
e836f2a
e836f2a
%postun 
7b0caca
%systemd_postun_with_restart munge.service
e836f2a
e836f2a
%preun
7b0caca
%systemd_preun munge.service
e836f2a
e836f2a
%pre
e836f2a
getent group munge >/dev/null || groupadd -r munge
e836f2a
getent passwd munge >/dev/null || \
e836f2a
useradd -r -g munge -d %{_var}/run/munge -s /sbin/nologin \
e836f2a
  -c "Runs Uid 'N' Gid Emporium" munge
e836f2a
exit 0
e836f2a
e836f2a
e836f2a
%post
7b0caca
%systemd_post munge.service
e836f2a
a178a82
%post   libs -p /sbin/ldconfig
a178a82
%postun libs -p /sbin/ldconfig
e836f2a
e836f2a
%files
e836f2a
%{_bindir}/munge
e836f2a
%{_bindir}/remunge
e836f2a
%{_bindir}/unmunge
e836f2a
%{_sbindir}/munged
e836f2a
%{_sbindir}/create-munge-key
e836f2a
%{_mandir}/man1/munge.1.gz
e836f2a
%{_mandir}/man1/remunge.1.gz
e836f2a
%{_mandir}/man1/unmunge.1.gz
e836f2a
%{_mandir}/man7/munge.7.gz
e836f2a
%{_mandir}/man8/munged.8.gz
7b0caca
%{_unitdir}/munge.service
e836f2a
e836f2a
%attr(0700,munge,munge) %dir  %{_var}/log/munge
e836f2a
%attr(0700,munge,munge) %dir %{_sysconfdir}/munge
7b0caca
%attr(0755,munge,munge) %dir  %{_var}/run/munge/
36d33fc
%attr(0644,munge,munge)    %ghost %{_var}/run/munge/munged.pid
e836f2a
%attr(0700,munge,munge) %dir  %{_var}/lib/munge
e836f2a
7b0caca
%config(noreplace) %{_tmpfilesdir}/munge.conf
e836f2a
%config(noreplace) %{_sysconfdir}/logrotate.d/munge
e836f2a
7b0caca
%doc AUTHORS
e836f2a
%doc JARGON META NEWS QUICKSTART README 
e836f2a
%doc doc
e836f2a
a178a82
%files libs
a178a82
%{_libdir}/libmunge.so.2
a178a82
%{_libdir}/libmunge.so.2.0.0
91b0aa3
%doc COPYING
e836f2a
e836f2a
%files devel
e836f2a
%{_includedir}/munge.h
e836f2a
%{_libdir}/libmunge.so
7b0caca
%{_libdir}/pkgconfig/munge.pc
e836f2a
%{_mandir}/man3/munge.3.gz
e836f2a
%{_mandir}/man3/munge_ctx.3.gz
e836f2a
%{_mandir}/man3/munge_ctx_copy.3.gz
e836f2a
%{_mandir}/man3/munge_ctx_create.3.gz
e836f2a
%{_mandir}/man3/munge_ctx_destroy.3.gz
e836f2a
%{_mandir}/man3/munge_ctx_get.3.gz
e836f2a
%{_mandir}/man3/munge_ctx_set.3.gz
e836f2a
%{_mandir}/man3/munge_ctx_strerror.3.gz
e836f2a
%{_mandir}/man3/munge_decode.3.gz
e836f2a
%{_mandir}/man3/munge_encode.3.gz
e836f2a
%{_mandir}/man3/munge_enum.3.gz
e836f2a
%{_mandir}/man3/munge_enum_int_to_str.3.gz
e836f2a
%{_mandir}/man3/munge_enum_is_valid.3.gz
e836f2a
%{_mandir}/man3/munge_enum_str_to_int.3.gz
e836f2a
%{_mandir}/man3/munge_strerror.3.gz
e836f2a
e836f2a
e836f2a
%changelog
3919c11
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.11-5
3919c11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
3919c11
e4962e2
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.5.11-4
e4962e2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
e4962e2
d62a601
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.5.11-3
d62a601
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
d62a601
14ce2fa
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.5.11-2
14ce2fa
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
14ce2fa
ecacefc
* Mon Jun 02 2014 Nils Philippsen <nils@redhat.com>
ecacefc
- fix typo
ecacefc
7b0caca
* Fri Aug 30 2013 Steve Traylen <steve.traylen@cern.ch> - 0.5.11-1
7b0caca
- Upstream 0.5.11
7b0caca
- Use upstream's systemd files.
7b0caca
- Fix incorrect dates in changelogs.
7b0caca
- Fix systemd scriptlets #850219
7b0caca
- Use buildroot macro everywhere.
59ff1ef
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.5.10-6
59ff1ef
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
59ff1ef
e0fc93f
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.5.10-5
e0fc93f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
e0fc93f
aa49384
* Fri Jul 20 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.5.10-4
aa49384
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
aa49384
6ddbeff
* Sun Feb 5 2012 Steve Traylen <steve.traylen@cern.ch> - 0.5.10-3
6ddbeff
- Remove EPEL4 support since EOL.
36d33fc
- Change to systemd.
6ddbeff
4e548e1
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.5.10-2
4e548e1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
4e548e1
9267c0a
* Sun Feb 27 2011 Steve Traylen <steve.traylen@cern.ch> - 0.5.10-1
9267c0a
- Upstream to 0.5.10
64d8dce
- Add _isa tags to all build requires.
4cff475
- Remove unused patch munge-correct-service-name.patch, upstream fixed.
5bf7d0a
- Update and add check-key-exists.patch back.
b7045f9
- Revert back to default CFLAGS. _GNU_SOURCE not needed any more.
9267c0a
205cd54
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.5.9-5
205cd54
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
205cd54
afd9c8f
* Tue Dec 7 2010 Steve Traylen <steve.traylen@cern.ch> - 0.5.9-4
afd9c8f
- Upsteam is now hosted on google.
afd9c8f
- Mark /var/run/munge as a %ghost file. #656631
afd9c8f
0262046
* Sat Mar 27 2010 Steve Traylen <steve.traylen@cern.ch> - 0.5.9-3
0262046
- Release Bump
62619b2
* Fri Mar 26 2010 Steve Traylen <steve.traylen@cern.ch> - 0.5.9-2
62619b2
- Remove initd-pass-rpmlint.patch, has been applied upstream.
62619b2
- Remove remove-GPL_LICENSED-cpp.patch, has been applied upstream.
e673e8f
* Fri Mar 26 2010 Steve Traylen <steve.traylen@cern.ch> - 0.5.9-1
e673e8f
- New upstream 0.5.9
91b0aa3
* Wed Oct 21 2009 Steve Traylen <steve.traylen@cern.ch> - 0.5.8-8
91b0aa3
- Requirment on munge removed from munge-libs.
91b0aa3
- Explicit exact requirment on munge-libs for munge and munge-devel
91b0aa3
  added.
a178a82
* Wed Oct 21 2009 Steve Traylen <steve.traylen@cern.ch> - 0.5.8-7
a178a82
- rhbz#530128 Move runtime libs to a new -libs package.
a178a82
  ldconfig moved to new -libs package as a result.
44108b7
* Sat Sep 26 2009 Steve Traylen <steve.traylen@cern.ch> - 0.5.8-6
44108b7
- Patch for rhbz #525732 - Loads /etc/sysconfig/munge 
44108b7
  correctly.
44108b7
- Mark pid file as ghost file on oses that support that.
44108b7
- Permisions on pid directory to 755
44108b7
0181466
* Fri Aug 21 2009 Tomas Mraz <tmraz@redhat.com> - 0.5.8-5
0181466
- rebuilt with new openssl
0181466
7b0caca
* Wed Jul 22 2009 Steve Traylen <steve.traylen@cern.ch> - 0.5.8-4
e836f2a
- Expand defattr with 4th argument for default directory perms.
e836f2a
- Explict attr for non 0644 files and 0755 directories.
e836f2a
7b0caca
* Wed Jul 22 2009 Steve Traylen <steve.traylen@cern.ch> - 0.5.8-3
e836f2a
- Append -DGNU_SOURCE to default CFLAGS.
e836f2a
e836f2a
* Wed Jul 22 2009 Steve Traylen <steve.traylen@cern.ch> - 0.5.8-2
e836f2a
- Correct License to GPLv2+
e836f2a
- Move man3 pages to the devel package.
e836f2a
- Remove +x bit from create-munge-key source.
e836f2a
- Preserve timestamps when installing files.
e836f2a
- ldconfig not needed on -devel package.
e836f2a
- Do a condrestart when upgrading.
e836f2a
- Remove redundant files from docs.
e836f2a
- chmod /var/lib/munge /var/log/munge and /etc/munge to 700.
e836f2a
- Apply patch to not error when GPL_LICENSED is not set.
e836f2a
- Patch service script to print error on if munge.key not present
e836f2a
  on start only and with a better error. 
e836f2a
- Remove dont-exit-form-lib.patch. munge is expecting munge to
e836f2a
  do this.
e836f2a
- Remove libgcrypt-devel from BuildRequires, uses openssl by
e836f2a
  default anyway.
e836f2a
- Mark the munge.key as a ghost file.
e836f2a
e836f2a
e836f2a
* Fri Jun 12 2009 Steve Traylen <steve@traylen.net> - 0.5.8-1
e836f2a
- First Build
e836f2a
e836f2a