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)
354 #if defined(_IOSM_INTERNAL)
387 unsigned int * archiveSize,
388 const char ** failedFile)
402 #if defined(_IOSM_INTERNAL)
char * iosmStrerror(int rc)
Return formatted error message on payload handling failure.
enum iosmMapFlags_e iosmMapFlags
enum iosmFileAction_e iosmFileAction
File disposition(s) during package install/erase processing.
unsigned int * archiveSize
int iosmMapPath(IOSM_t iosm)
Map next file path and action.
enum iosmFileStage_e iosmFileStage
const unsigned char * digest
IOSM_t freeIOSM(IOSM_t iosm)
Destroy I/O state machine instance.
Keeps track of the set of all hard links to a file in an archive.
int(* headerWrite)(void *_iosm, struct stat *st)
#define IOSMERR_CHECK_ERRNO
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.
int(* _iosmNext)(IOSM_t iosm, iosmFileStage nstage)
Vector to iosmNext.
int iosmFileActionSkipped(iosmFileAction action)
Is the file going to be skipped?
int(* trailerWrite)(void *_iosm)
The FD_t File Handle data structure.
struct iosmIterator_s * IOSMI_t
Iterator across package file info, forward on install, backward on erase.
IOSM_t newIOSM(void)
Create I/O state machine instance.
int iosmStage(IOSM_t iosm, iosmFileStage stage)
File state machine driver.
void * iosmGetFi(const IOSM_t iosm)
Retrieve transaction element file info from I/O state machine iterator.
int iosmTeardown(IOSM_t iosm)
Clean I/O state machine.
Iterator across package file info, forward on install, backward on erase.
Cumulative statistics for an operation.
int iosmMapAttrs(IOSM_t iosm)
Map file stat(2) info.
void * iosmGetTs(const IOSM_t iosm)
Retrieve transaction set from I/O state machine iterator.
struct iosm_s * IOSM_t
File state machine data.
const char * iosmFileStageString(iosmFileStage a)
Return formatted string representation of file stages.
struct hardLink_s * links
iosmFileAction_e
File disposition(s) during package install/erase processing.
int
Save source and expand field into target.
const char * iosmFileActionString(iosmFileAction a)
Return formatted string representation of file disposition.
int(* headerRead)(void *_iosm, struct stat *st)
File name and stat information.
int iosmNext(IOSM_t iosm, iosmFileStage nstage)
File state machine driver.