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

rpmio/rpmio_internal.h File Reference

More...

#include <rpmio.h>
#include <rpmurl.h>
#include <beecrypt.api.h>
#include <rpmpgp.h>
#include <rpmsw.h>
#include <beecrypt.h>
#include <base64.h>
#include <dsa.h>
#include <endianness.h>
#include <md5.h>
#include <mp.h>
#include <rsa.h>
#include <rsapk.h>
#include <sha1.h>

Go to the source code of this file.

Data Structures

struct  _FD_s
struct  _FDDIGEST_s
struct  _FDSTACK_s
struct  pgpDig_s
struct  pgpDigParams_s

Defines

#define PGPDIG_SAVED_TIME   (1 << 0)
#define PGPDIG_SAVED_ID   (1 << 1)
#define RPMIO_DEBUG_IO   0x40000000
#define RPMIO_DEBUG_REFS   0x20000000
#define FDMAGIC   0x04463138
#define FDDIGEST_MAX   4
#define FDSANE(fd)   assert(fd && fd->magic == FDMAGIC)
#define DBG(_f, _m, _x)
#define DBGIO(_f, _x)   DBG((_f), RPMIO_DEBUG_IO, _x)
#define DBGREFS(_f, _x)   DBG((_f), RPMIO_DEBUG_REFS, _x)

Typedefs

typedef _FDSTACK_s FDSTACK_t
typedef enum fdOpX_e fdOpX
struct {
   rpmop_s   ops [FDSTAT_MAX]
FDSTAT_t
typedef _FDDIGEST_sFDDIGEST_t

Enumerations

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

Functions

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)
int rpmioSlurp (const char *fn, const unsigned char **bp, ssize_t *blenp)
 Read an entire file into a buffer.


Variables

int _rpmio_debug
int _ftp_debug


Detailed Description

Definition in file rpmio_internal.h.


Define Documentation

#define DBG _f,
_m,
_x   
 

Value:

\
    if ((_rpmio_debug | ((_f) ? ((FD_t)(_f))->flags : 0)) & (_m)) fprintf _x \

Definition at line 184 of file rpmio_internal.h.

#define DBGIO _f,
_x       DBG((_f), RPMIO_DEBUG_IO, _x)
 

Definition at line 193 of file rpmio_internal.h.

Referenced by __fdClose(), __fdOpen(), __fdRead(), __fdWrite(), Fclose(), fdDup(), Fdopen(), fdSeek(), fdSize(), Ferror(), Fileno(), Fread(), Fseek(), ftpAbort(), Fwrite(), ufdCopy(), and ufdOpen().

#define DBGREFS _f,
_x       DBG((_f), RPMIO_DEBUG_REFS, _x)
 

Definition at line 194 of file rpmio_internal.h.

Referenced by XfdFree(), and XfdLink().

#define FDDIGEST_MAX   4
 

Definition at line 162 of file rpmio_internal.h.

Referenced by fdInitDigest().

#define FDMAGIC   0x04463138
 

Definition at line 142 of file rpmio_internal.h.

Referenced by XfdNew().

#define FDSANE fd       assert(fd && fd->magic == FDMAGIC)
 

Definition at line 172 of file rpmio_internal.h.

Referenced by c2f(), Fclose(), fdGetCpioPos(), fdGetFdno(), fdGetFILE(), fdGetFp(), fdGetIo(), fdGetRdTimeoutSecs(), Fdopen(), fdPop(), fdPush(), fdSeekNot(), fdSetContentLength(), fdSetCpioPos(), fdSetFdno(), fdSetFp(), fdSetIo(), fdSetSyserrno(), fdSize(), Fread(), Fseek(), Fstrerror(), Fwrite(), ufdGetFile(), ufdGetUrlinfo(), and XfdFree().

#define PGPDIG_SAVED_ID   (1 << 1)
 

Definition at line 49 of file rpmio_internal.h.

Referenced by pgpPrtSubType().

#define PGPDIG_SAVED_TIME   (1 << 0)
 

Definition at line 48 of file rpmio_internal.h.

Referenced by pgpPrtSubType().

#define RPMIO_DEBUG_IO   0x40000000
 

Definition at line 139 of file rpmio_internal.h.

#define RPMIO_DEBUG_REFS   0x20000000
 

Definition at line 140 of file rpmio_internal.h.


Function Documentation

int fdFgets FD_t    fd,
char *    buf,
size_t    len
 

Definition at line 562 of file rpmio.c.

References errno, 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 582 of file rpmio_internal.h.

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

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

Definition at line 1396 of file rpmio.c.

References urlinfo_s::ctrl, fdFree, ftpCommand(), urlConnect(), 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 1932 of file rpmio.c.

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

Referenced by ftpNLST(), and ufdOpen().

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

Definition at line 1116 of file rpmio.c.

References alloca(), _FD_s::contentLength, urlinfo_s::ctrl, errno, fdClose, fdFileno, fdLink, fdSetFdno(), fdSetSyserrno(), fdWrite, ftpCheckResponse(), ftpCmd(), ftpCommand(), FTPERR_BAD_SERVER_RESPONSE, FTPERR_FAILED_CONNECT, FTPERR_FAILED_DATA_CONNECT, FTPERR_PASSIVE_ERROR, FTPERR_SERVER_IO_ERROR, FTPERR_UNKNOWN, _FD_s::ftpFileDoneNeeded, ftpStrerror(), inet_aton(), stpcpy(), _FD_s::url, and URLSANE.

Referenced by ftpNLST(), and ufdOpen().

int rpmioSlurp const char *    fn,
const unsigned char **    bp,
ssize_t *    blenp
 

Read an entire file into a buffer.

Parameters:
fn  file name to read
Return values:
bp  (malloc'd) buffer address
blenp  (malloc'd) buffer length
Returns:
0 on success

Referenced by pgpReadPkts(), and rpmPlatform().

int ufdClose void *    cookie
 

Definition at line 1811 of file rpmio.c.

References _FD_s::bytesRemain, c2f(), _FD_s::contentLength, urlinfo_s::ctrl, urlinfo_s::data, 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, URL_IS_FTP, urlFree, urlinfo_s::urltype, and _FD_s::wr_chunked.

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


Variable Documentation

int _ftp_debug
 

Definition at line 181 of file rpmio_internal.h.

Referenced by httpResp().

int _rpmio_debug
 

Definition at line 176 of file rpmio_internal.h.

Referenced by fdWritable().

struct rpmop_s ops[FDSTAT_MAX]
 

Cumulative statistics.

Definition at line 122 of file rpmio_internal.h.

Referenced by singleOptionHelp().


Generated on Thu May 13 15:02:45 2004 for rpm by doxygen1.2.18