RPM IO API.

Files

file  rpmio.h
file  rpmurl.h
file  rpmmacro.h
file  rpmlog.h
 

Yet Another syslog(3) API clone.


file  rpmsq.h
file  rpmsw.h
file  rpmfileutil.h
 

File and path manipulation helper functions.


file  rpmgi.h

Typedefs

typedef off_t _libio_off_t
 Hide libio API lossage.
typedef struct FDIO_s * FDIO_t

RPMIO Utilities.



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

Identify per-desciptor I/O operation statistics.

More...
typedef enum fdOpX_e fdOpX
 Identify per-desciptor I/O operation statistics.
off_t fdSize (FD_t fd)
FD_t fdDup (int fdno)
FILE * fdGetFILE (FD_t fd)
 Get associated FILE stream from fd (if any).
FD_t fdLink (void *cookie, const char *msg)
FD_t fdFree (FD_t fd, const char *msg)
FD_t fdNew (const char *msg)
int fdWritable (FD_t fd, int secs)
int fdReadable (FD_t fd, int secs)
rpmop fdOp (FD_t fd, fdOpX opx)
int ufdCopy (FD_t sfd, FD_t tfd)
ssize_t timedRead (FD_t fd, void *bufptr, size_t length)
 XXX the name is misleading, this is a legacy wrapper that ensures only S_ISREG() files are read, nothing to do with timed.

RPMIO Interface.



const char * Fstrerror (FD_t fd)
 strerror(3) clone.
ssize_t Fread (void *buf, size_t size, size_t nmemb, FD_t fd)
 fread(3) clone.
ssize_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.
off_t Ftell (FD_t fd)
 ftell(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.

Typedef Documentation

typedef off_t _libio_off_t

Hide libio API lossage.

The libio interface changed after glibc-2.1.3 to pass the seek offset argument as a pointer rather than as an off_t. The snarl below defines typedefs to isolate the lossage.

Definition at line 34 of file rpmio.h.

typedef struct FDIO_s* FDIO_t

Definition at line 40 of file rpmio.h.

typedef enum fdOpX_e fdOpX

Identify per-desciptor I/O operation statistics.


Enumeration Type Documentation

enum fdOpX_e

Identify per-desciptor I/O operation statistics.

Enumerator:
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 159 of file rpmio.h.


Function Documentation

int Fclose ( FD_t  fd  ) 

fclose(3) clone.

Referenced by main().

int Fcntl ( FD_t  fd,
int  op,
void *  lip 
)

fcntl(2) clone.

FD_t fdDup ( int  fdno  ) 

Referenced by main().

FD_t fdFree ( FD_t  fd,
const char *  msg 
)
FILE* fdGetFILE ( FD_t  fd  ) 

Get associated FILE stream from fd (if any).

FD_t fdLink ( void *  cookie,
const char *  msg 
)
FD_t fdNew ( const char *  msg  ) 
rpmop fdOp ( FD_t  fd,
fdOpX  opx 
)
FD_t Fdopen ( FD_t  ofd,
const char *  fmode 
)

Referenced by main().

int fdReadable ( FD_t  fd,
int  secs 
)
off_t fdSize ( FD_t  fd  ) 
int fdWritable ( FD_t  fd,
int  secs 
)
int Ferror ( FD_t  fd  ) 

ferror(3) clone.

Referenced by main().

int Fflush ( FD_t  fd  ) 

fflush(3) clone.

int Fileno ( FD_t  fd  ) 

fileno(3) clone.

FD_t Fopen ( const char *  path,
const char *  fmode 
)

fopen(3) clone.

Referenced by main().

ssize_t Fread ( void *  buf,
size_t  size,
size_t  nmemb,
FD_t  fd 
)

fread(3) clone.

int Fseek ( FD_t  fd,
_libio_off_t  offset,
int  whence 
)

fseek(3) clone.

const char* Fstrerror ( FD_t  fd  ) 

strerror(3) clone.

Referenced by main().

off_t Ftell ( FD_t  fd  ) 

ftell(3) clone.

ssize_t Fwrite ( const void *  buf,
size_t  size,
size_t  nmemb,
FD_t  fd 
)

fwrite(3) clone.

ssize_t timedRead ( FD_t  fd,
void *  bufptr,
size_t  length 
)

XXX the name is misleading, this is a legacy wrapper that ensures only S_ISREG() files are read, nothing to do with timed.

.. TODO: get this out of the API

int ufdCopy ( FD_t  sfd,
FD_t  tfd 
)

Referenced by main().


Generated on 8 Jan 2010 for rpm by  doxygen 1.6.1