devel/jabberd jabberd.spec,1.1,1.2
Adrian Reber (adrian)
fedora-extras-commits at redhat.com
Wed Mar 9 08:00:03 UTC 2005
Author: adrian
Update of /cvs/extras/devel/jabberd
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv10730
Modified Files:
jabberd.spec
Log Message:
* made password more random (/dev/random)
* replace password in the config without making it visible in ps
* enable ldap, mysql, postgresql backends
* remove dependency on perl during build
* make pam default authentication backend in c2s.xml
* make files in etc (640, jabber, jabber)
* enabled SSL certificate in c2s.xml
* enabled auto creation of accounts in sm.xml (necessary for usage with PAM)
* enabled require-startls
Index: jabberd.spec
===================================================================
RCS file: /cvs/extras/devel/jabberd/jabberd.spec,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- jabberd.spec 7 Mar 2005 08:23:35 -0000 1.1
+++ jabberd.spec 9 Mar 2005 08:00:01 -0000 1.2
@@ -1,7 +1,7 @@
Summary: OpenSource server implementation of the Jabber protocols
Name: jabberd
Version: 2.0
-Release: 0.s6.3
+Release: 0.s6.4
Epoch: 0
License: GPL
Group: System Environment/Daemons
@@ -9,7 +9,8 @@
Source1: jabberd
URL: http://jabberd.jabberstudio.org/2/
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-BuildRequires: openssl-devel, db4-devel, libidn-devel, pam-devel
+BuildRequires: openssl-devel db4-devel libidn-devel pam-devel
+BuildRequires: openldap-devel postgresql-devel mysql-devel
Requires(post): openssl
%description
@@ -22,14 +23,19 @@
from the ground up to be scalable, architecturally sound, and to support the
latest protocol extensions coming out of the JSF.
+This packages defaults to use pam and the Berkeley DB.
+
%prep
%setup -q -n %{name}-%{version}s6
%build
%define _sysconfdir /etc/jabberd
%define sysconfdir /etc/jabberd
-%{__perl} -pi -e 's,sysconfdir=\"\$sysconfdir\/jabberd\",#sysconfdir=\"\$sysconfdir\/jabberd\",g' configure
-%configure --enable-db --disable-mysql --enable-pam
+%{__sed} -i -e "s,sysconfdir=\"\$sysconfdir\/jabberd\",#sysconfdir=\"\$sysconfdir\/jabberd\",g" \
+ configure
+%configure --enable-db --enable-mysql --enable-pam --enable-ldap \
+ --enable-pgsql --with-extra-library-path=%{_libdir}/mysql \
+ --enable-debug
%{__make} %{?_smp_mflags}
%install
@@ -45,9 +51,11 @@
%{__mkdir_p} $RPM_BUILD_ROOT%{_initrddir}
%{__install} -m 755 %{SOURCE1} $RPM_BUILD_ROOT%{_initrddir}/%{name}
-%{__perl} -pi -e 's,__BINDIR__,%{_bindir},g; \
- s,__ETCDIR__,%{sysconfdir},g; \
- s,__PIDDIR__,%{_localstatedir}/jabberd/pid,g;' \
+%{__sed} -i -e "s,__BINDIR__,%{_bindir},g" \
+ $RPM_BUILD_ROOT%{_initrddir}/%{name}
+%{__sed} -i -e "s,__ETCDIR__,%{sysconfdir},g" \
+ $RPM_BUILD_ROOT%{_initrddir}/%{name}
+%{__sed} -i -e "s,__PIDDIR__,%{_localstatedir}/jabberd/pid,g" \
$RPM_BUILD_ROOT%{_initrddir}/%{name}
%{__mkdir_p} $RPM_BUILD_ROOT%{_sysconfdir}/pam.d/
@@ -59,9 +67,25 @@
session required pam_stack.so service=system-auth
END
+#default driver for storage
%{__sed} -i -e "s,<driver>mysql</driver>,<driver>db</driver>,g" \
$RPM_BUILD_ROOT%{sysconfdir}/sm.xml
+#default authentication backend
+%{__sed} -i -e "s,<module>mysql</module>,<module>pam</module>,g" \
+ $RPM_BUILD_ROOT%{sysconfdir}/c2s.xml
+
+#enable SSL certificate
+%{__sed} -i -e ':a;N;$!ba;s,<!--\n <pemfile>/etc/jabberd/server.pem</pemfile>\n -->,<pemfile>/etc/jAbberd/server.pem</pemfile>,g' $RPM_BUILD_ROOT%{sysconfdir}/c2s.xml
+
+#the default pam backend needs auto creation of accounts
+%{__sed} -i -e ':a;N;$!ba;s,<!--\n <auto-create/>\n -->,<auto-create/>,g' \
+ $RPM_BUILD_ROOT%{sysconfdir}/sm.xml
+
+#clients must do STARTTLS
+%{__sed} -i -e ':a;N;$!ba;s,<!--\n <require-startls/>\n -->,<require-startls/>,g' \
+ $RPM_BUILD_ROOT%{sysconfdir}/c2s.xml
+
#ghost file
touch $RPM_BUILD_ROOT%{sysconfdir}/server.pem
@@ -78,11 +102,16 @@
#register %{name} service
/sbin/chkconfig --add %{name}
#replace default passwords, yet another hack
- export NEWPASS="$RANDOM-newpass-$RANDOM"
+ export NEWPASS=$( dd if=/dev/urandom bs=20 count=1 2>/dev/null \
+ | sha1sum | awk '{print $1}' )
cd %{sysconfdir}
- %{__perl} -pi -e "s,<secret>secret</secret>,<secret>$NEWPASS</secret>,g" router-users.xml
- %{__perl} -pi -e "s,<secret>secret</secret>,<secret>$NEWPASS</secret>,g" router.xml
- %{__perl} -pi -e "s,<pass>secret</pass>,<pass>$NEWPASS</pass>,g" *.xml
+ %{__sed} -i -f- router-users.xml router.xml <<END
+s,<secret>secret</secret>,<secret>$NEWPASS</secret>,g
+END
+ %{__sed} -i -f- *.xml <<END
+s,<pass>secret</pass>,<pass>$NEWPASS</pass>,g
+END
+
fi
#create ssl certificate
@@ -111,7 +140,8 @@
%defattr(-,root,root)
%doc AUTHORS COPYING ChangeLog INSTALL NEWS README PROTOCOL TODO
%{_bindir}/*
-%config(noreplace) %{sysconfdir}/
+%attr(750, jabber, jabber) %dir %{sysconfdir}/
+%attr(640, jabber, jabber) %config(noreplace) %{sysconfdir}/*
%{_datadir}/man/man8/*
%{_datadir}/%{name}/
%config(noreplace) %{_initrddir}/%{name}
@@ -120,6 +150,17 @@
%ghost %{_sysconfdir}/jabberd/server.pem
%changelog
+* Tue Mar 08 2005 Adrian Reber <adrian at lisas.de> - 2.0-0.s6.4
+- made password more random (/dev/random)
+- replace password in the config without making it visible in ps
+- enable ldap, mysql, postgresql backends
+- remove dependency on perl during build
+- make pam default authentication backend in c2s.xml
+- make files in etc (640, jabber, jabber)
+- enabled SSL certificate in c2s.xml
+- enabled auto creation of accounts in sm.xml (necessary for usage with PAM)
+- enabled require-startls
+
* Mon Mar 07 2005 Adrian Reber <adrian at lisas.de> - 2.0-0.s6.3
- changed startscript again
More information about the fedora-extras-commits
mailing list