Commit Graph

340 Commits

Author SHA1 Message Date
Panu Matilainen 55cb2ff128 Bogus const removal continued... 2007-12-14 19:52:11 +02:00
Panu Matilainen 8d66d5fe4a Bunch of const char* corrections
- functions returning string constants as char * etc...
2007-12-14 15:17:59 +02:00
Panu Matilainen 1e96ead466 Use rpm_tagtype_t everywhere for rpm (header) tagtype type
- typedef'ed as uint32_t, doesn't matter much but negative types dont exist
- easy to grep, easy to change...
- define RPM_FORCEFREE_TYPE instead of -1 "magic" for forcing
  headerFreeData (ugh), easier to grep for and change than "-1"
2007-12-13 20:35:33 +02:00
Panu Matilainen 7e56c6355b Use rpm_tag_t everywhere for rpm (header) tag type
- typedef'ed as int32_t for now, negative values used in some places for
  error cases
- easy to grep, easy to change...
- add RPMTAG_NOT_FOUND define, used in place of -1 "magic",
2007-12-13 19:32:37 +02:00
Panu Matilainen c8f2927227 Use rpm_count_t everywhere for header data count
- typedef'ed as uint32_t as that's the key size limit imposed by BDB,
  relevant for RPM_BIN_TYPE
- easy to change to whatever later on as it's now consistent everywhere
2007-12-13 09:25:10 +02:00
Panu Matilainen 6d1cb6a9da Silly thinko/typo causing source rpms to provide their nvr.. 2007-12-11 13:50:20 +02:00
Panu Matilainen 9ce13e09ef Switch to <rpm/foo.h> style for public headers
- adjust include paths accordingly
2007-12-08 14:02:32 +02:00
Panu Matilainen d4622b5135 Yet more rpmbuild fixups from rpmerr.h removal (partly from rpm5.org)
- additionally use rpmRC return types instead of numbers where appropriate
2007-12-07 10:43:53 +02:00
Panu Matilainen 2a9c146f31 rpm5.org: fixup various places in rpmbuild from rpmerr.h elimination 2007-12-07 09:28:39 +02:00
Panu Matilainen dbdbe8010c Eliminate debug junk from the API
- add some helper macros to accomplish the same, easy to enable / disable
  as needed
2007-12-04 11:25:46 +02:00
Panu Matilainen 2c3ce0c8b0 Split rpmfi internals to separate header 2007-12-03 09:46:51 +02:00
Panu Matilainen 9cbf0349b8 Use regular POSIX functions instead of "RPC" clones
- we only care about local files
2007-12-03 16:33:18 +02:00
Panu Matilainen fb90b8b4eb More rpmlead exorcizing
- remove unnecessary type parameter to writeRPM(), header knows what it is
- remove unnecessary lead argument to readRPM(), it's unused anyway
- drop lead from cpioSourceArchive struct
2007-12-01 21:06:00 +02:00
Panu Matilainen 92698df723 Make rpmlead opaque, add methods to deal with it
- rename methods to rpmLead*() for easy grepping
- populate lead from header where necessary
- add rpmLeadCheck() method for minimal compatibility checking to get
  rid of duplicate code in several places
- conditionalize lead version on dirtokens
2007-12-01 18:31:09 +02:00
Panu Matilainen 6cfe6e2f10 Remove unneeded includes 2007-11-27 12:42:12 +02:00
Panu Matilainen fbf0cb4441 Move legacy%#¤%#¤ to librpm now that it can move.. 2007-11-27 11:34:23 +02:00
Ralf Corsépius 4d49dfcf41 Expand private include file names to be relative to $(top_srcdir) 2007-11-23 11:37:54 +01:00
Panu Matilainen d10acc7c2a Move makeTempFile() from misc.h to rpmfileutil.h
- probably not very useful outside rpm but used all over the tree,
- rename to rpmMkTempFile() for namespacing since we're exporting it now
2007-11-22 16:28:30 +02:00
Ralf Corsépius abeea80a38 Use #include <x.h> syntax to include public headers. 2007-11-23 06:46:19 +01:00
Panu Matilainen 17ef8a3082 Lose rpmerr.h for good 2007-11-19 16:32:15 +02:00
Panu Matilainen 43c5de66fb Replace all RPMERR_* etc uses with corresponding RPMLOG_* levels 2007-11-19 16:25:24 +02:00
Panu Matilainen 827399cda0 Fix free on invalid pointer after displaying "Unable to open temp file"
Patch from Pascal Rigaux
2007-11-13 12:47:22 +02:00
Panu Matilainen 5320dcba03 Remove dead & unused RPMTAG_ARCHIVESIZE addition code
- rpm >= 4.1 uses RPMTAG_PAYLOADSIZE and translates RPMTAG_ARCHIVESIZE to
  it automatically
2007-11-08 12:34:53 +02:00
Panu Matilainen 8f97ae9d26 Document rpmio_internal.h uses outside rpmio/ 2007-11-07 11:57:12 +02:00
Panu Matilainen 1fe38d71cc Use fdGetFILE() instead of rpmio internal fdGetFp() everywhere 2007-10-29 09:42:21 +02:00
Ralf Corsépius 14d434925b Include "rpmbuild.h" instead of <rpmbuild.h>. 2007-10-28 06:49:54 +01:00
Ralf Corsépius 9735f83012 Include "rpmio_internal.h" instead of <rpmio_internal.h>. 2007-10-28 06:43:19 +01:00
Ralf Corsépius bebeb89735 Eliminate [u|]int_[8|16|32]. Use c99 stdint.h types instead. 2007-10-26 13:24:14 +02:00
Panu Matilainen 01d5c13a42 Make rpmerr.h private, include directly where needed. 2007-10-09 15:33:49 +03:00
Panu Matilainen 56366e3890 Replace all uses of RPMMESS_NORMAL with RPMLOG_NOTICE 2007-10-09 14:50:42 +03:00
Panu Matilainen 4ce9fc1a17 Replace all rpmMessage() uses with rpmlog() 2007-10-09 14:14:30 +03:00
Panu Matilainen d709195c3a Replace all rpmError() uses with rpmlog() 2007-10-09 14:06:06 +03:00
Panu Matilainen 2c2538d726 Rename Spec -> rpmSpec for namespacing 2007-09-21 15:23:02 +03:00
Panu Matilainen 47257ec9e8 misc.h is a private header
- include it from build/*.c where needed
- dont install
2007-09-17 15:15:03 +03:00
Ralf Corsépius 32419bbba5 Remove splint tags. 2007-09-11 23:03:27 +02:00
Paul Nasrat cc4d429e93 Fix a typo: the macro is currently called %{buildsubdir}
Patch from OpenSuSE
2007-04-16 13:06:24 +01:00
jbj c1afde7db5 - permit scriptlet includes from builddir for spec files w/o %setup.
CVS patchset: 7889
CVS date: 2005/07/15 15:08:34
2005-07-15 15:08:34 +00:00
niemeyer 73260d956c - Implemented support for internal Lua scripts.
- Implemented %pretrans and %posttrans script slots.
Changed files:
	Makefile.am configure.ac build/pack.c build/parseScript.c
	build/parseSpec.c build/rpmbuild.h build/rpmspec.h
	lib/Makefile.am lib/psm.c lib/rpmlib.h lib/rpmlibprov.c
	lib/rpmts.c lib/rpmts.h lib/transaction.c
Added files:
	lib/rpmlua.c lib/rpmlua.h lua/*

CVS patchset: 7175
CVS date: 2004/03/16 21:58:25
2004-03-16 21:58:25 +00:00
jbj 9c5529608e - don't use error string after gzclose (Dmitry V. Levin).
Spliddles for rpmio, drill h_errno all the way through.

CVS patchset: 6826
CVS date: 2003/05/08 20:39:29
2003-05-08 20:39:29 +00:00
jbj b7129ca898 splint fiddles.
CVS patchset: 5962
CVS date: 2002/12/24 04:04:20
2002-12-24 04:04:20 +00:00
jbj 415b3e6ff2 fix: ia64 segfault on build.
CVS patchset: 5961
CVS date: 2002/12/24 02:41:45
2002-12-24 02:41:45 +00:00
jbj b63b4a5d12 - simplify specfile query linkage loop.
- drill rpmts into parseSpec(), carrying Spec along.

CVS patchset: 5958
CVS date: 2002/12/22 02:11:05
2002-12-22 02:11:05 +00:00
jbj 1f6cdca2d5 - add --enable-posixmutexes when configuring on linux.
- add rpmdb_{deadlock,dump,load,svc,stat,verify} utilities.
- include srpm pkgid in binary headers (#71460).
- add %check scriptlet to run after %install (#64137).

CVS patchset: 5957
CVS date: 2002/12/21 20:37:37
2002-12-21 20:37:37 +00:00
jbj f5a546f580 - merge signature returns into rpmRC.
- python: exceptions on NOKEY/NOTTRUSTED.

CVS patchset: 5667
CVS date: 2002/08/23 21:01:59
2002-08-23 21:01:59 +00:00
jbj 6af194ed8e - add methods to make signature handling opaque wrto rpmts.
CVS patchset: 5566
CVS date: 2002/07/21 22:06:19
2002-07-21 22:06:19 +00:00
jbj 261b4a2ecb - install rpmal.h and rpmhash.h, implicit rpmps.hinclude, for now.
- revert headerFree/headerLink/headerUnlink debugging.

CVS patchset: 5550
CVS date: 2002/07/13 19:08:51
2002-07-13 19:08:51 +00:00
jbj 241fad1287 Propagate splint-3.0.1.7 close(2) internalState annotation throughout.
CVS patchset: 5542
CVS date: 2002/07/08 14:21:26
2002-07-08 14:21:26 +00:00
jbj e5fb770e7d Add boundsread annotations throughout, enable +bounds checking.
Start narrowing the scope of bounds annotations by adding more annotations.

CVS patchset: 5537
CVS date: 2002/07/02 23:54:35
2002-07-02 23:54:35 +00:00
jbj 13d177beb2 Add boundswrite annotations everywhere.
CVS patchset: 5522
CVS date: 2002/06/23 19:47:08
2002-06-23 19:47:08 +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 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 81c2a9d267 Add toy db->associate, db->join, dbcursor->c_pget wrappers.
CVS patchset: 5421
CVS date: 2002/05/04 20:13:14
2002-05-04 20:13:14 +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 ffdfd1056e - speedup large queries by ~50%.
- revert to presentation ordering Yet Again (#62158).
- non-glibc: on upgrade, mergesort is much faster than quicksort.

CVS patchset: 5377
CVS date: 2002/04/07 19:52:42
2002-04-07 19:52:42 +00:00
jbj c6449e9c44 - add header DSA signature.
CVS patchset: 5345
CVS date: 2002/03/06 23:17:31
2002-03-06 23:17:31 +00:00
jbj 2e2d1cad39 - add payload uncompressed size to signature to avoid rewriting header.
- drill header sha1 into signature parallel to header+payload md5.
- mandatory "most effective" signature check on query/verify/install.
- don't bother adding empty filemd's to index.
- add Pubkey index, using signer id as binary key.
- display pubkeys in hex when debugging db access.
- retrieve pubkey(s) from rpmdb, not from detached signature file.
- reapply Berkeley DB patch #4491.

CVS patchset: 5341
CVS date: 2002/03/03 23:09:49
2002-03-03 23:09:49 +00:00
jbj 5a0508d51f - 3 madvise calls and a 16Mb mmapped buffer == ~5% install speedup. Wow.
- use db-4.0.14 final internally.

CVS patchset: 5215
CVS date: 2001/12/06 18:34:49
2001-12-06 18:34:49 +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 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 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 d589b29c7f Permit multiple, simultaneous, digests on a single FD_t.
CVS patchset: 5125
CVS date: 2001/10/19 22:47:40
2001-10-19 22:47:40 +00:00
jbj ca1d809cb1 Rewire digests, step 2.
CVS patchset: 5122
CVS date: 2001/10/19 01:35:57
2001-10-19 01:35:57 +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 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 64a1d1afdc - fix: error message on failed package installs resurrected.
- python: memory leaks in headerLoad/headerunload bindings.
- python: retrofit sha1 digest using RPMTAG_SHA1RHN.
- python: change rhnUnload bindings.

CVS patchset: 5032
CVS date: 2001/08/27 18:39:17
2001-08-27 18:39:17 +00:00
jbj 1a5a027bcc - add support for mips (#49283).
- add __as, _build_arch, and __cxx macros (#36662, #36663, #49280).
- detailed build package error messages.

CVS patchset: 4996
CVS date: 2001/07/31 18:13:22
2001-07-31 18:13:22 +00:00
jbj 7723beeaf4 - add sha1 test vectors, verify on ix86/alpha/sparc.
- add (but disable for now) rpm-perl subpackage from Perl-RPM.
- python: parameterize with PYVER to handle 1.5 and/or 2.1 builds.
- add build dependency on zlib-devel (#49575).

CVS patchset: 4969
CVS date: 2001/07/21 19:44:22
2001-07-21 19:44:22 +00:00
jbj e15b4593eb - package version now configureable, default v3.
- rename rpm libraries to have version with libtool -release.
- fix: -i CLI context broken Yet Again.

CVS patchset: 4930
CVS date: 2001/07/10 17:59:11
2001-07-10 17:59:11 +00:00
jbj 9df3fc957f - expose rpmShowProgress() and rpmVerifyDigest() in rpmcli.h.
- portability: avoid st_mtime, gendiff uses basename, etc (#47497).
- glibc-2.0.x has not __va_copy().
- popthelp.c: static copy of stpcpy/stpncpy for the deprived (#47500).

CVS patchset: 4921
CVS date: 2001/07/06 20:37:42
2001-07-06 20:37:42 +00:00
jbj 5f2d9ab25b - fix: partial sets of hardlinked files forbidden in payload.
- fix: mark rpmdb files with %config to prevent erasure on downgrade.

CVS patchset: 4891
CVS date: 2001/06/20 06:29:20
2001-06-20 06:29:20 +00:00
jbj 7233e3ad73 - remove rpmrc Provides: Yet Again, use virtual packages.
- dump cursor debugging wrappers.
- rpm --verify can disable rpmFileAttr checks.

CVS patchset: 4856
CVS date: 2001/06/12 17:06:47
2001-06-12 17:06:47 +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 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 c3835f5ca0 - fix: specfile queries with BuildArch: (#27589).
CVS patchset: 4746
CVS date: 2001/05/06 19:17:14
2001-05-06 19:17:14 +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 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 63db127701 - fix: Fwrite's are optimized out by aggressive compiler(irix) (#34711).
CVS patchset: 4684
CVS date: 2001/04/17 18:30:23
2001-04-17 18:30:23 +00:00
jbj fc920e3ac3 Update to doxygen-1.2.6 configuration.
Add manual files to Doxfile.in.
lclint annotations.

CVS patchset: 4624
CVS date: 2001/03/14 23:09:09
2001-03-14 23:09:09 +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 bc348ac49c Rename RPMSIG_* signature types to RPMSIGTYPE_* to avoid confusion.
Remove dead code.

CVS patchset: 4549
CVS date: 2001/02/12 16:33:08
2001-02-12 16:33:08 +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 2f9fa168c8 Remove DEAD code.
CVS patchset: 4531
CVS date: 2001/02/08 23:05:05
2001-02-08 23:05:05 +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 53279c4ac3 fix: db1 dbopen() check found in libc not auto-configuring forrectly.
Add fsm->goal to start unifying install/erase/build state machines.
Use rpmio syscall rpc where available.
FSM_BUILD has explicit init/fini stages.
FSM_LSTAT done once in init.
FSM_MKDIRS done in init.

CVS patchset: 4517
CVS date: 2001/02/03 20:07:39
2001-02-03 20:07:39 +00:00
jbj e3d5247174 Use fsm for building.
CVS patchset: 4514
CVS date: 2001/02/02 15:04:44
2001-02-02 15:04:44 +00:00
jbj dd94329f0c - remove support for v1 src rpm's.
- reposition callbacks with ts/fi in cpio payload layer.

CVS patchset: 4498
CVS date: 2001/01/25 20:26:35
2001-01-25 20:26:35 +00:00
jbj de35e20bf1 Rip XFI_t from install.
CVS patchset: 4495
CVS date: 2001/01/24 15:58:35
2001-01-24 15:58:35 +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