Rakesh Pandit [Tue, 2 Jun 2009 05:13:59 +0000 (10:43 +0530)]
Updated mailing list information.
Panu Matilainen [Tue, 2 Jun 2009 06:42:04 +0000 (09:42 +0300)]
Remove toplevel TODO too, nobody updates it and we have Trac now
Panu Matilainen [Mon, 1 Jun 2009 12:32:26 +0000 (15:32 +0300)]
depMsg doesn't need _notpre() anymore
Panu Matilainen [Mon, 1 Jun 2009 11:54:59 +0000 (14:54 +0300)]
Remove leftover build/TODO file from 1998 / rpm 2.5 era...
Panu Matilainen [Mon, 1 Jun 2009 11:48:58 +0000 (14:48 +0300)]
Generate spec part string lengths at build time and make it const
Panu Matilainen [Mon, 1 Jun 2009 11:45:44 +0000 (14:45 +0300)]
Generate preamble tag lengths at build time and make it const
Panu Matilainen [Mon, 1 Jun 2009 10:39:00 +0000 (13:39 +0300)]
Issue deprecation warnings for PreReq and BuildPreReq
Panu Matilainen [Mon, 1 Jun 2009 10:37:20 +0000 (13:37 +0300)]
Turn unused spec syntax obsoletion mechanism into deprecation warning
Panu Matilainen [Mon, 1 Jun 2009 10:28:50 +0000 (13:28 +0300)]
Map PreReq into Requires(pre,preun) at build
- this gives a more reasonable mapping to former behavior of PreReq
when cutting loops
Panu Matilainen [Mon, 1 Jun 2009 09:53:08 +0000 (12:53 +0300)]
Deal with multiple scriptlet dependency bits in deptype format extension
- rpmbuild permits Requires(post,postun) style notation which gets lumped
into single dependency, report them all
Panu Matilainen [Mon, 1 Jun 2009 09:42:07 +0000 (12:42 +0300)]
Bring back former value of RPMSENSE_PREREQ
- packages using the legacy PreReq still widely exist distros having
patched PREREQ back in, we'll want to be able to deal with the legacy
packages best we can, and to do that we need to be able to test for
the prereq bit
- this also fixes ordering brokenness introduced by commit
502f88e0e67bb1df91e09a32a370b04bda36259e all the way from 2004:
with RPMSENSE_PREREQ equalling RPMSENSE_ANY, all co-requisites are seen
as pre-requisites due to isLegacyPrefix() returning bogons (RhBug:502269)
- previously RPMSENSE_SCRIPT_PRE etc were also marked RPMSENSE_PREREQ to
permit legacy rpm versions to deal the fine grained scriptlet dependencies
somehow, this we dont want anymore
Panu Matilainen [Mon, 1 Jun 2009 07:39:07 +0000 (10:39 +0300)]
Avoid filtering out erase pre-requisites on install
- Requires(pre,preun) etc are recorded as a single dependency entry,
so filter out dependencies that are only install pre-requisites
Panu Matilainen [Fri, 29 May 2009 08:03:33 +0000 (11:03 +0300)]
Build prereq is exactly the same as buildrequires
Panu Matilainen [Fri, 29 May 2009 06:02:44 +0000 (09:02 +0300)]
Fix calculation of hardlinked files (RhBug:503020)
- regression from commit
899dfb58927ec6e91014773430824462f4d0002e,
size of hardlinked file set is the size of one file of the set
- add isHardLink() internal helper to avoid a copy-paste code
Panu Matilainen [Fri, 22 May 2009 10:54:08 +0000 (13:54 +0300)]
Couple of documentation typos
Panu Matilainen [Fri, 22 May 2009 07:04:20 +0000 (10:04 +0300)]
Clean platform files on uninstall
Panu Matilainen [Fri, 22 May 2009 06:56:43 +0000 (09:56 +0300)]
Include from src, not build dir
Panu Matilainen [Wed, 20 May 2009 14:53:50 +0000 (17:53 +0300)]
Remove unnecessary includes + other minor include corrections
Panu Matilainen [Wed, 20 May 2009 14:22:51 +0000 (17:22 +0300)]
Eliminate useless pgpDig nbytes counter
- nothing at all uses this, dont bother
- if plaintext size of digests is needed, the correct place to calculate
it is in the digest routines, not manual beancounting all over the place
Panu Matilainen [Wed, 20 May 2009 14:20:43 +0000 (17:20 +0300)]
Remove size "signature" verification
- rpm itself hasn't used this for anything in ages, its broken too for
quite some time and nobody noticed -> nobody's going to miss this
Panu Matilainen [Wed, 20 May 2009 14:19:46 +0000 (17:19 +0300)]
Refactor ts out of main read package function
- Add a lower level rpmpkgRead() which just takes keyring and verify
flags, rpmReadPackageFile() is just a wrapper around it now
- Avoids several levels of unnecessary keyring references through
rpmtsGetKeyring()
- Pretty much loses package reading statistics but shrug...
Panu Matilainen [Wed, 20 May 2009 14:19:06 +0000 (17:19 +0300)]
Refactor ts out of main header read function
- Add a lower level rpmpkgReadHeader() which just takes keyring and
verify flags, rpmReadHeader() is just a wrapper around it now
Panu Matilainen [Wed, 20 May 2009 14:00:12 +0000 (17:00 +0300)]
Refactor ts out of main header verification routine
- signature checking a header only needs a keyring + verify flags,
add a lower level headerVerify() function (static only for now)
for this and turn headerCheck() into a wrapper around it
- some accuracy in statistics lost but shrug...
Panu Matilainen [Tue, 19 May 2009 07:26:50 +0000 (10:26 +0300)]
Don't mess up problem altNEVR in python ts.check() (rhbz#501068)
- the use of strrchr() silently casts away the const from the problem
set altNEVR string, which we then happily modify..
- similar to commit
62cc76e25cdfad78ac30bb28f626b474efdecddc
Panu Matilainen [Tue, 12 May 2009 07:30:10 +0000 (10:30 +0300)]
Updated Spanish translation (Domingo Becker)
Panu Matilainen [Tue, 12 May 2009 07:28:00 +0000 (10:28 +0300)]
Updated Portugese Brazilian translation (Igor Pires Soares)
Panu Matilainen [Fri, 8 May 2009 12:22:25 +0000 (15:22 +0300)]
Minor fix to Japanese translation (Masaki Furuta)
Panu Matilainen [Fri, 8 May 2009 12:01:15 +0000 (15:01 +0300)]
Fix parsing of pubkey signature packets. Ick.
- busted all the way from commit
bcb226480d0b60a8667eade77d81c29de4c3d6c9
Panu Matilainen [Thu, 7 May 2009 11:31:57 +0000 (14:31 +0300)]
Dont bother generation rpmds debug messages unless in debug mode
- rpmdsNotify() which does nothing but generate RPMLOG_DEBUG messages
gets called often enough that avoiding the unnecessary
rpmlog() and strcmp() calls is easily visible in wallclock times
Panu Matilainen [Wed, 6 May 2009 11:54:10 +0000 (14:54 +0300)]
rpmdsThis() is really just a special case of rpmdsSingle()
Panu Matilainen [Thu, 23 Apr 2009 12:54:09 +0000 (15:54 +0300)]
Hide NSS peculiarities from API
- PKCS#11 standard requires modules to be re-initialized after fork(),
arrange this to occur automatically.
- Most of the time child processes will exec() something else so dont
bother shutting down NSS for every child, only lazily re-initialize
as needed.
- This lets us initialize NSS early to force preloading of its dlopen()'ed
libraries to avoid issues on chroot(), without causing problems to API
users which fork() after initializing rpm (such as func, urpmi etc).
Rakesh Pandit [Sat, 14 Mar 2009 13:08:53 +0000 (18:38 +0530)]
- Removed unnecessary rpmdbFreeIterator call and moved them to enditer label.
- Rearranged bit to keep the logic sane.
Rakesh Pandit [Sat, 14 Mar 2009 12:29:03 +0000 (17:59 +0530)]
Cleanup: Move similar patterns in rpmcliArgIter to rpmcliArgIterHelper.
Rakesh Pandit [Sat, 14 Mar 2009 12:02:59 +0000 (17:32 +0530)]
- Moved code to check possibility of freshen operation to checkFreshenStatus.
Rakesh Pandit [Sat, 14 Mar 2009 11:08:10 +0000 (16:38 +0530)]
- Move header reading part from rpminstall to tryReadHeader function.
Panu Matilainen [Wed, 22 Apr 2009 14:12:37 +0000 (17:12 +0300)]
Minor cleanups to installplatform script
- eliminate unused target and target_platform variables
- eliminate unnecessary temporary rpmrc (used to make a difference when
macro path was in there, not anymore)
Panu Matilainen [Wed, 22 Apr 2009 13:22:54 +0000 (16:22 +0300)]
Eliminate unnecessary rpmts_internal.h include
Panu Matilainen [Wed, 22 Apr 2009 11:58:10 +0000 (14:58 +0300)]
Refactor ts out of the main signature checking worker
- Add lower level rpmpkgVerifySigs() function which does the real work,
ts and full qva isn't needed there, just keyring and flags what to verify.
Static only for now, but this is the kind of interface we'll want to
export eventually.
- rpmVerifySignatures() is now just a API-compatibility wrapper.
- Use rpmpkgVerifySigs() instead of rpmVerifySignatures() in rpmcliSign()
verify loop so we only retrieve keyring once.
Panu Matilainen [Wed, 22 Apr 2009 11:01:40 +0000 (14:01 +0300)]
Dont try to refcount NULL keyring
Ville Skyttä [Sun, 12 Apr 2009 18:39:50 +0000 (21:39 +0300)]
Fix --with-kde with KDE3 (rhbz#466009).
Jindrich Novy [Mon, 20 Apr 2009 11:23:30 +0000 (13:23 +0200)]
Require file attributes in spec if %ghost files are missing from build root
Panu Matilainen [Sat, 18 Apr 2009 11:31:48 +0000 (14:31 +0300)]
Fix a few file permissions from "make install"
- macros.perl, logrotate examples etc aren't scripts and shouldn't be
executable. Ditto for python __init__.py
Jindrich Novy [Thu, 16 Apr 2009 12:13:34 +0000 (14:13 +0200)]
Introduce changelog trimming in binary packages feature (ticket #47)
Jindrich Novy [Thu, 16 Apr 2009 12:12:20 +0000 (14:12 +0200)]
Introduce _changelog_trimtime and obsolete _instchangelog
Panu Matilainen [Thu, 16 Apr 2009 08:03:29 +0000 (11:03 +0300)]
Pad RSA signatures up to modulus size if necessary (rhbz#494049)
- unfortunately can't be detected at initial allocation so extra
copy is needed at verification time
Panu Matilainen [Tue, 14 Apr 2009 07:42:20 +0000 (10:42 +0300)]
Check for termination signals during signing / signature checking loop
Florian Festi [Tue, 14 Apr 2009 08:57:46 +0000 (10:57 +0200)]
Revert erase relations before checking whether we already added it
Panu Matilainen [Mon, 13 Apr 2009 10:58:39 +0000 (13:58 +0300)]
Error out at build on unsupported payload compressors (rhbz#495429)
- only permit bzip2/lzma/xz payload compression if rpm built with the
necessary libraries
Jindrich Novy [Fri, 10 Apr 2009 09:27:49 +0000 (11:27 +0200)]
Don't require %ghost file presence in build root (rhbz#495040)
Jindrich Novy [Thu, 9 Apr 2009 12:48:02 +0000 (14:48 +0200)]
Remove file flags that have never been enabled
Ville Skyttä [Mon, 6 Apr 2009 20:08:15 +0000 (23:08 +0300)]
Make it clearer that PACKAGE_FILE logic applies to all -F, -U, and -i.
Ville Skyttä [Mon, 6 Apr 2009 20:00:56 +0000 (23:00 +0300)]
Remove obsolete info about --buildarch and --buildos.
Panu Matilainen [Thu, 9 Apr 2009 11:06:14 +0000 (14:06 +0300)]
Updated Spanish translation (Oscar Bacho)
Panu Matilainen [Thu, 9 Apr 2009 11:04:46 +0000 (14:04 +0300)]
Updated Serbian translations (Milos Komarcevic)
Panu Matilainen [Thu, 9 Apr 2009 10:54:09 +0000 (13:54 +0300)]
Updated Catalan translation (Xavier Conde)
Panu Matilainen [Thu, 9 Apr 2009 10:05:00 +0000 (13:05 +0300)]
Fix PGP v4 fingerprint calculation (rhbz#493777)
- patch from openSUSE / Michael Schroeder
Jindrich Novy [Mon, 6 Apr 2009 08:20:47 +0000 (10:20 +0200)]
Don't allow '~', '/' characters and ".." sequence in NVR (rhbz#493157)
Panu Matilainen [Fri, 3 Apr 2009 10:07:42 +0000 (13:07 +0300)]
Make rpmal header & all internal
- rpmal is hardly useful outside rpm itself, avoid exporting stuff
unnecessarily
Panu Matilainen [Fri, 3 Apr 2009 07:28:59 +0000 (10:28 +0300)]
Make sure installed files have state (rhbz#492947)
- rpmfsSetState() doesn't get called for skipped files like %ghost and
%config(noreplace), causing incorrect file state ("no state") getting
recorded in rpmdb, leading to inapproriate removal/rename on erase, ick
- For TR_ADDED, always default file states to RPMFILE_STATE_NORMAL, fsm
changes it as necessary for skipped colors and such. Lazy alloc on
rpmfsSetState() is not correct as rpmfsSetState() might not get called
at all.
- originally broken by commit
8d6c4b8c95b59f5a71d90c582c2e98f5c7ed7b9d
Jindrich Novy [Thu, 2 Apr 2009 18:49:48 +0000 (20:49 +0200)]
Use -mtune instead of -mcpu (rhbz#493696)
Panu Matilainen [Wed, 1 Apr 2009 09:17:45 +0000 (12:17 +0300)]
Polish translation update (Piotr Drąg)
Panu Matilainen [Tue, 31 Mar 2009 10:14:53 +0000 (13:14 +0300)]
Update translations for a change...
Panu Matilainen [Tue, 31 Mar 2009 10:14:08 +0000 (13:14 +0300)]
Prefer more specific types over generic "text" in classification (rhbz#491349)
Panu Matilainen [Tue, 31 Mar 2009 10:00:59 +0000 (13:00 +0300)]
Allocate ts->addedPackages lazily from rpmtsAddInstallElement()
- at least verification calls rpmtsClean() which wipes out ts->addedPackages,
make sure it's always alloced when needed
Florian Festi [Mon, 30 Mar 2009 19:56:09 +0000 (21:56 +0200)]
Erase relations are reversed, use requires of target
Panu Matilainen [Fri, 27 Mar 2009 14:15:00 +0000 (16:15 +0200)]
Tidy up rpmfi struct definition a bit
Panu Matilainen [Fri, 27 Mar 2009 14:12:25 +0000 (16:12 +0200)]
Lose unused/useless Type and tagN fields from rpmfi struct
Panu Matilainen [Fri, 27 Mar 2009 12:11:43 +0000 (14:11 +0200)]
Handle XZ in %uncompress macro
- should've been in commit
8078d0ba24662308b10d9eb0f0da978584b7e757
Panu Matilainen [Fri, 27 Mar 2009 12:08:56 +0000 (14:08 +0200)]
Rip the macro default settings in rpmrc setDefaults()
- these get nuked and not reloaded on package builds
- rpm(build) needs a properly set up macros file in any case
Panu Matilainen [Fri, 27 Mar 2009 12:01:47 +0000 (14:01 +0200)]
Add built-in %getconfdir macro for getting rpmConfigDir() value
- define %_rpmconfigdir via %getconfdir in the main macro config, this
avoids it getting lost on macro reloads as happens when building
several packages at once
Panu Matilainen [Fri, 27 Mar 2009 11:45:08 +0000 (13:45 +0200)]
Plug minor memleak from default rc and macro file paths
- build code can call these several times, only init once
Panu Matilainen [Fri, 27 Mar 2009 11:44:46 +0000 (13:44 +0200)]
Plug minor memleak from rpmGetCwd() on build
Panu Matilainen [Thu, 26 Mar 2009 13:31:10 +0000 (15:31 +0200)]
Eliminate pointless xstrdup()'s, the strings are never modified
Florian Festi [Thu, 26 Mar 2009 12:53:26 +0000 (13:53 +0100)]
Fix: use the file's color to decide whether to add it to the rpmal not the color of the rpmfi
Florian Festi [Thu, 26 Mar 2009 10:48:09 +0000 (11:48 +0100)]
Remove rpmal from the Python API
as it changed and never was usable anyway
Florian Festi [Fri, 20 Mar 2009 07:22:41 +0000 (08:22 +0100)]
Reimplement rpmal by using hashes and cleaning up the color handling
Florian Festi [Mon, 16 Mar 2009 16:02:16 +0000 (17:02 +0100)]
Make rpmal store rpmtes and kill rpmte->pkgKey
Florian Festi [Wed, 11 Mar 2009 13:15:56 +0000 (14:15 +0100)]
Also order erases.
- partially using code from rpm5.org
Florian Festi [Wed, 25 Mar 2009 15:29:09 +0000 (16:29 +0100)]
Implement rpmteSetDependsOn and rpmteDependsOn using a rpmte
Panu Matilainen [Thu, 26 Mar 2009 07:59:01 +0000 (09:59 +0200)]
Put the PGP foobar signature generation out of its misery
- the last freeware PGP version (6.5.8) is from year 2000 and doesn't
come close to compiling on modern distros, commercial versions we're
not interested in
- "PGP" signatures in rpm mean RSA, gpg can handle that just fine since
forever
- the code's been unused for years, unlikely to be functional anyway...
Jindrich Novy [Wed, 25 Mar 2009 16:28:24 +0000 (17:28 +0100)]
process the "./" in file paths correctly (rhbz#491388)
Panu Matilainen [Wed, 25 Mar 2009 15:00:41 +0000 (17:00 +0200)]
Make sure fd bundle is always NULLed on rpmVerifySignatures() exit
- readFile() failure could crash on double-free otherwise
Panu Matilainen [Wed, 25 Mar 2009 14:48:24 +0000 (16:48 +0200)]
Unify DSA/RSA/GPG/blaa signature verification, simplify
- verifyRSA/DSA were just the same already, differences are in key/sig
parameters which dont matter on this level
- these dont need sigtd for anything, the data has been parsed into pgpDig
before we get here
- add extra flag for header-only vs header+payload signatures,
we know which is it in rpmVerifySignature()
Panu Matilainen [Wed, 25 Mar 2009 14:35:41 +0000 (16:35 +0200)]
Rename internal signature verification functions
- size, md5 and sha1 aren't really signatures
Panu Matilainen [Wed, 25 Mar 2009 14:33:29 +0000 (16:33 +0200)]
Reorder internal signature verification arguments
- move retval msg last everywhere
Panu Matilainen [Wed, 25 Mar 2009 14:30:20 +0000 (16:30 +0200)]
Push signature identification to librpmio / pgp handling
- retrieve names from pgp tables instead of manually duplicated strings
Panu Matilainen [Wed, 25 Mar 2009 13:42:30 +0000 (15:42 +0200)]
Remove redundant RSA/DSA parameter checks
- if this stuff doesn't match, pgpVerifySig() will fail anyway, dont
bother checking for same things over and over
Panu Matilainen [Wed, 25 Mar 2009 13:16:59 +0000 (15:16 +0200)]
Push signature verification down to librpmio
- new pgpVerifySig() call to perform the lowlevel verify, use for
verifying DSA/RSA signatures
- librpm is now free of NSS specifics (apart from what still leaks through
including rpmio/digest.h), remove linkage
Panu Matilainen [Wed, 25 Mar 2009 12:39:29 +0000 (14:39 +0200)]
These cases are identical now...
Panu Matilainen [Wed, 25 Mar 2009 12:37:43 +0000 (14:37 +0200)]
Rename arguments, RSA keys are certainly not limited to md5 hashes
Panu Matilainen [Wed, 25 Mar 2009 12:17:34 +0000 (14:17 +0200)]
Use makeGPGSignature() for both DSA and RSA
- in reality makePGPSignature() never gets called here due to other fun...
Panu Matilainen [Wed, 25 Mar 2009 12:09:42 +0000 (14:09 +0200)]
Remove unnecessary {} block inflating indentation, streamline
Panu Matilainen [Wed, 25 Mar 2009 11:51:47 +0000 (13:51 +0200)]
Eliminate copy-paste digest calculation in rpmReadPackageFile()
- for DSA and RSA we want to grab the hash algo from signature, other
than that it's just the same for all header-only DSA/RSA/SHA1 sigs
Panu Matilainen [Wed, 25 Mar 2009 11:48:37 +0000 (13:48 +0200)]
Eliminate copy-paste digest calculation in headerCheck()
- for DSA and RSA we want to grab the hash algo from signature, other
than that it's just the same for all DSA/RSA/SHA1 sigs
Panu Matilainen [Wed, 25 Mar 2009 11:23:19 +0000 (13:23 +0200)]
Eliminate header/payload digests from pgpDig_s, they dont belong
- allocate+free digests locally where needed, pass around in separate argument
- use digest bundles to handle rpmVerifySignatures() needs
- kill-kill-kill fdStealDigest(), dup the contexts from bundles as needed
Panu Matilainen [Wed, 25 Mar 2009 11:10:23 +0000 (13:10 +0200)]
Implement fdUpdateDigests() and friends using digest bundle
Panu Matilainen [Wed, 25 Mar 2009 11:08:09 +0000 (13:08 +0200)]
Add a type + basic api for bundle of digests (on same data)
- in various places we need to calculate different digests of the same
data, having them stored in a single container makes managing easier
- can hold as many digest types as we support
- remembers how much input data it has handled
Panu Matilainen [Thu, 19 Mar 2009 14:07:18 +0000 (16:07 +0200)]
Show query/verify selection options just once in --help
Panu Matilainen [Thu, 19 Mar 2009 12:56:45 +0000 (14:56 +0200)]
Python doesn't need libelf, nss or popt directly
Panu Matilainen [Thu, 19 Mar 2009 12:41:43 +0000 (14:41 +0200)]
librpmio doesn't need libmagic for anything