Commit Graph

406 Commits

Author SHA1 Message Date
jbj 23bbe266cc Add bindings for rpmte and FD_t.
CVS patchset: 5451
CVS date: 2002/05/27 21:40:08
2002-05-27 21:40:08 +00:00
jbj aeb8ed2318 Create rpmts-py.c.
CVS patchset: 5446
CVS date: 2002/05/23 19:42:23
2002-05-23 19:42:23 +00:00
jbj 386882db7a - fix: synthesize unpacking progress callbacks for packages w/o files.
CVS patchset: 5440
CVS date: 2002/05/19 23:37:24
2002-05-19 23:37:24 +00:00
jbj 2126e4ad09 - Grand Renaming of rpm data types.
CVS patchset: 5439
CVS date: 2002/05/19 18:42:25
2002-05-19 18:42:25 +00:00
jbj 38385c8d63 Transactions made increasingly opaque.
CVS patchset: 5438
CVS date: 2002/05/17 21:08:39
2002-05-17 21:08:39 +00:00
jbj 076a6e29c5 - opaque (well mostly) rpmTransactionSet using methods.
CVS patchset: 5437
CVS date: 2002/05/16 16:55:21
2002-05-16 16:55:21 +00:00
jbj b4c604e75c - plug most install mode leaks.
CVS patchset: 5424
CVS date: 2002/05/07 01:07:41
2002-05-07 01:07:41 +00:00
jbj b463db44dc - use build time to choose one of multiple alternative suggestions.
- add --nosuggests to disable suggested resolutions.
- splint fiddles.

CVS patchset: 5406
CVS date: 2002/04/14 21:48:44
2002-04-14 21:48:44 +00:00
jbj e3c57cf71e - merge conflicts into problems, handle as transaction set variable.
CVS patchset: 5402
CVS date: 2002/04/13 18:52:18
2002-04-13 18:52:18 +00:00
jbj 46bbc20b32 - use rpmdb-redhat to suggest dependency resolution(s).
CVS patchset: 5401
CVS date: 2002/04/13 01:28:20
2002-04-13 01:28:20 +00:00
jbj 2404e8d918 - rescusitate --rebuild.
CVS patchset: 5389
CVS date: 2002/04/11 16:55:19
2002-04-11 16:55:19 +00:00
jbj c1d98e55b2 - *really* dump signature header immutable region.
CVS patchset: 5362
CVS date: 2002/03/17 15:49:09
2002-03-17 15:49:09 +00:00
jbj 54945a10c1 Factor notify callback function/arg onto per-ts method.
CVS patchset: 5357
CVS date: 2002/03/13 20:01:50
2002-03-13 20:01:50 +00:00
jbj d18bbd9bdc - drill ts/fi through verify mode, add methods to keep fi abstract.
- use mmap when calculating file digests on verify, ~20% faster.

CVS patchset: 5352
CVS date: 2002/03/12 16:56:17
2002-03-12 16:56:17 +00:00
jbj ff7a19b2bd - permit args to be hidden within %%__find_{requires,provides}.
- a couple more perl.{prov,req} fiddles.

CVS patchset: 5289
CVS date: 2002/02/01 15:19:44
2002-02-01 15:19:44 +00:00
jbj c74fa24965 - missing key(s) on keyring when verifying a signature is now an error.
- remove dependency whiteout.
- splint fiddles.

CVS patchset: 5255
CVS date: 2002/01/18 22:51:30
2002-01-18 22:51:30 +00:00
jbj ce922f5bdf - handle lazy db open's in chroot with absolute path, not prefix strip.
CVS patchset: 5239
CVS date: 2002/01/06 22:12:44
2002-01-06 22:12:44 +00:00
jbj ceed8357c7 - convert file md5sum's to binary on the fly, reducing memory footprint.
CVS patchset: 5192
CVS date: 2001/11/18 17:49:21
2001-11-18 17:49:21 +00:00
jbj 7d44f13395 - use array of pointers rather than contiguous array for ts->order.
CVS patchset: 5186
CVS date: 2001/11/16 22:42:19
2001-11-16 22:42:19 +00:00
jbj 2bc3326438 - annotations to make a transactionElement opaque.
CVS patchset: 5184
CVS date: 2001/11/16 19:26:33
2001-11-16 19:26:33 +00:00
jbj eda96fd190 Eliminate dead code.
CVS patchset: 5183
CVS date: 2001/11/16 13:58:21
2001-11-16 13:58:21 +00:00
jbj 7f1fd8aabc - transaction.c: use wrappers/iterators to access TFI_t.
CVS patchset: 5182
CVS date: 2001/11/16 00:26:30
2001-11-16 00:26:30 +00:00
jbj 846ed75f9b - tweak overlapped file fingerprint retrieval for speed.
CVS patchset: 5181
CVS date: 2001/11/15 18:22:33
2001-11-15 18:22:33 +00:00
jbj f50fc15ba0 depends.c and rpmal.c have opaque TFI_t.
CVS patchset: 5180
CVS date: 2001/11/14 00:14:01
2001-11-14 00:14:01 +00:00
jbj 49f98b8dae transaction.c: lclint cleanups.
CVS patchset: 5178
CVS date: 2001/11/12 22:54:39
2001-11-12 22:54:39 +00:00
jbj 21a35690b3 - commit to using rpmDepSet and TFI_t, not header.
- lclint rpmio fiddles.

CVS patchset: 5177
CVS date: 2001/11/12 20:51:05
2001-11-12 20:51:05 +00:00
jbj 55ffccbdde - unify rpmFNSet into TFI_t.
- eliminate header reference in rpmtransAddPackage, use TFI_t data.

CVS patchset: 5176
CVS date: 2001/11/11 22:51:00
2001-11-11 22:51:00 +00:00
jbj 1eb0503123 Replace loadFi with fiNew, freeFi with fiFree.
CVS patchset: 5175
CVS date: 2001/11/11 20:45:20
2001-11-11 20:45:20 +00:00
jbj ac9f0fea03 - factor per-transactionElement data out of TFI_t through pointer ref.
CVS patchset: 5174
CVS date: 2001/11/11 16:17:57
2001-11-11 16:17:57 +00:00
jbj b97f1cf32b - common structure elements for unification of TFI_t and rpmFNSet.
CVS patchset: 5173
CVS date: 2001/11/11 12:47:08
2001-11-11 12:47:08 +00:00
jbj 2928a5b00d Discard ts->addedPackages at end of rpmdepOrder() for now.
CVS patchset: 5172
CVS date: 2001/11/11 03:15:47
2001-11-11 03:15:47 +00:00
jbj 8d08d4a43b Rip headers out of addedPackages.
CVS patchset: 5170
CVS date: 2001/11/11 01:46:43
2001-11-11 01:46:43 +00:00
jbj 0abf36fd4d Rip alGetHeader() out of depends.c.
CVS patchset: 5169
CVS date: 2001/11/11 00:11:33
2001-11-11 00:11:33 +00:00
jbj a086ad7dd1 Start removing alGetHeader.
CVS patchset: 5168
CVS date: 2001/11/10 19:24:19
2001-11-10 19:24:19 +00:00
jbj eb1789dad7 - no-brainer refcounts for rpmDepSet and rpmFNSet objects.
CVS patchset: 5166
CVS date: 2001/11/09 23:13:50
2001-11-09 23:13:50 +00:00
jbj 56a319f1aa - header tag sets are per-transactionElement, not per-availablePackage.
CVS patchset: 5165
CVS date: 2001/11/09 20:41:18
2001-11-09 20:41:18 +00:00
jbj ac15c68ca5 - no-brainer refcounts for rpmProblemSet object.
CVS patchset: 5163
CVS date: 2001/11/09 17:22:08
2001-11-09 17:22:08 +00:00
jbj 0467af9ab5 Remove dead code.
CVS patchset: 5161
CVS date: 2001/11/08 16:28:35
2001-11-08 16:28:35 +00:00
jbj ae2e9b1bad - linear search on added package provides is dumb.
- discarding entire signature header when using --addsign is dumb.
- typedef the fuile name/python object "key" throughout as fnpyKey.
- start ripping rpmDependencyConflict out of the API.

CVS patchset: 5160
CVS date: 2001/11/08 00:12:49
2001-11-08 00:12:49 +00:00
jbj a5a5eed7c4 Start deconstructing availablePackage list.
CVS patchset: 5156
CVS date: 2001/11/05 03:44:05
2001-11-05 03:44:05 +00:00
jbj 37a303a3a7 - rpmal: availablePackage is totally opaque, alKey with index replaces.
CVS patchset: 5155
CVS date: 2001/11/04 22:00:11
2001-11-04 22:00:11 +00:00
jbj bab3637c98 - rpmds: create dsProblem(), dsiGetDNEVR() retrieved DNEVR, not N.
- depends.h: hack around teIterator() et al from include for now.

CVS patchset: 5153
CVS date: 2001/11/04 15:43:26
2001-11-04 15:43:26 +00:00
jbj 86fee19060 - invent some toy transactionElement iterators.
CVS patchset: 5148
CVS date: 2001/11/02 03:13:35
2001-11-02 03:13:35 +00:00
jbj b0e16172c3 - depends.c: availablePackage is (almost) opaque.
CVS patchset: 5147
CVS date: 2001/11/01 23:18:15
2001-11-01 23:18:15 +00:00
jbj fe68f3c0cd - add header refcount annotations throughout.
CVS patchset: 5146
CVS date: 2001/11/01 20:15:10
2001-11-01 20:15:10 +00:00
jbj 9ea554f799 - transaction.c: cleanly uncouple availablePackage from TFI_t.
CVS patchset: 5142
CVS date: 2001/10/30 18:00:21
2001-10-30 18:00:21 +00:00
jbj bdae587b2e - add some dinky availablePackage methods.
CVS patchset: 5141
CVS date: 2001/10/29 23:39:51
2001-10-29 23:39:51 +00:00
jbj e62f50c8a5 - start hiding availablePackage data/methods in rpmal.c/rpmal.h.
CVS patchset: 5140
CVS date: 2001/10/29 20:12:35
2001-10-29 20:12:35 +00:00
jbj 89c1ce1325 Remove DYING code.
CVS patchset: 5139
CVS date: 2001/10/29 16:39:13
2001-10-29 16:39:13 +00:00
jbj 87b17923e6 Gather all problem handling routines in one place.
CVS patchset: 5138
CVS date: 2001/10/29 16:35:01
2001-10-29 16:35:01 +00:00
jbj 966fabbc44 - memory indices for dependency check are typedef'd and abstract'd.
- no-brainer refcounts for fi object, debug the mess.
- dump the header early in transaction, recreate fi before installing.

CVS patchset: 5137
CVS date: 2001/10/28 22:17:47
2001-10-28 22:17:47 +00:00
jbj c1d367a094 - transaction sets cerated in cli main.
- no-brainer refcounts for ts object.

CVS patchset: 5136
CVS date: 2001/10/27 22:31:10
2001-10-27 22:31:10 +00:00
jbj 7402ce1546 - legacy signatures always checked where possible on package read.
- wire transactions through rpmcli build modes.
- lazy rpmdb open/close through transaction methods (mostly anyways).
- no-brainer refcounts for rpmdb object.
- check added header against transaction set, replace if newer.

CVS patchset: 5135
CVS date: 2001/10/27 20:09:20
2001-10-27 20:09:20 +00:00
jbj 4a1a5e8148 - wire transactions through rpmcli install/erase modes.
- legacy signatures always checked on package read.

CVS patchset: 5134
CVS date: 2001/10/26 04:16:19
2001-10-26 04:16:19 +00:00
jbj 1ad22a0bc4 - all symbols but hdrVec are now forward references in linkage.
CVS patchset: 5128
CVS date: 2001/10/21 21:43:32
2001-10-21 21:43:32 +00:00
jbj 308f022df4 Rewire digests, step 1.
CVS patchset: 5120
CVS date: 2001/10/19 01:24:21
2001-10-19 01:24:21 +00:00
jbj 73df151e8f Scaffholding for dumping full headers carried through transaction.
CVS patchset: 5119
CVS date: 2001/10/18 16:39:54
2001-10-18 16:39:54 +00:00
jbj d57a29baac Converging on lclint-3.0.17 strict level.
CVS patchset: 5118
CVS date: 2001/10/17 16:43:36
2001-10-17 16:43:36 +00:00
jbj 96a3f7a55d Factor -type problems into explicit code annotations.
CVS patchset: 5117
CVS date: 2001/10/16 17:42:18
2001-10-16 17:42:18 +00:00
jbj 9f45bcd3ec More lclint annotations.
CVS patchset: 5116
CVS date: 2001/10/16 14:58:57
2001-10-16 14:58:57 +00:00
jbj 14c1b443f6 More branchstate lclint annotations.
CVS patchset: 5114
CVS date: 2001/10/15 19:27:13
2001-10-15 19:27:13 +00:00
jbj 72471f2e54 Explicit branchstate annotations.
CVS patchset: 5113
CVS date: 2001/10/15 17:53:34
2001-10-15 17:53:34 +00:00
jbj d8dc44f363 lclint fiddles to annotate globals.
CVS patchset: 5106
CVS date: 2001/10/15 03:22:10
2001-10-15 03:22:10 +00:00
jbj 4b67d7621c More lclint annotations.
CVS patchset: 5105
CVS date: 2001/10/13 22:01:38
2001-10-13 22:01:38 +00:00
jbj 525f4cb8b1 - ratchet up to lclint "strict" level.
CVS patchset: 5104
CVS date: 2001/10/13 19:35:58
2001-10-13 19:35:58 +00:00
jbj 92556605af - legacy: drop brokenMD5 support (rrpm-2.3.3 to rpm-2.3.8 on sparc).
- eliminate DYING code.

CVS patchset: 5082
CVS date: 2001/09/25 20:51:34
2001-09-25 20:51:34 +00:00
jbj cb21600940 - drop rpmio/base64.[ch] in favor of beecrypt.
- drop lib/md5*.[ch] files in favor of beecrypt.

CVS patchset: 5081
CVS date: 2001/09/25 16:21:44
2001-09-25 16:21:44 +00:00
jbj 9d555b6216 Move to lclint-3.0.0.15, revisit and clean up annotations.
intl/: Add gettext orphans.
popt/intl/: Add gettext orphans.
beecrypt: Add beecrypt repository.
rpmio/tdigest.c: Add beecrypt digest checks.

CVS patchset: 5077
CVS date: 2001/09/24 21:53:14
2001-09-24 21:53:14 +00:00
jbj 1eef0782f6 - lclint-3.0.0.15 fiddles.
CVS patchset: 5067
CVS date: 2001/09/21 15:07:11
2001-09-21 15:07:11 +00:00
jbj dce5aa0ebd lclint clean again.
CVS patchset: 5001
CVS date: 2001/08/03 15:17:55
2001-08-03 15:17:55 +00:00
jbj 46d2e8bbd8 - fix: i18n tags not terminated correctly with NUL (#50304).
- add explicit casts to work around a s390 compiler problem.

CVS patchset: 4998
CVS date: 2001/08/03 05:04:13
2001-08-03 05:04:13 +00:00
jbj c6fba63aca - fix: --noscripts is another multimode option.
- add tmpdir to configure db3 tmpdir into chroot tree.
- permit lazy db opens within chroot.
- fix: diddle dbenv path to accomodate backing store reopen in chroot.

CVS patchset: 4990
CVS date: 2001/07/28 00:33:07
2001-07-28 00:33:07 +00:00
jbj 3a2ddf1551 - fix: 4 memory leaks eliminated.
CVS patchset: 4960
CVS date: 2001/07/19 21:14:05
2001-07-19 21:14:05 +00:00
jbj 8cd30c7190 - make package ordering loop messages debug, not warning.
CVS patchset: 4883
CVS date: 2001/06/19 20:03:13
2001-06-19 20:03:13 +00:00
jbj 29ea1567e7 Sync with rpm-4_0 branch.
CVS patchset: 4876
CVS date: 2001/06/17 22:18:03
2001-06-17 22:18:03 +00:00
jbj f0d2abd2bc - fix: db1 end-of-file not detected in legacy compatible way.
- fix: remove (harmless) chown error message from %post.
- add --target/--host to %configure, add example cross-build/config.site
  scripts to /usr/lib/rpm <arjanv@redhat.com> (#44581).
- rpmdb iterator selectors permit default/strcmp/regex/glob matching.
- rpmdb iterator selectors permit negative matches.

CVS patchset: 4861
CVS date: 2001/06/15 04:56:33
2001-06-15 04:56:33 +00:00
jbj 22b9de5f33 - add rpmdbSetIteratorRE() for regex matching in database iterators.
- permit rpm -qa to take RE args applied to name tag.
- permit dbiFindMatches() to use version/release patterns.
- eliminate all uses of rpmdbSetIterator{Version,Release}.

CVS patchset: 4859
CVS date: 2001/06/13 20:57:06
2001-06-13 20:57:06 +00:00
jbj 1b87bd9ef7 - remove dead code frpm popt table reorg.
- more CLI typedefs/prototypes moved from rpmlib.h to rpmcli.h.
- rpm --verify skips files in non-installed states.
- rpm --verify skips content checks for %ghost files.
- rpm --verify displays config/doc/gnost/license/readme atrrs for files.
- rpm --verify checks immutable header region digest if available.
- rpmbuild adds header region digest (SHA1 as string).
- use rpmTag* typedefs in new hge/hae/hme/hre header vectors.

CVS patchset: 4854
CVS date: 2001/06/12 04:10:21
2001-06-12 04:10:21 +00:00
jbj f0a67ca8b0 - permit duplicates for btree indices.
CVS patchset: 4843
CVS date: 2001/06/06 12:36:31
2001-06-06 12:36:31 +00:00
jbj 4ae69250a2 - fix typos in linux.{req,prov}.
CVS patchset: 4834
CVS date: 2001/06/05 19:26:22
2001-06-05 19:26:22 +00:00
jbj 750d54d8a3 lclint fiddles.
CVS patchset: 4833
CVS date: 2001/06/04 13:55:58
2001-06-04 13:55:58 +00:00
jbj 71f818828e - headerFree() returns NULL, _free is C++ safe.
CVS patchset: 4807
CVS date: 2001/05/23 14:25:19
2001-05-23 14:25:19 +00:00
jbj c7ee573367 - rpm database has rpm.rpm g+w permissions to share db3 mutexes.
- expose more db3 macro configuration tokens.
- move fprint.[ch] and hash.[ch] to rpmdb directory.
- detect and fiddle incompatible mixtures of db3 env/open flags.
- add DBI_WRITECURSOR to map to db3 flags with CDB database model.
- add rpmdbSetIteratorRewrite to warn of pending lazy (re-)writes.

CVS patchset: 4765
CVS date: 2001/05/11 04:01:04
2001-05-11 04:01:04 +00:00
jbj 8f75bbc17d - enough lclint annotations and fiddles already.
CVS patchset: 4741
CVS date: 2001/05/05 19:28:32
2001-05-05 19:28:32 +00:00
jbj d78e027808 - still more boring lclint annotations and fiddles.
CVS patchset: 4738
CVS date: 2001/05/03 21:00:18
2001-05-03 21:00:18 +00:00
jbj 0ecdbba935 - yet more boring lclint annotations and fiddles.
CVS patchset: 4732
CVS date: 2001/04/30 22:32:22
2001-04-30 22:32:22 +00:00
jbj 81ac89f4e6 - more boring lclint annotations and fiddles.
CVS patchset: 4725
CVS date: 2001/04/29 22:43:01
2001-04-29 22:43:01 +00:00
jbj c83cfd5ed5 - transaction iterator(s) need to run in reverse order on pure erasures.
- erasures not yet strict, warn & chug on unlink(2)/rmdir(2) failure.

CVS patchset: 4723
CVS date: 2001/04/29 16:08:55
2001-04-29 16:08:55 +00:00
jbj 3b5820c420 - globalize _free(3) wrapper in rpmlib.h, consistent usage throughout.
- internalize locale insensitive ctype(3) in rpmio.h
- boring lclint annotations and fiddles.

CVS patchset: 4721
CVS date: 2001/04/29 01:05:43
2001-04-29 01:05:43 +00:00
jbj a9a1fd866c - fix: ineeded count wrong for overlapped, created files.
CVS patchset: 4709
CVS date: 2001/04/26 20:39:52
2001-04-26 20:39:52 +00:00
jbj 389d253e62 Sync with rpm-4_0 branch.
CVS patchset: 4700
CVS date: 2001/04/21 06:02:09
2001-04-21 06:02:09 +00:00
jbj 999f9b1654 - fix: %_netsharedpath needs to look at basenames (#26561).
- fix: --excludepath was broken (#24434).

CVS patchset: 4669
CVS date: 2001/04/03 20:41:09
2001-04-03 20:41:09 +00:00
jbj 9e6924a604 - fix: --relocate missing trailing slash (#28874,#25876).
- fix: --excludedoc shouldn't create empty doc dir (#14531).

CVS patchset: 4663
CVS date: 2001/04/03 13:41:56
2001-04-03 13:41:56 +00:00
jbj a77bec0d7e - Add btree indexes for Dirnames, Requireversion, Provideversion, Insttaltid,
and Removetid.
- Add per-script and per-trigger control options and flags.
- Add --apply option and flags.

CVS patchset: 4605
CVS date: 2001/03/04 15:34:53
2001-03-04 15:34:53 +00:00
jbj 665c365a12 Add top level, external enties to psmStage().
CVS patchset: 4596
CVS date: 2001/03/02 19:47:45
2001-03-02 19:47:45 +00:00
jbj 56bea19bfc Sketch out PSM_t for package state machine.
CVS patchset: 4584
CVS date: 2001/02/27 22:08:53
2001-02-27 22:08:53 +00:00
jbj c56c829d28 1st crack at --repackage.
CVS patchset: 4557
CVS date: 2001/02/19 17:12:21
2001-02-19 17:12:21 +00:00
jbj 8f99e61fc7 Merge changes from rpm-4.0.2.
Add iterators and reverse flag so that erase transactions can run backwards.

CVS patchset: 4556
CVS date: 2001/02/17 17:53:21
2001-02-17 17:53:21 +00:00
jbj 85a84a6826 Add rpmRC return code type for the usual 0/1/2 codes.
Add RPMRC_BADSIZE to deal with packages changing size after repackaging.

CVS patchset: 4550
CVS date: 2001/02/12 19:02:15
2001-02-12 19:02:15 +00:00
jbj 2be9ecf0eb 1st stab at --repackage.
CVS patchset: 4545
CVS date: 2001/02/11 22:02:29
2001-02-11 22:02:29 +00:00
jbj eccb6f66fc Reorganize sources before implementing --repackage.
CVS patchset: 4543
CVS date: 2001/02/10 16:47:40
2001-02-10 16:47:40 +00:00
jbj cc3e5fd3db Move state machine drivers into fsmStage.
Off to fix build's yet again.

CVS patchset: 4530
CVS date: 2001/02/08 21:50:38
2001-02-08 21:50:38 +00:00
jbj 1b9cbfcc5e revert speedup on commit if same perms, there's more to do.
lclint annotations.

CVS patchset: 4520
CVS date: 2001/02/04 22:15:30
2001-02-04 22:15:30 +00:00
jbj d8b44a5d65 Commit to install file state machine.
CVS patchset: 4509
CVS date: 2001/01/29 22:53:48
2001-01-29 22:53:48 +00:00
jbj 971e0ea6fc 1st crack at a payload unpack state machine.
CVS patchset: 4502
CVS date: 2001/01/27 17:42:24
2001-01-27 17:42:24 +00:00
jbj c825d02369 lclint annotations.
CVS patchset: 4500
CVS date: 2001/01/26 17:06:09
2001-01-26 17:06:09 +00:00
jbj f0853f6843 Add rollback.h, 1st attempt to rationalize TFI_t.
CVS patchset: 4496
CVS date: 2001/01/24 21:35:52
2001-01-24 21:35:52 +00:00
jbj 8b7b911a17 Rip out cpioFileMap.
CVS patchset: 4493
CVS date: 2001/01/23 23:03:28
2001-01-23 23:03:28 +00:00
jbj 7eb91a5152 Expose loadFi/freeFi.
Add elements to TFI_t that will be needed by install/remove.

CVS patchset: 4489
CVS date: 2001/01/23 16:07:28
2001-01-23 16:07:28 +00:00
jbj 15439b46c0 Make cpio maps totally opaque.
CVS patchset: 4487
CVS date: 2001/01/22 19:11:19
2001-01-22 19:11:19 +00:00
jbj ccdf2e17d8 Make cpio mappings opaque.
CVS patchset: 4479
CVS date: 2001/01/21 23:48:09
2001-01-21 23:48:09 +00:00
jbj d07437babb - cpio mappings carry dirname/basename, not absolute path.
CVS patchset: 4474
CVS date: 2001/01/21 15:43:32
2001-01-21 15:43:32 +00:00
jbj c74cc1df1c - fix: extra newline in many error messages (#23947).
- fix: rpm -Va with db1 needs per-iterator, not per-index, offset.
- add install/remove transaction id tags.

CVS patchset: 4441
CVS date: 2001/01/15 23:09:42
2001-01-15 23:09:42 +00:00
jbj 424793073c - tsorted packages processed in successor count order.
- fix: resurrect --excludepath (#19666).

CVS patchset: 4418
CVS date: 2001/01/09 04:07:49
2001-01-09 04:07:49 +00:00
jbj 06e45e2923 - fix: avoid FAT and other brain-dead file systems that have not inodes.
- fix: hack around alpha mis-compilation signature problems.
- rpmmodule.c(handleDbResult): return empty list when nothing matches.

CVS patchset: 4385
CVS date: 2000/12/29 21:44:37
2000-12-29 21:44:37 +00:00
jbj fdd2f17c56 - fix: removed headers from db need a headerCopy().
CVS patchset: 4368
CVS date: 2000/12/21 21:07:41
2000-12-21 21:07:41 +00:00
jbj 22be517f73 - identify install scriptlet failures with the name of the scriptlet.
- handle install chroot's identically throughout the install process.
- add rpmlib(HeaderLoadSortsTags) for tracking header regions "just in case".
- create _tmppath on the fly if not present.

CVS patchset: 4355
CVS date: 2000/12/19 17:43:56
2000-12-19 17:43:56 +00:00
jbj 92c9e1fc77 - fix: segfault on build path, ignore deleted drips.
- fix: synthesized callbacks for removed packages have not a pkgkey.

CVS patchset: 4346
CVS date: 2000/12/14 22:14:29
2000-12-14 22:14:29 +00:00
jbj 66671b9701 - fix: (transaction.c) assume file state normal if tag is missing.
- fix: failed signature read headerFree segfault.
- fix: revert ALPHA_LOSSAGE, breaks 6.2/i386.

CVS patchset: 4343
CVS date: 2000/12/13 22:00:33
2000-12-13 22:00:33 +00:00
jbj db32ab6bea Sync with rpm-4_0 branch.
CVS patchset: 4338
CVS date: 2000/12/12 20:03:45
2000-12-12 20:03:45 +00:00
jbj 2885f536b6 Bring header reggions mods back to top of stack.
CVS patchset: 4305
CVS date: 2000/12/02 21:53:44
2000-12-02 21:53:44 +00:00
jbj 38b66577e6 - add region marker as RPM_BIN_TYPE in packages and database.
- fix: don't headerCopy() relocateable packages if not relocating.

CVS patchset: 4246
CVS date: 2000/11/08 17:07:01
2000-11-08 17:07:01 +00:00
jbj 3ad99fcba5 - add cscope/ctags (Rodrigo Barbosa<rodrigob@conectiva.com.br>).
- remove getMacroBody() from rpmio API.
- hide libio lossage in prototype, not API.
lclint annotations.

CVS patchset: 4230
CVS date: 2000/10/28 17:16:25
2000-10-28 17:16:25 +00:00
jbj 03efb685f1 - pass rpmTransactionSet, not elements, to installBinaryPackage et al.
CVS patchset: 4221
CVS date: 2000/10/20 22:04:27
2000-10-20 22:04:27 +00:00
jbj 8699b8a123 - detect rdonly linux file systems.
- check available inodes as well as blocks on mounted file systems.

CVS patchset: 4220
CVS date: 2000/10/20 16:47:00
2000-10-20 16:47:00 +00:00
jbj c7b24dad58 - translate rpm.8 man page (Peter Ivanyi <ivanyi@internet.sk>).
Doxygen annotations.

CVS patchset: 4146
CVS date: 2000/08/29 22:04:33
2000-08-29 22:04:33 +00:00
jbj 9866d30b0d Doxygen annotations.
CVS patchset: 4133
CVS date: 2000/08/27 19:40:35
2000-08-27 19:40:35 +00:00
jbj d0581d13d4 - add callbacks on package erasure.
- fix: preserve cpio errno when using Fclose with libio.
- fix: initialize sigs everywhere in python header object.

CVS patchset: 4097
CVS date: 2000/08/20 21:39:13
2000-08-20 21:39:13 +00:00
jbj 11fa17601b - fix: segfault on erase if filestates is missing in header (#14679).
CVS patchset: 3994
CVS date: 2000/07/31 21:27:20
2000-07-31 21:27:20 +00:00
jbj 77ea46f6a0 - rip out pre-transaction syscalls, more design is needed.
- display rpmlib provides when invoked with --showrc.
- remove (dead) dependency checks on implicitly provided package names.
- remove (dead) rpmdb API code in python bindings.
- remove (legacy) support for version 1 packaging.
- remove (legacy) support for converting gdbm databases.

CVS patchset: 3950
CVS date: 2000/07/15 14:53:54
2000-07-15 14:53:54 +00:00
jbj 6e2db4d82b - add S_ISLNK pre-transaction syscall test.
CVS patchset: 3941
CVS date: 2000/07/12 22:10:26
2000-07-12 22:10:26 +00:00
jbj c956f0437a fix: do chroot around pre-transaction syscalls.
CVS patchset: 3927
CVS date: 2000/07/09 15:17:11
2000-07-09 15:17:11 +00:00
jbj 913d116d71 - add pre-transaction syscall's to handle /etc/init.d change.
- don't bother saving '/' as fingerprint subdir.

CVS patchset: 3926
CVS date: 2000/07/09 04:42:12
2000-07-09 04:42:12 +00:00
jbj 625d765b6e lclint fiddles.
avoid pathological buffer overflow in lib/rpmrc.c

CVS patchset: 3922
CVS date: 2000/07/07 20:06:41
2000-07-07 20:06:41 +00:00
jbj a463744b6d - change optflags for i386.
- multilib patch, take 1.

CVS patchset: 3920
CVS date: 2000/07/05 20:39:15
2000-07-05 20:39:15 +00:00
jbj 99e915cbab fix: open all db indices before performing chroot.
CVS patchset: 3868
CVS date: 2000/06/19 11:35:29
2000-06-19 11:35:29 +00:00
jbj 9fb2e0a01b - fix: resurrect symlink unique'ifying property of finger prints.
CVS patchset: 3856
CVS date: 2000/06/16 19:12:09
2000-06-16 19:12:09 +00:00
jbj 5a4c90ff29 - fix: don't count removed files if removed packages is empty set.
- fix: permit '\0' as special case key (e.g. "/" in Basenames).

CVS patchset: 3848
CVS date: 2000/06/14 14:21:06
2000-06-14 14:21:06 +00:00
jbj 764e820f16 Repair rebuilddb lossage, removing debug messages and final copy on user msgs.
Initialize dbN vector from dbNopen.
Use db3 return convention for dbNopen.
Always save tag index in join key.
Rename rpmdbAppendIteratorMatches -> rpmdbAppendIterator.
Remove tolerant from rpmdbRemove API.
Use hdrNum rather than offset, tagNum rather than fileNumber most everywhere.
rpmdb.c: Create rpmdbPruneIterator to exclude items from set.
rpmdb.c: Remove legacy code from rpmdbAdd/rpmdbRemove.
rpmdb.c: Rename (shorten) many routines.
tagName.c: prepare for ADDED/REMOVED/AVAILABLE temorary databases.
depends.c: use rpmdbPruneIterator.
depends.c: don't check ranges unless provides names match.
depends.c: Depends now works (watch out for data values of 0).
rpmpopt.in: Add --dbapi and --rebuilddbapi options.

CVS patchset: 3720
CVS date: 2000/05/07 00:53:11
2000-05-07 00:53:11 +00:00
jbj 73f95c99ce Rename db0.c to db1.c, resurrect db2.c (from db3.c).
Add ia64 and sparc64 changes.
rpm.spec: add per-platform sub-directories.
Add rpmdbSync to API.
installplatform: pass LIB=lib64 on sparc64.
db3.c: Add nodbsync, lockdbfd, debug dbi configuration.
db3.c: don't check dbi_mode when deciding on DB_WRITECURSOR.

CVS patchset: 3711
CVS date: 2000/05/01 17:50:35
2000-05-01 17:50:35 +00:00
jbj 113948c75c Sanity and API clean up. (make dist)
CVS patchset: 3705
CVS date: 2000/04/27 01:11:48
2000-04-27 01:11:48 +00:00
jbj 24a64f2739 - API: replace rpmdbUpdateRecord with rpmdbRemove/rpmdbAdd.
- API: replace rpmdbFindByLabel with RPMDBI_LABEL iteration.
- API: replace rpmdbGetRecord with iterators.
- API: replace findMatches with iterators.

CVS patchset: 3704
CVS date: 2000/04/27 00:10:28
2000-04-27 00:10:28 +00:00
jbj f75d794af4 Change iterator interface to use RPMTAG_FOO rather than RPMDBI_FOO.
CVS patchset: 3687
CVS date: 2000/04/19 22:15:02
2000-04-19 22:15:02 +00:00
jbj 588daae4b4 Consolidate changes into rpmdb.c.
CVS patchset: 3683
CVS date: 2000/04/18 18:11:43
2000-04-18 18:11:43 +00:00
jbj 0c83ea489f Sanity (bump release).
CVS patchset: 3677
CVS date: 2000/04/13 16:00:34
2000-04-13 16:00:34 +00:00
jbj 41db4a0210 The death of rpmdbFindBy{Provides,RequiredBy,Conflicts}.
CVS patchset: 3674
CVS date: 2000/04/13 10:11:32
2000-04-13 10:11:32 +00:00
jbj 48e8650520 The death of rpmdbFindBy{Group,TriggeredBy,Header}.
CVS patchset: 3673
CVS date: 2000/04/13 09:07:08
2000-04-13 09:07:08 +00:00
jbj cab176172b - API: change dbi to pass by reference, not value.
- cram all of db1, db_185, and db2 interfaces into rpmlib.

CVS patchset: 3636
CVS date: 2000/03/23 15:49:50
2000-03-23 15:49:50 +00:00
jbj 1484d82ecd fix: filter excluded paths before adding install prefixes (#8709).
CVS patchset: 3575
CVS date: 2000/02/22 12:05:13
2000-02-22 12:05:13 +00:00
jbj 9f35fb4373 configurable PATH for install %pre/%post et al scriptlets.
use only %_install_langs, not LINGUAS/LANG when deciding to install.

CVS patchset: 3514
CVS date: 2000/01/11 15:22:35
2000-01-11 15:22:35 +00:00
jbj ff438dd50d Back out fix for dirIndexes memory leak.
CVS patchset: 3467
CVS date: 1999/12/10 15:37:41
1999-12-10 15:37:41 +00:00
jbj bd109d5df5 rename new FILENAMES tags to BASENAMES/DIRNAMES/DIRINDEXES.
CVS patchset: 3466
CVS date: 1999/12/08 19:04:50
1999-12-08 19:04:50 +00:00
jbj ca5882b322 Makefile.am: Add RPM-GPG-KEY to the package.
Use fdLink/fdFree for fd/scriptFd references in transaction set/availableList.
fprint.h: Permit (and check for) subDir = NULL in fingerPrints.
More lclint annotations.

CVS patchset: 3462
CVS date: 1999/12/07 21:14:51
1999-12-07 21:14:51 +00:00
jbj 8289346751 Add underscore in front of (possibly) non-supported FDIO_t vectors.
Make buildFileList() part of rpmlib API as rpmBuildFileList().
lib/rpmdb.c: Compare fingerprints from different caches by value.

CVS patchset: 3448
CVS date: 1999/12/01 19:57:17
1999-12-01 19:57:17 +00:00
jbj 7a41cb8e4a lib/transaction.c: Fix (in the right place) the dil memory leak.
CVS patchset: 3445
CVS date: 1999/11/30 18:27:49
1999-11-30 18:27:49 +00:00
jbj 06aedc29ca lib/depends.c: Fix minor memory leak.
lib/fprint.c: Pass both dirName/baseName to fpLookup() to avoid memory leaks.
lib/rpmdb.c: ditto, and use scaremem=1.
lib/transaction.c: Fix minor memory leak.

CVS patchset: 3443
CVS date: 1999/11/30 18:07:08
1999-11-30 18:07:08 +00:00
jbj f202d104d0 Consistent usage for fileNames, baseNames, dirNames and dirIndexes throughout.
rpm.c: Add --nodirtokens and --dirtokens to control file list compression.
lib/misc.c: Default (conservative) valuse _noDirTokens is TRUE.
lib/misc.c: Add expandFileList analogue to compressFileList.
build/pack.c: Compress file list only if compression is requested.
lib/rpmdb.c: Expand file list before headerWrite if compression not requested.

CVS patchset: 3436
CVS date: 1999/11/26 21:58:42
1999-11-26 21:58:42 +00:00
jbj 1e0138188b check for memory leaks (almost all leaks are plugged).
CVS patchset: 3403
CVS date: 1999/10/29 16:06:01
1999-10-29 16:06:01 +00:00
jbj 3ae84a6867 lclint annotations.
CVS patchset: 3390
CVS date: 1999/10/21 15:04:25
1999-10-21 15:04:25 +00:00
ewt 1bcfa7ac60 got installs/removes working with new file lists
CVS patchset: 3389
CVS date: 1999/10/21 02:40:57
1999-10-21 02:40:57 +00:00
jbj e6698260f4 Use xmalloc/xrealloc/xstrdup.
CVS patchset: 3388
CVS date: 1999/10/20 21:47:42
1999-10-20 21:47:42 +00:00
jbj 6defa683eb lclint annotations.
CVS patchset: 3387
CVS date: 1999/10/20 21:40:10
1999-10-20 21:40:10 +00:00
jbj 574cad11f2 Tyo: RPMTAG_COMPFILENAMES is ...COMPFILELIST.
Remove compiler warnings.

CVS patchset: 3386
CVS date: 1999/10/20 18:38:37
1999-10-20 18:38:37 +00:00
ewt 925c8130d5 another batch of changes for new file list format -- one more to go
CVS patchset: 3383
CVS date: 1999/10/20 10:22:46
1999-10-20 10:22:46 +00:00
ewt 28c54f8f22 relocations work better now
CVS patchset: 3382
CVS date: 1999/10/17 20:59:39
1999-10-17 20:59:39 +00:00
ewt cfa9ce427b support new file list format for relocations and package removal
CVS patchset: 3379
CVS date: 1999/10/08 20:30:49
1999-10-08 20:30:49 +00:00
ewt 4cfb2f8d63 first steps toward getting compressed file lists to work -- most things
are still *horribly* broken

CVS patchset: 3370
CVS date: 1999/10/06 15:51:14
1999-10-06 15:51:14 +00:00
jbj e6318cc57f fix: removed files fingerprint memory leak.
fix: resurrect allfiles flag from rpm-2.5.x.

CVS patchset: 3312
CVS date: 1999/09/21 17:21:57
1999-09-21 17:21:57 +00:00
jbj 20d78e939a fix: command line install had header memory leak.
check for NULL on all memory allocations.
free rpmrc mallocs on exit.
permit run time leak detection.

CVS patchset: 3311
CVS date: 1999/09/21 03:22:53
1999-09-21 03:22:53 +00:00
jbj 00dcfeff38 lclint annotations.
CVS patchset: 3290
CVS date: 1999/09/17 20:52:46
1999-09-17 20:52:46 +00:00
jbj f005d4c15c Fiddles to resurrect lclint.
CVS patchset: 3281
CVS date: 1999/09/12 20:43:23
1999-09-12 20:43:23 +00:00
jbj 81355ca367 Bump release.
CVS patchset: 3269
CVS date: 1999/09/07 23:04:24
1999-09-07 23:04:24 +00:00
jbj 279e4cc338 add %_install_langs to configure languages to be installed.
CVS patchset: 3245
CVS date: 1999/08/22 04:17:12
1999-08-22 04:17:12 +00:00
jbj 210d76a5cd fix: more precise handling was needed for multiple overlapped removed files.
CVS patchset: 3234
CVS date: 1999/08/17 23:05:24
1999-08-17 23:05:24 +00:00
jbj 3cb1e6fe07 fix: n>1 occurrences of %config(noreplace) should not FA_CREATE (#4355).
CVS patchset: 3232
CVS date: 1999/08/16 22:10:27
1999-08-16 22:10:27 +00:00
jbj 1e4d3532ea resuscitate net shared paths (#4330).
CVS patchset: 3228
CVS date: 1999/08/15 19:11:40
1999-08-15 19:11:40 +00:00
jbj 721d10da7c Fix the erased files last fix.
CVS patchset: 3226
CVS date: 1999/08/15 13:41:06
1999-08-15 13:41:06 +00:00
jbj f12ab9fac1 fix: don't remove file until last occurence in transaction (#4291).
CVS patchset: 3225
CVS date: 1999/08/14 20:01:38
1999-08-14 20:01:38 +00:00
jbj de8d6b59e1 Comments, consts, and simplifications.
CVS patchset: 3223
CVS date: 1999/08/13 20:05:57
1999-08-13 20:05:57 +00:00
jbj d71e246e74 Comments and consts ...
CVS patchset: 3218
CVS date: 1999/08/07 00:07:51
1999-08-07 00:07:51 +00:00
jbj e36fd7ef12 Comments and consts ...
CVS patchset: 3217
CVS date: 1999/08/06 23:44:25
1999-08-06 23:44:25 +00:00
jbj 64c9a2d1cf Use headerNVR throughout.
More const's.

CVS patchset: 3216
CVS date: 1999/08/06 22:52:49
1999-08-06 22:52:49 +00:00
jbj 0343b15e55 Get rid of trailing white space.
CVS patchset: 3215
CVS date: 1999/08/06 21:35:15
1999-08-06 21:35:15 +00:00
jbj 3165d32338 Eliminate static prototypes.
CVS patchset: 3153
CVS date: 1999/07/14 14:36:10
1999-07-14 14:36:10 +00:00
jbj 8bd997f2e0 Perl bindings need
#include <foo.h>
not
	#include "foo.h"

CVS patchset: 3143
CVS date: 1999/07/13 21:37:57
1999-07-13 21:37:57 +00:00
jbj f11e91ff1d Debug multiple %langs's per item.
CVS patchset: 3069
CVS date: 1999/05/17 19:32:15
1999-05-17 19:32:15 +00:00
jbj 036cdfdc69 permit %lang(xx,yy,zz) constructs -- 2 more dead strtoks.
CVS patchset: 3068
CVS date: 1999/05/17 18:44:14
1999-05-17 18:44:14 +00:00
jbj 73fb1d7235 fix: shared file not skipped when removed.
CVS patchset: 3059
CVS date: 1999/05/12 20:24:00
1999-05-12 20:24:00 +00:00
jbj 56b31cf832 Root reserved fs blocks adjustment should be 1.05 (not 1/0.95).
CVS patchset: 3015
CVS date: 1999/04/18 20:56:19
1999-04-18 20:56:19 +00:00
jbj 3b9ca6b62e Fix disk space estimate.
CVS patchset: 3011
CVS date: 1999/04/18 17:08:49
1999-04-18 17:08:49 +00:00
jbj 2320364c77 Use statvfs on solaris2.6+ (Eddie Bugg <ralp@terra.abcbs.com>)
CVS patchset: 3005
CVS date: 1999/04/16 23:05:00
1999-04-16 23:05:00 +00:00
jbj 3c53216727 typo.
CVS patchset: 3000
CVS date: 1999/04/15 06:16:04
1999-04-15 06:16:04 +00:00
jbj bcdfc22cf7 Fix: handle %config(noreplace) correctly for linuxconf.
CVS patchset: 2999
CVS date: 1999/04/15 06:14:34
1999-04-15 06:14:34 +00:00
jbj 0530ddd0bb Make sure parens match.
CVS patchset: 2998
CVS date: 1999/04/15 05:38:43
1999-04-15 05:38:43 +00:00
ewt 0c1e1a7f47 we need to remember about shared files long enough to handle config files
properly

CVS patchset: 2996
CVS date: 1999/04/14 19:48:25
1999-04-14 19:48:25 +00:00
jbj 89e28f78e8 Make silly headerGetEntry consistent throughout.
CVS patchset: 2995
CVS date: 1999/04/14 12:35:08
1999-04-14 12:35:08 +00:00
jbj 527e1bc4e0 fix: last update transaction set segfault bug in installer.
improved checks for statfs (Tim Mooney).
remove inconsistent use of __P((...)) throughout.
non-static inline functions caused IRIX cc pain.
CPIOERR_CHECK_ERRNO masking caused AIX cc warnings.

CVS patchset: 2993
CVS date: 1999/04/14 11:28:31
1999-04-14 11:28:31 +00:00
ewt e1fd3b3f25 don't start mucking with filelists for packages which have already been removed!
CVS patchset: 2991
CVS date: 1999/04/13 22:47:44
1999-04-13 22:47:44 +00:00
ewt 6ca17d58f4 fixed minor memory leak
CVS patchset: 2989
CVS date: 1999/04/13 17:12:09
1999-04-13 17:12:09 +00:00
msw c69903d871 don't report disk space problems for packages w/ no files
CVS patchset: 2986
CVS date: 1999/04/12 21:03:50
1999-04-12 21:03:50 +00:00