[nss] Improve the fixes for bugs 636787, 636792, 636801
Elio Maldonado
emaldonado at fedoraproject.org
Wed Sep 29 20:30:13 UTC 2010
commit c5201d23da5496507b300693364d4d17d72ce204
Author: Elio Maldonado <emaldona at redhat.com>
Date: Wed Sep 29 11:46:10 2010 -0700
Improve the fixes for bugs 636787, 636792, 636801
Replace posttrans sysinit scriptlet with a triggerpostun one (#636787)
Fix and cleanup the setup-nsssysinit.sh script (#636792, #636801)
nss.spec | 16 ++++++++++------
setup-nsssysinit.sh | 19 ++++++++++++-------
2 files changed, 22 insertions(+), 13 deletions(-)
---
diff --git a/nss.spec b/nss.spec
index bb19a31..01a5d06 100644
--- a/nss.spec
+++ b/nss.spec
@@ -6,7 +6,7 @@
Summary: Network Security Services
Name: nss
Version: 3.12.8
-Release: 2%{?dist}
+Release: 3%{?dist}
License: MPLv1.1 or GPLv2+ or LGPLv2+
URL: http://www.mozilla.org/projects/security/pki/nss/
Group: System Environment/Libraries
@@ -372,11 +372,11 @@ rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/nsslowhash.h
%postun -p /sbin/ldconfig
-# Prevent disabling of nss-sysinit on nss package upgrade caused
-# by faulty preun sysinit scriplet from a previous version nss.spec.
-# It will be eventually removed.
-%posttrans sysinit
-[ -e /etc/pki/nssdb/pkcs11.txt ] && /usr/bin/setup-nsssysinit.sh on
+# Reverse unwanted disabling of sysinit by faulty preun sysinit scriplet
+# from previous versions of nss.spec
+%triggerpostun -n nss-sysinit -- nss-sysinit < 3.12.8-3
+/usr/bin/setup-nsssysinit.sh on
+
%files
%defattr(-,root,root)
@@ -490,6 +490,10 @@ rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/nsslowhash.h
%{_libdir}/libnssckfw.a
%changelog
+* Wed Sep 29 2010 Elio Maldonado <emaldona at redhat.com> - 3.12.8-3
+- Replace posttrans sysinit scriptlet with a triggerpostun one (#636787)
+- Fix and cleanup the setup-nsssysinit.sh script (#636792, #636801)
+
* Mon Sep 27 2010 Elio Maldonado <emaldona at redhat.com> - 3.12.8-2
- Add posttrans scriptlet (#636787)
diff --git a/setup-nsssysinit.sh b/setup-nsssysinit.sh
index 02042ff..8e1f5f7 100755
--- a/setup-nsssysinit.sh
+++ b/setup-nsssysinit.sh
@@ -18,7 +18,7 @@ EOF
}
# validate
-if test $# -eq 0; then
+if [ $# -eq 0 ]; then
usage 1 1>&2
fi
@@ -30,13 +30,18 @@ if [ ! -f $p11conf ]; then
exit 1
fi
-on="1"
+# check if nsssysinit is currently enabled or disabled
+sysinit_enabled()
+{
+ grep -q '^library=libnsssysinit' ${p11conf}
+}
+
+umask 022
case "$1" in
on | ON )
- if [ `grep '^library=libnsssysinit' ${p11conf}` ]; then
+ if sysinit_enabled; then
exit 0
fi
- umask 022
cat ${p11conf} | \
sed -e 's/^library=$/library=libnsssysinit.so/' \
-e '/^NSS/s/\(Flags=internal\)\(,[^m]\)/\1,moduleDBOnly\2/' > \
@@ -44,10 +49,9 @@ case "$1" in
mv ${p11conf}.on ${p11conf}
;;
off | OFF )
- if [ ! `grep "^library=libnsssysinit" ${p11conf}` ]; then
+ if ! sysinit_enabled; then
exit 0
fi
- umask 022
cat ${p11conf} | \
sed -e 's/^library=libnsssysinit.so/library=/' \
-e '/^NSS/s/Flags=internal,moduleDBOnly/Flags=internal/' > \
@@ -55,7 +59,8 @@ case "$1" in
mv ${p11conf}.off ${p11conf}
;;
status )
- grep -q '^library=libnsssysinit' ${p11conf} && echo 'ON' || echo OFF
+ echo -n 'NSS sysinit is '
+ sysinit_enabled && echo 'enabled' || echo 'disabled'
;;
* )
usage 1 1>&2
More information about the scm-commits
mailing list