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: 31-May-2008 20:59:07
Branch: rpm-4_5 Handle: 2008053118590501
Modified files: (Branch: rpm-4_5)
rpm CHANGES
rpm/rpmio Makefile.am argv.c argv.h fts.c librpmio.vers
rpmio.c rpmio.h rpmio_internal.h rpmrpc.c rpmurl.h
strtolocale.c url.c
Log:
- jbj: backport assorted rpmio changes from HEAD to stay in sync.
- jbj: make sure the open path is set when using [bgl]zdOpen vector too.
- jbj: lzdio: rework the layering to be more similar to gzdio/bzdio.
- jbj: rpmrepo: fix: --lzma segfault, lzdFdopen was not saving path.
- jbj: splint: annotate argvAppend differently.
- jbj: add _fdopen to FDIO_t, expose fdbg(), make lzdio.c standalone.
- jbj: expose XfdLink/XfdFree/XfdNew, nuke the FDIO_t vectors.
- jbj: eliminate unused FDIO_t vectors. XfdLink/XfdFree/XfdNew need nuking.
- jbj: create lzdio.c to carry lzma comprssion, possibly w dlopen().
- jbj: add --enable-build-gcov for CFLAGS -fprofile-arcs -ftest-coverage.
Summary:
Revision Changes Path
1.1360.2.84 +10 -0 rpm/CHANGES
1.77.2.3 +3 -4 rpm/rpmio/Makefile.am
1.3.2.2 +2 -1 rpm/rpmio/argv.c
1.3.2.1 +2 -2 rpm/rpmio/argv.h
1.14.2.1 +18 -0 rpm/rpmio/fts.c
2.2.2.2 +3 -0 rpm/rpmio/librpmio.vers
1.79.2.8 +47 -400 rpm/rpmio/rpmio.c
1.51.2.4 +27 -142 rpm/rpmio/rpmio.h
2.73.2.3 +5 -0 rpm/rpmio/rpmio_internal.h
2.49.2.3 +2 -0 rpm/rpmio/rpmrpc.c
1.22.2.1 +2 -0 rpm/rpmio/rpmurl.h
1.2.2.1 +2 -2 rpm/rpmio/strtolocale.c
1.35.2.4 +6 -6 rpm/rpmio/url.c
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: rpm/CHANGES
============================================================================
$ cvs diff -u -r1.1360.2.83 -r1.1360.2.84 CHANGES
--- rpm/CHANGES 29 May 2008 19:45:39 -0000 1.1360.2.83
+++ rpm/CHANGES 31 May 2008 18:59:05 -0000 1.1360.2.84
@@ -1,4 +1,14 @@
4.4.9 -> 4.5:
+ - jbj: backport assorted rpmio changes from HEAD to stay in sync.
+ - jbj: make sure the open path is set when using [bgl]zdOpen vector too.
+ - jbj: lzdio: rework the layering to be more similar to gzdio/bzdio.
+ - jbj: rpmrepo: fix: --lzma segfault, lzdFdopen was not saving path.
+ - jbj: splint: annotate argvAppend differently.
+ - jbj: add _fdopen to FDIO_t, expose fdbg(), make lzdio.c standalone.
+ - jbj: expose XfdLink/XfdFree/XfdNew, nuke the FDIO_t vectors.
+ - jbj: eliminate unused FDIO_t vectors. XfdLink/XfdFree/XfdNew need
nuking.
+ - jbj: create lzdio.c to carry lzma comprssion, possibly w dlopen().
+ - jbj: add --enable-build-gcov for CFLAGS -fprofile-arcs
-ftest-coverage.
- jbj: retrofit LCOV/GCOV same as other branches.
- jbj: retrofit "make check" same as other branches.
- jbj: rpmrepo: backport --yum:primary.xml et al popt aliases.
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmio/Makefile.am
============================================================================
$ cvs diff -u -r1.77.2.2 -r1.77.2.3 Makefile.am
--- rpm/rpmio/Makefile.am 16 Jun 2007 18:14:07 -0000 1.77.2.2
+++ rpm/rpmio/Makefile.am 31 May 2008 18:59:06 -0000 1.77.2.3
@@ -4,7 +4,7 @@
LINT = splint
-EXTRA_DIST = tax.c tdir.c tficl.c tfts.c tget.c thkp.c tput.c tglob.c tinv.c
tkey.c trpmio.c lookup3.c librpmio.vers
+EXTRA_DIST = LzmaDecode.c tax.c tdir.c tficl.c tfts.c tget.c thkp.c tput.c
tglob.c tinv.c tkey.c trpmio.c lookup3.c librpmio.vers
EXTRA_PROGRAMS = tax tdir tfts tget thkp tput tglob tinv tkey trpmio tsw
dumpasn1 lookup3
@@ -35,13 +35,12 @@
usrlibdir = $(libdir)@MARK64@
usrlib_LTLIBRARIES = librpmio.la
librpmio_la_SOURCES = \
- argv.c digest.c fts.c getpass.c macro.c mire.c \
+ argv.c digest.c fts.c getpass.c lzdio.c macro.c mire.c \
md2.c md4.c rmd128.c rmd160.c rmd256.c rmd320.c sha224.c \
salsa10.c salsa20.c tiger.c \
rpmdav.c rpmhash.c rpmhook.c rpmio.c rpmlog.c rpmlua.c rpmmalloc.c \
rpmpgp.c rpmrpc.c rpmsq.c rpmsw.c strcasecmp.c strtolocale.c \
- stubs.c url.c ugid.c \
- LzmaDecode.c
+ stubs.c url.c ugid.c
librpmio_la_LDFLAGS = -no-undefined -release $(LT_CURRENT).$(LT_REVISION)
$(LDFLAGS) \
@WITH_BEECRYPT_LIB@ \
@WITH_NEON_LIB@ \
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmio/argv.c
============================================================================
$ cvs diff -u -r1.3.2.1 -r1.3.2.2 argv.c
--- rpm/rpmio/argv.c 17 Jun 2007 14:41:58 -0000 1.3.2.1
+++ rpm/rpmio/argv.c 31 May 2008 18:59:06 -0000 1.3.2.2
@@ -234,7 +234,8 @@
return -2;
while (!rc && (b = fgets(buf, sizeof(buf), fp)) != NULL) {
buf[sizeof(buf)-1] = '\0';
- be = b + strlen(buf) - 1;
+ be = b + strlen(buf);
+ if (be > b) be--;
while (strchr("\r\n", *be) != NULL)
*be-- = '\0';
rc = argvAdd(&av, b);
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmio/argv.h
============================================================================
$ cvs diff -u -r1.3 -r1.3.2.1 argv.h
--- rpm/rpmio/argv.h 25 May 2007 17:36:36 -0000 1.3
+++ rpm/rpmio/argv.h 31 May 2008 18:59:06 -0000 1.3.2.1
@@ -136,10 +136,10 @@
/**
* Append one argv array to another.
* @retval *argvp argv array
- * @param av argv array to append
+ * @param av argv array to append (NULL does nothing)
* @return 0 always
*/
-int argvAppend(/[EMAIL PROTECTED]@*/ ARGV_t * argvp, const ARGV_t av)
+int argvAppend(/[EMAIL PROTECTED]@*/ ARGV_t * argvp, /[EMAIL PROTECTED]@*/
const ARGV_t av)
/[EMAIL PROTECTED] *argvp @*/;
/**
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmio/fts.c
============================================================================
$ cvs diff -u -r1.14 -r1.14.2.1 fts.c
--- rpm/rpmio/fts.c 25 May 2007 17:36:36 -0000 1.14
+++ rpm/rpmio/fts.c 31 May 2008 18:59:06 -0000 1.14.2.1
@@ -100,6 +100,9 @@
#define ALIGN(p) (((unsigned long int) (p) + ALIGNBYTES) &
~ALIGNBYTES)
#endif
+/[EMAIL PROTECTED]@*/
+static int _fts_debug = 0;
+
/[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/
static FTSENT * fts_alloc(FTS * sp, const char * name, int namelen)
/[EMAIL PROTECTED]/;
@@ -150,6 +153,11 @@
FTSENT *tmp = NULL;
size_t len;
+/[EMAIL PROTECTED] [EMAIL PROTECTED]/
+if (_fts_debug)
+fprintf(stderr, "*** Fts_open(%p, 0x%x, %p)\n", argv, options, compar);
+/[EMAIL PROTECTED] [EMAIL PROTECTED]/
+
/* Options check. */
if (options & ~FTS_OPTIONMASK) {
/[EMAIL PROTECTED]@*/
@@ -582,6 +590,11 @@
int
Fts_set(/[EMAIL PROTECTED]@*/ FTS * sp, FTSENT * p, int instr)
{
+/[EMAIL PROTECTED]@*/
+if (_fts_debug)
+fprintf(stderr, "*** Fts_set(%p, %p, 0x%x)\n", sp, p, instr);
+/[EMAIL PROTECTED]@*/
+
if (instr != 0 && instr != FTS_AGAIN && instr != FTS_FOLLOW &&
instr != FTS_NOINSTR && instr != FTS_SKIP) {
/[EMAIL PROTECTED]@*/
@@ -599,6 +612,11 @@
register FTSENT *p;
int fd;
+/[EMAIL PROTECTED]@*/
+if (_fts_debug)
+fprintf(stderr, "*** Fts_children(%p, 0x%x)\n", sp, instr);
+/[EMAIL PROTECTED]@*/
+
if (instr != 0 && instr != FTS_NAMEONLY) {
/[EMAIL PROTECTED]@*/
__set_errno (EINVAL);
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmio/librpmio.vers
============================================================================
$ cvs diff -u -r2.2.2.1 -r2.2.2.2 librpmio.vers
--- rpm/rpmio/librpmio.vers 25 May 2007 19:00:39 -0000 2.2.2.1
+++ rpm/rpmio/librpmio.vers 31 May 2008 18:59:06 -0000 2.2.2.2
@@ -267,6 +267,9 @@
xstrcasecmp;
xstrncasecmp;
xstrtolocale;
+ XfdFree;
+ XfdLink;
+ XfdNew;
XurlFree;
XurlLink;
XurlNew;
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmio/rpmio.c
============================================================================
$ cvs diff -u -r1.79.2.7 -r1.79.2.8 rpmio.c
--- rpm/rpmio/rpmio.c 9 Dec 2007 17:28:28 -0000 1.79.2.7
+++ rpm/rpmio/rpmio.c 31 May 2008 18:59:06 -0000 1.79.2.8
@@ -119,7 +119,6 @@
#define FDONLY(fd) assert(fdGetIo(fd) == fdio)
#define GZDONLY(fd) assert(fdGetIo(fd) == gzdio)
#define BZDONLY(fd) assert(fdGetIo(fd) == bzdio)
-#define LZDONLY(fd) assert(fdGetIo(fd) == lzdio)
#define UFDONLY(fd) /* assert(fdGetIo(fd) == ufdio) */
@@ -164,8 +163,7 @@
/* =============================================================== */
/[EMAIL PROTECTED]@*/
-static /[EMAIL PROTECTED]@*/ const char * fdbg(/[EMAIL PROTECTED]@*/ FD_t fd)
- /[EMAIL PROTECTED]/
+const char * fdbg(/[EMAIL PROTECTED]@*/ FD_t fd)
{
static char buf[BUFSIZ];
char *be = buf;
@@ -277,26 +275,10 @@
return -2;
}
-#ifdef UNUSED
-FILE *fdFdopen(void * cookie, const char *fmode)
-{
- FD_t fd = c2f(cookie);
- int fdno;
- FILE * fp;
-
- if (fmode == NULL) return NULL;
- fdno = fdFileno(fd);
- if (fdno < 0) return NULL;
- fp = fdopen(fdno, fmode);
-DBGIO(fd, (stderr, "==> fdFdopen(%p,\"%s\") fdno %d -> fp %p fdno %d\n",
cookie, fmode, fdno, fp, fileno(fp)));
- fd = fdFree(fd, "open (fdFdopen)");
- return fp;
-}
-#endif
-
/* =============================================================== */
/[EMAIL PROTECTED]@*/ /* FIX: cookie is modified */
-static inline /[EMAIL PROTECTED]@*/ FD_t XfdLink(void * cookie, const char *
msg,
+/[EMAIL PROTECTED]@*/
+FD_t XfdLink(void * cookie, const char * msg,
const char * file, unsigned line)
/[EMAIL PROTECTED] *cookie @*/
{
@@ -314,7 +296,7 @@
}
/[EMAIL PROTECTED]@*/
-static inline /[EMAIL PROTECTED]@*/
+/[EMAIL PROTECTED]@*/
FD_t XfdFree( /[EMAIL PROTECTED]@*/ FD_t fd, const char *msg,
const char *file, unsigned line)
/[EMAIL PROTECTED] fd @*/
@@ -343,7 +325,7 @@
return NULL;
}
-static inline /[EMAIL PROTECTED]@*/
+/[EMAIL PROTECTED]@*/
FD_t XfdNew(const char * msg, const char * file, unsigned line)
/[EMAIL PROTECTED] internalState @*/
/[EMAIL PROTECTED] internalState @*/
@@ -524,12 +506,29 @@
/[EMAIL PROTECTED]@*/ return fd; /[EMAIL PROTECTED]@*/
}
+#ifdef NOTUSED
+FILE *fdFdopen(void * cookie, const char *fmode)
+{
+ FD_t fd = c2f(cookie);
+ int fdno;
+ FILE * fp;
+
+ if (fmode == NULL) return NULL;
+ fdno = fdFileno(fd);
+ if (fdno < 0) return NULL;
+ fp = fdopen(fdno, fmode);
+DBGIO(fd, (stderr, "==> fdFdopen(%p,\"%s\") fdno %d -> fp %p fdno %d\n",
cookie, fmode, fdno, fp, fileno(fp)));
+ fd = fdFree(fd, "open (fdFdopen)");
+ return fp;
+}
+#endif
+
/[EMAIL PROTECTED]@*/ /* LCL: function typedefs */
static struct FDIO_s fdio_s = {
- fdRead, fdWrite, fdSeek, fdClose, XfdLink, XfdFree, XfdNew, fdFileno,
- fdOpen, NULL, fdGetFp, NULL, mkdir, chdir, rmdir, rename, unlink
+ fdRead, fdWrite, fdSeek, fdClose, NULL, NULL,
};
/[EMAIL PROTECTED]@*/
+
FDIO_t fdio = /[EMAIL PROTECTED]@*/ &fdio_s /[EMAIL PROTECTED]@*/ ;
int fdWritable(FD_t fd, int secs)
@@ -2332,10 +2331,10 @@
/[EMAIL PROTECTED]@*/ /* LCL: function typedefs */
static struct FDIO_s ufdio_s = {
- ufdRead, ufdWrite, ufdSeek, ufdClose, XfdLink, XfdFree, XfdNew, fdFileno,
- ufdOpen, NULL, fdGetFp, NULL, Mkdir, Chdir, Rmdir, Rename, Unlink
+ ufdRead, ufdWrite, ufdSeek, ufdClose, NULL, NULL,
};
/[EMAIL PROTECTED]@*/
+
FDIO_t ufdio = /[EMAIL PROTECTED]@*/ &ufdio_s /[EMAIL PROTECTED]@*/ ;
/* =============================================================== */
@@ -2375,10 +2374,13 @@
{
FD_t fd;
gzFile gzfile;
+ mode_t mode = (fmode && fmode[0] == 'w' ? O_WRONLY : O_RDONLY);
+
if ((gzfile = gzopen(path, fmode)) == NULL)
return NULL;
fd = fdNew("open (gzdOpen)");
fdPop(fd); fdPush(fd, gzdio, gzfile, -1);
+ fdSetOpen(fd, path, -1, mode);
DBGIO(fd, (stderr, "==>\tgzdOpen(\"%s\", \"%s\") fd %p %s\n", path, fmode,
(fd ? fd : NULL), fdbg(fd)));
return fdLink(fd, "gzdOpen");
@@ -2559,10 +2561,10 @@
/[EMAIL PROTECTED]@*/ /* LCL: function typedefs */
static struct FDIO_s gzdio_s = {
- gzdRead, gzdWrite, gzdSeek, gzdClose, XfdLink, XfdFree, XfdNew, fdFileno,
- NULL, gzdOpen, gzdFileno, gzdFlush, NULL, NULL, NULL, NULL, NULL
+ gzdRead, gzdWrite, gzdSeek, gzdClose, gzdOpen, gzdFdopen,
};
/[EMAIL PROTECTED]@*/
+
FDIO_t gzdio = /[EMAIL PROTECTED]@*/ &gzdio_s /[EMAIL PROTECTED]@*/ ;
/[EMAIL PROTECTED]@*/
@@ -2597,16 +2599,19 @@
}
/[EMAIL PROTECTED]@*/
-static /[EMAIL PROTECTED]@*/ FD_t bzdOpen(const char * path, const char *
mode)
+static /[EMAIL PROTECTED]@*/ FD_t bzdOpen(const char * path, const char *
fmode)
/[EMAIL PROTECTED] fileSystem @*/
/[EMAIL PROTECTED] fileSystem @*/
{
FD_t fd;
BZFILE *bzfile;;
- if ((bzfile = BZ2_bzopen(path, mode)) == NULL)
+ mode_t mode = (fmode && fmode[0] == 'w' ? O_WRONLY : O_RDONLY);
+
+ if ((bzfile = BZ2_bzopen(path, fmode)) == NULL)
return NULL;
fd = fdNew("open (bzdOpen)");
fdPop(fd); fdPush(fd, bzdio, bzfile, -1);
+ fdSetOpen(fd, path, -1, mode);
return fdLink(fd, "bzdOpen");
}
/[EMAIL PROTECTED]@*/
@@ -2751,374 +2756,16 @@
/[EMAIL PROTECTED]@*/ /* LCL: function typedefs */
static struct FDIO_s bzdio_s = {
- bzdRead, bzdWrite, bzdSeek, bzdClose, XfdLink, XfdFree, XfdNew, fdFileno,
- NULL, bzdOpen, bzdFileno, bzdFlush, NULL, NULL, NULL, NULL, NULL
+ bzdRead, bzdWrite, bzdSeek, bzdClose, bzdOpen, bzdFdopen,
};
/[EMAIL PROTECTED]@*/
+
FDIO_t bzdio = /[EMAIL PROTECTED]@*/ &bzdio_s /[EMAIL PROTECTED]@*/ ;
/[EMAIL PROTECTED]@*/
#endif /* HAVE_BZLIB_H */
/* =============================================================== */
-/* Support for LZMA library.
- */
-#include "LzmaDecode.h"
-
-#define kInBufferSize (1 << 15)
-typedef struct _CBuffer {
- ILzmaInCallback InCallback;
-/[EMAIL PROTECTED]@*/
- FILE *File;
- unsigned char Buffer[kInBufferSize];
-} CBuffer;
-
-typedef struct lzfile {
- CBuffer g_InBuffer;
- CLzmaDecoderState state; /* it's about 24-80 bytes structure, if int is
32-bit */
- unsigned char properties[LZMA_PROPERTIES_SIZE];
-
-#if 0
- FILE *file;
-#endif
- int pid;
-} LZFILE;
-
-static size_t MyReadFile(FILE *file, void *data, size_t size)
- /[EMAIL PROTECTED] fileSystem @*/
- /[EMAIL PROTECTED] *file, *data, fileSystem @*/
-{
- if (size == 0) return 0;
- return fread(data, 1, size, file);
-}
-
-static int MyReadFileAndCheck(FILE *file, void *data, size_t size)
- /[EMAIL PROTECTED] fileSystem @*/
- /[EMAIL PROTECTED] *file, *data, fileSystem @*/
-{
- return (MyReadFile(file, data, size) == size);
-}
-
-static int LzmaReadCompressed(void *object, const unsigned char **buffer,
SizeT *size)
- /[EMAIL PROTECTED] fileSystem @*/
- /[EMAIL PROTECTED] *buffer, *size, fileSystem @*/
-{
- CBuffer *b = object;
- *buffer = b->Buffer;
- *size = MyReadFile(b->File, b->Buffer, kInBufferSize);
- return LZMA_RESULT_OK;
-}
-
-static inline /[EMAIL PROTECTED]@*/ void * lzdFileno(FD_t fd)
- /[EMAIL PROTECTED]/
-{
- void * rc = NULL;
- int i;
-
- FDSANE(fd);
- for (i = fd->nfps; i >= 0; i--) {
-/[EMAIL PROTECTED]@*/
- FDSTACK_t * fps = &fd->fps[i];
-/[EMAIL PROTECTED]@*/
- if (fps->io != lzdio)
- continue;
- rc = fps->fp;
- break;
- }
-
- return rc;
-}
-
-/[EMAIL PROTECTED]@*/ /* XXX hide rpmGlobalMacroContext mods for now. */
-static FD_t lzdWriteOpen(int fdno, int fopen, const char * mode)
- /[EMAIL PROTECTED] fileSystem, internalState @*/
- /[EMAIL PROTECTED] fileSystem, internalState @*/
-{
- int pid;
- int p[2];
- int xx;
- const char *lzma;
- char l[3];
- const char *level;
-
- /* revisit use of LZMA_Alone, when lzdRead supports new LZMA Utils */
- char *env[] = { "LZMA_OPT=--format=alone", NULL };
-
- if (isdigit(mode[1])) /* "w5" */
- {
- sprintf(l, "-%c", mode[1]);
- level = l;
- }
- else
- level = NULL;
-
- if (fdno < 0) return NULL;
- if (pipe(p) < 0) {
- xx = close(fdno);
- return NULL;
- }
- pid = fork();
- if (pid < 0) {
- xx = close(fdno);
- return NULL;
- }
- if (pid) {
- FD_t fd;
- LZFILE * lzfile = xcalloc(1, sizeof(*lzfile));
-
- xx = close(fdno);
- xx = close(p[0]);
- lzfile->pid = pid;
- lzfile->g_InBuffer.File = fdopen(p[1], "wb");
- if (lzfile->g_InBuffer.File == NULL) {
- xx = close(p[1]);
- lzfile = _free(lzfile);
- return NULL;
- }
- fd = fdNew("open (lzdOpen write)");
- if (fopen) fdPop(fd);
- fdPush(fd, lzdio, lzfile, -1);
- return fdLink(fd, "lzdOpen");
- } else {
- int i;
- /* lzma */
- xx = close(p[1]);
- xx = dup2(p[0], 0);
- xx = dup2(fdno, 1);
- for (i = 3; i < 1024; i++)
- xx = close(i);
- lzma = rpmGetPath("%{?__lzma}%{!?__lzma:/usr/bin/lzma}", NULL);
- if (execle(lzma, "lzma", level, NULL, env))
- _exit(1);
- lzma = _free(lzma);
- }
- return NULL; /* warning */
-}
-
-static FD_t lzdReadOpen(int fdno, int fopen)
- /[EMAIL PROTECTED] fileSystem @*/
- /[EMAIL PROTECTED] fileSystem @*/
-{
- LZFILE *lzfile;
- unsigned char ff[8];
- FD_t fd;
- size_t nb;
-
- if (fdno < 0) return NULL;
- lzfile = xcalloc(1, sizeof(*lzfile));
- if (lzfile == NULL) return NULL;
- lzfile->g_InBuffer.File = fdopen(fdno, "rb");
- if (lzfile->g_InBuffer.File == NULL) goto error2;
-
- if (!MyReadFileAndCheck(lzfile->g_InBuffer.File, lzfile->properties,
sizeof(lzfile->properties)))
- goto error;
-
- memset(ff, 0, sizeof(ff));
- if (!MyReadFileAndCheck(lzfile->g_InBuffer.File, ff, 8)) goto error;
- if (LzmaDecodeProperties(&lzfile->state.Properties, lzfile->properties,
LZMA_PROPERTIES_SIZE) != LZMA_RESULT_OK)
- goto error;
- nb = LzmaGetNumProbs(&lzfile->state.Properties) *
sizeof(*lzfile->state.Probs);
- lzfile->state.Probs = xmalloc(nb);
- if (lzfile->state.Probs == NULL) goto error;
-
- if (lzfile->state.Properties.DictionarySize == 0)
- lzfile->state.Dictionary = 0;
- else {
- lzfile->state.Dictionary =
xmalloc(lzfile->state.Properties.DictionarySize);
- if (lzfile->state.Dictionary == NULL) {
- lzfile->state.Probs = _free(lzfile->state.Probs);
- goto error;
- }
- }
- lzfile->g_InBuffer.InCallback.Read = LzmaReadCompressed;
- LzmaDecoderInit(&lzfile->state);
-
- fd = fdNew("open (lzdOpen read)");
- if (fopen) fdPop(fd);
- fdPush(fd, lzdio, lzfile, -1);
- return fdLink(fd, "lzdOpen");
-
-error:
- (void) fclose(lzfile->g_InBuffer.File);
-error2:
- lzfile = _free(lzfile);
- return NULL;
-}
-
-/[EMAIL PROTECTED]@*/
-static /[EMAIL PROTECTED]@*/ FD_t lzdOpen(const char * path, const char *
mode)
- /[EMAIL PROTECTED] fileSystem, internalState @*/
- /[EMAIL PROTECTED] fileSystem, internalState @*/
-{
- if (mode == NULL)
- return NULL;
- if (mode[0] == 'w') {
- int fdno = open(path, O_WRONLY);
-
- if (fdno < 0) return NULL;
- return lzdWriteOpen(fdno, 1, mode);
- } else {
- int fdno = open(path, O_RDONLY);
-
- if (fdno < 0) return NULL;
- return lzdReadOpen(fdno, 1);
- }
-}
-/[EMAIL PROTECTED]@*/
-
-/[EMAIL PROTECTED]@*/
-static /[EMAIL PROTECTED]@*/ FD_t lzdFdopen(void * cookie, const char *
fmode)
- /[EMAIL PROTECTED] fileSystem, internalState @*/
- /[EMAIL PROTECTED] fileSystem, internalState @*/
-{
- FD_t fd = c2f(cookie);
- int fdno;
-
- if (fmode == NULL) return NULL;
- fdno = fdFileno(fd);
- fdSetFdno(fd, -1); /* XXX skip the fdio close */
- if (fdno < 0) return NULL;
- if (fmode[0] == 'w') {
- return lzdWriteOpen(fdno, 0, fmode);
- } else {
- return lzdReadOpen(fdno, 0);
- }
-}
-/[EMAIL PROTECTED]@*/
-
-/[EMAIL PROTECTED]@*/
-static int lzdFlush(FD_t fd)
- /[EMAIL PROTECTED] fileSystem @*/
- /[EMAIL PROTECTED] fileSystem @*/
-{
- LZFILE *lzfile = lzdFileno(fd);
-
- if (lzfile == NULL || lzfile->g_InBuffer.File == NULL) return -2;
- return fflush(lzfile->g_InBuffer.File);
-}
-/[EMAIL PROTECTED]@*/
-
-/* =============================================================== */
-/[EMAIL PROTECTED]@*/
-/[EMAIL PROTECTED]@*/ /* LCL: *buf is modified */
-static ssize_t lzdRead(void * cookie, /[EMAIL PROTECTED]@*/ char * buf,
size_t count)
- /[EMAIL PROTECTED] fileSystem, internalState @*/
- /[EMAIL PROTECTED] buf, fileSystem, internalState @*/
-{
- FD_t fd = c2f(cookie);
- LZFILE *lzfile;
- ssize_t rc = 0;
- int res = 0;
-
- if (fd->bytesRemain == 0) return 0; /* XXX simulate EOF */
- lzfile = lzdFileno(fd);
- fdstat_enter(fd, FDSTAT_READ);
- if (lzfile->g_InBuffer.File)
-/[EMAIL PROTECTED]@*/
- res = LzmaDecode(&lzfile->state, &lzfile->g_InBuffer.InCallback, buf,
count, &rc);
-/[EMAIL PROTECTED]@*/
- if (res) {
- if (lzfile)
- fd->errcookie = "Lzma: decoding error";
- } else if (rc >= 0) {
- fdstat_exit(fd, FDSTAT_READ, rc);
- /[EMAIL PROTECTED]@*/
- if (fd->ndigests && rc > 0) fdUpdateDigests(fd, (void *)buf, rc);
- /[EMAIL PROTECTED]@*/
- }
- return rc;
-}
-/[EMAIL PROTECTED]@*/
-/[EMAIL PROTECTED]@*/
-
-/[EMAIL PROTECTED]@*/
-static ssize_t lzdWrite(void * cookie, const char * buf, size_t count)
- /[EMAIL PROTECTED] fileSystem, internalState @*/
- /[EMAIL PROTECTED] fileSystem, internalState @*/
-{
- FD_t fd = c2f(cookie);
- LZFILE *lzfile;
- ssize_t rc;
-
- if (fd->bytesRemain == 0) return 0; /* XXX simulate EOF */
-
- if (fd->ndigests && count > 0) fdUpdateDigests(fd, (void *)buf, count);
-
- lzfile = lzdFileno(fd);
- fdstat_enter(fd, FDSTAT_WRITE);
- rc = fwrite((void *)buf, 1, count, lzfile->g_InBuffer.File);
- if (rc == -1) {
- fd->errcookie = strerror(ferror(lzfile->g_InBuffer.File));
- } else if (rc > 0) {
- fdstat_exit(fd, FDSTAT_WRITE, rc);
- }
- return rc;
-}
-/[EMAIL PROTECTED]@*/
-
-static inline int lzdSeek(void * cookie, /[EMAIL PROTECTED]@*/ _libio_pos_t
pos,
- /[EMAIL PROTECTED]@*/ int whence)
- /[EMAIL PROTECTED]/
-{
- FD_t fd = c2f(cookie);
-
- LZDONLY(fd);
- return -2;
-}
-
-static int lzdClose( /[EMAIL PROTECTED]@*/ void * cookie)
- /[EMAIL PROTECTED] fileSystem, internalState @*/
- /[EMAIL PROTECTED] fileSystem, internalState @*/
-{
- FD_t fd = c2f(cookie);
- LZFILE * lzfile = lzdFileno(fd);
- int rc;
-
- if (lzfile == NULL) return -2;
- fdstat_enter(fd, FDSTAT_CLOSE);
-/[EMAIL PROTECTED]@*/ /* FIX: check rc */
- rc = fclose(lzfile->g_InBuffer.File);
- if (lzfile->pid)
- rc = wait4(lzfile->pid, NULL, 0, NULL);
- else { /* reading */
- lzfile->state.Probs = _free(lzfile->state.Probs);
- lzfile->state.Dictionary = _free(lzfile->state.Dictionary);
- }
-/[EMAIL PROTECTED]@*/
- lzfile = _free(lzfile);
-/[EMAIL PROTECTED]@*/
-/[EMAIL PROTECTED]@*/
- rc = 0; /* XXX FIXME */
-
- /* XXX TODO: preserve fd if errors */
-
- if (fd) {
- if (rc == -1) {
- fd->errcookie = strerror(ferror(lzfile->g_InBuffer.File));
- } else if (rc >= 0) {
- fdstat_exit(fd, FDSTAT_CLOSE, rc);
- }
- }
-
-DBGIO(fd, (stderr, "==>\tlzdClose(%p) rc %lx %s\n", cookie, (unsigned
long)rc, fdbg(fd)));
-
- if (_rpmio_debug || rpmIsDebug()) fdstat_print(fd, "LZDIO", stderr);
- /[EMAIL PROTECTED]@*/
- if (rc == 0)
- fd = fdFree(fd, "open (lzdClose)");
- /[EMAIL PROTECTED]@*/
- return rc;
-}
-
-/[EMAIL PROTECTED]@*/ /* LCL: function typedefs */
-static struct FDIO_s lzdio_s = {
- lzdRead, lzdWrite, lzdSeek, lzdClose, XfdLink, XfdFree, XfdNew, fdFileno,
- NULL, lzdOpen, lzdFileno, lzdFlush, NULL, NULL, NULL, NULL, NULL
-};
-/[EMAIL PROTECTED]@*/
-FDIO_t lzdio = /[EMAIL PROTECTED]@*/ &lzdio_s /[EMAIL PROTECTED]@*/ ;
-
-/* =============================================================== */
/[EMAIL PROTECTED]@*/
static const char * getFdErrstr (FD_t fd)
/[EMAIL PROTECTED]/
@@ -3452,18 +3099,18 @@
} else if (!strcmp(end, "gzdio")) {
iof = gzdio;
/[EMAIL PROTECTED]@*/
- fd = gzdFdopen(fd, zstdio);
+ fd = iof->_fdopen(fd, zstdio);
/[EMAIL PROTECTED]@*/
#if HAVE_BZLIB_H
} else if (!strcmp(end, "bzdio")) {
iof = bzdio;
/[EMAIL PROTECTED]@*/
- fd = bzdFdopen(fd, zstdio);
+ fd = iof->_fdopen(fd, zstdio);
/[EMAIL PROTECTED]@*/
#endif
- } else if (!strcmp(end, "lzdio")) {
- iof = lzdio;
- fd = lzdFdopen(fd, zstdio);
+ } else if (!strcmp(end, "lzdio")) {
+ iof = lzdio;
+ fd = iof->_fdopen(fd, zstdio);
} else if (!strcmp(end, "ufdio")) {
iof = ufdio;
} else if (!strcmp(end, "fpio")) {
@@ -3491,7 +3138,7 @@
if (*end == '\0') {
iof = gzdio;
/[EMAIL PROTECTED]@*/
- fd = gzdFdopen(fd, zstdio);
+ fd = iof->_fdopen(fd, zstdio);
/[EMAIL PROTECTED]@*/
}
}
@@ -3561,7 +3208,7 @@
int fdno;
int isHTTP = 0;
- /* XXX gzdio and bzdio here too */
+ /* XXX gzdio/bzdio/lzdio through here too */
switch (urlIsURL(path)) {
case URL_IS_HTTPS:
@@ -3940,8 +3587,8 @@
/[EMAIL PROTECTED]@*/ /* LCL: function typedefs */
static struct FDIO_s fpio_s = {
- ufdRead, ufdWrite, fdSeek, ufdClose, XfdLink, XfdFree, XfdNew, fdFileno,
- ufdOpen, NULL, fdGetFp, NULL, Mkdir, Chdir, Rmdir, Rename, Unlink
+ ufdRead, ufdWrite, fdSeek, ufdClose, NULL, NULL,
};
/[EMAIL PROTECTED]@*/
+
FDIO_t fpio = /[EMAIL PROTECTED]@*/ &fpio_s /[EMAIL PROTECTED]@*/ ;
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmio/rpmio.h
============================================================================
$ cvs diff -u -r1.51.2.3 -r1.51.2.4 rpmio.h
--- rpm/rpmio/rpmio.h 30 Jul 2007 02:37:50 -0000 1.51.2.3
+++ rpm/rpmio/rpmio.h 31 May 2008 18:59:06 -0000 1.51.2.4
@@ -85,117 +85,18 @@
/[EMAIL PROTECTED] errno, fileSystem, systemState @*/
/[EMAIL PROTECTED] *cookie, errno, fileSystem, systemState @*/;
-
-/**
- */
-typedef /[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/ FD_t
(*fdio_ref_function_t) ( /[EMAIL PROTECTED]@*/ void * cookie,
- const char * msg, const char * file, unsigned line)
- /[EMAIL PROTECTED] fileSystem @*/
- /[EMAIL PROTECTED] fileSystem @*/;
-
-/**
- */
-typedef /[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/ FD_t
(*fdio_deref_function_t) ( /[EMAIL PROTECTED]@*/ FD_t fd,
- const char * msg, const char * file, unsigned line)
- /[EMAIL PROTECTED] fileSystem @*/
- /[EMAIL PROTECTED] fd, fileSystem @*/;
-
-
-/**
- */
-typedef /[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/ FD_t
(*fdio_new_function_t) (const char * msg,
- const char * file, unsigned line)
- /[EMAIL PROTECTED] fileSystem @*/
- /[EMAIL PROTECTED] fileSystem @*/;
-
-
-/**
- */
-typedef int (*fdio_fileno_function_t) (void * cookie)
- /[EMAIL PROTECTED] fileSystem @*/
- /[EMAIL PROTECTED] *cookie, fileSystem @*/;
-
-
-/**
- */
-typedef FD_t (*fdio_open_function_t) (const char * path, int flags, mode_t
mode)
- /[EMAIL PROTECTED] errno, fileSystem @*/
- /[EMAIL PROTECTED] errno, fileSystem @*/;
-
/**
*/
typedef FD_t (*fdio_fopen_function_t) (const char * path, const char * fmode)
- /[EMAIL PROTECTED] fileSystem @*/
- /[EMAIL PROTECTED] fileSystem @*/;
-
-/**
- */
-typedef void * (*fdio_ffileno_function_t) (FD_t fd)
- /[EMAIL PROTECTED] fileSystem @*/
- /[EMAIL PROTECTED] fileSystem @*/;
-
-/**
- */
-typedef int (*fdio_fflush_function_t) (FD_t fd)
- /[EMAIL PROTECTED] fileSystem @*/
- /[EMAIL PROTECTED] fileSystem @*/;
-/[EMAIL PROTECTED]/
-
-
-/** \ingroup rpmrpc
- * \name RPMRPC Vectors.
- */
-/[EMAIL PROTECTED]/
-
-/**
- */
-typedef int (*fdio_mkdir_function_t) (const char * path, mode_t mode)
- /[EMAIL PROTECTED] errno, fileSystem @*/
- /[EMAIL PROTECTED] errno, fileSystem @*/;
-
-/**
- */
-typedef int (*fdio_chdir_function_t) (const char * path)
- /[EMAIL PROTECTED] errno, fileSystem @*/
- /[EMAIL PROTECTED] errno, fileSystem @*/;
-
-/**
- */
-typedef int (*fdio_rmdir_function_t) (const char * path)
- /[EMAIL PROTECTED] errno, fileSystem @*/
- /[EMAIL PROTECTED] errno, fileSystem @*/;
-
-/**
- */
-typedef int (*fdio_rename_function_t) (const char * oldpath, const char *
newpath)
/[EMAIL PROTECTED] errno, fileSystem @*/
/[EMAIL PROTECTED] errno, fileSystem @*/;
/**
*/
-typedef int (*fdio_unlink_function_t) (const char * path)
+typedef FD_t (*fdio_fdopen_function_t) (void * cookie, const char * fmode)
/[EMAIL PROTECTED] errno, fileSystem @*/
/[EMAIL PROTECTED] errno, fileSystem @*/;
-/[EMAIL PROTECTED]@*/
-
-/**
- */
-typedef int (*fdio_stat_function_t) (const char * path, /[EMAIL
PROTECTED]@*/ struct stat * st)
- /[EMAIL PROTECTED] errno, fileSystem @*/
- /[EMAIL PROTECTED] *st, errno, fileSystem @*/;
-
-/**
- */
-typedef int (*fdio_lstat_function_t) (const char * path, /[EMAIL
PROTECTED]@*/ struct stat * st)
- /[EMAIL PROTECTED] errno, fileSystem @*/
- /[EMAIL PROTECTED] *st, errno, fileSystem @*/;
-/**
- */
-typedef int (*fdio_access_function_t) (const char * path, int amode)
- /[EMAIL PROTECTED] errno, fileSystem @*/
- /[EMAIL PROTECTED] errno, fileSystem @*/;
-/[EMAIL PROTECTED]@*/
/[EMAIL PROTECTED]/
@@ -206,22 +107,8 @@
fdio_write_function_t write;
fdio_seek_function_t seek;
fdio_close_function_t close;
-
- fdio_ref_function_t _fdref;
- fdio_deref_function_t _fdderef;
- fdio_new_function_t _fdnew;
- fdio_fileno_function_t _fileno;
-
- fdio_open_function_t _open;
fdio_fopen_function_t _fopen;
- fdio_ffileno_function_t _ffileno;
- fdio_fflush_function_t _fflush;
-
- fdio_mkdir_function_t _mkdir;
- fdio_chdir_function_t _chdir;
- fdio_rmdir_function_t _rmdir;
- fdio_rename_function_t _rename;
- fdio_unlink_function_t _unlink;
+ fdio_fdopen_function_t _fdopen;
};
@@ -549,30 +436,9 @@
/[EMAIL PROTECTED] fileSystem, internalState @*/
/[EMAIL PROTECTED] fileSystem, internalState @*/;
-#ifdef UNUSED
-/[EMAIL PROTECTED]@*/ FILE *fdFdopen( /[EMAIL PROTECTED]@*/ void * cookie,
const char * mode);
-#endif
-
-/* XXX Legacy interfaces needed by gnorpm, rpmfind et al */
-
/[EMAIL PROTECTED]@*/
/**
*/
-#ifndef H_RPMIO_INTERNAL /* XXX avoid gcc warning */
-/[EMAIL PROTECTED]@*/ int fdFileno(void * cookie)
- /[EMAIL PROTECTED]/;
-#define fdFileno(_fd) fdio->_fileno(_fd)
-#endif
-
-/**
- */
-/[EMAIL PROTECTED]@*/ FD_t fdOpen(const char *path, int flags, mode_t mode)
- /[EMAIL PROTECTED] errno, fileSystem, internalState @*/
- /[EMAIL PROTECTED] errno, fileSystem, internalState @*/;
-#define fdOpen(_path, _flags, _mode) fdio->_open((_path), (_flags),
(_mode))
-
-/**
- */
/[EMAIL PROTECTED]@*/
ssize_t fdRead(void * cookie, /[EMAIL PROTECTED]@*/ char * buf, size_t count)
/[EMAIL PROTECTED] errno, fileSystem, internalState @*/
@@ -598,12 +464,24 @@
/**
*/
+/[EMAIL PROTECTED]@*/ FD_t fdOpen(const char *path, int flags, mode_t mode)
+ /[EMAIL PROTECTED] errno, fileSystem, internalState @*/
+ /[EMAIL PROTECTED] errno, fileSystem, internalState @*/;
+#define fdOpen(_path, _flags, _mode) fdio->_open((_path), (_flags),
(_mode))
+
+/**
+ */
/[EMAIL PROTECTED]@*/
/[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/
FD_t fdLink (/[EMAIL PROTECTED]@*/ void * cookie, const char * msg)
/[EMAIL PROTECTED] fileSystem @*/
/[EMAIL PROTECTED] *cookie, fileSystem @*/;
-#define fdLink(_fd, _msg) fdio->_fdref(_fd, _msg, __FILE__,
__LINE__)
+/[EMAIL PROTECTED]@*/
+/[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/
+FD_t XfdLink (/[EMAIL PROTECTED]@*/ void * cookie, const char * msg, const
char * fn, unsigned ln)
+ /[EMAIL PROTECTED] fileSystem @*/
+ /[EMAIL PROTECTED] *cookie, fileSystem @*/;
+#define fdLink(_fd, _msg) XfdLink(_fd, _msg, __FILE__, __LINE__)
/**
*/
@@ -612,7 +490,12 @@
FD_t fdFree(/[EMAIL PROTECTED]@*/ FD_t fd, const char * msg)
/[EMAIL PROTECTED] fileSystem @*/
/[EMAIL PROTECTED] fd, fileSystem @*/;
-#define fdFree(_fd, _msg) fdio->_fdderef(_fd, _msg, __FILE__,
__LINE__)
+/[EMAIL PROTECTED]@*/
+/[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/
+FD_t XfdFree(/[EMAIL PROTECTED]@*/ FD_t fd, const char * msg, const char *
fn, unsigned ln)
+ /[EMAIL PROTECTED] fileSystem @*/
+ /[EMAIL PROTECTED] fd, fileSystem @*/;
+#define fdFree(_fd, _msg) XfdFree(_fd, _msg, __FILE__, __LINE__)
/**
*/
@@ -621,7 +504,12 @@
FD_t fdNew (const char * msg)
/[EMAIL PROTECTED] fileSystem @*/
/[EMAIL PROTECTED] fileSystem @*/;
-#define fdNew(_msg) fdio->_fdnew(_msg, __FILE__, __LINE__)
+/[EMAIL PROTECTED]@*/
+/[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/
+FD_t XfdNew (const char * msg, const char * fn, unsigned ln)
+ /[EMAIL PROTECTED] fileSystem @*/
+ /[EMAIL PROTECTED] fileSystem @*/;
+#define fdNew(_msg) XfdNew(_msg, __FILE__, __LINE__)
/**
*/
@@ -769,9 +657,6 @@
*/
/[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/ extern FDIO_t lzdio;
-/**
- */
-/[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/ extern FDIO_t fadio;
/[EMAIL PROTECTED]@*/
/[EMAIL PROTECTED]/
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmio/rpmio_internal.h
============================================================================
$ cvs diff -u -r2.73.2.2 -r2.73.2.3 rpmio_internal.h
--- rpm/rpmio/rpmio_internal.h 9 Jun 2007 19:08:54 -0000 2.73.2.2
+++ rpm/rpmio/rpmio_internal.h 31 May 2008 18:59:06 -0000 2.73.2.3
@@ -251,6 +251,11 @@
/** \ingroup rpmio
*/
+/[EMAIL PROTECTED]@*/ const char * fdbg(/[EMAIL PROTECTED]@*/ FD_t fd)
+ /[EMAIL PROTECTED]/;
+
+/** \ingroup rpmio
+ */
int fdFgets(FD_t fd, char * buf, size_t len)
/[EMAIL PROTECTED] errno, fileSystem @*/
/[EMAIL PROTECTED] *buf, fd, errno, fileSystem @*/;
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmio/rpmrpc.c
============================================================================
$ cvs diff -u -r2.49.2.2 -r2.49.2.3 rpmrpc.c
--- rpm/rpmio/rpmrpc.c 17 Jun 2007 14:41:58 -0000 2.49.2.2
+++ rpm/rpmio/rpmrpc.c 31 May 2008 18:59:06 -0000 2.49.2.3
@@ -1567,6 +1567,8 @@
const char * lpath;
int ut = urlPath(path, &lpath);
+if (_rpmio_debug)
+fprintf(stderr, "*** Readlink(%s,%p[%u])\n", path, buf, (unsigned)bufsiz);
switch (ut) {
case URL_IS_FTP:
return ftpReadlink(path, buf, bufsiz);
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmio/rpmurl.h
============================================================================
$ cvs diff -u -r1.22 -r1.22.2.1 rpmurl.h
--- rpm/rpmio/rpmurl.h 25 May 2007 17:36:37 -0000 1.22
+++ rpm/rpmio/rpmurl.h 31 May 2008 18:59:06 -0000 1.22.2.1
@@ -49,7 +49,9 @@
int proxyp; /*!< FTP/HTTP: proxy port */
int port; /*!< URI port. */
int urltype; /*!< URI type. */
+/[EMAIL PROTECTED]@*/
FD_t ctrl; /*!< control channel */
+/[EMAIL PROTECTED]@*/
FD_t data; /*!< per-xfer data channel */
/[EMAIL PROTECTED]@*/
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmio/strtolocale.c
============================================================================
$ cvs diff -u -r1.2 -r1.2.2.1 strtolocale.c
--- rpm/rpmio/strtolocale.c 25 May 2007 18:34:14 -0000 1.2
+++ rpm/rpmio/strtolocale.c 31 May 2008 18:59:06 -0000 1.2.2.1
@@ -41,7 +41,7 @@
size_t dest_offset;
if (errno != E2BIG) {
free(result);
- iconv_close(cd);
+ (void) iconv_close(cd);
return str;
}
dest_offset = dest - result;
@@ -53,7 +53,7 @@
src = NULL;
}
}
- iconv_close(cd);
+ (void) iconv_close(cd);
free((void *)str);
if (dest_size == 0) {
size_t dest_offset = dest - result;
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmio/url.c
============================================================================
$ cvs diff -u -r1.35.2.3 -r1.35.2.4 url.c
--- rpm/rpmio/url.c 17 Jun 2007 14:41:58 -0000 1.35.2.3
+++ rpm/rpmio/url.c 31 May 2008 18:59:06 -0000 1.35.2.4
@@ -99,14 +99,14 @@
if (fp) {
fdPush(u->ctrl, fpio, fp, -1); /* Push fpio onto stack */
(void) Fclose(u->ctrl);
- } else if (fdio->_fileno(u->ctrl) >= 0)
+ } else if (fdFileno(u->ctrl) >= 0)
xx = fdio->close(u->ctrl);
/[EMAIL PROTECTED]@*/
#else
- (void) Fclose(u->ctrl);
+ xx = Fclose(u->ctrl);
#endif
- u->ctrl = fdio->_fdderef(u->ctrl, "persist ctrl (urlFree)", file, line);
+ u->ctrl = XfdFree(u->ctrl, "persist ctrl (urlFree)", file, line);
/[EMAIL PROTECTED]@*/
if (u->ctrl)
fprintf(stderr, _("warning: u %p ctrl %p nrefs != 0 (%s %s)\n"),
@@ -120,13 +120,13 @@
if (fp) {
fdPush(u->data, fpio, fp, -1); /* Push fpio onto stack */
(void) Fclose(u->data);
- } else if (fdio->_fileno(u->data) >= 0)
+ } else if (fdFileno(u->data) >= 0)
xx = fdio->close(u->data);
#else
- (void) Fclose(u->ctrl);
+ xx = Fclose(u->ctrl);
#endif
- u->data = fdio->_fdderef(u->data, "persist data (urlFree)", file, line);
+ u->data = XfdFree(u->data, "persist data (urlFree)", file, line);
/[EMAIL PROTECTED]@*/
if (u->data)
fprintf(stderr, _("warning: u %p data %p nrefs != 0 (%s %s)\n"),
@@ .
______________________________________________________________________
RPM Package Manager http://rpm5.org
CVS Sources Repository [email protected]