Main Page | Modules | Data Structures | Directories | File List | Data Fields | Globals | Related Pages

RPMIO.


Files

file  argv.c
file  argv.h
file  macro.c
file  rpmlog.c
file  rpmlog.h
 Yet Another syslog(3) API clone.
file  rpmerr.h
file  rpmio.c
file  rpmio.h
file  rpmio_internal.h
file  rpmmacro.h
file  rpmmalloc.c
file  rpmmessages.h
file  rpmpgp.c
 Routines to handle RFC-2440 detached signatures.
file  rpmpgp.h
 OpenPGP constants and structures from RFC-2440.
file  rpmrpc.c
file  rpmsq.c
file  rpmsq.h
file  rpmsw.c
file  rpmsw.h
file  rpmurl.h
file  strcasecmp.c
file  ugid.c
file  ugid.h
file  url.c

Data Structures

struct  FDIO_s
struct  pgpDigParams_s
struct  pgpDig_s
struct  _FDSTACK_s
struct  _FDDIGEST_s
struct  _FD_s
struct  rpmsw_s
struct  rpmop_s

[NOHEADER]

typedef off_t _libio_off_t
typedef off_t _libio_pos_t

RPMIO Vectors.

typedef ssize_t(* fdio_read_function_t )(void *cookie, char *buf, size_t nbytes)
typedef ssize_t(* fdio_write_function_t )(void *cookie, const char *buf, size_t nbytes)
typedef int(* fdio_seek_function_t )(void *cookie, _libio_pos_t pos, int whence)
typedef int(* fdio_close_function_t )(void *cookie)
typedef FD_t(* fdio_ref_function_t )(void *cookie, const char *msg, const char *file, unsigned line)
typedef FD_t(* fdio_deref_function_t )(FD_t fd, const char *msg, const char *file, unsigned line)
typedef FD_t(* fdio_new_function_t )(const char *msg, const char *file, unsigned line)
typedef int(* fdio_fileno_function_t )(void *cookie)
typedef FD_t(* fdio_open_function_t )(const char *path, int flags, mode_t mode)
typedef FD_t(* fdio_fopen_function_t )(const char *path, const char *fmode)
typedef void *(* fdio_ffileno_function_t )(FD_t fd)
typedef int(* fdio_fflush_function_t )(FD_t fd)

RPMIO Interface.

const char * Fstrerror (FD_t fd)
 strerror(3) clone.
size_t Fread (void *buf, size_t size, size_t nmemb, FD_t fd)
 fread(3) clone.
size_t Fwrite (const void *buf, size_t size, size_t nmemb, FD_t fd)
 fwrite(3) clone.
int Fseek (FD_t fd, _libio_off_t offset, int whence)
 fseek(3) clone.
int Fclose (FD_t fd)
 fclose(3) clone.
FD_t Fdopen (FD_t ofd, const char *fmode)
FD_t Fopen (const char *path, const char *fmode)
 fopen(3) clone.
int Fflush (FD_t fd)
 fflush(3) clone.
int Ferror (FD_t fd)
 ferror(3) clone.
int Fileno (FD_t fd)
 fileno(3) clone.
int Fcntl (FD_t fd, int op, void *lip)
 fcntl(2) clone.

RPMIO Utilities.

off_t fdSize (FD_t fd)

Typedefs

typedef _FD_sFD_t
typedef FDIO_sFDIO_t
typedef _FDSTACK_s FDSTACK_t
typedef enum fdOpX_e fdOpX
struct {
   rpmop_s   ops [FDSTAT_MAX]
FDSTAT_t
typedef _FDDIGEST_sFDDIGEST_t
typedef enum rpmDigestFlags_e rpmDigestFlags
typedef unsigned long int rpmtime_t
typedef rpmsw_srpmsw
typedef rpmop_srpmop

Enumerations

enum  fdOpX_e {
  FDSTAT_READ = 0, FDSTAT_WRITE = 1, FDSTAT_SEEK = 2, FDSTAT_CLOSE = 3,
  FDSTAT_DIGEST = 4, FDSTAT_MAX = 5
}
enum  rpmDigestFlags_e { RPMDIGEST_NONE = 0 }

Functions

int xstrcasecmp (const char *s1, const char *s2)
int xstrncasecmp (const char *s1, const char *s2, size_t n)
int fdFgets (FD_t fd, char *buf, size_t len)
FD_t ftpOpen (const char *url, int flags, mode_t mode, urlinfo *uret)
int ftpReq (FD_t data, const char *ftpCmd, const char *ftpArg)
int ftpCmd (const char *cmd, const char *url, const char *arg2)
int ufdClose (void *cookie)
FDIO_t fdGetIo (FD_t fd)
void fdSetIo (FD_t fd, FDIO_t io)
FILE * fdGetFILE (FD_t fd)
void * fdGetFp (FD_t fd)
void fdSetFp (FD_t fd, void *fp)
int fdGetFdno (FD_t fd)
void fdSetFdno (FD_t fd, int fdno)
void fdSetContentLength (FD_t fd, ssize_t contentLength)
void fdPush (FD_t fd, FDIO_t io, void *fp, int fdno)
void fdPop (FD_t fd)
rpmop fdstat_op (FD_t fd, fdOpX opx)
void fdstat_enter (FD_t fd, int opx)
void fdstat_exit (FD_t fd, int opx, ssize_t rc)
void fdstat_print (FD_t fd, const char *msg, FILE *fp)
void fdSetSyserrno (FD_t fd, int syserrno, const void *errcookie)
int fdGetRdTimeoutSecs (FD_t fd)
long int fdGetCpioPos (FD_t fd)
void fdSetCpioPos (FD_t fd, long int cpioPos)
FD_t c2f (void *cookie)
void fdInitDigest (FD_t fd, pgpHashAlgo hashalgo, int flags)
void fdUpdateDigests (FD_t fd, const unsigned char *buf, ssize_t buflen)
void fdFiniDigest (FD_t fd, pgpHashAlgo hashalgo, void **datap, size_t *lenp, int asAscii)
int fdFileno (void *cookie)
DIGEST_CTX rpmDigestDup (DIGEST_CTX octx)
DIGEST_CTX rpmDigestInit (pgpHashAlgo hashalgo, rpmDigestFlags flags)
int rpmDigestUpdate (DIGEST_CTX ctx, const void *data, size_t len)
int rpmDigestFinal (DIGEST_CTX ctx, void **datap, size_t *lenp, int asAscii)
rpmtime_t tvsub (const struct timeval *etv, const struct timeval *btv)
int rpmswEnter (rpmop op, ssize_t rc)
rpmtime_t rpmswExit (rpmop op, ssize_t rc)
rpmtime_t rpmswAdd (rpmop to, rpmop from)
rpmtime_t rpmswSub (rpmop to, rpmop from)

Typedef Documentation

typedef off_t _libio_off_t
 

Definition at line 40 of file rpmio.h.

typedef off_t _libio_pos_t
 

Definition at line 41 of file rpmio.h.

Referenced by Fseek().

typedef struct _FD_s* FD_t
 

Definition at line 47 of file rpmio.h.

Referenced by __fdClose(), __fdOpen(), __fdRead(), __fdWrite(), addFileToTagAux(), c2f(), checkResponse(), copyFile(), cpio_copy(), cpio_doio(), defaultMachine(), domd5(), doReadRC(), doScript(), Fclose(), Fcntl(), fdbg(), fdDup(), fdFgets(), fdFileno(), fdFiniDigest(), fdGetCpioPos(), fdGetFdno(), fdGetFILE(), fdGetFp(), fdGetIo(), fdGetRdTimeoutSecs(), fdInitDigest(), Fdopen(), fdPop(), fdPush(), fdReadable(), fdSeek(), fdSeekNot(), fdSetContentLength(), fdSetCpioPos(), fdSetFdno(), fdSetFp(), fdSetIo(), fdSetSyserrno(), fdSize(), fdstat_enter(), fdstat_exit(), fdstat_op(), fdstat_print(), fdUpdateDigests(), fdWritable(), Ferror(), Fflush(), Fileno(), Fopen(), Fread(), Fseek(), fsmSetup(), Fstrerror(), ftpAbort(), ftpFileDone(), ftpNLST(), ftpOpen(), ftpReq(), ftsStashLatest(), Fwrite(), getFdErrstr(), headerRead(), headerWrite(), httpOpen(), httpReq(), httpResp(), IDTXglob(), isCompressed(), isSpecFile(), main(), makeGPGSignature(), makeHDRSignature(), makePGPSignature(), makeTempFile(), manageFile(), printSize(), processPackageFiles(), readFile(), readIcon(), readLead(), readRPM(), rpmcliSign(), rpmfd_Wrap(), rpmGraph(), rpmHeaderFromFD(), rpmHeaderFromFile(), rpmInstallSource(), rpmInstallSourcePackage(), rpmioSlurp(), rpmLoadMacroFile(), rpmMergeHeaders(), rpmMergeHeadersFromFD(), rpmQueryVerify(), rpmReadHeader(), rpmReadHeaders(), rpmReadPackageFile(), rpmReadPackageManifest(), rpmReadRC(), rpmReadSignature(), rpmReSign(), rpmShowProgress(), rpmteFd(), rpmts_HdrFromFdno(), rpmtsCallback(), rpmtsScriptFd(), rpmtsSetScriptFd(), rpmtsSolve(), rpmVerifyScript(), rpmVerifySignatures(), rpmWriteSignature(), runScript(), showVerifyPackage(), tcpConnect(), ufdClose(), ufdCopy(), ufdGetFile(), ufdGetUrlinfo(), ufdOpen(), ufdRead(), ufdSeek(), ufdWrite(), urlConnect(), urlGetFile(), writeLead(), writeRPM(), XfdFree(), XfdLink(), and XfdNew().

typedef struct _FDDIGEST_s * FDDIGEST_t
 

Referenced by fdFiniDigest(), fdInitDigest(), fdUpdateDigests(), readFile(), rpmReadPackageFile(), and XfdFree().

typedef int(* fdio_close_function_t)(void *cookie)
 

Definition at line 84 of file rpmio.h.

Referenced by Fclose().

typedef FD_t(* fdio_deref_function_t)(FD_t fd, const char *msg, const char *file, unsigned line)
 

Definition at line 98 of file rpmio.h.

typedef void*(* fdio_ffileno_function_t)(FD_t fd)
 

Definition at line 133 of file rpmio.h.

typedef int(* fdio_fflush_function_t)(FD_t fd)
 

Definition at line 139 of file rpmio.h.

typedef int(* fdio_fileno_function_t)(void *cookie)
 

Definition at line 114 of file rpmio.h.

typedef FD_t(* fdio_fopen_function_t)(const char *path, const char *fmode)
 

Definition at line 127 of file rpmio.h.

typedef FD_t(* fdio_new_function_t)(const char *msg, const char *file, unsigned line)
 

Definition at line 106 of file rpmio.h.

typedef FD_t(* fdio_open_function_t)(const char *path, int flags, mode_t mode)
 

Definition at line 121 of file rpmio.h.

typedef ssize_t(* fdio_read_function_t)(void *cookie, char *buf, size_t nbytes)
 

Definition at line 64 of file rpmio.h.

Referenced by Fread().

typedef FD_t(* fdio_ref_function_t)(void *cookie, const char *msg, const char *file, unsigned line)
 

Definition at line 91 of file rpmio.h.

typedef int(* fdio_seek_function_t)(void *cookie, _libio_pos_t pos, int whence)
 

Definition at line 78 of file rpmio.h.

Referenced by Fseek().

typedef struct FDIO_s* FDIO_t
 

Definition at line 51 of file rpmio.h.

Referenced by fdGetIo(), Fdopen(), fdPush(), and fdSetIo().

typedef ssize_t(* fdio_write_function_t)(void *cookie, const char *buf, size_t nbytes)
 

Definition at line 72 of file rpmio.h.

Referenced by Fwrite().

typedef enum fdOpX_e fdOpX
 

Identify per-desciptor I/O operation statistics.

typedef struct _FDSTACK_s FDSTACK_t
 

Referenced by Fclose(), fdbg(), and Ferror().

typedef { ... } * FDSTAT_t
 

Cumulative statistics for a descriptor.

typedef enum rpmDigestFlags_e rpmDigestFlags
 

Bit(s) to control digest operation.

typedef struct rpmop_s* rpmop
 

Definition at line 18 of file rpmsw.h.

Referenced by fdstat_op(), fdstat_print(), rpmswAdd(), rpmswEnter(), rpmswExit(), rpmswSub(), and rpmtsOp().

typedef struct rpmsw_s* rpmsw
 

Definition at line 14 of file rpmsw.h.

Referenced by rpmswDiff(), and rpmswNow().

typedef unsigned long int rpmtime_t
 

Definition at line 10 of file rpmsw.h.

Referenced by psmWait(), rpmswAdd(), rpmswDiff(), rpmswExit(), rpmswInit(), rpmswSub(), and tvsub().


Enumeration Type Documentation

enum fdOpX_e
 

Identify per-desciptor I/O operation statistics.

Enumeration values:
FDSTAT_READ  Read statistics index.
FDSTAT_WRITE  Write statistics index.
FDSTAT_SEEK  Seek statistics index.
FDSTAT_CLOSE  Close statistics index
FDSTAT_DIGEST  Digest statistics index.
FDSTAT_MAX 

Definition at line 114 of file rpmio_internal.h.

enum rpmDigestFlags_e
 

Bit(s) to control digest operation.

Enumeration values:
RPMDIGEST_NONE 

Definition at line 957 of file rpmpgp.h.


Function Documentation

FD_t c2f void *  cookie  )  [inline, static]
 

Definition at line 496 of file rpmio_internal.h.

References FD_t, and FDSANE.

Referenced by __fdClose(), __fdRead(), __fdWrite(), fdFileno(), fdSeek(), fdSeekNot(), ufdClose(), ufdRead(), ufdSeek(), ufdWrite(), and XfdLink().

int Fclose FD_t  fd  ) 
 

fclose(3) clone.

Definition at line 2687 of file rpmio.c.

References DBGIO, FD_t, fdbg(), fdFree, fdGetFdno(), fdGetFILE, fdio_close_function_t, FDIOVEC, fdLink, _FDSTACK_s::fdno, fdPop(), FDSANE, fdSetFp(), FDSTACK_t, _FDSTACK_s::fp, _FD_s::fps, _FDSTACK_s::io, _FD_s::nfps, ufdClose(), and ufdio.

Referenced by addFileToTagAux(), closeCallback(), closeSpec(), cpio_doio(), defaultMachine(), domd5(), doReadRC(), doScript(), fsmStage(), ftsStashLatest(), IDTXglob(), isCompressed(), isSpecFile(), main(), makeGPGSignature(), makeHDRSignature(), makePGPSignature(), makeTempFile(), manageFile(), processPackageFiles(), readIcon(), readLine(), readRPM(), rewriteRPM(), rpmcliSign(), rpmfd_dealloc(), rpmfd_free(), rpmfd_init(), rpmGraph(), rpmHeaderFromFD(), rpmHeaderFromFile(), rpmInstall(), rpmInstallSourcePackage(), rpmioSlurp(), rpmLoadMacroFile(), rpmMergeHeadersFromFD(), rpmpsmStage(), rpmQueryVerify(), rpmShowProgress(), rpmts_dealloc(), rpmts_free(), rpmts_HdrFromFdno(), rpmtsCallback(), rpmtsSolve(), runScript(), showVerifyPackage(), ufdGetFile(), urlGetFile(), writeRPM(), and XurlFree().

int Fcntl FD_t  fd,
int  op,
void *  lip
 

fcntl(2) clone.

Definition at line 3088 of file rpmio.c.

References FD_t, and Fileno().

int fdFgets FD_t  fd,
char *  buf,
size_t  len
 

Definition at line 582 of file rpmio.c.

References errno, FD_t, fdFileno, fdRead, fdReadable(), _FD_s::rd_timeoutsecs, strerror(), and _FD_s::syserrno.

Referenced by checkResponse(), and ftpNLST().

int fdFileno void *  cookie  )  [inline, static]
 

Definition at line 587 of file rpmio_internal.h.

References c2f(), FD_t, _FDSTACK_s::fdno, and _FD_s::fps.

void fdFiniDigest FD_t  fd,
pgpHashAlgo  hashalgo,
void **  datap,
size_t *  lenp,
int  asAscii
[inline, static]
 

Definition at line 548 of file rpmio_internal.h.

References _FD_s::digests, FD_t, FDDIGEST_t, FDSTAT_DIGEST, fdstat_enter(), fdstat_exit(), _FDDIGEST_s::hashalgo, _FDDIGEST_s::hashctx, _FD_s::ndigests, and rpmDigestFinal().

Referenced by domd5(), expandRegular(), and writeRPM().

long int fdGetCpioPos FD_t  fd  )  [inline, static]
 

Definition at line 476 of file rpmio_internal.h.

References _FD_s::fd_cpioPos, FD_t, and FDSANE.

Referenced by fsmSetup(), and fsmStage().

int fdGetFdno FD_t  fd  )  [inline, static]
 

Definition at line 310 of file rpmio_internal.h.

References FD_t, _FDSTACK_s::fdno, FDSANE, _FD_s::fps, and _FD_s::nfps.

Referenced by Fclose(), Fopen(), and ufdWrite().

FILE* fdGetFILE FD_t  fd  )  [inline, static]
 

Definition at line 268 of file rpmio_internal.h.

References FD_t, FDSANE, _FDSTACK_s::fp, _FD_s::fps, and _FD_s::nfps.

void* fdGetFp FD_t  fd  )  [inline, static]
 

Definition at line 282 of file rpmio_internal.h.

References FD_t, FDSANE, _FDSTACK_s::fp, _FD_s::fps, and _FD_s::nfps.

Referenced by addFileToTagAux(), doScript(), Fdopen(), Fflush(), Fopen(), processPackageFiles(), readLine(), rpmfd_Fopen(), rpmReadPackageManifest(), and XurlFree().

FDIO_t fdGetIo FD_t  fd  )  [inline, static]
 

Definition at line 240 of file rpmio_internal.h.

References FD_t, FDIO_t, FDSANE, _FD_s::fps, _FDSTACK_s::io, and _FD_s::nfps.

Referenced by Fflush(), Fread(), Fseek(), Fwrite(), getFdErrstr(), ufdRead(), and ufdWrite().

int fdGetRdTimeoutSecs FD_t  fd  )  [inline, static]
 

Definition at line 466 of file rpmio_internal.h.

References FD_t, FDSANE, and _FD_s::rd_timeoutsecs.

void fdInitDigest FD_t  fd,
pgpHashAlgo  hashalgo,
int  flags
[inline, static]
 

Attach digest to fd.

Definition at line 510 of file rpmio_internal.h.

References _FD_s::digests, FD_t, FDDIGEST_t, FDSTAT_DIGEST, fdstat_enter(), fdstat_exit(), _FDDIGEST_s::hashalgo, _FDDIGEST_s::hashctx, _FD_s::ndigests, and rpmDigestInit().

Referenced by domd5(), expandRegular(), rpmReadPackageFile(), rpmVerifySignatures(), and writeRPM().

FD_t Fdopen FD_t  ofd,
const char *  fmode
 

Definition at line 2841 of file rpmio.c.

References FDIO_s::close, cvtfmode(), DBGIO, FD_t, fdbg(), fdGetFp(), FDIO_t, fdLink, fdPush(), FDSANE, fdSetFp(), Fileno(), fpio, FDIO_s::read, FDIO_s::seek, and FDIO_s::write.

Referenced by cpio_doio(), doScript(), Fopen(), main(), and rpmpsmStage().

void fdPop FD_t  fd  )  [inline, static]
 

Definition at line 359 of file rpmio_internal.h.

References FD_t, FDSANE, fdSetFdno(), fdSetFp(), fdSetIo(), and _FD_s::nfps.

Referenced by Fclose().

void fdPush FD_t  fd,
FDIO_t  io,
void *  fp,
int  fdno
[inline, static]
 

Definition at line 344 of file rpmio_internal.h.

References FD_t, FDIO_t, FDSANE, fdSetFdno(), fdSetFp(), fdSetIo(), _FD_s::fps, and _FD_s::nfps.

Referenced by Fdopen(), Fopen(), and XurlFree().

void fdSetContentLength FD_t  fd,
ssize_t  contentLength
[inline, static]
 

Definition at line 334 of file rpmio_internal.h.

References _FD_s::bytesRemain, _FD_s::contentLength, FD_t, and FDSANE.

void fdSetCpioPos FD_t  fd,
long int  cpioPos
[inline, static]
 

Definition at line 486 of file rpmio_internal.h.

References _FD_s::fd_cpioPos, FD_t, and FDSANE.

Referenced by fsmSetup(), and fsmStage().

void fdSetFdno FD_t  fd,
int  fdno
[inline, static]
 

Definition at line 322 of file rpmio_internal.h.

References FD_t, _FDSTACK_s::fdno, FDSANE, _FD_s::fps, and _FD_s::nfps.

Referenced by __fdClose(), __fdOpen(), fdDup(), fdPop(), fdPush(), ftpReq(), and tcpConnect().

void fdSetFp FD_t  fd,
void *  fp
[inline, static]
 

Definition at line 295 of file rpmio_internal.h.

References FD_t, FDSANE, _FDSTACK_s::fp, _FD_s::fps, and _FD_s::nfps.

Referenced by Fclose(), Fdopen(), fdPop(), fdPush(), and ufdClose().

void fdSetIo FD_t  fd,
FDIO_t  io
[inline, static]
 

Definition at line 253 of file rpmio_internal.h.

References FD_t, FDIO_t, FDSANE, _FD_s::fps, _FDSTACK_s::io, and _FD_s::nfps.

Referenced by fdPop(), fdPush(), ftpOpen(), httpOpen(), ufdOpen(), and urlConnect().

void fdSetSyserrno FD_t  fd,
int  syserrno,
const void *  errcookie
[inline, static]
 

Definition at line 453 of file rpmio_internal.h.

References _FD_s::errcookie, FD_t, FDSANE, and _FD_s::syserrno.

Referenced by ftpLogin(), ftpReq(), httpReq(), and tcpConnect().

off_t fdSize FD_t  fd  ) 
 

Definition at line 195 of file rpmio.c.

References _FD_s::contentLength, DBGIO, FD_t, FDSANE, Fileno(), URL_IS_DASH, URL_IS_FTP, URL_IS_HTTP, URL_IS_PATH, URL_IS_UNKNOWN, and _FD_s::urlType.

Referenced by doReadRC(), readIcon(), and rpmioSlurp().

void fdstat_enter FD_t  fd,
int  opx
[inline, static]
 

Definition at line 388 of file rpmio_internal.h.

References FD_t, fdstat_op(), rpmswEnter(), and _FD_s::stats.

Referenced by __fdClose(), __fdRead(), __fdWrite(), fdFiniDigest(), fdInitDigest(), fdSeek(), and fdUpdateDigests().

void fdstat_exit FD_t  fd,
int  opx,
ssize_t  rc
[inline, static]
 

Definition at line 400 of file rpmio_internal.h.

References _FD_s::bytesRemain, FD_t, fdstat_op(), rpmswExit(), _FD_s::stats, and _FD_s::syserrno.

Referenced by __fdClose(), __fdRead(), __fdWrite(), fdFiniDigest(), fdInitDigest(), fdSeek(), and fdUpdateDigests().

rpmop fdstat_op FD_t  fd,
fdOpX  opx
[inline, static]
 

Definition at line 373 of file rpmio_internal.h.

References FD_t, rpmop, and _FD_s::stats.

Referenced by fdstat_enter(), fdstat_exit(), fsmStage(), and rpmpsmStage().

void fdstat_print FD_t  fd,
const char *  msg,
FILE *  fp
[inline, static]
 

Definition at line 417 of file rpmio_internal.h.

References rpmop_s::bytes, rpmop_s::count, FD_t, FDSTAT_CLOSE, FDSTAT_READ, FDSTAT_SEEK, FDSTAT_WRITE, rpmop, _FD_s::stats, and rpmop_s::usecs.

void fdUpdateDigests FD_t  fd,
const unsigned char *  buf,
ssize_t  buflen
[inline, static]
 

Update digest(s) attached to fd.

Definition at line 528 of file rpmio_internal.h.

References _FD_s::digests, FD_t, FDDIGEST_t, FDSTAT_DIGEST, fdstat_enter(), fdstat_exit(), _FDDIGEST_s::hashctx, _FD_s::ndigests, and rpmDigestUpdate().

Referenced by __fdRead(), and __fdWrite().

int Ferror FD_t  fd  ) 
 

ferror(3) clone.

Definition at line 3039 of file rpmio.c.

References DBGIO, _FD_s::errcookie, FD_t, fdbg(), fdFileno, fdGetFILE, FDSTACK_t, _FD_s::fps, _FDSTACK_s::io, _FD_s::nfps, and _FD_s::syserrno.

Referenced by addFileToTagAux(), cpio_copy(), defaultMachine(), domd5(), doReadRC(), doScript(), fsmStage(), ftsStashLatest(), IDTXglob(), isCompressed(), isSpecFile(), main(), makeGPGSignature(), makeHDRSignature(), makePGPSignature(), makeTempFile(), manageFile(), processPackageFiles(), readIcon(), readLead(), readLine(), readRPM(), rpmcliSign(), rpmfd_Fopen(), rpmfd_init(), rpmGraph(), rpmInstall(), rpmioSlurp(), rpmLoadMacroFile(), rpmpsmStage(), rpmQueryVerify(), rpmReadRC(), rpmShowProgress(), rpmtsSolve(), runScript(), urlGetFile(), and writeRPM().

int Fflush FD_t  fd  ) 
 

fflush(3) clone.

Definition at line 3019 of file rpmio.c.

References FD_t, fdGetFILE, fdGetFp(), and fdGetIo().

Referenced by cpio_doio(), expandRegular(), rpmpsmStage(), and writeRPM().

int Fileno FD_t  fd  ) 
 

fileno(3) clone.

Definition at line 3074 of file rpmio.c.

References DBGIO, FD_t, fdbg(), _FDSTACK_s::fdno, _FD_s::fps, and _FD_s::nfps.

Referenced by cpio_doio(), doScript(), Fcntl(), Fdopen(), fdSize(), makeTempFile(), printSize(), rpmpsmStage(), rpmReadPackageFile(), runScript(), ufdOpen(), writeFile(), and writeRPM().

FD_t Fopen const char *  path,
const char *  fmode
 

fopen(3) clone.

Definition at line 2948 of file rpmio.c.

References cvtfmode(), FD_t, fdClose, fdFileno, fdGetFdno(), fdGetFp(), Fdopen(), fdOpen, fdPush(), fpio, ufdOpen(), URL_IS_DASH, URL_IS_FTP, URL_IS_HTTP, URL_IS_PATH, URL_IS_UNKNOWN, and urlIsURL().

Referenced by addFileToTagAux(), defaultMachine(), domd5(), doReadRC(), fsmStage(), ftsStashLatest(), IDTXglob(), isCompressed(), isSpecFile(), main(), makeGPGSignature(), makeHDRSignature(), makePGPSignature(), makeTempFile(), manageFile(), processPackageFiles(), readIcon(), readLine(), readRPM(), rpmcliSign(), rpmfd_Fopen(), rpmfd_init(), rpmGraph(), rpmHeaderFromFile(), rpmInstall(), rpmioSlurp(), rpmLoadMacroFile(), rpmpsmStage(), rpmQueryVerify(), rpmReadRC(), rpmShowProgress(), rpmtsSolve(), runScript(), urlGetFile(), and writeRPM().

size_t Fread void *  buf,
size_t  size,
size_t  nmemb,
FD_t  fd
 

fread(3) clone.

Definition at line 2608 of file rpmio.c.

References DBGIO, FD_t, fdbg(), fdGetFILE, fdGetIo(), fdio_read_function_t, FDIOVEC, and FDSANE.

Referenced by copyFile(), cpio_copy(), defaultMachine(), domd5(), doReadRC(), fsmStage(), isCompressed(), isSpecFile(), main(), readFile(), readIcon(), readRPM(), rpmioSlurp(), rpmReadPackageFile(), ufdCopy(), and writeRPM().

int Fseek FD_t  fd,
_libio_off_t  offset,
int  whence
 

fseek(3) clone.

Definition at line 2655 of file rpmio.c.

References _libio_pos_t, DBGIO, FD_t, fdbg(), fdGetFILE, fdGetIo(), fdio_seek_function_t, FDIOVEC, and FDSANE.

Referenced by readRPM(), and writeRPM().

const char* Fstrerror FD_t  fd  ) 
 

strerror(3) clone.

Definition at line 2597 of file rpmio.c.

References errno, FD_t, FDSANE, getFdErrstr(), and strerror().

Referenced by copyFile(), cpio_copy(), doReadRC(), IDTXglob(), isCompressed(), isSpecFile(), main(), manageFile(), processPackageFiles(), readFile(), readIcon(), readLead(), readLine(), readRPM(), rpmfd_Fopen(), rpmfd_init(), rpmGraph(), rpmInstall(), rpmpsmStage(), rpmQueryVerify(), rpmReadPackageFile(), rpmReadRC(), rpmReSign(), rpmShowProgress(), rpmtsSolve(), urlGetFile(), and writeRPM().

int ftpCmd const char *  cmd,
const char *  url,
const char *  arg2
 

Definition at line 1416 of file rpmio.c.

References urlinfo_s::ctrl, fdFree, ftpCommand(), urlConnect(), urlinfo, and urlPath().

Referenced by ftpChdir(), ftpMkdir(), ftpRename(), ftpReq(), ftpRmdir(), and ftpUnlink().

FD_t ftpOpen const char *  url,
int  flags,
mode_t  mode,
urlinfo uret
 

Definition at line 1952 of file rpmio.c.

References _FD_s::bytesRemain, _FD_s::contentLength, urlinfo_s::data, FD_t, fdLink, fdNew, fdSetIo(), _FD_s::ftpFileDoneNeeded, _FD_s::rd_timeoutsecs, ufdio, _FD_s::url, urlConnect(), urlinfo, urlLink, and _FD_s::urlType.

Referenced by ftpNLST(), and ufdOpen().

int ftpReq FD_t  data,
const char *  ftpCmd,
const char *  ftpArg
 

Definition at line 1136 of file rpmio.c.

References alloca(), _FD_s::contentLength, urlinfo_s::ctrl, errno, FD_t, fdClose, fdFileno, fdLink, fdSetFdno(), fdSetSyserrno(), fdWrite, ftpCheckResponse(), ftpCmd(), ftpCommand(), _FD_s::ftpFileDoneNeeded, ftpStrerror(), inet_aton(), stpcpy(), _FD_s::url, urlinfo, and URLSANE.

Referenced by ftpNLST(), and ufdOpen().

size_t Fwrite const void *  buf,
size_t  size,
size_t  nmemb,
FD_t  fd
 

fwrite(3) clone.

Definition at line 2630 of file rpmio.c.

References DBGIO, FD_t, fdbg(), fdGetFILE, fdGetIo(), fdio_write_function_t, FDIOVEC, and FDSANE.

Referenced by copyFile(), cpio_copy(), fsmStage(), main(), rpmWriteSignature(), runScript(), ufdCopy(), writeLead(), and writeRPM().

DIGEST_CTX rpmDigestDup DIGEST_CTX  octx  ) 
 

Duplicate a digest context.

Parameters:
octx existing digest context
Returns:
duplicated digest context

Definition at line 36 of file digest.c.

References DIGEST_CTX, DIGEST_CTX_s::param, DIGEST_CTX_s::paramlen, and xcalloc().

Referenced by verifyGPGSignature(), verifyMD5Signature(), verifyPGPSignature(), and verifySHA1Signature().

int rpmDigestFinal DIGEST_CTX  ctx,
void **  datap,
size_t *  lenp,
int  asAscii
 

Return digest and destroy context. Final wrapup - pad to 64-byte boundary with the bit pattern 1 0* (64-bit count of bits processed, MSB-first)

Parameters:
ctx digest context
Return values:
datap address of returned digest
lenp address of digest length
Parameters:
asAscii return digest as ascii string?
Returns:
0 on success

Definition at line 114 of file digest.c.

References byte, DIGEST_CTX_s::Digest, DIGEST_CTX, DIGEST_CTX_s::digestlen, DPRINTF, DIGEST_CTX_s::param, DIGEST_CTX_s::paramlen, and xmalloc().

Referenced by domd5(), fdFiniDigest(), makeHDRSignature(), pgpFreeDig(), rhnUnload(), verifyGPGSignature(), verifyMD5Signature(), verifyPGPSignature(), verifySHA1Signature(), and XfdFree().

DIGEST_CTX rpmDigestInit pgpHashAlgo  hashalgo,
rpmDigestFlags  flags
 

Initialize digest. Set bit count to 0 and buffer to mysterious initialization constants.

Parameters:
hashalgo type of digest
flags bit(s) to control digest operation
Returns:
digest context

Definition at line 46 of file digest.c.

References DIGEST_CTX_s::datalen, DIGEST_CTX_s::Digest, DIGEST_CTX, DIGEST_CTX_s::digestlen, DPRINTF, DIGEST_CTX_s::flags, DIGEST_CTX_s::param, DIGEST_CTX_s::paramlen, PGPHASHALGO_HAVAL_5_160, PGPHASHALGO_MD2, PGPHASHALGO_MD5, PGPHASHALGO_RIPEMD160, PGPHASHALGO_SHA1, PGPHASHALGO_TIGER192, DIGEST_CTX_s::Reset, DIGEST_CTX_s::Update, and xcalloc().

Referenced by domd5(), fdInitDigest(), headerCheck(), makeHDRSignature(), readFile(), rhnUnload(), and rpmReadPackageFile().

int rpmDigestUpdate DIGEST_CTX  ctx,
const void *  data,
size_t  len
 

Update context with next plain text buffer.

Parameters:
ctx digest context
data next data buffer
len no. bytes of data
Returns:
0 on success

Definition at line 100 of file digest.c.

References DIGEST_CTX, DPRINTF, DIGEST_CTX_s::param, and DIGEST_CTX_s::Update.

Referenced by domd5(), fdUpdateDigests(), headerCheck(), makeHDRSignature(), readFile(), rhnUnload(), rpmReadPackageFile(), verifyGPGSignature(), and verifyPGPSignature().

rpmtime_t rpmswAdd rpmop  to,
rpmop  from
 

Sum statistic counters.

Parameters:
to result statistics
from operation statistics
Returns:
cumulative usecs for operation

Definition at line 273 of file rpmsw.c.

References rpmop_s::bytes, rpmop_s::count, rpmop, rpmtime_t, and rpmop_s::usecs.

Referenced by fsmStage(), psmWait(), rpmpsmStage(), rpmtsCloseDB(), and rpmtsCloseSDB().

int rpmswEnter rpmop  op,
ssize_t  rc
 

Enter timed operation.

Parameters:
op operation statistics
rc -1 clears usec counter
Returns:
0 always

Definition at line 241 of file rpmsw.c.

References rpmop_s::begin, rpmop_s::bytes, rpmop_s::count, rpmop, rpmswNow(), and rpmop_s::usecs.

Referenced by dbiDel(), dbiGet(), dbiPget(), dbiPut(), fdstat_enter(), headerCheck(), rpmpsmStage(), rpmsqWaitUnregister(), rpmtsCheck(), rpmtsCreate(), rpmtsOrder(), rpmtsRun(), verifyGPGSignature(), verifyMD5Signature(), verifyPGPSignature(), and verifySHA1Signature().

rpmtime_t rpmswExit rpmop  op,
ssize_t  rc
 

Exit timed operation.

Parameters:
op operation statistics
rc per-operation data (e.g. bytes transferred)
Returns:
cumulative usecs for operation

Definition at line 257 of file rpmsw.c.

References rpmop_s::begin, rpmop_s::bytes, rpmop, rpmswDiff(), rpmswNow(), rpmtime_t, and rpmop_s::usecs.

Referenced by dbiDel(), dbiGet(), dbiPget(), dbiPut(), fdstat_exit(), headerCheck(), rpmpsmStage(), rpmsqWaitUnregister(), rpmtsCheck(), rpmtsOrder(), rpmtsPrintStats(), rpmtsRun(), verifyGPGSignature(), verifyMD5Signature(), verifyPGPSignature(), and verifySHA1Signature().

rpmtime_t rpmswSub rpmop  to,
rpmop  from
 

Subtract statistic counters.

Parameters:
to result statistics
from operation statistics
Returns:
cumulative usecs for operation

Definition at line 285 of file rpmsw.c.

References rpmop_s::bytes, rpmop_s::count, rpmop, rpmtime_t, and rpmop_s::usecs.

rpmtime_t tvsub const struct timeval *  etv,
const struct timeval *  btv
[inline, static]
 

Return difference of 2 timeval stamps in micro-seconds.

Parameters:
*etv end timeval
*btv begin timeval
Returns:
difference in milli-seconds

Definition at line 107 of file rpmsw.c.

References rpmtime_t.

Referenced by rpmswDiff().

int ufdClose void *  cookie  ) 
 

Definition at line 1831 of file rpmio.c.

References _FD_s::bytesRemain, c2f(), _FD_s::contentLength, urlinfo_s::ctrl, urlinfo_s::data, FD_t, fdClose, fdFree, fdGetFILE, fdReadable(), fdSetFp(), fdWrite, ftpAbort(), ftpFileDone(), _FD_s::ftpFileDoneNeeded, httpResp(), urlinfo_s::httpVersion, noLibio, _FD_s::persist, urlinfo_s::service, UFDONLY, _FD_s::url, urlFree, urlinfo, urlinfo_s::urltype, and _FD_s::wr_chunked.

Referenced by Fclose(), ftpNLST(), and ufdOpen().

int xstrcasecmp const char *  s1,
const char *  s2
 

Locale insensitive strcasecmp(3).

Definition at line 9 of file strcasecmp.c.

References xtolower().

Referenced by findTag(), getTagVal(), hdr_subscript(), isMemberInEntry(), machEquivSearch(), optionCompare(), parseYesNo(), rpmLookupSignatureType(), rpmRebuildTargetVars(), tagNumFromPyObject(), and tagValue().

int xstrncasecmp const char *  s1,
const char *  s2,
size_t  n
 

Locale insensitive strncasecmp(3).

Definition at line 32 of file strcasecmp.c.

References xtolower().

Referenced by db3New(), findPreambleTag(), getTagVal(), isPart(), Link(), matchTok(), and Rename().


Variable Documentation

struct { ... } ops[FDSTAT_MAX] [inherited]
 

Cumulative statistics.

Definition at line 127 of file rpmio_internal.h.


Generated on Thu Feb 17 17:06:51 2005 for rpm by  doxygen 1.3.9.1