- Fix potential segfault when no rpmloc_path (#231146)
- Fix debugedit for relative paths (#232222) - Spec cleanup
This commit is contained in:
parent
f8e442e871
commit
c4acc096b1
63
rpm-4.4.2-debugedit-canonicalize-path.patch
Normal file
63
rpm-4.4.2-debugedit-canonicalize-path.patch
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
--- tools/debugedit.c.jj 2007-03-14 14:11:04.000000000 +0100
|
||||||
|
+++ tools/debugedit.c 2007-03-14 15:39:34.000000000 +0100
|
||||||
|
@@ -372,38 +372,43 @@ canonicalize_path (const char *s, char *
|
||||||
|
if (s[0] == '.' && (s[1] == 0 || IS_DIR_SEPARATOR (s[1])))
|
||||||
|
{
|
||||||
|
s ++;
|
||||||
|
- if (*s)
|
||||||
|
- s++;
|
||||||
|
- else if (d > droot)
|
||||||
|
+ if (!*s && d > droot)
|
||||||
|
d--;
|
||||||
|
}
|
||||||
|
|
||||||
|
else if (s[0] == '.' && s[1] == '.'
|
||||||
|
&& (s[2] == 0 || IS_DIR_SEPARATOR (s[2])))
|
||||||
|
{
|
||||||
|
- char *pre = d-1; /* includes slash */
|
||||||
|
+ char *pre = d - 1; /* includes slash */
|
||||||
|
while (droot < pre && IS_DIR_SEPARATOR (*pre))
|
||||||
|
pre--;
|
||||||
|
if (droot <= pre && ! IS_DIR_SEPARATOR (*pre))
|
||||||
|
{
|
||||||
|
- d = pre;
|
||||||
|
- while (droot < d && ! IS_DIR_SEPARATOR (*d))
|
||||||
|
- d--;
|
||||||
|
- /* d now points to the slash */
|
||||||
|
- if (droot < d)
|
||||||
|
- d++;
|
||||||
|
- s += 2;
|
||||||
|
- if (*s)
|
||||||
|
- s++;
|
||||||
|
- else if (d > droot)
|
||||||
|
- d--;
|
||||||
|
+ while (droot < pre && ! IS_DIR_SEPARATOR (*pre))
|
||||||
|
+ pre--;
|
||||||
|
+ /* pre now points to the slash */
|
||||||
|
+ if (droot < pre)
|
||||||
|
+ pre++;
|
||||||
|
+ if (pre + 3 == d && pre[0] == '.' && pre[1] == '.')
|
||||||
|
+ {
|
||||||
|
+ *d++ = *s++;
|
||||||
|
+ *d++ = *s++;
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+ {
|
||||||
|
+ d = pre;
|
||||||
|
+ s += 2;
|
||||||
|
+ if (*s)
|
||||||
|
+ while (IS_DIR_SEPARATOR (*s))
|
||||||
|
+ s++;
|
||||||
|
+ else if (d > droot)
|
||||||
|
+ d--;
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
*d++ = *s++;
|
||||||
|
*d++ = *s++;
|
||||||
|
- if (*s)
|
||||||
|
- *d++ = *s++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
40
rpm.spec
40
rpm.spec
@ -1,5 +1,4 @@
|
|||||||
%define with_python_subpackage 1%{nil}
|
%define with_python_version 2.4%{nil}
|
||||||
%define with_python_version 2.5%{nil}
|
|
||||||
%define with_apidocs 1%{nil}
|
%define with_apidocs 1%{nil}
|
||||||
|
|
||||||
# XXX legacy requires './' payload prefix to be omitted from rpm packages.
|
# XXX legacy requires './' payload prefix to be omitted from rpm packages.
|
||||||
@ -16,10 +15,9 @@
|
|||||||
|
|
||||||
Summary: The RPM package management system
|
Summary: The RPM package management system
|
||||||
Name: rpm
|
Name: rpm
|
||||||
%define version 4.4.2
|
Version: 4.4.2
|
||||||
Version: %{version}
|
|
||||||
%{expand: %%define rpm_version %{version}}
|
%{expand: %%define rpm_version %{version}}
|
||||||
Release: 40%{?dist}
|
Release: 41%{?dist}
|
||||||
Group: System Environment/Base
|
Group: System Environment/Base
|
||||||
Url: http://www.rpm.org/
|
Url: http://www.rpm.org/
|
||||||
Source: rpm-%{rpm_version}.tar.gz
|
Source: rpm-%{rpm_version}.tar.gz
|
||||||
@ -62,11 +60,13 @@ Patch33: rpm-4.4.2-transaction-order.patch
|
|||||||
Patch34: rpm-4.4.2-debugopt.patch
|
Patch34: rpm-4.4.2-debugopt.patch
|
||||||
Patch35: rpm-4.4.2-query-flushbuffer.patch
|
Patch35: rpm-4.4.2-query-flushbuffer.patch
|
||||||
Patch36: rpm-4.4.2-unicodekey.patch
|
Patch36: rpm-4.4.2-unicodekey.patch
|
||||||
|
Patch37: rpm-4.4.2-noneon.patch
|
||||||
|
Patch38: rpm-4.4.2-debugedit-canonicalize-path.patch
|
||||||
License: GPL
|
License: GPL
|
||||||
Requires: patch > 2.5
|
Requires: patch > 2.5
|
||||||
Prereq: shadow-utils
|
Prereq: shadow-utils
|
||||||
Requires: popt = 1.10.2
|
Requires: popt = 1.10.2
|
||||||
Requires: crontab
|
Requires: crontabs
|
||||||
|
|
||||||
BuildRequires: autoconf
|
BuildRequires: autoconf
|
||||||
BuildRequires: elfutils-devel >= 0.112
|
BuildRequires: elfutils-devel >= 0.112
|
||||||
@ -77,16 +77,13 @@ BuildRequires: readline-devel zlib-devel
|
|||||||
BuildRequires: beecrypt-devel >= 4.1.2
|
BuildRequires: beecrypt-devel >= 4.1.2
|
||||||
Requires: beecrypt >= 4.1.2
|
Requires: beecrypt >= 4.1.2
|
||||||
|
|
||||||
BuildRequires: neon-devel
|
BuildConflicts: neon-devel
|
||||||
BuildRequires: sqlite-devel
|
BuildRequires: sqlite-devel
|
||||||
BuildRequires: gettext-devel
|
BuildRequires: gettext-devel
|
||||||
BuildRequires: libselinux-devel
|
BuildRequires: libselinux-devel
|
||||||
BuildRequires: ncurses-devel
|
BuildRequires: ncurses-devel
|
||||||
BuildRequires: bzip2-devel >= 0.9.0c-2
|
BuildRequires: bzip2-devel >= 0.9.0c-2
|
||||||
|
|
||||||
%if %{with_python_subpackage}
|
|
||||||
BuildRequires: python-devel >= %{with_python_version}
|
BuildRequires: python-devel >= %{with_python_version}
|
||||||
%endif
|
|
||||||
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-root
|
BuildRoot: %{_tmppath}/%{name}-root
|
||||||
|
|
||||||
@ -110,7 +107,6 @@ Summary: Development files for manipulating RPM packages
|
|||||||
Group: Development/Libraries
|
Group: Development/Libraries
|
||||||
Requires: rpm = %{rpm_version}-%{release}
|
Requires: rpm = %{rpm_version}-%{release}
|
||||||
Requires: beecrypt >= 4.1.2
|
Requires: beecrypt >= 4.1.2
|
||||||
Requires: neon-devel
|
|
||||||
Requires: sqlite-devel
|
Requires: sqlite-devel
|
||||||
Requires: libselinux-devel
|
Requires: libselinux-devel
|
||||||
Requires: elfutils-libelf-devel
|
Requires: elfutils-libelf-devel
|
||||||
@ -137,7 +133,6 @@ Provides: rpmbuild(VendorConfig) = 4.1-1
|
|||||||
The rpm-build package contains the scripts and executable programs
|
The rpm-build package contains the scripts and executable programs
|
||||||
that are used to build packages using the RPM Package Manager.
|
that are used to build packages using the RPM Package Manager.
|
||||||
|
|
||||||
%if %{with_python_subpackage}
|
|
||||||
%package python
|
%package python
|
||||||
Summary: Python bindings for apps which will manipulate RPM packages
|
Summary: Python bindings for apps which will manipulate RPM packages
|
||||||
Group: Development/Libraries
|
Group: Development/Libraries
|
||||||
@ -150,7 +145,6 @@ supplied by RPM Package Manager libraries.
|
|||||||
|
|
||||||
This package should be installed if you want to develop Python
|
This package should be installed if you want to develop Python
|
||||||
programs that will manipulate RPM packages and databases.
|
programs that will manipulate RPM packages and databases.
|
||||||
%endif
|
|
||||||
|
|
||||||
%package -n popt
|
%package -n popt
|
||||||
Summary: A C library for parsing command line parameters
|
Summary: A C library for parsing command line parameters
|
||||||
@ -206,6 +200,8 @@ shell-like rules.
|
|||||||
%patch34 -p1 -b .dbgopt
|
%patch34 -p1 -b .dbgopt
|
||||||
%patch35 -p1 -b .flush
|
%patch35 -p1 -b .flush
|
||||||
%patch36 -p1 -b .unicode
|
%patch36 -p1 -b .unicode
|
||||||
|
%patch37 -p1 -b .noneon
|
||||||
|
%patch38 -p0 -b .debugcan
|
||||||
|
|
||||||
# rebuild configure for ipv6
|
# rebuild configure for ipv6
|
||||||
autoconf
|
autoconf
|
||||||
@ -215,11 +211,7 @@ autoconf
|
|||||||
# XXX rpm needs functioning nptl for configure tests
|
# XXX rpm needs functioning nptl for configure tests
|
||||||
unset LD_ASSUME_KERNEL || :
|
unset LD_ASSUME_KERNEL || :
|
||||||
|
|
||||||
%if %{with_python_subpackage}
|
|
||||||
WITH_PYTHON="--with-python=%{with_python_version}"
|
WITH_PYTHON="--with-python=%{with_python_version}"
|
||||||
%else
|
|
||||||
WITH_PYTHON="--without-python"
|
|
||||||
%endif
|
|
||||||
|
|
||||||
CFLAGS="$RPM_OPT_FLAGS"; export CFLAGS
|
CFLAGS="$RPM_OPT_FLAGS"; export CFLAGS
|
||||||
%configure $WITH_PYTHON --enable-posixmutexes --without-javaglue
|
%configure $WITH_PYTHON --enable-posixmutexes --without-javaglue
|
||||||
@ -282,11 +274,9 @@ done
|
|||||||
rm -f .%{_libdir}/lib*.la
|
rm -f .%{_libdir}/lib*.la
|
||||||
rm -f .%{__prefix}/lib/rpm/{Specfile.pm,cpanflute,cpanflute2,rpmdiff,rpmdiff.cgi,sql.prov,sql.req,tcl.req}
|
rm -f .%{__prefix}/lib/rpm/{Specfile.pm,cpanflute,cpanflute2,rpmdiff,rpmdiff.cgi,sql.prov,sql.req,tcl.req}
|
||||||
rm -rf .%{__mandir}/{fr,ko}
|
rm -rf .%{__mandir}/{fr,ko}
|
||||||
%if %{with_python_subpackage}
|
|
||||||
rm -f .%{__libdir}/python%{with_python_version}/site-packages/*.{a,la}
|
rm -f .%{__libdir}/python%{with_python_version}/site-packages/*.{a,la}
|
||||||
rm -f .%{__libdir}/python%{with_python_version}/site-packages/rpm/*.{a,la}
|
rm -f .%{__libdir}/python%{with_python_version}/site-packages/rpm/*.{a,la}
|
||||||
rm -f .%{__libdir}/python%{with_python_version}/site-packages/rpmdb/*.{a,la}
|
rm -f .%{__libdir}/python%{with_python_version}/site-packages/rpmdb/*.{a,la}
|
||||||
%endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# Install mono find-provides/requires
|
# Install mono find-provides/requires
|
||||||
@ -327,8 +317,9 @@ exit 0
|
|||||||
|
|
||||||
%postun
|
%postun
|
||||||
if [ $1 = 0 ]; then
|
if [ $1 = 0 ]; then
|
||||||
/usr/sbin/userdel rpm
|
/usr/sbin/userdel rpm > /dev/null 2>&1
|
||||||
/usr/sbin/groupdel rpm
|
/usr/sbin/groupdel rpm > /dev/null 2>&1
|
||||||
|
|
||||||
fi
|
fi
|
||||||
exit 0
|
exit 0
|
||||||
|
|
||||||
@ -505,11 +496,9 @@ exit 0
|
|||||||
%{__mandir}/man8/rpmbuild.8*
|
%{__mandir}/man8/rpmbuild.8*
|
||||||
%{__mandir}/man8/rpmdeps.8*
|
%{__mandir}/man8/rpmdeps.8*
|
||||||
|
|
||||||
%if %{with_python_subpackage}
|
|
||||||
%files python
|
%files python
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
%{__libdir}/python%{with_python_version}/site-packages/rpm
|
%{__libdir}/python%{with_python_version}/site-packages/rpm
|
||||||
%endif
|
|
||||||
|
|
||||||
%files devel
|
%files devel
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
@ -571,6 +560,11 @@ exit 0
|
|||||||
%{__includedir}/popt.h
|
%{__includedir}/popt.h
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Mar 13 2007 Paul Nasrat <pnasrat@redhat.com> - 4.4.2-41
|
||||||
|
- Fix potential segfault when no rpmloc_path (#231146)
|
||||||
|
- Fix debugedit for relative paths (#232222)
|
||||||
|
- Spec cleanup
|
||||||
|
|
||||||
* Mon Feb 19 2007 Jeremy Katz <katzj@redhat.com> - 4.4.2-40
|
* Mon Feb 19 2007 Jeremy Katz <katzj@redhat.com> - 4.4.2-40
|
||||||
- rpm-build should require findutils
|
- rpm-build should require findutils
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user