Sophie

Sophie

distrib > Mandriva > 2006.0 > x86_64 > by-pkgid > 83f5552f3f190fb5d009b368302d444e > files > 12

heimdal-0.7.1-1mdk.src.rpm

%global common_bin	kauth,kgetcred,kx,pfrom,rxtelnet,rxterm,string2key,tenletxr,otpprint,verify_krb5_conf,xnlock,kf
%global server_sbin	kadmin,kstash,ktutil,hprop,hpropd,ipropd-master,ipropd-slave,kadmind,kdc,kxd,kpasswdd,kfd
%global server_sbin_noman	dump_log,replay_log

# for alternatives:
%global common_confl_krb5w	kdestroy,kinit,klist,kpasswd
%global common_confl_krbafs	afslog,pagsh
# krb5-workstation: kdestroy,kinit,klist,kpasswd,ksu
# libext2fs2-devel: mk_cmds

%global _unpackaged_files_terminate_build       0
Summary:	Heimdal implementation of Kerberos V5 system
Summary(pl):	Implementacja Heimdal systemu Kerberos V5
Name:		heimdal
Version:	0.7.1
Release:	%mkrel 1
License:	Free
Group:		Networking
Source0:	ftp://ftp.pdc.kth.se/pub/heimdal/src/%{name}-%{version}.tar.bz2
Source1:	%{name}.init
#FIXME
#Source2:	%{name}.logrotate
#Source3:	%{name}.sysconfig
#Source4:	%{name}-krb5.conf
Source5:	%{name}-ftpd.xinetd
Source6:	%{name}-rshd.xinetd
Source7:	%{name}-telnetd.xinetd
Source8:	%{name}-kadmind.xinetd
#Patch0:		%{name}-paths.patch
#Patch1:		%{name}-info.patch
#Patch2:		%{name}-am_man_fixes.patch
Patch3:		heimdal-0.6-db3-db4.patch.bz2
Patch4:		heimdal-0.6-ndbm_wrap-db4.patch.bz2
Patch5:		heimdal-0.6-compile-fix.patch.bz2
Patch6:		heimdal-0.6-resolve-thread-fix.patch.bz2
Patch7:		heimdal-0.6.3-fix-readline-detection.patch.bz2
URL:		http://www.pdc.kth.se/heimdal/
BuildRequires:	XFree86-devel
BuildRequires:	db-devel >= 4.1.25
BuildRequires:	flex
BuildRequires:	libtool
BuildRequires:	ncurses-devel >= 5.3
BuildRoot:	%{_tmppath}/%{name}-%{version}-root
Conflicts:	krb5-lib

%define		_libexecdir	%{_sbindir}
%define		_localstatedir	/var/%{name}
%define		_sysconfdir	/etc/%{name}

%description
Heimdal is a free implementation of Kerberos 5. The goals are to:
   - have an implementation that can be freely used by anyone
   - be protocol compatible with existing implementations and, if not in
     conflict, with RFC 1510 (and any future updated RFC)
   - be reasonably compatible with the M.I.T Kerberos V5 API
   - have support for Kerberos V5 over GSS-API (RFC1964)
   - include the most important and useful application programs (rsh,
     telnet, popper, etc.)
   - include enough backwards compatibility with Kerberos V4
   - IPv6 support

%description -l pl
Heimdal jest darmow± implementacj± Kerberosa 5. G³ówne zalety to:
   - implementacja, która mo¿e byæ u¿ywana przez ka¿dego
   - kompatybilno¶æ na poziomie protoko³u z istniej±cymi implementacjami
   - racjonalna kompatybilno¶æ z M.I.T Kerberos V5 API
   - wsparcie dla Kerberosa 5 poprzez GSS-API (RFC1964)
   - zawiera wiêkszo¶æ istotnych i u¿ytecznych aplikacji (rsh, telnet,
     popper, etc.)
   - zawiera wystarczaj±c± kompatybilno¶æ z Kerberos V4
   - wsparcie dla IPv6

%package server
Summary:	Kerberos Server
Summary(pl):	Serwer Kerberosa
Group:		Networking
Requires:	%{name}-libs = %{version}-%{release}
Requires(post):	/sbin/chkconfig
Requires(preun):/sbin/chkconfig

%description server
Master KDC.

%description server -l pl
G³ówne centrum dystrybucji kluczy (KDC).

%package libs
Summary:	Heimdal shared libraries
Summary(pl):	Biblioteki wspó³dzielone dla heimdal
Group:		Libraries
#Requires:	krb5-conf

%description libs
Package contains shared libraries required by several of the other
heimdal packages.

%description libs -l pl
Pakiet zawiera biblioteki wspó³dzielone dla heimdal.

%package login
Summary:	login is used when signing onto a system
Summary(pl):	Narzêdzie do logowania w systemie
Group:		Applications/Networking
Requires:	%{name}-libs = %{version}-%{release}
Provides:	login
#Obsoletes:	login

%description login
login is used when signing onto a system. It can also be used to
switch from one user to another at any time (most modern shells have
support for this feature built into them, however). This package
contain kerberized version login program.

%description login -l pl
login jest u¿ywany przy logowaniu do systemu. Mo¿e byæ tak¿e u¿yty do
prze³±czenia z jednego u¿ytkownika na innego w dowolnej chwili
(wiêkszo¶æ wspó³czesnych shelli ma wbudowan± obs³ugê tego). Ten pakiet
zawiera skerberyzowan± wersjê programu login.

%package ftp
Summary:	The standard UNIX FTP (file transfer protocol) client
Summary(pl):	Klient protoko³u FTP
Group:		Applications/Networking
Requires:	%{name}-libs = %{version}-%{release}

%description ftp
The ftp package provides the standard UNIX command-line FTP client
with kerberos authentication support. FTP is the file transfer
protocol, which is a widely used Internet protocol for transferring
files and for archiving files.

%description ftp -l pl
Ten pakiet dostarcza standardowego klienta ftp z wbudowan± obs³ug±
kerberosa. FTP jest protoko³em do przesy³ania plików szeroko
rozpowszechnionym w Internecie.

%package rsh
Summary:	Clients for remote access commands (rsh, rlogin, rcp)
Summary(pl):	Klient zdalnego dostêpu (rsh, rlogin, rcp)
Group:		Applications/Networking
Requires:	%{name}-libs = %{version}-%{release}
#Obsoletes:	rsh

%description rsh
The rsh package contains a set of programs which allow users to run
commands on remote machines, login to other machines and copy files
between machines (rsh, rlogin and rcp). All three of these commands
use rhosts style authentication. This package contains the clients
needed for all of these services.

%description rsh -l pl
Ten pakiet zawiera zestaw narzêdzi pozwalaj±cych na wykonywanie
poleceñ na zdalnych maszynach, logowanie na inne maszyny oraz
kopiowanie plików pomiêdzy maszynami (rsh, rlogin, rcp).

%package telnet
Summary:	Client for the telnet remote login
Summary(pl):	Klient us³ugi telnet
Group:		Applications/Networking
Requires:	%{name}-libs = %{version}-%{release}
#Obsoletes:	telnet

%description telnet
Telnet is a popular protocol for remote logins across the Internet.
This package provides a command line telnet client.

%description telnet -l pl
Telnet jest popularnym protoko³em zdalnego logowania. Ten pakiet
zawiera klienta tej us³ugi.

%package ftpd
Summary:	The standard UNIX FTP (file transfer protocol) server
Summary(pl):	Serwer FTP
Group:		Networking/Daemons
Requires(pre):	xinetd
Requires:	%{name}-libs = %{version}-%{release}
#Obsoletes:	ftpd

%description ftpd
FTP is the file transfer protocol, which is a widely used Internet
protocol for transferring files and for archiving files.

%description ftpd -l pl
FTP jest protoko³em trasmisji plików szeroko rozpowszechnionym w
Internecie.

%package rshd
Summary:	Server for remote access commands (rsh, rlogin, rcp)
Summary(pl):	Serwer zdalnego dostêpu (rsh, rlogin, rcp)
Group:		Networking/Daemons
Requires(pre):	xinetd
Requires:	%{name}-libs = %{version}-%{release}
#Obsoletes:	rshd

%description rshd
The rsh package contains a set of programs which allow users to run
commmands on remote machines, login to other machines and copy files
between machines (rsh, rlogin and rcp). All three of these commands
use rhosts style authentication. This package contains servers needed
for all of these services.

%description rshd -l pl
Ten pakiet zawiera zestaw serwerów pozwalaj±cych na wykonywanie
poleceñ na zdalnych maszynach, logowanie na inne maszyny oraz
kopiowanie plików pomiêdzy maszynami (rsh, rlogin, rcp).

%package telnetd
Summary:	Server for the telnet remote login
Summary(pl):	Serwer protoko³u telnet
Group:		Networking/Daemons
Requires(pre):	xinetd
Requires:	%{name}-libs = %{version}-%{release}
#Obsoletes:	telnetd

%description telnetd
Telnet is a popular protocol for remote logins across the Internet.
This package provides a telnet daemon which allows remote logins into
the machine it is running on.

%description telnetd -l pl
Telnet jest popularnym protoko³em zdalnego logowania. Ten pakiet
zawiera serwer pozwalaj±cy na zdalne logowanie siê klientów na maszynê
na której dzia³a.

%package clients
Summary:	Kerberos programs for use on workstations
Summary(pl):	Oprogramowanie klienckie dla stacji roboczej kerberosa
Group:		Networking
Requires:	%{name}-libs = %{version}-%{release}

%description clients
Kerberos 5 Clients.

%description clients -l pl
Oprogramowanie klienckie do korzystania z us³ug systemu Kerberos 5.

%package daemons
Summary:	Kerberos daemons programs for use on servers
Summary(pl):	Serwery popularnych us³ug, autoryzuj±ce przy pomocy kerberosa
Group:		Networking
Requires:	%{name}-libs = %{version}-%{release}

%description daemons
Kerberos Daemons.

%description daemons -l pl
Demony korzystaj±ce z systemu Kerberos do autoryzacji dostêpu.

%package devel
Summary:	Header files for heimdal
Summary(pl):	Pliki nag³ówkowe i dokumentacja do bibliotek heimdal
Group:		Development/Libraries
Requires:	%{name}-libs = %{version}-%{release}
Requires:	e2fsprogs-devel
#Obsoletes:	heimdal-static

%description devel
contains files needed to compile and link software using the kerberos
libraries.

%description devel -l pl
Pliki nag³ówkowe i dokumentacja do bibliotek heimdal.

%prep
%setup -q
#%patch0 -p1
#%patch1 -p1
#%patch2 -p1
#%patch3
#%patch4 
#%patch5 -p1
#%patch6 -p1
%patch7 -p1 -b .readline
autoconf

%build
export CFLAGS="-DHAVE_SNPRINTF"

%configure \
	--disable-static \
	--enable-new-des3-code \
	--enable-shared \
	--with-readline --with-readline-lib=%{_libdir} --with-readline-include=%{_includedir}/readline \
	--with-x \
	--with-ipv6 \
	--with-openldap=%{_prefix}

# --enable-netinfo - czo to takiego ?
# mo¿na u¿ywaæ albo krb5.conf albo netinfo
#
#       --enable-osfc2 \
#    setluid(epw->ufld->fd_uid);
#    if(getluid() != epw->ufld->fd_uid) {
# setluid() && getluid() - sk±d to

export CFLAGS="$CFLAGS -D_REENTRANT -DHAVE_SNPRINTF"
%{__make}

%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{%{_localstatedir},%{_sysconfdir}} \
	$RPM_BUILD_ROOT/etc/{xinetd.d,logrotate.d,rc.d/init.d}

%{__make} install \
	DESTDIR=$RPM_BUILD_ROOT

install appl/su/.libs/su $RPM_BUILD_ROOT%{_bindir}/ksu
#install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/krb5.conf

install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
# FIXME install %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
# FIXME install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/%{name}

install %{SOURCE5} $RPM_BUILD_ROOT/etc/xinetd.d/ftpd
install %{SOURCE6} $RPM_BUILD_ROOT/etc/xinetd.d/rshd
install %{SOURCE7} $RPM_BUILD_ROOT/etc/xinetd.d/telnetd
install %{SOURCE8} $RPM_BUILD_ROOT/etc/xinetd.d/kadmind

rm -rf	$RPM_BUILD_ROOT%{_libdir}/lib{com_err,ss}.so \
$RPM_BUILD_ROOT%{_includedir}/{glob,fnmatch,ss/ss}.h

chmod +r $RPM_BUILD_ROOT%{_bindir}/otp   # qrde dlaczego to ma chmod 0

touch $RPM_BUILD_ROOT{%{_sysconfdir}/krb5.keytab,%{_localstatedir}/kadmind.acl}

# alternatives:
mv %{buildroot}/%{_mandir}/man1/{,k}su.1
for file in {%{common_confl_krb5w},%{common_confl_krbafs}}
do 
  mv %{buildroot}/%{_bindir}/${file}{,.%{name}}
  mv %{buildroot}/%{_mandir}/man1/$file{,.%{name}}.1
  mv %{buildroot}/%{_mandir}/cat1/$file{,.%{name}}.1 ||:
done
#mv %{buildroot}/%{_mandir}/cat1/kpasswd{,.%{name}

%multiarch_binaries %{buildroot}/%{_bindir}/krb5-config

%clean
rm -rf $RPM_BUILD_ROOT

%post
update-alternatives --install %{_bindir}/kinit kinit \
%{_bindir}/kinit.%{name} 10 \
$(for i in %{_bindir}/{%{common_confl_krb5w},%{common_confl_krbafs}}
do [ "$i" == "kinit" ] || echo -n " --slave %{_bindir}/${i} ${i} %{_bindir}/${i}.%{name}"
done)
update-alternatives --auto kinit

%post server
%_post_service %{name}

%preun server
%_preun_service %{name}

%post ftpd
service xinetd condreload

%postun ftpd
service xinetd condreload

%post rshd
service xinetd condreload

%postun rshd
service xinetd condreload

%post telnetd
service xinetd condreload

%postun telnetd
service xinetd condreload

%post libs
/sbin/ldconfig

%postun libs
/sbin/ldconfig

%files server
%defattr(644,root,root,755)
%doc NEWS TODO

%attr(754,root,root) /etc/rc.d/init.d/%{name}
#%attr(640,root,root) /etc/logrotate.d/%{name}
#%attr(640,root,root) /etc/sysconfig/heimdal
%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/xinetd.d/kadmind

%attr(700,root,root) %dir %{_localstatedir}
%attr(600,root,root) %config(noreplace) %verify(not size mtime md5) %{_localstatedir}/*

%(for i in %{buildroot}%{_mandir}/*/{%{server_sbin}}.*;do echo ${i#%{buildroot}};done)
%{_mandir}/*8/iprop.*

%defattr(755,root,root)
%(for i in %{_sbindir}/{%{server_sbin},%{server_sbin_noman},truncate_log};do echo ${i};done)

%files libs
%defattr(644,root,root,755)
%dir %{_sysconfdir}
#%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/krb5.conf
%attr(400,root,root) %ghost %{_sysconfdir}/krb5.keytab

%attr(755,root,root) %{_libdir}/lib*.so.*

%{_infodir}/heimdal.info*
%{_mandir}/*/krb5.conf.5*
%{_mandir}/*/kerberos.8*


%files login
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/login
%{_mandir}/*/login.*

%files ftp
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/ftp
%{_mandir}/*/ftp.1*

%files rsh
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/rsh
%attr(755,root,root) %{_bindir}/rcp
%{_mandir}/*/rsh.1*

%files telnet
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/telnet
%{_mandir}/*/telnet.1*

%files ftpd
%defattr(644,root,root,755)
%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/xinetd.d/ftpd
%attr(755,root,root) %{_sbindir}/ftpd
%{_mandir}/*/ftpusers.5*
%{_mandir}/*/ftpd.8*

%files rshd
%defattr(644,root,root,755)
%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/xinetd.d/rshd
%attr(755,root,root) %{_sbindir}/rshd
%{_mandir}/*/rshd.8*

%files telnetd
%defattr(644,root,root,755)
%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/xinetd.d/telnetd
%attr(755,root,root) %{_sbindir}/telnetd
%{_mandir}/*/telnetd.8*

%files
%defattr(755,root,root)
#%attr(755,root,root) 
#%exclude %{_bindir}/compile_et
%(for i in %{_bindir}/{%{common_bin}};do echo $i;done)
%(for i in %{_bindir}/{%{common_confl_krb5w},%{common_confl_krbafs}};do echo ${i}.%{name};done)
%(for i in %{buildroot}/%{_mandir}/{man?,cat?}/{%{common_bin}}\.[0-9]%{_extension};do echo ${i#%{buildroot}};done)
%(for i in %{buildroot}/%{_mandir}/{man?,cat?}/{%{common_confl_krb5w},%{common_confl_krbafs}}.%{name}.1%{_extension};do echo ${i#%{buildroot}};done)


%attr(4755,root,root) %{_bindir}/otp
%{_mandir}/*/otp.1*
%attr(4755,root,root) %{_bindir}/su
%{_mandir}/*/su.1*
%attr(4755,root,root) %{_bindir}/ksu
%{_mandir}/man1/ksu.1*

%defattr(644,root,root,755)
#%{_mandir}/man1/kauth.1*
#%{_mandir}/man1/kdestroy.1*
#%{_mandir}/man1/kgetcred.1*
#%{_mandir}/man1/kinit.1*
#%{_mandir}/man1/klist.1*
#%{_mandir}/man1/kpasswd.1*
#%{_mandir}/man1/otp.1*
#%{_mandir}/man1/otpprint.1*
#%{_mandir}/man8/verify_krb5_conf.8*

%files daemons
%defattr(644,root,root,755)
%attr(755,root,root) %{_sbindir}/popper
%attr(755,root,root) %{_sbindir}/push
%{_mandir}/*/popper.8*
%{_mandir}/*/push.8*

%files devel
%defattr(644,root,root,755)
%_bindir/krb5-config
%multiarch_bindir/krb5-config
%{_bindir}/mk_cmds
%{_libdir}/lib*.la
%{_libdir}/lib*.so
#%attr(755,root,root) %{_libdir}/lib*.a
%{_includedir}/*
%{_mandir}/*/krb5-config.1*
#%{_mandir}/*/*
%{_mandir}/cat3/*
%{_mandir}/man3/*

%define date	%(echo `LC_ALL="C" date +"%a %b %d %Y"`)
%changelog
* Wed Sep 21 2005 Buchan Milne <bgmilne@mandriva.org> 0.7.1-1mdk
- finally finish the last bits of this initial package

* Fri Nov 26 2004 Buchan Milne <bgmilne@linux-mandrake.com> 0.6.3-1mdk
- 0.6.3

* Mon Jul 26 2004 Buchan Milne <bgmilne@linux-mandrake.com> 0.6.2-1mdk
- 0.6.2
- drop db4 patchs (p3,p4) and compilation fixes (p5) - applied upstream

* Sun Mar 14 2004 Buchan Milne <bgmilne@linux-mandrake.com> 0.6-1mdk
- First Mandrake package (based on PLD package)
- patches to build with db4
- for now, don't terminate on missing files ...