RPM Package Manager, CVS Repository
http://rpm5.org/cvs/
____________________________________________________________________________
Server: rpm5.org Name: Jeff Johnson
Root: /v/rpm/cvs Email: [EMAIL PROTECTED]
Module: rpm Date: 26-Nov-2007 22:05:57
Branch: HEAD Handle: 2007112621055601
Modified files:
rpm Doxyfile.in
rpm/lib formats.c package.c rpmchecksig.c rpmgi.c
rpm/rpmdb Makefile.am hdrfmt.c header.c pkgio.c rpmdb.c
rpmtag.h rpmwf.c signature.c
Log:
- splint fiddles. cool, splint _FINALLY_ can see that rpmTag !=
rpmSigTag.
Summary:
Revision Changes Path
2.82 +0 -2 rpm/Doxyfile.in
2.124 +2 -0 rpm/lib/formats.c
2.194 +10 -10 rpm/lib/package.c
1.202 +34 -32 rpm/lib/rpmchecksig.c
2.46 +2 -0 rpm/lib/rpmgi.c
1.93 +2 -0 rpm/rpmdb/Makefile.am
1.47 +23 -12 rpm/rpmdb/hdrfmt.c
1.139 +7 -6 rpm/rpmdb/header.c
1.62 +6 -1 rpm/rpmdb/pkgio.c
1.223 +18 -3 rpm/rpmdb/rpmdb.c
1.18 +4 -7 rpm/rpmdb/rpmtag.h
1.22 +12 -0 rpm/rpmdb/rpmwf.c
1.35 +2 -0 rpm/rpmdb/signature.c
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: rpm/Doxyfile.in
============================================================================
$ cvs diff -u -r2.81 -r2.82 Doxyfile.in
--- rpm/Doxyfile.in 19 Nov 2007 18:57:54 -0000 2.81
+++ rpm/Doxyfile.in 26 Nov 2007 21:05:56 -0000 2.82
@@ -607,10 +607,8 @@
@top_srcdir@/rpmdb/fprint.c \
@top_srcdir@/rpmdb/fprint.h \
@top_srcdir@/rpmdb/hdrfmt.c \
- @top_srcdir@/rpmdb/hdrinline.h \
@top_srcdir@/rpmdb/hdrNVR.c \
@top_srcdir@/rpmdb/header.c \
- @top_srcdir@/rpmdb/header.h \
@top_srcdir@/rpmdb/header_internal.c \
@top_srcdir@/rpmdb/header_internal.h \
@top_srcdir@/rpmdb/legacy.c \
@@ .
patch -p0 <<'@@ .'
Index: rpm/lib/formats.c
============================================================================
$ cvs diff -u -r2.123 -r2.124 formats.c
--- rpm/lib/formats.c 24 Nov 2007 23:55:01 -0000 2.123
+++ rpm/lib/formats.c 26 Nov 2007 21:05:56 -0000 2.124
@@ -23,6 +23,8 @@
#include "debug.h"
+/[EMAIL PROTECTED] headerSprintfExtension @*/
+
/**
* Retrieve mounted file system paths.
* @param h header
@@ .
patch -p0 <<'@@ .'
Index: rpm/lib/package.c
============================================================================
$ cvs diff -u -r2.193 -r2.194 package.c
--- rpm/lib/package.c 24 Nov 2007 22:07:28 -0000 2.193
+++ rpm/lib/package.c 26 Nov 2007 21:05:56 -0000 2.194
@@ -173,19 +173,19 @@
she->tag = 0;
opx = 0;
vsflags = pgpGetVSFlags(dig);
- if (_chk(RPMVSF_NODSAHEADER) && headerIsEntry(sigh, RPMSIGTAG_DSA)) {
- she->tag = RPMSIGTAG_DSA;
+ if (_chk(RPMVSF_NODSAHEADER) && headerIsEntry(sigh,
(rpmTag)RPMSIGTAG_DSA)) {
+ she->tag = (rpmTag)RPMSIGTAG_DSA;
} else
- if (_chk(RPMVSF_NORSAHEADER) && headerIsEntry(sigh, RPMSIGTAG_RSA)) {
- she->tag = RPMSIGTAG_RSA;
+ if (_chk(RPMVSF_NORSAHEADER) && headerIsEntry(sigh,
(rpmTag)RPMSIGTAG_RSA)) {
+ she->tag = (rpmTag)RPMSIGTAG_RSA;
} else
- if (_chk(RPMVSF_NOSHA1HEADER) && headerIsEntry(sigh, RPMSIGTAG_SHA1)) {
- she->tag = RPMSIGTAG_SHA1;
+ if (_chk(RPMVSF_NOSHA1HEADER) && headerIsEntry(sigh,
(rpmTag)RPMSIGTAG_SHA1)) {
+ she->tag = (rpmTag)RPMSIGTAG_SHA1;
} else
if (_chk(RPMVSF_NOMD5|RPMVSF_NEEDPAYLOAD) &&
- headerIsEntry(sigh, RPMSIGTAG_MD5))
+ headerIsEntry(sigh, (rpmTag)RPMSIGTAG_MD5))
{
- she->tag = RPMSIGTAG_MD5;
+ she->tag = (rpmTag)RPMSIGTAG_MD5;
fdInitDigest(fd, PGPHASHALGO_MD5, 0);
opx = RPMTS_OP_DIGEST;
}
@@ -237,7 +237,7 @@
xx = pgpSetSig(dig, she->tag, she->t, she->p.ptr, she->c);
/[EMAIL PROTECTED]@*/
- switch (she->tag) {
+ switch ((rpmSigTag)she->tag) {
default: /* XXX keep gcc quiet. */
assert(0);
/[EMAIL PROTECTED]@*/ break;
@@ -314,7 +314,7 @@
(void) rpmDigestUpdate(dig->hdrsha1ctx, uh, uhc);
dig->nbytes += uhc;
(void) rpmswExit(op, dig->nbytes);
- if (she->tag == RPMSIGTAG_SHA1)
+ if ((rpmSigTag)she->tag == RPMSIGTAG_SHA1)
op->count--; /* XXX one too many */
uh = _free(uh);
} break;
@@ .
patch -p0 <<'@@ .'
Index: rpm/lib/rpmchecksig.c
============================================================================
$ cvs diff -u -r1.201 -r1.202 rpmchecksig.c
--- rpm/lib/rpmchecksig.c 26 Nov 2007 02:03:09 -0000 1.201
+++ rpm/lib/rpmchecksig.c 26 Nov 2007 21:05:56 -0000 1.202
@@ -184,7 +184,7 @@
FD_t fd = NULL;
FD_t ofd = NULL;
struct rpmlead *lead = NULL;
- uint32_t sigtag;
+ rpmSigTag sigtag;
const char *sigtarget = NULL;
char tmprpm[1024+1];
Header sigh = NULL;
@@ -296,36 +296,36 @@
if (sigh != NULL) {
/* Eliminate broken digest values. */
- he->tag = RPMSIGTAG_LEMD5_1;
+ he->tag = (rpmTag)RPMSIGTAG_LEMD5_1;
xx = headerDel(sigh, he, 0);
- he->tag = RPMSIGTAG_LEMD5_2;
+ he->tag = (rpmTag)RPMSIGTAG_LEMD5_2;
xx = headerDel(sigh, he, 0);
- he->tag = RPMSIGTAG_BADSHA1_1;
+ he->tag = (rpmTag)RPMSIGTAG_BADSHA1_1;
xx = headerDel(sigh, he, 0);
- he->tag = RPMSIGTAG_BADSHA1_2;
+ he->tag = (rpmTag)RPMSIGTAG_BADSHA1_2;
xx = headerDel(sigh, he, 0);
/* Toss and recalculate header+payload size and digests. */
- he->tag = RPMSIGTAG_SIZE;
+ he->tag = (rpmTag)RPMSIGTAG_SIZE;
xx = headerDel(sigh, he, 0);
xx = rpmAddSignature(sigh, sigtarget, RPMSIGTAG_SIZE, qva->passPhrase);
- he->tag = RPMSIGTAG_MD5;
+ he->tag = (rpmTag)RPMSIGTAG_MD5;
xx = headerDel(sigh, he, 0);
xx = rpmAddSignature(sigh, sigtarget, RPMSIGTAG_MD5, qva->passPhrase);
- he->tag = RPMSIGTAG_SHA1;
+ he->tag = (rpmTag)RPMSIGTAG_SHA1;
xx = headerDel(sigh, he, 0);
xx = rpmAddSignature(sigh, sigtarget, RPMSIGTAG_SHA1, qva->passPhrase);
if (deleting) { /* Nuke all the signature tags. */
- he->tag = RPMSIGTAG_GPG;
+ he->tag = (rpmTag)RPMSIGTAG_GPG;
xx = headerDel(sigh, he, 0);
- he->tag = RPMSIGTAG_PGP5;
+ he->tag = (rpmTag)RPMSIGTAG_PGP5;
xx = headerDel(sigh, he, 0);
- he->tag = RPMSIGTAG_PGP;
+ he->tag = (rpmTag)RPMSIGTAG_PGP;
xx = headerDel(sigh, he, 0);
- he->tag = RPMSIGTAG_DSA;
+ he->tag = (rpmTag)RPMSIGTAG_DSA;
xx = headerDel(sigh, he, 0);
- he->tag = RPMSIGTAG_RSA;
+ he->tag = (rpmTag)RPMSIGTAG_RSA;
xx = headerDel(sigh, he, 0);
} else { /* If gpg/pgp is configured, replace the
signature. */
int addsig = 0;
@@ -340,26 +340,28 @@
xx = getSignid(sigh, sigtag, oldsignid);
switch (sigtag) {
+ default:
+ /[EMAIL PROTECTED]@*/ break;
case RPMSIGTAG_DSA:
- he->tag = RPMSIGTAG_GPG;
+ he->tag = (rpmTag)RPMSIGTAG_GPG;
xx = headerDel(sigh, he, 0);
/[EMAIL PROTECTED]@*/ break;
case RPMSIGTAG_RSA:
- he->tag = RPMSIGTAG_PGP;
+ he->tag = (rpmTag)RPMSIGTAG_PGP;
xx = headerDel(sigh, he, 0);
/[EMAIL PROTECTED]@*/ break;
case RPMSIGTAG_GPG:
- he->tag = RPMSIGTAG_DSA;
+ he->tag = (rpmTag)RPMSIGTAG_DSA;
xx = headerDel(sigh, he, 0);
/[EMAIL PROTECTED]@*/
case RPMSIGTAG_PGP5:
case RPMSIGTAG_PGP:
- he->tag = RPMSIGTAG_RSA;
+ he->tag = (rpmTag)RPMSIGTAG_RSA;
xx = headerDel(sigh, he, 0);
/[EMAIL PROTECTED]@*/ break;
}
- he->tag = sigtag;
+ he->tag = (rpmTag)sigtag;
xx = headerDel(sigh, he, 0);
xx = rpmAddSignature(sigh, sigtarget, sigtag, qva->passPhrase);
@@ -943,16 +945,16 @@
/* Grab a hint of what needs doing to avoid duplication. */
she->tag = 0;
if (she->tag == 0 && !nosignatures) {
- if (headerIsEntry(sigh, RPMSIGTAG_DSA))
- she->tag = RPMSIGTAG_DSA;
- else if (headerIsEntry(sigh, RPMSIGTAG_RSA))
- she->tag = RPMSIGTAG_RSA;
+ if (headerIsEntry(sigh, (rpmTag) RPMSIGTAG_DSA))
+ she->tag = (rpmTag) RPMSIGTAG_DSA;
+ else if (headerIsEntry(sigh, (rpmTag) RPMSIGTAG_RSA))
+ she->tag = (rpmTag) RPMSIGTAG_RSA;
}
if (she->tag == 0 && !nodigests) {
- if (headerIsEntry(sigh, RPMSIGTAG_MD5))
- she->tag = RPMSIGTAG_MD5;
- else if (headerIsEntry(sigh, RPMSIGTAG_SHA1))
- she->tag = RPMSIGTAG_SHA1; /* XXX never happens */
+ if (headerIsEntry(sigh, (rpmTag) RPMSIGTAG_MD5))
+ she->tag = (rpmTag) RPMSIGTAG_MD5;
+ else if (headerIsEntry(sigh, (rpmTag) RPMSIGTAG_SHA1))
+ she->tag = (rpmTag) RPMSIGTAG_SHA1; /* XXX never happens */
}
dig = rpmtsDig(ts);
@@ -960,14 +962,14 @@
sigp = pgpGetSignature(dig);
/* XXX RSA needs the hash_algo, so decode early. */
- if (she->tag == RPMSIGTAG_RSA) {
+ if ((rpmSigTag) she->tag == RPMSIGTAG_RSA) {
he->tag = she->tag;
xx = headerGet(sigh, he, 0);
xx = pgpPrtPkts(he->p.ptr, he->c, dig, 0);
he->p.ptr = _free(he->p.ptr);
}
- if (headerIsEntry(sigh, RPMSIGTAG_MD5))
+ if (headerIsEntry(sigh, (rpmTag)RPMSIGTAG_MD5))
fdInitDigest(fd, PGPHASHALGO_MD5, 0);
/* Read the file, generating digest(s) on the fly. */
@@ -1000,7 +1002,7 @@
xx = pgpSetSig(dig, she->tag, she->t, she->p.ptr, she->c);
/[EMAIL PROTECTED]@*/
- switch (she->tag) {
+ switch ((rpmSigTag)she->tag) {
case RPMSIGTAG_RSA:
case RPMSIGTAG_DSA:
if (nosignatures)
@@ -1020,7 +1022,7 @@
if (nodigests)
continue;
/* XXX Don't bother with header sha1 if header dsa. */
- if (!nosignatures && she->tag == RPMSIGTAG_DSA)
+ if (!nosignatures && (rpmSigTag)she->tag == RPMSIGTAG_DSA)
continue;
/[EMAIL PROTECTED]@*/ break;
case RPMSIGTAG_MD5:
@@ -1040,7 +1042,7 @@
b = stpcpy(b, result);
res2 = 1;
} else {
- switch (she->tag) {
+ switch ((rpmSigTag)she->tag) {
case RPMSIGTAG_SIZE:
b = stpcpy(b, "SIZE ");
res2 = 1;
@@ -1072,7 +1074,7 @@
b = stpcpy(b, " ");
b = stpcpy(b, result);
} else {
- switch (she->tag) {
+ switch ((rpmSigTag)she->tag) {
case RPMSIGTAG_SIZE:
b = stpcpy(b, "size ");
/[EMAIL PROTECTED]@*/ break;
@@ .
patch -p0 <<'@@ .'
Index: rpm/lib/rpmgi.c
============================================================================
$ cvs diff -u -r2.45 -r2.46 rpmgi.c
--- rpm/lib/rpmgi.c 26 Nov 2007 05:16:50 -0000 2.45
+++ rpm/lib/rpmgi.c 26 Nov 2007 21:05:56 -0000 2.46
@@ -673,7 +673,9 @@
Header h = NULL;
const char item[] = "Header";
const char * msg = NULL;
+/[EMAIL PROTECTED]@*/
rpmrc = rpmpkgRead(item, gi->fd, &h, &msg);
+/[EMAIL PROTECTED]@*/
if (rpmrc != RPMRC_OK) {
rpmlog(RPMLOG_ERR, "%s: %s: %s\n", "headerRead", item, msg);
h = NULL;
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmdb/Makefile.am
============================================================================
$ cvs diff -u -r1.92 -r1.93 Makefile.am
--- rpm/rpmdb/Makefile.am 26 Nov 2007 05:16:52 -0000 1.92
+++ rpm/rpmdb/Makefile.am 26 Nov 2007 21:05:57 -0000 1.93
@@ -84,6 +84,8 @@
@echo '#include <rpmtag.h>' >> $@
@echo '#include "debug.h"' >> $@
@echo '' >> $@
+ @echo '/[EMAIL PROTECTED] headerTagTableEntry @*/' >> $@
+ @echo '' >> $@
@echo '/[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/' >> $@
@echo 'static const struct headerTagTableEntry_s _rpmTagTable[] = {' >>
$@
${AWK} '/[ \t](RPMTAG_[A-Z0-9]*)[ \t]+([0-9]*)/ && !/internal/ {tt =
"NULL"; ta = "ANY"; if ($$5 == "c") {tt = "UINT8"; ta = "SCALAR"} if ($$5 ==
"c[]") {tt = "UINT8"; ta = "ARRAY"} if ($$5 == "h") {tt = "UINT16"; ta =
"SCALAR"} if ($$5 == "h[]") {tt = "UINT16"; ta = "ARRAY"} if ($$5 == "i") {tt =
"UINT32"; ta = "SCALAR"} if ($$5 == "i[]") {tt = "UINT32"; ta = "ARRAY"} if
($$5 == "l") {tt = "UINT64"; ta = "SCALAR"} if ($$5 == "l[]") {tt = "UINT64";
ta = "ARRAY"} if ($$5 == "s") {tt = "STRING"; ta = "SCALAR"} if ($$5 == "s[]")
{tt = "STRING_ARRAY"; ta = "ARRAY"} if ($$5 == "s{}") {tt = "I18NSTRING"; ta =
"SCALAR"} if ($$5 == "x") {tt = "BIN"; ta = "SCALAR"} if ($$2 == "=") {
printf("\t{ \"%s\", %s RPM_%s_TYPE + RPM_%s_RETURN_TYPE },\n", $$1, $$3,
tt, ta) } else { printf("\t{ \"%s\", %s, RPM_%s_TYPE + RPM_%s_RETURN_TYPE
},\n", $$2, $$3, tt, ta) } }' < ${top_srcdir}/rpmdb/rpmtag.h | sort >> $@
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmdb/hdrfmt.c
============================================================================
$ cvs diff -u -r1.46 -r1.47 hdrfmt.c
--- rpm/rpmdb/hdrfmt.c 26 Nov 2007 06:52:52 -0000 1.46
+++ rpm/rpmdb/hdrfmt.c 26 Nov 2007 21:05:57 -0000 1.47
@@ -23,8 +23,7 @@
/[EMAIL PROTECTED] pgpDig @*/
/[EMAIL PROTECTED] pgpDigParams @*/
/[EMAIL PROTECTED] headerSprintfExtension @*/
-/[EMAIL PROTECTED] sprintfTag @*/
-/[EMAIL PROTECTED] sprintfToken @*/
+/[EMAIL PROTECTED] headerTagTableEntry @*/
/**
* Convert tag data representation.
@@ -1065,6 +1064,7 @@
he->freeData = 0;
+/[EMAIL PROTECTED]@*/
_he->tag = RPMTAG_TRIGGERNAME;
xx = headerGet(h, _he, 0);
names.argv = _he->p.argv;
@@ -1094,6 +1094,7 @@
s.argv = _he->p.argv;
numScripts = _he->c;
if (!xx) goto exit;
+/[EMAIL PROTECTED]@*/
_he->tag = he->tag;
_he->t = RPM_UINT32_TYPE;
@@ -1117,6 +1118,7 @@
/[EMAIL PROTECTED]@*/ continue;
item = xmalloc(strlen(names.argv[j]) + strlen(versions.argv[j]) +
20);
+/[EMAIL PROTECTED]@*/
if (flags.ui32p[j] & RPMSENSE_SENSEMASK) {
_he->p.ui32p = &flags.ui32p[j];
flagsStr = depflagsFormat(_he);
@@ -1124,6 +1126,7 @@
flagsStr = _free(flagsStr);
} else
strcpy(item, names.argv[j]);
+/[EMAIL PROTECTED]@*/
chptr = xrealloc(chptr, strlen(chptr) + strlen(item) + 5);
if (*chptr != '\0') strcat(chptr, ", ");
@@ -1166,6 +1169,7 @@
he->freeData = 0;
+/[EMAIL PROTECTED]@*/
_he->tag = RPMTAG_TRIGGERINDEX;
xx = headerGet(h, _he, 0);
indices.ui32p = _he->p.ui32p;
@@ -1182,6 +1186,7 @@
s.argv = _he->p.argv;
numScripts = _he->c;
if (!xx) goto exit;
+/[EMAIL PROTECTED]@*/
he->t = RPM_STRING_ARRAY_TYPE;
he->c = numScripts;
@@ -1561,6 +1566,7 @@
return; /* programmer error */
}
+/[EMAIL PROTECTED]@*/
he->tag = tagN;
xx = headerGet(h, he, 0);
baseNames.argv = he->p.argv;
@@ -1580,6 +1586,7 @@
xx = headerGet(h, he, 0);
dirIndexes.ui32p = he->p.ui32p;
count = he->c;
+/[EMAIL PROTECTED]@*/
size = sizeof(*fileNames.argv) * count;
for (i = 0; i < (unsigned)count; i++) {
@@ -1712,14 +1719,14 @@
_rpmHeaderFormats = headerCompoundFormats;
for (t = _rpmTagTable; t && t->name; t++) {
+ /[EMAIL PROTECTED]@*/
+ static const char * tagtypes[] = {
+ "", "char", "uint8", "uint16", "uint32", "uint64",
+ "string", "octets", "argv", "i18nstring",
+ };
uint32_t ttype;
if (rpmIsVerbose()) {
- /[EMAIL PROTECTED]@*/
- static const char * tagtypes[] = {
- "", "char", "uint8", "uint16", "uint32", "uint64",
- "string", "octets", "argv", "i18nstring",
- };
fprintf(fp, "%-20s %6d", t->name + 7, t->val);
ttype = t->type & RPM_MASK_TYPE;
if (ttype < RPM_MIN_TYPE || ttype > RPM_MAX_TYPE)
@@ -1832,7 +1839,7 @@
/** \ingroup header
*/
-typedef struct headerSprintfArgs_s * headerSprintfArgs;
+typedef /[EMAIL PROTECTED]@*/ struct headerSprintfArgs_s * headerSprintfArgs;
/** \ingroup header
*/
@@ -1858,6 +1865,10 @@
size_t i;
};
+/[EMAIL PROTECTED] sprintfTag @*/
+/[EMAIL PROTECTED] sprintfToken @*/
+/[EMAIL PROTECTED] headerSprintfArgs @*/
+
/**
*/
static char escapedChar(const char ch) /[EMAIL PROTECTED]/
@@ -2547,7 +2558,6 @@
/[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/
static char * formatValue(headerSprintfArgs hsa, sprintfTag tag,
uint32_t element)
- /[EMAIL PROTECTED] headerCompoundFormats @*/
/[EMAIL PROTECTED] hsa, tag @*/
{
HE_t vhe = memset(alloca(sizeof(*vhe)), 0, sizeof(*vhe));
@@ -2693,7 +2703,6 @@
/[EMAIL PROTECTED]@*/
static char * singleSprintf(headerSprintfArgs hsa, sprintfToken token,
uint32_t element)
- /[EMAIL PROTECTED] headerCompoundFormats @*/
/[EMAIL PROTECTED] hsa, token @*/
{
char numbuf[64]; /* XXX big enuf for "Tag_0x01234567" */
@@ -2981,10 +2990,10 @@
hsa->h = headerLink(h);
hsa->fmt = xstrdup(fmt);
-/[EMAIL PROTECTED]@*/
+/[EMAIL PROTECTED] [EMAIL PROTECTED]/
hsa->exts = exts;
hsa->tags = tags;
-/[EMAIL PROTECTED]@*/
+/[EMAIL PROTECTED] [EMAIL PROTECTED]/
hsa->errmsg = NULL;
if (parseFormat(hsa, hsa->fmt, &hsa->format, &hsa->numTokens, NULL,
PARSER_BEGIN))
@@ -3055,5 +3064,7 @@
/[EMAIL PROTECTED] =observertrans @*/
hsa->h = headerFree(hsa->h);
hsa->fmt = _free(hsa->fmt);
+/[EMAIL PROTECTED]@*/
return hsa->val;
+/[EMAIL PROTECTED]@*/
}
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmdb/header.c
============================================================================
$ cvs diff -u -r1.138 -r1.139 header.c
--- rpm/rpmdb/header.c 26 Nov 2007 06:52:52 -0000 1.138
+++ rpm/rpmdb/header.c 26 Nov 2007 21:05:57 -0000 1.139
@@ -10,8 +10,6 @@
#include "system.h"
-#define __HEADER_PROTOTYPES__
-
#include <rpmio.h>
#define _RPMTAG_INTERNAL
#include <header_internal.h>
@@ -26,13 +24,12 @@
/[EMAIL PROTECTED] Header @*/
/[EMAIL PROTECTED] HeaderIterator @*/
+/[EMAIL PROTECTED] headerSprintfExtension @*/
/[EMAIL PROTECTED] headerTagTableEntry @*/
/[EMAIL PROTECTED] entryInfo @*/
/[EMAIL PROTECTED] indexEntry @*/
-/[EMAIL PROTECTED] FD_t @*/ /* XXX void * arg
headerRead/headerWrite */
-
/** \ingroup header
*/
/[EMAIL PROTECTED]@*/
@@ -42,14 +39,14 @@
};
/[EMAIL PROTECTED]@*/
+#if 0
/[EMAIL PROTECTED]@*/
/[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/
-#if 0
static unsigned char sigh_magic[8] = {
0x8e, 0xad, 0xe8, 0x3e, 0x00, 0x00, 0x00, 0x00
};
-#endif
/[EMAIL PROTECTED]@*/
+#endif
/[EMAIL PROTECTED]@*/
/[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/
@@ -1748,7 +1745,9 @@
he->t = RPM_I18NSTRING_TYPE;
he->p.ptr = p.ptr;
he->c = langNum + 1;
+/[EMAIL PROTECTED]@*/
return headerAddEntry(h, he);
+/[EMAIL PROTECTED]@*/
} else if (langNum >= entry->info.count) {
ghosts = langNum - entry->info.count;
@@ -2068,11 +2067,13 @@
/[EMAIL PROTECTED]@*/
#endif
+/[EMAIL PROTECTED]@*/
if (!((rc == 0 && he->freeData == 0 && he->p.ptr == NULL) ||
(rc == 1 && he->freeData == 1 && he->p.ptr != NULL)))
{
fprintf(stderr, "==> %s(%u) %u %p[%u] free %u rc %d\n", name, (unsigned)
he->tag, (unsigned) he->t, he->p.ptr, (unsigned) he->c, he->freeData, rc);
}
+/[EMAIL PROTECTED]@*/
return rc;
}
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmdb/pkgio.c
============================================================================
$ cvs diff -u -r1.61 -r1.62 pkgio.c
--- rpm/rpmdb/pkgio.c 26 Nov 2007 06:15:34 -0000 1.61
+++ rpm/rpmdb/pkgio.c 26 Nov 2007 21:05:57 -0000 1.62
@@ -37,7 +37,6 @@
/[EMAIL PROTECTED] pgpDig @*/
/[EMAIL PROTECTED] pgpDigParams @*/
/[EMAIL PROTECTED] Header @*/ /* XXX compared with NULL */
-/[EMAIL PROTECTED] HV_t @*/
/[EMAIL PROTECTED] entryInfo @*/
/[EMAIL PROTECTED] indexEntry @*/
/[EMAIL PROTECTED] FD_t @*/ /* XXX stealing digests */
@@ -536,7 +535,9 @@
l->signature_type = (unsigned short) ntohs(l->signature_type);
if (memcmp(l->magic, lead_magic, sizeof(l->magic))) {
+/[EMAIL PROTECTED]@*/
(void) snprintf(buf, sizeof(buf), _("lead magic: BAD, read
%02x%02x%02x%02x"), l->magic[0], l->magic[1], l->magic[2], l->magic[3]);
+/[EMAIL PROTECTED]@*/
rc = RPMRC_NOTFOUND;
goto exit;
}
@@ -708,7 +709,9 @@
if (memcmp(block, hmagic, nmagic)) {
unsigned char * x = (unsigned char *)block;
+/[EMAIL PROTECTED]@*/
(void) snprintf(buf, sizeof(buf), _("sigh magic: BAD, read
%02x%02x%02x%02x%02x%02x%02x%02x"), x[0], x[1], x[2], x[3], x[4], x[5], x[6],
x[7]);
+/[EMAIL PROTECTED]@*/
goto exit;
}
}
@@ -1271,7 +1274,9 @@
(void) headerGetMagic(NULL, &b, &nb);
if (memcmp(block, b, nb)) {
unsigned char * x = (unsigned char *) block;
+/[EMAIL PROTECTED]@*/
(void) snprintf(buf, sizeof(buf), _("hdr magic: BAD, read
%02x%02x%02x%02x%02x%02x%02x%02x"), x[0], x[1], x[2], x[3], x[4], x[5], x[6],
x[7]);
+/[EMAIL PROTECTED]@*/
goto exit;
}
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmdb/rpmdb.c
============================================================================
$ cvs diff -u -r1.222 -r1.223 rpmdb.c
--- rpm/rpmdb/rpmdb.c 26 Nov 2007 02:03:10 -0000 1.222
+++ rpm/rpmdb/rpmdb.c 26 Nov 2007 21:05:57 -0000 1.223
@@ -835,7 +835,8 @@
* @return header query string
*/
static inline /[EMAIL PROTECTED]@*/ const char * queryHeader(Header h, const
char * qfmt)
- /[EMAIL PROTECTED] headerDefaultFormats @*/
+ /[EMAIL PROTECTED] headerCompoundFormats @*/
+ /[EMAIL PROTECTED] h @*/
{
const char * errstr = "(unkown error)";
const char * str;
@@ -856,9 +857,9 @@
* @return 0 on success
*/
static int rpmdbExportInfo(/[EMAIL PROTECTED]@*/ rpmdb db, Header h, int
adding)
- /[EMAIL PROTECTED] headerDefaultFormats, rpmGlobalMacroContext, h_errno,
+ /[EMAIL PROTECTED] headerCompoundFormats, rpmGlobalMacroContext,
h_errno,
fileSystem, internalState @*/
- /[EMAIL PROTECTED] rpmGlobalMacroContext,
+ /[EMAIL PROTECTED] h, rpmGlobalMacroContext,
fileSystem, internalState @*/
{
HE_t he = memset(alloca(sizeof(*he)), 0, sizeof(*he));
@@ -3136,7 +3137,9 @@
he->p.ui32p = &tid;
he->c = 1;
if (!headerIsEntry(h, he->tag))
+/[EMAIL PROTECTED]@*/
xx = headerPut(h, he, 0);
+/[EMAIL PROTECTED]@*/
}
/* Add the package color if not present. */
@@ -3146,14 +3149,20 @@
he->t = RPM_UINT32_TYPE;
he->p.ui32p = &hcolor;
he->c = 1;
+/[EMAIL PROTECTED]@*/
xx = headerPut(h, he, 0);
+/[EMAIL PROTECTED]@*/
}
he->tag = RPMTAG_DIRNAMES;
+/[EMAIL PROTECTED]@*/
xx = headerGet(h, he, 0);
+/[EMAIL PROTECTED]@*/
dirNames = he->p.argv;
he->tag = RPMTAG_DIRINDEXES;
+/[EMAIL PROTECTED]@*/
xx = headerGet(h, he, 0);
+/[EMAIL PROTECTED]@*/
dirIndexes = he->p.ui32p;
(void) blockSignals(db, &signalMask);
@@ -3321,13 +3330,19 @@
/[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/ break;
case RPMTAG_REQUIRENAME:
he->tag = RPMTAG_REQUIREFLAGS;
+/[EMAIL PROTECTED]@*/
xx = headerGet(h, he, 0);
+/[EMAIL PROTECTED]@*/
requireFlags.ptr = he->p.ptr;
he->tag = RPMTAG_REQUIRENAME;
+/[EMAIL PROTECTED]@*/
xx = headerGet(h, he, 0);
+/[EMAIL PROTECTED]@*/
/[EMAIL PROTECTED]@*/ break;
default:
+/[EMAIL PROTECTED]@*/
xx = headerGet(h, he, 0);
+/[EMAIL PROTECTED]@*/
/[EMAIL PROTECTED]@*/ break;
}
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmdb/rpmtag.h
============================================================================
$ cvs diff -u -r1.17 -r1.18 rpmtag.h
--- rpm/rpmdb/rpmtag.h 26 Nov 2007 06:52:52 -0000 1.17
+++ rpm/rpmdb/rpmtag.h 26 Nov 2007 21:05:57 -0000 1.18
@@ -67,6 +67,7 @@
uint16_t * ui16p; /*!< RPM_UINT16_TYPE */
uint32_t * ui32p; /*!< RPM_UINT32_TYPE */
uint64_t * ui64p; /*!< RPM_UINT64_TYPE */
+/[EMAIL PROTECTED]@*/
const char * str; /*!< RPM_STRING_TYPE */
unsigned char * blob; /*!< RPM_BIN_TYPE */
const char ** argv; /*!< RPM_STRING_ARRAY_TYPE */
@@ -607,18 +608,14 @@
/** \ingroup header
* Supported default header tag output formats.
*/
-/[EMAIL PROTECTED]@*/
-/[EMAIL PROTECTED]@*/
+/[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/
extern headerSprintfExtension headerDefaultFormats;
-/[EMAIL PROTECTED]@*/
/** \ingroup header
* Supported default header extension/tag output formats.
*/
-/[EMAIL PROTECTED]@*/
-/[EMAIL PROTECTED]@*/
+/[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/
extern headerSprintfExtension headerCompoundFormats;
-/[EMAIL PROTECTED]@*/
/**
* Display list of tags that can be used in --queryformat.
@@ -661,7 +658,6 @@
* @return 1 on success, 0 on failure
*/
int headerGet(Header h, HE_t he, unsigned int flags)
- /[EMAIL PROTECTED] headerCompoundFormats @*/
/[EMAIL PROTECTED] he @*/;
#define HEADERGET_NOEXTENSION (1 << 0) /*!< Extension search
disabler. */
@@ -705,6 +701,7 @@
* @param hi header tag container iterator
* @return NULL always
*/
+/[EMAIL PROTECTED]@*/
HeaderIterator headerFini(/[EMAIL PROTECTED]@*/ HeaderIterator hi)
/[EMAIL PROTECTED] hi @*/;
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmdb/rpmwf.c
============================================================================
$ cvs diff -u -r1.21 -r1.22 rpmwf.c
--- rpm/rpmdb/rpmwf.c 24 Nov 2007 17:18:58 -0000 1.21
+++ rpm/rpmdb/rpmwf.c 26 Nov 2007 21:05:57 -0000 1.22
@@ -259,17 +259,23 @@
static void rpmwfDumpItem(const char * item, unsigned char * b, size_t bsize)
/[EMAIL PROTECTED]/
{
+/[EMAIL PROTECTED] -modfilesys @*/
fprintf(stderr, "\t%s:\t%p[%u]\t%02x%02x%02x%02x%02x%02x%02x%02x\n",
item, b, (unsigned)bsize, b[0], b[1], b[2], b[3], b[4], b[5], b[6], b[7]);
+/[EMAIL PROTECTED] =modfilesys @*/
}
static void rpmwfDump(rpmwf wf, const char * msg, const char * fn)
/[EMAIL PROTECTED]/
{
+/[EMAIL PROTECTED] @*/
fprintf(stderr, "==> %s(%s) wf %p\n", msg, fn, wf);
+/[EMAIL PROTECTED] @*/
+/[EMAIL PROTECTED]@*/
rpmwfDumpItem(" Lead", (unsigned char *)wf->l, wf->nl);
rpmwfDumpItem("Signature", (unsigned char *)wf->s, wf->ns);
rpmwfDumpItem(" Header", (unsigned char *)wf->h, wf->nh);
rpmwfDumpItem(" Payload", (unsigned char *)wf->p, wf->np);
+/[EMAIL PROTECTED]@*/
}
rpmwf rdRPM(const char * rpmfn)
@@ -285,7 +291,9 @@
return NULL;
}
+/[EMAIL PROTECTED]@*/
if (_rpmwf_debug) rpmwfDump(wf, "rdRPM", rpmfn);
+/[EMAIL PROTECTED]@*/
return wf;
}
@@ -308,7 +316,9 @@
rc = rpmwfPullXAR(wf, NULL);
wf->xar = rpmxarFree(wf->xar);
+/[EMAIL PROTECTED]@*/
if (_rpmwf_debug) rpmwfDump(wf, "rdXAR", xarfn);
+/[EMAIL PROTECTED]@*/
return wf;
}
@@ -317,7 +327,9 @@
{
rpmRC rc;
+/[EMAIL PROTECTED]@*/
if (_rpmwf_debug) rpmwfDump(wf, "wrXAR", xarfn);
+/[EMAIL PROTECTED]@*/
wf->xar = rpmxarNew(xarfn, "w");
if (wf->xar == NULL)
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmdb/signature.c
============================================================================
$ cvs diff -u -r1.34 -r1.35 signature.c
--- rpm/rpmdb/signature.c 24 Nov 2007 23:15:33 -0000 1.34
+++ rpm/rpmdb/signature.c 26 Nov 2007 21:05:57 -0000 1.35
@@ -451,7 +451,9 @@
he->t = RPM_UINT32_TYPE;
he->p.ui32p = &pktlen;
he->c = 1;
+/[EMAIL PROTECTED]@*/
xx = headerPut(sigh, he, 0);
+/[EMAIL PROTECTED]@*/
if (!xx)
break;
ret = 0;
@@ .
______________________________________________________________________
RPM Package Manager http://rpm5.org
CVS Sources Repository [email protected]