# rpmio.h File Reference

`#include <sys/types.h>`
`#include <sys/stat.h>`
`#include <stdio.h>`
`#include <stdlib.h>`
`#include <unistd.h>`
`#include <rpm/rpmtypes.h>`
`#include <rpm/rpmsw.h>`

Include dependency graph for rpmio.h:

Go to the source code of this file.

## 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)
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.
rpmop | fdOp (FD_t fd, fdOpX opx)

## Typedefs

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

## Functions

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.
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.

## Detailed Description

Definition in file rpmio.h.

## Typedef Documentation

typedef off_t _libio_pos_t

Definition at line 35 of file rpmio.h.