summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2010-05-21Move the lone hashFunctionString() into misc.[ch], eliminate rpmhash.[ch]Panu Matilainen11-51/+24
- Besides there not being much point in having a separate source + header for a small single function, this fixes build on case-insensitive systems such as Mac OS X.
2010-05-21Do not evaluate macros in spec comments (RhBug:594672)Jindrich Novy1-0/+11
2010-05-20Search all locale dirs in find-lang.sh, not just those under share/ (#159)Till Maas1-3/+3
2010-05-19Use pgpValString() for :pgpsig header formatting (RhBug:587755)Panu Matilainen1-24/+2
- instead of copy-slopping (and forgetting to do so whenever something changes) just use the values we know from pgpVals..
2010-05-19Add public pgpValString() function + enum for the various typesPanu Matilainen2-8/+46
- The equivalent used to be possible in 4.4.x era as the value tables were all exported, but this way we need to export far less and the implementation details stay internal.
2010-05-19Bury struct pgpValTbl_s definition inside rpmpgp.cPanu Matilainen2-7/+5
- as all the value tables are static inside rpmpgp.c, exposing this is pointless (should've been unexported long time ago)
2010-05-19Handle non-existent dependency sets in python (RhBug:593553)Panu Matilainen1-2/+3
- rpmdsNew() returns NULL if the requested dependency type doesn't exist in the header. The C-side API can handle NULL to all rpmds "methods" and this is how librpm deals with non-existent sets rather than waste memory on for empty ds structures. However the python side wasn't expecting NULL for legal requests (but not setting error either) and thus blowing up with SystemError exception. - Raise TypeError on illegal arguments to rpm.ds constructor, and present non-existent dependency sets as empty rpm.ds objects to python. This lets python callers use iteration over ds items regardless of whether the dependency actually exists or not. The alternative of returning None (or raising exceptions) would break existing code for no particularly good reason.
2010-05-18Fix return from chroot() on verify (RhBug:590588)Panu Matilainen1-1/+5
- a couple of important steps in chroot() in and out sequence missing, causing "No such file or directory" whining on return from chroot() unless cwd happened to be /
2010-05-11Make debugedit -i recompute build ID only when any DWARF was actually changed.Roland McGrath1-11/+21
2010-05-11Whitespace fixups for tools/debugedit.cRoland McGrath1-65/+62
2010-05-07Plug dumb memleak in rpmpsMerge()Panu Matilainen1-0/+1
2010-05-07Fix breakage from removedPackages changing to hashPanu Matilainen1-0/+1
- tsmem->delta is still needed for tsmem->order reallocation, zero delta causes funny effects on larger package sets (test suite doesnt trigger this)
2010-05-07Revert back to rpmdbRemove() taking instance number instead of actual headerPanu Matilainen3-18/+21
- On package reinstall (ie --replacepkgs) we only know the old header by the instance number, and grabbing the header from the db in psm as a special case for that is more trouble than just doing what we always did. - Reverts commit e16695e932e294ec600e673d38c41bde20931204 and unbreaks the --replacepkgs test case
2010-05-07Convert rpmte internals to use the transaction pointer from element itselfPanu Matilainen4-29/+29
2010-05-07Store pointer to transaction set in transaction elementsPanu Matilainen3-18/+15
- unused now but allows various new things and more element "independency" - eliminate the unused dboffset argument while at it
2010-05-07Fix compiler warning in rpmhash Resize()Florian Festi1-1/+1
2010-05-06Remove no longer needed function intcmp()Florian Festi1-15/+0
2010-05-06Convert tsmem->removedPackages to a hash table and remove rpmdbPruneIterator ↵Florian Festi7-54/+70
from the API
2010-05-06rpmhash: new Empty() function to remove all entriesFlorian Festi2-3/+22
2010-05-06rpmhash: Accessor functions for the size and usageFlorian Festi2-2/+57
2010-05-06rpmhash: Grow when hash table gets too fullFlorian Festi1-0/+33
Add some statistics to be able to find out how full the hash is
2010-05-06Move header filecount retrieve from addTE() to rpmfsNew()Panu Matilainen3-14/+12
2010-05-06Tolerate NULL in rpmfsFree() and rpmfsFC()Panu Matilainen1-9/+12
- both are "can't happen" situations but easy to handle cleanly here...
2010-05-06Minor cleanup to rpmfsNew()Panu Matilainen1-7/+5
- use xcalloc() to ensure clean state, no need to manually do it all - group non-conditional and conditional operations together
2010-05-06Move delTE() inline to rpmteFree()Panu Matilainen1-41/+26
- no point splitting this up, its just straightforward freeing of stuff - dont bother with tonne of assigning everything to NULL, it gets zeroed out by memset() anyway
2010-05-06Unexport rpmteNew() and rpmteFree()Panu Matilainen3-22/+25
- the only meaningful way to create transaction elements is by adding things to a transaction through rpmtsAddFooElement(), there's no need to expose these and restrict our ability to change the API when needed
2010-05-06Minor cleanup to rpmReSign()Panu Matilainen1-12/+3
- headerNew() cannot fail, dont bother checking - initialize variables on declaration
2010-05-06Fix minor header iterator leak in rpmReSign()Panu Matilainen1-4/+2
- fix dumb double-initialization error introduced somewhere between 4.4 and 4.6, also while-loop is more natural here than for-loop
2010-05-06Clean up rpmcliImportPubkeys() a bit, no functional changesPanu Matilainen1-30/+18
- remove questionable rpmtsClean() call remnants from rpm 4.4.x days when it used to clean the signature/digest data in ts but also clean a pile of completely unrelated items - rearrange the error code handling so we can get by with single place of freeing the temp allocations - move local variables to the scope where needed and eliminate unnecessary ones - remove redundant NULL check on argv, this is already done by caller - remove unused qva argument (static function so no API implications)
2010-05-04Don't process desktop files without Type=Application and Exec= linePavol Rusnak1-4/+6
2010-05-04Rename python module version symbol to __version__, add __version_info__Panu Matilainen2-1/+4
- This seems to be a de-facto standard in python land, as rpm.version hasn't been in any released version we can still change this easily. Suggestion from James Antill.
2010-04-29Doh, dont shadow the rpmtsVerifyDB() return valuePanu Matilainen1-1/+1
2010-04-29Fixes missing __fxstat64 symbol on mac.Giulio Eulisse1-0/+1
2010-04-29Fix a few uninitialized variable cases found by clang-analyzerPanu Matilainen3-6/+6
2010-04-27l10n: Updates to Portuguese (Brazilian) (pt_BR) translationTaylon Silmer1-79/+56
New status: 721 messages complete with 1 fuzzy and 0 untranslated. Transmitted-via: Transifex (www.transifex.net).
2010-04-22Protect rpmtsVerifyDB() with transaction lockPanu Matilainen1-1/+7
- BDB docs state that db->verify() doesn't perform any locking even when used within an environment, and should only be used on files that are not being modified by another thread of control. Grabbing the transaction lock while verifying mostly ensures nobodys writing to the db behind our back.
2010-04-22Ditch "fcntl_locking" bdb config optionPanu Matilainen1-2/+0
- This is an undocumented BDB interface (only documented in the db.h header), and its not something users should be messing around with
2010-04-22Make transaction lock path per-transactionPanu Matilainen2-12/+17
- Although it doesn't really happen in practise, rpm's API permits several transactions with possibly differing roots within process lifetime. Previously the lock path was calculated just once globally so we could easily be locking in a completely wrong place (eg locking in a previously accessed chroot when system rpmdb should be transaction-locked)
2010-04-22Further generalize the rpmlock interfacePanu Matilainen5-38/+46
- Move transaction lock path handling into rpmts.c, export new low level rpmlockAcquire() function to actually grab a lock - Rename rpmtsFreeLock() to rpmlockFree() and return NULL in the general rpm style
2010-04-22Generalize rpmlock_new() by moving transaction lock path calculation outPanu Matilainen1-17/+17
2010-04-22Make rpmlock type visible inside rpm, use instead of void*Panu Matilainen4-11/+13
2010-04-21Lose the useless header refcounting debug junkPanu Matilainen2-16/+4
- one more of these still left behind.. pff
2010-04-21Eliminate unused "known problems" based filtering from rpmtsRun()Rakesh Pandit4-60/+3
- This mechanism has never been used by anything at all, which suggests its not a particularly useful feature - Removing unused rpmpsTrim() from rpmps - Marking okProbs parameter of rpmtsRun() function as unused to avoid unnecessary breakage
2010-04-21rpmdb.c (dbiOpen): fix dbix conditionAlexey Tourbin1-2/+2
In the loop, dbix is always initialized to 0, so checking (dbix < 0) is uselss. Insetead, we sould check (dbix >= dbiTagsMax).
2010-04-21Only check the type of dependency requested in checkInstDeps()Panu Matilainen1-9/+3
- This gets called separately for requires, conflicts and obsoletes, wth should it loop over conflicts when looking for requires?
2010-04-21Add a basic reinstall test to test-suitePanu Matilainen1-0/+17
- this currently fails due to commit e16695e932e294ec600e673d38c41bde20931204, on reinstall element header vs db header mismatch, adding this as a reminder to fix it...
2010-04-14...but make sure the pre-requisite isn't also an erasure-dependencyPanu Matilainen1-1/+1
- fixes eg Requires(pre,postun) case which must not be filtered out here
2010-04-14Pre-requisites of installed packages dont need to be verified (RhBug:223642)Panu Matilainen1-0/+4
2010-04-13Update a few tag descriptions + visibilityPanu Matilainen2-10/+8
- RPMTAG_CAPABILITY and RPMTAG_RHNPLATFORM are truly obsolete and should've been taken out a long time ago
2010-04-13Use correct tag for NOPATCHPanu Matilainen1-1/+1
- dumb copy-paste error from commit a317eaadc3f7b9b4ec373719e7d60fb8b98e2c21