60 #if defined(_IOSM_INTERNAL) 64 #define IOSMERR_CHECK_ERRNO 0x00008000 105 #define IOSM_VERBOSE 0x8000 106 #define IOSM_INTERNAL 0x4000 107 #define IOSM_SYSCALL 0x2000 108 #define IOSM_DEAD 0x1000 110 #define _fv(_a) ((_a) | IOSM_VERBOSE) 111 #define _fi(_a) ((_a) | IOSM_INTERNAL) 112 #define _fs(_a) ((_a) | (IOSM_INTERNAL | IOSM_SYSCALL)) 113 #define _fd(_a) ((_a) | (IOSM_INTERNAL | IOSM_DEAD)) 180 #if defined(_IOSM_INTERNAL) 309 int (*headerRead) (
void * _iosm,
struct stat *st)
311 int (*headerWrite) (
void * _iosm,
struct stat *st)
313 int (*trailerWrite) (
void * _iosm)
354 #if defined(_IOSM_INTERNAL) 387 unsigned int * archiveSize,
388 const char ** failedFile)
402 #if defined(_IOSM_INTERNAL) int iosmStage(IOSM_t iosm, iosmFileStage stage)
File state machine driver.
IOSM_t freeIOSM(IOSM_t iosm)
Destroy I/O state machine instance.
enum iosmFileAction_e iosmFileAction
File disposition(s) during package install/erase processing.
int iosmSetup(IOSM_t iosm, iosmFileStage goal, const char *afmt, const void *_ts, const void *_fi, FD_t cfd, unsigned int *archiveSize, const char **failedFile)
Load external data into I/O state machine.
void * iosmGetFi(const IOSM_t iosm)
Retrieve transaction element file info from I/O state machine iterator.
int(* _iosmNext)(IOSM_t iosm, iosmFileStage nstage)
Vector to iosmNext.
unsigned int * archiveSize
enum iosmFileStage_e iosmFileStage
const unsigned char * digest
Keeps track of the set of all hard links to a file in an archive.
const char * iosmFileStageString(iosmFileStage a)
Return formatted string representation of file stages.
IOSM_t newIOSM(void)
Create I/O state machine instance.
int iosmNext(IOSM_t iosm, iosmFileStage nstage)
File state machine driver.
char * iosmStrerror(int rc)
Return formatted error message on payload handling failure.
int iosmFileActionSkipped(iosmFileAction action)
Is the file going to be skipped?
struct iosm_s * IOSM_t
File state machine data.
int iosmTeardown(IOSM_t iosm)
Clean I/O state machine.
const char * iosmFileActionString(iosmFileAction a)
Return formatted string representation of file disposition.
The FD_t File Handle data structure.
Iterator across package file info, forward on install, backward on erase.
int iosmMapAttrs(IOSM_t iosm)
Map file stat(2) info.
Cumulative statistics for an operation.
enum iosmMapFlags_e iosmMapFlags
void * iosmGetTs(const IOSM_t iosm)
Retrieve transaction set from I/O state machine iterator.
struct hardLink_s * links
int iosmMapPath(IOSM_t iosm)
Map next file path and action.
iosmFileAction_e
File disposition(s) during package install/erase processing.
File name and stat information.
#define IOSMERR_CHECK_ERRNO
struct iosmIterator_s * IOSMI_t
Iterator across package file info, forward on install, backward on erase.