114 Commits

Author SHA1 Message Date
389d7864cf build/files.c, lib/signature.c: Do not include unused md5.h
(cherry picked from commit fe6df19341082028ef0faba0bdc44e6f97fc9b3e)
2008-11-12 05:29:08 +03:00
Alexey Tourbin
bd1897e46c psm.c (psmTriggerPosttrans): do not set RPM_INSTALL_ARG1 and RPM_INSTALL_ARG2 2008-11-12 05:10:51 +03:00
Alexey Tourbin
5fffe7272e psm.c (saveTriggerFiles): don't write filenames with '\n' character 2008-11-12 05:10:11 +03:00
Alexey Tourbin
4ada155008 implemented posttrans filetriggers, vaguely based on Mandriva patch 2008-11-12 05:10:11 +03:00
Alexey Tourbin
b8767dceb1 depends.c: disabled tsort presentation order
This should facilitate library upgrades, e.g. glibc-prthread.
Consider that we upgrade gcc-* and glibc-* packages; and glibc
has new subpackage glibc-pthread (with libpthread and librt
shared libraries).

Old order was:
D: ========== tsorting packages (order, #predecessors, #succesors, tree, depth)
D:     0    0   14    0    0  glibc-preinstall-2.8.90-alt3
D:     1    1   21    0    1    glibc-core-2.8.90-alt3
D:     2    1    9    0    2      cpp4.3-4.3.2-alt5
D:     3    1    5    0    2      libgcc4.3-4.3.2-alt5
D:     4    2   13    0    3        glibc-pthread-2.8.90-alt3
D:     5    2   20    0    4          glibc-core-debug-2.8.90-alt3
D:     6    2   17    0    4          glibc-gconv-modules-2.8.90-alt3
D:     7    2   16    0    4          glibc-locales-2.8.90-alt3
D:     8    2   15    0    4          glibc-nss-2.8.90-alt3
D:     9    2   12    0    4          glibc-timezones-2.8.90-alt3
D:    10    2   11    0    4          glibc-utils-2.8.90-alt3
D:    11    2   10    0    5            iconv-2.8.90-alt3
D:    12    8   22    0    6              glibc-2.8.90-alt3
D:    13    4   19    0    7                glibc-devel-2.8.90-alt3
D:    14    1   18    0    8                  glibc-devel-static-2.8.90-alt3
D:    15    4    8    0    8                  gcc4.3-4.3.2-alt5
D:    16    1    4    0    2      libgfortran4.3-4.3.2-alt5
D:    17    2    3    0    3        libgfortran4.3-devel-4.3.2-alt5
D:    18    3    6    0    4          gcc4.3-fortran-4.3.2-alt5
D:    19    2    2    0    3        libstdc++4.3-4.3.2-alt5
D:    20    2    1    0    4          libstdc++4.3-devel-4.3.2-alt5
D: ========== successors only (presentation order)
D:    21    3    7    0    5            gcc4.3-c++-4.3.2-alt5

Note that #succesors value is actually changed using the package index
in the input list of packages (on the command line): earlier packages
have higher values.  This is called "successors from tsort are processed
in presentation order".  E.g. when choosing to upgrade between cpp4.3,
libgcc4.3, and libgfortran4.3, cpp4.3 gets upgraded first.  (The
collation is probably due to using shell glob on the command line.)

The problem is that, in cpp4.3 %post-script, some pthread-dependent
code might be called, and pthread shared library is simply mssing
at that point (after glibc-core upgrade and before glibc-pthread
install).

New order is:
D: ========== tsorting packages (order, #predecessors, #succesors, tree, depth)
D:     0    0    1    0    0  glibc-preinstall-2.8.90-alt3
D:     1    1   17    0    1    glibc-core-2.8.90-alt3
D:     2    1    3    0    2      libgcc4.3-4.3.2-alt5
D:     3    2    8    0    3        glibc-pthread-2.8.90-alt3
D:     4    2    2    0    4          glibc-gconv-modules-2.8.90-alt3
D:     5    2    2    0    4          glibc-nss-2.8.90-alt3
D:     6    2    1    0    5            iconv-2.8.90-alt3
D:     7    2    1    0    4          glibc-locales-2.8.90-alt3
D:     8    2    1    0    4          glibc-timezones-2.8.90-alt3
D:     9    2    1    0    4          glibc-utils-2.8.90-alt3
D:    10    8    1    0    5            glibc-2.8.90-alt3
D:    11    4    4    0    6              glibc-devel-2.8.90-alt3
D:    12    2    1    0    3        libstdc++4.3-4.3.2-alt5
D:    13    2    1    0    4          libstdc++4.3-devel-4.3.2-alt5
D:    14    1    1    0    2      cpp4.3-4.3.2-alt5
D:    15    4    2    0    3        gcc4.3-4.3.2-alt5
D:    16    1    1    0    2      libgfortran4.3-4.3.2-alt5
D:    17    2    1    0    3        libgfortran4.3-devel-4.3.2-alt5
D: ========== successors only (presentation order)
D:    18    2    0    0    4          glibc-core-debug-2.8.90-alt3
D:    19    1    0    0    7                glibc-devel-static-2.8.90-alt3
D:    20    3    0    0    4          gcc4.3-fortran-4.3.2-alt5
D:    21    3    0    0    4          gcc4.3-c++-4.3.2-alt5

Note that #succesors now indicates the number of immediate successors;
libgcc4.3 now has 3 immediate successors (glibc-pthread, gcc4.3, and
libstdc++4.3), while cpp4.3 and libgfortran4.3 have only one immediate
successor.

Also removed tools/rpmsort.c.

> The are various serial representations of a partially ordered set.
>
> The default is what I call "chainsaw", always emit the node that has
> the most children.  The "chainsaw" heuristic tries to emit nodes that
> are depended upon as early as possible to localize interactions
> amongst packages, but really should be
>     Always emit the node of the largest sub-tree.
> rather than the number of immediate children. I call this "buzzsaw".
>
> Anaconda has the constraint of changing cd's during install. So
> "presentation" ordering preserves the arrival ordering into a
> transaction set. Too bad that "presentation" ordering is often
> incorrect because of no loop analysis first.

https://lists.dulug.duke.edu/pipermail/rpm-devel/2005-June/000468.html
2008-11-10 05:21:23 +03:00
Alexey Tourbin
5632ef5ac2 rpmrc.c: classify SSE2-capable CPUs as "pentium4" 2008-06-12 04:45:53 +04:00
9376fa4c22 rpmrc.c (is_pentium3): Add new p3 family models
http://download.intel.com/design/processor/applnots/24161832.pdf page 22
2008-06-05 21:52:02 +00:00
669c2e04c2 rpmrc.c (is_pentium4): Add new p4 models
http://download.intel.com/design/processor/applnots/24161832.pdf page 23
Patch from alexander@npo-inform.com
2008-06-05 21:52:02 +00:00
Alexey Tourbin
9814453966 backported LZMA payload compression from SuSE 2008-05-24 13:47:41 +04:00
6535b7f1cc rpmReadPackageManifest: Fix comments handling 2008-04-08 15:28:53 +00:00
8440b43b3c lib/query.c (showQueryPackage): Fix potential null dereference in QUERY_FOR_DEFAULT mode 2007-05-18 00:54:19 +00:00
4c4920e2d8 lib/query.c (showQueryPackage): Check all header strings to resize buffer (CVE-2006-5466, RH#212833)
Backported from rpm-4.4.8
2007-05-18 00:33:44 +00:00
6e81fe8727 lib/package.c (readPackageHeaders): Remove insecure legacy providePackageNVR() call 2007-05-18 00:20:42 +00:00
8a189d448b lib/formats.c (i18nTag): Avoid segfault on header without RPMTAG_NAME (RH#239557)
https://lists.dulug.duke.edu/pipermail/rpm-devel/2007-May/002653.html
2007-05-16 13:20:45 +00:00
0da910fb46 lib/transaction.c (rpmRunTransactions): Ignore unavailable mount points instead of bailing out 2007-03-29 16:03:42 +00:00
2aea31a78f lib/transaction.c (rpmRunTransactions): Drop "/mnt" support 2007-03-27 15:41:57 +00:00
8708708cac lib/fs.c (getFilesystemList): Drop "/mnt" support 2007-03-27 15:41:38 +00:00
e681f13889 lib/query.c: flush query format buffer before listing files (RH#212833, CVE-2006-5466). 2006-11-18 23:17:15 +00:00
7be2f91309 showMatches: Backport --querybynumber looping fix (#9773). 2006-09-16 23:27:20 +00:00
fe838e98f7 rpmQueryVerify: when rpmReadPackageManifest() is disabled, treat RPMRC_BADMAGIC return code from rpmReadPackageHeader() like other read errors (#9433). 2006-09-16 23:00:55 +00:00
df61ee0b9e Include local headers. 2006-05-15 03:26:57 +04:00
8787ee5d55 Fixed "type qualifiers ignored on function return type" issue. 2006-05-15 02:48:59 +04:00
ff10df025a Backported defaultMachine changes from rpm-4_4 branch. 2006-03-19 17:08:09 +00:00
44f692fbc1 %_preScriptEnvironment: export RPM_TARGET_ARCH and RPM_TARGET_OS 2006-02-24 00:35:53 +00:00
a2310ac49c reverted rpmTagTable changes 2005-10-19 17:45:39 +00:00
6e6ebb00f1 define _upgrade_honor_buildtime to 1 by default, add --ignorebuildtime to disable 2005-10-18 10:43:12 +00:00
540f2aec95 loadFi: fixed potential NULL dereference 2005-10-17 23:50:09 +00:00
f8470fffbe Set umask 022 for install scripts and triggers execution. 2005-10-17 22:57:59 +00:00
3fa4258878 Backported epoch handling fix in psmStage() and rpmRunTransactions().
Fix package upgrades by introducing digest comparison.
Optionally honor buildtime during package upgrades.
2005-10-17 13:23:09 +00:00
eaef1aad45 relocated _noDirTokens, compressFilelist, expandFilelist, providePackageNVR from lib to rpmdb 2005-10-15 16:30:13 +00:00
e1e85a6d51 relocated tagtable.c from lib to rpmdb 2005-10-15 15:22:28 +00:00
857446207e relocated tagtable.c from lib to rpmdb 2005-10-15 15:13:29 +00:00
adacd53a24 relocated headerNVR() from lib to rpmdb; added headerNEVRA() to rpmdb 2005-10-15 15:03:18 +00:00
e4d02edfd1 relocated tagName.c from lib to rpmdb 2005-10-15 14:57:00 +00:00
acf2f5d6ac relocated rpmvercmp.c from lib to rpmdb 2005-10-15 14:44:31 +00:00
f27bc8917e reverted: relocated parseEVR and isChangeNameMoreFresh from lib to rpmdb 2005-10-15 14:42:24 +00:00
5fe70d69b9 relocated parseEVR and isChangeNameMoreFresh from lib to rpmdb 2005-10-15 14:29:38 +00:00
d447fad49e relocated hdrinline.h and header.c from lib to rpmdb 2005-10-15 14:12:36 +00:00
6a14cbc258 fixed rpmExpand usage 2005-09-29 17:10:24 +00:00
4086557633 fixed rpmExpand usage 2005-09-29 16:01:17 +00:00
ce8ad9b9f0 fix rpmExpandNumeric handling 2005-09-29 15:46:13 +00:00
e79572e641 parseFormat(): allocate space for PTOK_ARRAY too 2005-06-29 22:26:42 +00:00
79826577bb more tweaks 2005-02-10 19:59:21 +00:00
f3fe45f1ac tweak buffer size 2005-02-10 19:56:23 +00:00
edfa505d46 open() return code fix 2005-02-10 19:48:37 +00:00
20c9cc7888 checkCPU() usage tweaks 2005-02-10 19:43:00 +00:00
65aaf3b23d Added pentium4 arch support (Raorn, #5259) 2004-10-31 19:08:39 +00:00
24276c5ef6 optimize _macro_i18ndomains expression 2004-06-26 23:41:48 +00:00
6f64190b92 convert: fixed to meet gettext(3) conventions 2004-06-26 19:51:13 +00:00
f23046ad70 import language guessing mechanism from glibc/intl 2004-06-26 16:46:55 +00:00