- Backport fix for nss_db crash when db contains exactly one entry.(#878913)
This commit is contained in:
parent
9d9d94d266
commit
6bee5d1fc3
32
glibc-rh878913.patch
Normal file
32
glibc-rh878913.patch
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
--- a/nss/makedb.c
|
||||||
|
+++ b/nss/makedb.c
|
||||||
|
@@ -591,13 +591,16 @@ copy_valstr (const void *nodep, const VISIT which, const int depth)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
+/* Determine if the candidate is prime by using a modified trial division
|
||||||
|
+ algorithm. The candidate must be both odd and greater than 4. */
|
||||||
|
static int
|
||||||
|
is_prime (size_t candidate)
|
||||||
|
{
|
||||||
|
- /* No even number and none less than 10 will be passed here. */
|
||||||
|
size_t divn = 3;
|
||||||
|
size_t sq = divn * divn;
|
||||||
|
|
||||||
|
+ assert (candidate > 4 && candidate % 2 != 0);
|
||||||
|
+
|
||||||
|
while (sq < candidate && candidate % divn != 0)
|
||||||
|
{
|
||||||
|
++divn;
|
||||||
|
@@ -612,8 +615,8 @@ is_prime (size_t candidate)
|
||||||
|
static size_t
|
||||||
|
next_prime (size_t seed)
|
||||||
|
{
|
||||||
|
- /* Make it definitely odd. */
|
||||||
|
- seed |= 1;
|
||||||
|
+ /* Make sure that we're always greater than 4. */
|
||||||
|
+ seed = (seed + 4) | 1;
|
||||||
|
|
||||||
|
while (!is_prime (seed))
|
||||||
|
seed += 2;
|
||||||
|
|
@ -28,7 +28,7 @@
|
|||||||
Summary: The GNU libc libraries
|
Summary: The GNU libc libraries
|
||||||
Name: glibc
|
Name: glibc
|
||||||
Version: %{glibcversion}
|
Version: %{glibcversion}
|
||||||
Release: 27%{?dist}
|
Release: 28%{?dist}
|
||||||
# GPLv2+ is used in a bunch of programs, LGPLv2+ is used for libraries.
|
# GPLv2+ is used in a bunch of programs, LGPLv2+ is used for libraries.
|
||||||
# Things that are linked directly into dynamically linked programs
|
# Things that are linked directly into dynamically linked programs
|
||||||
# and shared libraries (e.g. crt files, lib*_nonshared.a) have an additional
|
# and shared libraries (e.g. crt files, lib*_nonshared.a) have an additional
|
||||||
@ -196,6 +196,9 @@ Patch2041: %{name}-rh577950.patch
|
|||||||
|
|
||||||
Patch2042: %{name}-rh864820.patch
|
Patch2042: %{name}-rh864820.patch
|
||||||
|
|
||||||
|
#See http://sourceware.org/ml/libc-alpha/2012-11/msg00747.html
|
||||||
|
Patch2043: %{name}-rh878913.patch
|
||||||
|
|
||||||
Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
Obsoletes: glibc-profile < 2.4
|
Obsoletes: glibc-profile < 2.4
|
||||||
Obsoletes: nss_db
|
Obsoletes: nss_db
|
||||||
@ -475,6 +478,7 @@ rm -rf %{glibcportsdir}
|
|||||||
%patch1049 -p1
|
%patch1049 -p1
|
||||||
%patch1050 -p1
|
%patch1050 -p1
|
||||||
%patch1051 -p1
|
%patch1051 -p1
|
||||||
|
%patch2043 -p1
|
||||||
|
|
||||||
# On powerpc32, hp timing is only available in power4/power6
|
# On powerpc32, hp timing is only available in power4/power6
|
||||||
# libs, not in base, so pre-power4 dynamic linker is incompatible
|
# libs, not in base, so pre-power4 dynamic linker is incompatible
|
||||||
@ -1281,6 +1285,9 @@ rm -f *.filelist*
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Dec 10 2012 Patsy Franklin <pfrankli@redhat.com> - 2.16-28
|
||||||
|
- Backport fix for nss_db crash when db contains exactly one entry.(#878913)
|
||||||
|
|
||||||
* Thu Dec 7 2012 Patsy Franklin <pfrankli@redhat.com> - 2.16-27
|
* Thu Dec 7 2012 Patsy Franklin <pfrankli@redhat.com> - 2.16-27
|
||||||
- Backport crypto support from upstream. (#811753)
|
- Backport crypto support from upstream. (#811753)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user