Panu Matilainen [Tue, 5 Aug 2008 12:32:49 +0000 (15:32 +0300)]
Increment exit code on file not found errors too (#446202)
Panu Matilainen [Mon, 4 Aug 2008 12:46:18 +0000 (15:46 +0300)]
Bunch of keyring / pubkey refcounting fixes
Panu Matilainen [Sat, 26 Jul 2008 08:14:45 +0000 (11:14 +0300)]
Updated Italian translation from Francesco Tombolini (rhbz#453364)
Panu Matilainen [Sat, 26 Jul 2008 07:56:02 +0000 (10:56 +0300)]
Revert "plug memory leak in spec parsing code"
This reverts commit
ac3bd07ef2a11cbe9e7f7031786eebc8851c863b.
- It's not a leak, valueMakeString() doesn't make a copy of the argument
string and the free() causes invalid memory access
Panu Matilainen [Sat, 26 Jul 2008 06:57:09 +0000 (09:57 +0300)]
Fix typo in buildroot dir definition (rhbz#456708)
- it's _buildrootdir, not buildrootdir... this caused user overridden _topdir
not getting honored by buildroot
Florian Festi [Fri, 25 Jul 2008 10:28:46 +0000 (12:28 +0200)]
plug memory leak in spec parsing code
Florian Festi [Thu, 24 Jul 2008 15:38:11 +0000 (17:38 +0200)]
fix parsing of empty doublequoted strings in spec file (rhbz#456103)
off-by-one error
Panu Matilainen [Thu, 24 Jul 2008 08:17:50 +0000 (11:17 +0300)]
Dumb thinko breaking tar builds from relative paths (rhbz#456321)
Panu Matilainen [Sat, 19 Jul 2008 12:27:42 +0000 (15:27 +0300)]
Fix regression in %patch handling (rhbz#455872)
- popt doesn't think of "008" as an integer, let popt think it's a string
as we do our own conversion to number anyway
Panu Matilainen [Thu, 17 Jul 2008 12:50:35 +0000 (15:50 +0300)]
Add (and use) refcounting for rpmKeyring and rpmPubkey
Florian Festi [Thu, 17 Jul 2008 08:37:03 +0000 (10:37 +0200)]
Added .gitignore file to get sane git status reports
Panu Matilainen [Wed, 16 Jul 2008 09:07:03 +0000 (12:07 +0300)]
Make sure there's room for \0 (packages with no files)
Panu Matilainen [Wed, 16 Jul 2008 07:52:33 +0000 (10:52 +0300)]
Make rpmExpand() smarter wrt memory allocations
- precalculate unexpanded size and allocate enough for that plus MACROBUFSIZ
for expansion
- typical allocation is way smaller than what gets allocated "just in case",
calculate expanded size and realloc to actual size to avoid wasting
memory
Panu Matilainen [Wed, 16 Jul 2008 07:33:57 +0000 (10:33 +0300)]
Eliminate another unnecessary temp variable
- do all the copying inside a loop
Panu Matilainen [Wed, 16 Jul 2008 07:24:05 +0000 (10:24 +0300)]
Eliminate unnecessary variable
- leftover from static buffer times..
Panu Matilainen [Wed, 16 Jul 2008 06:40:10 +0000 (09:40 +0300)]
Macro argument handling regression (rhbz#455333)
- expandMacro() wants the next \0 character to be returned, which might
or might not be the same as lastc passed to grabArgs()
- use memcpy() instead of memmove() for the copy, the areas can't overlap
Panu Matilainen [Mon, 14 Jul 2008 13:23:02 +0000 (16:23 +0300)]
Adjust querytags expected results for autotests
Panu Matilainen [Mon, 14 Jul 2008 13:21:15 +0000 (16:21 +0300)]
Don't put unimplemented tags into tagtable
- no point in exposing unimplemnted (ours or somebody elses) tags to users
Panu Matilainen [Mon, 14 Jul 2008 13:16:41 +0000 (16:16 +0300)]
Mark unimplemented tags as such in tag table
Panu Matilainen [Mon, 14 Jul 2008 08:53:10 +0000 (11:53 +0300)]
Fix mono dependency extraction
- use "Mono/.Net assembly" instead of "PE executable" for detection,
later file reports bitness (eg "PE32 executable"), we just care if its
mono or not. This is compatible with older libmagic too.
Panu Matilainen [Sat, 12 Jul 2008 14:57:51 +0000 (17:57 +0300)]
NSS uses unsigned int, not size_t for hash lengths
- broke ppc64 in entertaining ways...
Panu Matilainen [Fri, 11 Jul 2008 10:37:38 +0000 (13:37 +0300)]
Updated Polish translation (Piotr Drąg)
Ville Skyttä [Tue, 1 Jul 2008 17:22:02 +0000 (20:22 +0300)]
Decompressor clarifications.
Signed-off-by: Ville Skyttä <ville.skytta@iki.fi>
Panu Matilainen [Wed, 9 Jul 2008 08:56:22 +0000 (11:56 +0300)]
Include rpmlib.h from rpmcli.h, legacy stuff expects it there..
Panu Matilainen [Wed, 9 Jul 2008 08:55:57 +0000 (11:55 +0300)]
Check for _RPM_4_4_COMPAT in rpmlib.h too
- limits the chances of compat includes not working due to include order
a bit
Panu Matilainen [Tue, 8 Jul 2008 15:35:56 +0000 (18:35 +0300)]
Include legacy compat from rpmlib.h to cover maximum ground
- rpmlib.h is the first thing any old rpm api user includes so this should
cover most cases (only if enabled)
Panu Matilainen [Tue, 8 Jul 2008 15:35:07 +0000 (18:35 +0300)]
Add compat definitions for renamed string functions too
Panu Matilainen [Tue, 8 Jul 2008 15:13:42 +0000 (18:13 +0300)]
Missing cplusplus-wrappers in rpmtd
Panu Matilainen [Tue, 8 Jul 2008 15:11:28 +0000 (18:11 +0300)]
Bunch of dumb macros to make up for renamed functions
- should arrange deprecation warnings on them too...
Panu Matilainen [Tue, 8 Jul 2008 13:49:54 +0000 (16:49 +0300)]
Add deprecation markers for hge etc vector prototypes
Panu Matilainen [Tue, 8 Jul 2008 13:45:44 +0000 (16:45 +0300)]
Add deprecation warnings to all legacy types
Panu Matilainen [Tue, 8 Jul 2008 13:43:46 +0000 (16:43 +0300)]
Compat typedef for Spec -> rpmSpec rename
Panu Matilainen [Tue, 8 Jul 2008 13:42:32 +0000 (16:42 +0300)]
Add mappings from hTAG_t and friends to legacy interfaces
Panu Matilainen [Tue, 8 Jul 2008 13:41:24 +0000 (16:41 +0300)]
Limit the exposure of rpmlegacy.h stuff to bare minimum
Panu Matilainen [Tue, 8 Jul 2008 13:37:23 +0000 (16:37 +0300)]
Shove header legacy interfaces into rpmlegacy.h
- get them out of sight from main header.h
- turn headerSprintf() into macro around headerFormat(), that way
rpmTagTable and rpmHeaderFormats lossage can be hidden away as far
as headerSprintf() use is concerned
Panu Matilainen [Tue, 8 Jul 2008 13:23:22 +0000 (16:23 +0300)]
Add a new legacy compatibility header, kill rpmints.h
- build-time generated rpmints.h causes issues with distcheck and is
not really worth the trouble
- we have all sorts of legacy junk to deal with, sticking them all into
rpmints.h would be just wrong...
Jindrich Novy [Tue, 8 Jul 2008 15:46:54 +0000 (17:46 +0200)]
Initialize optCon
- one could easily segfault the doPatchMacro() code without
the optCon initialization (particularly with jump to "exit" label)
Jindrich Novy [Tue, 8 Jul 2008 15:45:12 +0000 (17:45 +0200)]
Make the default fuzz for %patch is now configurable via macro
- the macro is _default_patch_fuzz
Panu Matilainen [Tue, 8 Jul 2008 10:00:20 +0000 (13:00 +0300)]
Update translations
Panu Matilainen [Tue, 8 Jul 2008 09:59:51 +0000 (12:59 +0300)]
Add ISA-stuff for ia64
Panu Matilainen [Mon, 7 Jul 2008 15:11:59 +0000 (18:11 +0300)]
Missing const in parseUnsignedNum()
Panu Matilainen [Mon, 7 Jul 2008 15:09:49 +0000 (18:09 +0300)]
Teach Fflush() about lzdio
Jindrich Novy [Mon, 7 Jul 2008 12:49:33 +0000 (14:49 +0200)]
Make Source0: equal to Source: again
Jindrich Novy [Mon, 7 Jul 2008 10:59:03 +0000 (12:59 +0200)]
Use proper type in format
Jindrich Novy [Mon, 7 Jul 2008 08:21:30 +0000 (10:21 +0200)]
Remove useless argument to format, d'oh
Panu Matilainen [Mon, 7 Jul 2008 10:28:04 +0000 (13:28 +0300)]
Eliminate couple of timedRead() uses where we control how fd is opened
Panu Matilainen [Mon, 7 Jul 2008 07:52:33 +0000 (10:52 +0300)]
Make verifyAttrs and virtualFileAttributes static
- nothing outside files.c needs
Panu Matilainen [Mon, 7 Jul 2008 07:48:06 +0000 (10:48 +0300)]
Kick out ftpStrerror() and related error code defines
- our url-retrieval error codes depend on the helper used which is
configurable via macros so hardcoding eg curl codes wont work either
- need to figure out something better, pass helper error messages through
FD_t or something...
Panu Matilainen [Mon, 7 Jul 2008 07:42:55 +0000 (10:42 +0300)]
Kick out now unused printNewSpecfile()
Panu Matilainen [Mon, 7 Jul 2008 07:17:21 +0000 (10:17 +0300)]
Kick out ancient, useless and hidden --specedit option
Panu Matilainen [Fri, 4 Jul 2008 15:18:55 +0000 (18:18 +0300)]
Remember to remove ugid.c from POTFILES
Panu Matilainen [Fri, 4 Jul 2008 13:09:42 +0000 (16:09 +0300)]
Stuff rpmio/ugid.[ch] contents to lib/misc.[ch]
- no uses outside librpm itself, and there they can be hidden away from
exported ABI whereas in librpmio they cant
Panu Matilainen [Fri, 4 Jul 2008 12:02:30 +0000 (15:02 +0300)]
Make ufdClose() static, nothing outside rpmio.c needs directly
Panu Matilainen [Fri, 4 Jul 2008 12:00:48 +0000 (15:00 +0300)]
Remove unused ufdGetFile() from librpmio
Panu Matilainen [Fri, 4 Jul 2008 11:53:02 +0000 (14:53 +0300)]
Remove unused _url_debug
Panu Matilainen [Fri, 4 Jul 2008 11:52:47 +0000 (14:52 +0300)]
Bump version to resemble library versioning
Jindrich Novy [Fri, 4 Jul 2008 13:00:09 +0000 (15:00 +0200)]
Really make fuzz=0 default for patches
- and finish the Patch and Source fixup
Jindrich Novy [Fri, 4 Jul 2008 12:58:38 +0000 (14:58 +0200)]
Don't treat Patch and Source as Patch0 and Source0
Panu Matilainen [Fri, 4 Jul 2008 11:33:23 +0000 (14:33 +0300)]
Remove rpmcache from repository
- next to nobody even knew about it, much less used it...
- hardly useful now that solvedb is gone
Panu Matilainen [Fri, 4 Jul 2008 11:22:06 +0000 (14:22 +0300)]
Remove solvedb API and other related stuff
- nobody has used the solvedb for anything in years
- the mechanism + rpmcache are horribly broken on multilib
- solvedb is way too heavyweight to be really usable as a general mechanism
- solver callback hook left in place as that could in theory be usable still
- we need something better to replace this all, getting rid of it now
so we're not stuck with the API forever
Panu Matilainen [Fri, 4 Jul 2008 11:11:47 +0000 (14:11 +0300)]
Kill of rpmtsAvailable()
- long since deprecated and nothing uses it, might as well go
Panu Matilainen [Fri, 4 Jul 2008 10:01:39 +0000 (13:01 +0300)]
Enforce conflicts on colorless files always
- silently swallowing conflicting files when they happen to be in the
same (suitable colored) transaction but conflicting when installed
separately is nothing but inconsistent
- partial fix for rhbz#190209
Panu Matilainen [Fri, 4 Jul 2008 06:17:33 +0000 (09:17 +0300)]
rpmfiFNlink() returns unsigned int
Panu Matilainen [Fri, 4 Jul 2008 06:11:20 +0000 (09:11 +0300)]
Couple of type corrections
- use rpmTag, rpmsenseFlags instead of int32_t
Panu Matilainen [Fri, 4 Jul 2008 06:07:19 +0000 (09:07 +0300)]
Use unsigned integer for epoch, remove unnecessary static
Panu Matilainen [Thu, 3 Jul 2008 14:44:43 +0000 (17:44 +0300)]
Parameter name + doc mismatch on rpmVerifySignature()
Panu Matilainen [Thu, 3 Jul 2008 14:44:13 +0000 (17:44 +0300)]
Change headerPutString() arg name to match the others
- doxygen whines a bit less..
Panu Matilainen [Thu, 3 Jul 2008 14:14:45 +0000 (17:14 +0300)]
Plug leaks in selinux context handling in fsm
Panu Matilainen [Thu, 3 Jul 2008 14:01:52 +0000 (17:01 +0300)]
Plug a memleak on erasure
- on erasure the order of things in ts->order is reverse from that of
rpmtsi-iteration, causing rpmtsiNext() to abort earlier than it should
when things are removed underneath it
- just walk the ts->order table without iteration, it doesn't make any
difference here
Panu Matilainen [Thu, 3 Jul 2008 12:30:04 +0000 (15:30 +0300)]
Make all transaction callback notifications go through rpmtsNotify()
- single point to control how callbacks are made
Panu Matilainen [Thu, 3 Jul 2008 06:11:55 +0000 (09:11 +0300)]
Only try to pubkeys from rpmdb if we non-db keys didn't exist
- try to avoid opening the db unnecessarily, if the keys have been migrated
out of the db, the db probably only has duplicates (right? :)
Panu Matilainen [Wed, 2 Jul 2008 16:07:06 +0000 (19:07 +0300)]
Don't leak memory on duplicate pubkeys
Panu Matilainen [Wed, 2 Jul 2008 16:00:56 +0000 (19:00 +0300)]
Don't leak memory on python expandMacro()
Panu Matilainen [Wed, 2 Jul 2008 15:49:05 +0000 (18:49 +0300)]
Plug a dumb memleak that has crept into rpmReadPackageFile()
- jumps to exit from very early on, make sure sigtd is reset early so
calling rpmtdFreeData() is safe
Panu Matilainen [Wed, 2 Jul 2008 12:08:51 +0000 (15:08 +0300)]
Change rpmts keyring get/set interface to more transparent handling
- add extra parameter to rpmtsGetKeyring() to automatically load up default
keyring if not already set
- rpmtsSetKeyring() with NULL keyring just frees up current keyring
- adjust callers wrt the change
- allows more transparent action for various "legacy" code-paths
Panu Matilainen [Wed, 2 Jul 2008 11:24:20 +0000 (14:24 +0300)]
Add documentation for keyring
Panu Matilainen [Wed, 2 Jul 2008 11:23:30 +0000 (14:23 +0300)]
Make rpmkeyring.h public header
Panu Matilainen [Wed, 2 Jul 2008 10:55:50 +0000 (13:55 +0300)]
Add docs for the new rpmts methods, deprecate rpmtsFindPubkey()
Panu Matilainen [Wed, 2 Jul 2008 10:48:00 +0000 (13:48 +0300)]
Load pubkeys from both files and rpmdb for now
- easy enough and doesn't cost really anything
- at some point, start warning about legacy gpg-keys in rpmdb, suggest
conversion method / do it automatically & such...
Panu Matilainen [Wed, 2 Jul 2008 10:31:12 +0000 (13:31 +0300)]
Some keyring improvements
- keep keyring sorted by keyid, use bsearch for key lookups
- check for key in keyring before adding it to avoid dupes
- actually check that pubkey parameters match the signature on keyring
lookup like was done in rpmtsFindPubkey()
Panu Matilainen [Tue, 1 Jul 2008 14:35:21 +0000 (17:35 +0300)]
Eliminate remaining signature checking bits from rpmts
- rpmdb-specific rpmtsFindPubkey() no longer needed for anything, and
neither are the cached packets and stuff
Panu Matilainen [Tue, 1 Jul 2008 14:32:11 +0000 (17:32 +0300)]
Use keyring even when using pubkeys from rpmdb
- build-time switchable, could easily be run-time too
Panu Matilainen [Tue, 1 Jul 2008 14:00:04 +0000 (17:00 +0300)]
Pass keyring, not the full ts to lowlevel signature routines
- lazy loading of default keyring on ts iteration works nicely for
everything but package signature verification which doesn't access the
db now that the keys are not in the db anymore
- make rpmtsSetKeyring(NULL) load the default keyring, a bit ugly but
it'll have to do for now
Panu Matilainen [Tue, 1 Jul 2008 12:50:05 +0000 (15:50 +0300)]
Eliminate digest calculation statistics from signature code
- if we want them back, they just need to be detached from the ts...
Panu Matilainen [Tue, 1 Jul 2008 12:46:18 +0000 (15:46 +0300)]
Add methods for getting and setting the keyring used by a transaction
- semantics of exactly when and how this is permitted needs more thought...
Panu Matilainen [Tue, 1 Jul 2008 12:38:32 +0000 (15:38 +0300)]
Move keyring related typedefs to rpmtypes.h
Panu Matilainen [Tue, 1 Jul 2008 12:25:06 +0000 (15:25 +0300)]
Proof of concept rpmtsFindPubkey() implementation with the new keyring
- ifdeffed out for now, needs a bit more flesh and a working
import routine
Panu Matilainen [Tue, 1 Jul 2008 12:24:04 +0000 (15:24 +0300)]
Beginnings of an abstract keyring
- in librpmio to avoid dependencies on higher level stuff
- for now it's just an in-memory structure that needs to be populated
by someone simply by feeding in GPG public keys
Panu Matilainen [Tue, 1 Jul 2008 11:35:44 +0000 (14:35 +0300)]
Create ascii armor that rpm itself accepts
Jindrich Novy [Tue, 1 Jul 2008 10:52:16 +0000 (12:52 +0200)]
Update parseNoSource() and addSource() to accept only unsigned SourceXX numbers
Jindrich Novy [Tue, 1 Jul 2008 10:51:08 +0000 (12:51 +0200)]
findSource() eats only unsigned SourceXX numbers
Jindrich Novy [Tue, 1 Jul 2008 10:49:19 +0000 (12:49 +0200)]
doPatchMacro() now uses parseUnsignedNum()
Jindrich Novy [Tue, 1 Jul 2008 10:48:50 +0000 (12:48 +0200)]
doSetupMacro() now uses parseUnsignedNum()
Jindrich Novy [Tue, 1 Jul 2008 10:47:36 +0000 (12:47 +0200)]
doUntar() accepts only unsigned SourceXX numbers
Jindrich Novy [Tue, 1 Jul 2008 10:46:16 +0000 (12:46 +0200)]
Convert doPatch() to use parseUnsignedNum()
Jindrich Novy [Tue, 1 Jul 2008 10:43:47 +0000 (12:43 +0200)]
Use the same number types for SourceXX tags as returned by parseUnsignedNum()
Jindrich Novy [Tue, 1 Jul 2008 10:42:12 +0000 (12:42 +0200)]
Convert Epoch parsing to use parseUnsignedNum()
Jindrich Novy [Tue, 1 Jul 2008 10:41:35 +0000 (12:41 +0200)]
Avoid reading negative constants from SourceXX, PatchXX tags
- convert parseNum() to parseUnsignedNum()
- don't misleadingly declare it to return int, when the result is
always unsigned due to strtoul() call
Panu Matilainen [Tue, 1 Jul 2008 08:22:40 +0000 (11:22 +0300)]
Eliminate the nasty global _dig and _digp variables from rpmpgp
- pass the digest + parameters around as arguments instead
Panu Matilainen [Mon, 16 Jun 2008 14:49:02 +0000 (17:49 +0300)]
Unexport all the umphteen pgp related tables
- nothing outside rpmpgp.c needs