Commit Graph

72 Commits

Author SHA1 Message Date
jbj da9b21485c Sync with rpm-4_0 branch.
CVS patchset: 5048
CVS date: 2001/09/15 13:49:11
2001-09-15 13:49:11 +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 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 075607676d - fix: parameterized macro segfault (Jakub Bogusz <qboosh@pld.org.pl>).
fix: off by 1 with rpmGlob when presented with multiple non-globbed items.
fix: rpmReadPackageManifest actually works now.

CVS patchset: 4653
CVS date: 2001/03/23 20:27:48
2001-03-23 20:27:48 +00:00
jbj 1f44236f64 - fix: insure that %lang scopes over hard links correctly.
- fix: rpmCleanPath was nibbling at .. in macrofiles incorrectly.

CVS patchset: 4464
CVS date: 2001/01/19 01:38:55
2001-01-19 01:38:55 +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 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 62c5a91930 - add support for unzip rodrigob@conectiva.com.br>
CVS patchset: 4243
CVS date: 2000/11/02 17:57:25
2000-11-02 17:57:25 +00:00
jbj ce1e8d26ec - add support for SHA1 as well as MD5 message digests.
lclint annotations.

CVS patchset: 4234
CVS date: 2000/10/31 16:18:34
2000-10-31 16:18:34 +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 68ff87361d doxygen annotations.
- fix: more (possible) xstrdup side effects.

CVS patchset: 4186
CVS date: 2000/09/29 19:50:29
2000-09-29 19:50:29 +00:00
jbj 4920a3b122 - don't trim leading ./ in rpmCleanPath() (#14961).
CVS patchset: 4169
CVS date: 2000/09/16 14:05:26
2000-09-16 14:05:26 +00:00
jbj f2efc7263e - unify rpmError and rpmMessge interfaces through rpmlog.
- collect and display rpm build error messages at end of build.

CVS patchset: 4149
CVS date: 2000/09/01 21:15:40
2000-09-01 21:15:40 +00:00
jbj 918188a90c Doxygen annotations.
CVS patchset: 4129
CVS date: 2000/08/27 18:34:02
2000-08-27 18:34:02 +00:00
jbj fab0493dbe - fix: don't expand macros in false branch of %if (kasal@suse.cz).
- fix: macro expansion problem and clean up (#11484) (kasal@suse.cz).

CVS patchset: 3885
CVS date: 2000/06/21 23:28:50
2000-06-21 23:28:50 +00:00
jbj 4afe94756b - make librpmio standalone.
CVS patchset: 3824
CVS date: 2000/06/09 21:24:37
2000-06-09 21:24:37 +00:00
jbj c38a7cdcfb Move low level support routines to librpmio.
CVS patchset: 3822
CVS date: 2000/06/09 18:57:23
2000-06-09 18:57:23 +00:00
jbj 7b1e9c5a02 Avoid segfault on malformed %{!?FOO:} expansion (#9581).
CVS patchset: 3571
CVS date: 2000/02/21 10:32:01
2000-02-21 10:32:01 +00:00
jbj 0d185e8fb5 fix: resurrect relative path's in fprint lookup queries.
CVS patchset: 3518
CVS date: 2000/01/12 21:48:58
2000-01-12 21:48:58 +00:00
jbj 8f481702d8 reload macros from cmd line when re-reading config files.
CVS patchset: 3479
CVS date: 1999/12/12 21:14:05
1999-12-12 21:14:05 +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 c8406c80d2 lib/macro.c: Create rpmCleanPath().
build/misc.c: Delete cleanFileName().

CVS patchset: 3435
CVS date: 1999/11/26 16:19:30
1999-11-26 16:19:30 +00:00
jbj 4221ce1aa1 lib/macro.c: Canonicalize paths in rpmGetPath().
build.c: ditto.
build/build.c: ditto.
build/files.c: ditto.
build/parsePreamble.c: ditto.
build/parseSpec.c: ditto.
build/myftw.c: Use Opendir/Readdir/Closedir wrappers.
lib/cpio.c: Use Readlink/Stat/Lstat wrappers while building archive.
lib/rpmio.c: functional ftpLstat, ftpStat and ftpReadlink.

CVS patchset: 3432
CVS date: 1999/11/24 00:03:54
1999-11-24 00:03:54 +00:00
jbj c6d768583e macros.in: Add buildsubdir and scriptlet template macros.
build/build.c: Rewrite to use scriptlet templates.
build/files.c: Rename variables to prepare for (possibly) URL's in %files.
build/myftw.c: Use Lstat.
build/parsePreamble.c: Permit URL's in BuildRoot tag if not from spec file.
build/parseSpec.c: ditto
build/parsePrep.c: Add buildsubdir macro.
lib/macro.c: Add url2path (nickname u2p) and verbose macro primitives.
lib/url.c: urlPath returns "" if url is NULL (rpmGenPath memory corruption).

CVS patchset: 3430
CVS date: 1999/11/19 18:19:41
1999-11-19 18:19:41 +00:00
jbj 4e62a322a2 lib/rpmio.c: Implement per-fd layers as a stack, add fdPush/fdPop.
lib/rpmio.c: Add fd{Get,Set}{Io,Fp,Fdno} abstraction wrappers.
lib/rpmio.c: Start rationalizing debug output by using fdbg to display the
	fd layer stack.
rpm.c: Add --nolibio to disable libio if desired.
rpm2cpio.c: Use Fdopen(..., gzdio) and ufdCopy().
build/build.c: Use Fdopen(..., fpio) rather than fdio.
build/files.c: Use Fdopen(..., fpio) rather than ufdio.
build/parseSpec.c: ditto.
lib/macro.c: ditto.
lib/rpmrc.c: ditto
lib/macro.c: Use Fopen(..., ufdio) in isCompressed() rather that fdOpen().
lib/misc.c: ditto.
lib/misc.c: Avoid fstat by using Stat.
build/pack.c: Add persist fdLink() and use fdFree() in package{Sources,Binaries}
build/pack.c: Try to remove the fdDup before cpioBuildArchive() call.
build/pack.c: Use rpmGenPath with %{_builddir}.
build/parsePreamble.c: Use fdSize rather than Stat to get icon file size.
lib/rpmrc.c: ditto
lib/ftp.c: start capturing ufdio layer syserrno/errcookie.

CVS patchset: 3424
CVS date: 1999/11/14 19:15:18
1999-11-14 19:15:18 +00:00
jbj 8ce88756fd Use Fstrerror on ufdio throughut.
rpm.c: add --rmspec to usage output.
build/files.c: use ufdio to permit '%files -f <url>' (untested).
build/pack.c: use ufdio in readRPM(), writeRPM(), and addFileToTag().
build/parsePreamble.c: use ufdio in readIcon().
lib/ftp.c: httpOpen() now takes FD_t ctrl arg to uncouple from u->ctrl.
lib/install.c: usr rpmGenPath() to identify first found url in file path concat.
lib/install.c: permit url's in files[i].relativePath.
lib/macro.c: use ufdio, diddle macros for tmacro standalone build.
lib/macro.c: Create rpmGenPath().
lib/macro.c: diddle macro files path to permit url's.
lib/rpmchecksig.c: use Fopen on fdio.
lib/rpmio.c: replace copyData() with ufdCopy().
lib/rpmio.c: replace httpGetFile() with ufdGetFile().
lib/rpmio.c: add ufdWrite().
lib/rpmio.c: permit 2 simultaneous persistent malloc/open HTTP/1.1 connections.
lib/rpmio.c: Add Lstat(), Stat(), and Access().
lib/rpmio.c: assume paths in syscall stubs are loopback (WRONG).
lib/url.c: add urlPath().

CVS patchset: 3422
CVS date: 1999/11/12 17:20:49
1999-11-12 17:20:49 +00:00
jbj e0b1d0be36 Swap 2nd and 3rd arg to Fread/Fwrite to preserve read/write type return.
Use Fstrerror to retrieve fd->syserrno.
Make ftpFileDoneNeeded per-fd rather than per-url.
Make data fd unique rather than per-url.
Use appropriate protocol commands for ufdio writing.

CVS patchset: 3421
CVS date: 1999/11/10 22:09:49
1999-11-10 22:09:49 +00:00
jbj 7fc3a97733 Add ref/deref/new/fileno/open vectors to FDIO_t.
Hide fdOpen/ufdOpen, use {fdio,ufdio}->open throughout.
url.c: Create ref counted abstract urlinfo type with debugging.
url.c: Rename functions to urlNew/urlFree/urlFreeCache for consistency.
rpmio.c: Create ref counted abstract FD_t type with debugging.
rpmio.c: Create private struct _FD_s type.
cpio.c: Create fd[GS]etCpioPos to preserve FD_t abstraction.

CVS patchset: 3414
CVS date: 1999/11/02 14:33:14
1999-11-02 14:33:14 +00:00
jbj 3d087dcf52 Rename faFoo() routines, use FD_t I/O with fadio cookie throughout.
Try to be URL sensitive on filename arguments throughout.
falloc.c: Eliminate faFile, use FD_t.
falloc.c: preserve abstract FD_t by creating fadGet*()/fadSet*().
macro.c: rpmGetPath() expansions were clobbering URL's.
rpmio.c: create Fcntl(), Pread(), Pwrite() from previous faFoo().
rpmio.c: attempt per FD_t debugging.
rpm.c: permit --dbpath with --rebuild.

CVS patchset: 3408
CVS date: 1999/10/30 21:26:45
1999-10-30 21:26:45 +00:00
jbj 2b84d36c2e Make fdFileno() static, use Fileno()/Ferror() analogues throughout.
Make ufdClose() static, use Fclose() with ufdio cookie throughout.
rpm.c: Clean urlinfoCache and rpmBuildArgs leaks.
url.c: urlIsURL() should be here, not in rpmio.c.
url.c: Preserve FD_t abstraction by creating ufdGetUrlinfo().
url.c: Create freeUrlinfoCache().
rpmio.c: Create ufdio cookie.

CVS patchset: 3407
CVS date: 1999/10/30 16:43:29
1999-10-30 16:43:29 +00:00
jbj 7b4cf4bf19 fix: resurrect multiple target platform builds.
CVS patchset: 3404
CVS date: 1999/10/29 23:03:12
1999-10-29 23:03:12 +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 0d0b405c20 use compressed filenames on install side.
start unifying FD types, CFD_t now gone.

CVS patchset: 3402
CVS date: 1999/10/27 23:18:10
1999-10-27 23:18:10 +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 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 dde031db23 tmacro was broke.
CVS patchset: 3231
CVS date: 1999/08/16 20:14:34
1999-08-16 20:14:34 +00:00
jbj 06689265dd fix: last char in rpmrc w/o terminating newline lost (#4361).
prepare for handling \r in macro exapnsions.

CVS patchset: 3230
CVS date: 1999/08/16 18:57:37
1999-08-16 18:57:37 +00:00
jbj 96114b6bf2 fix: macro table cannot contain NULL pointers (#4263).
CVS patchset: 3229
CVS date: 1999/08/16 16:18:25
1999-08-16 16:18:25 +00:00
jbj f9ed8f7bdc macro fixes (Benedict Lofstedt, #4220):
expand %# just like %{#} (and with same value as shell analogues).
  macro defaults for *, 0, and # if no args specified.
  getopt on non-linux requires optind to be saved/restored.

CVS patchset: 3209
CVS date: 1999/07/29 12:36:03
1999-07-29 12:36:03 +00:00
jbj 587dab926c fix: getopt on non-linux requires optind to be saved/restored
rather than just set to 0 (Benedict Lofstedt, #4220).

CVS patchset: 3208
CVS date: 1999/07/29 11:20:20
1999-07-29 11:20:20 +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 25643f9764 Add includes for more robust standalone behavior.
CVS patchset: 3121
CVS date: 1999/07/02 21:15:25
1999-07-02 21:15:25 +00:00
jbj 56496ce088 Quick 'n dirty macro evaluation.
CVS patchset: 3120
CVS date: 1999/07/02 20:56:04
1999-07-02 20:56:04 +00:00
jbj 7f5a4a4aed fix: bsearch needs macro table sorted after undefine.
CVS patchset: 3109
CVS date: 1999/06/24 22:23:46
1999-06-24 22:23:46 +00:00
jbj a0d3acc8a3 Add -C dir and -M options to %GNUconfigure.
CVS patchset: 3024
CVS date: 1999/04/20 22:45:52
1999-04-20 22:45:52 +00:00