# fsm_s Struct Reference
[PAYLOAD.]

File name and stat information. More...

`#include <fsm.h>`

## Data Fields

const char * | path
const char * | opath
FD_t | cfd
FD_t | rfd
char * | rdbuf
char * | rdb
size_t | rdsize
size_t | rdlen
size_t | rdnb
FD_t | wfd
char * | wrbuf
char * | wrb
size_t | wrsize
size_t | wrlen
size_t | wrnb
FSMI_t | iter
int | ix
hardLink_s * | links
hardLink_s * | li
unsigned int * | archiveSize
const char ** | failedFile
const char * | subdir
char | subbuf [64]
const char * | osuffix
const char * | nsuffix
const char * | suffix
char | sufbuf [64]
short * | dnlx
char * | ldn
int | ldnlen
int | ldnalloc
int | postpone
int | diskchecked
int | exists
int | mkdirsdone
int | astriplen
int | rc
int | commit
cpioMapFlags | mapFlags
const char * | dirName
const char * | baseName
const char * | fmd5sum
unsigned | fflags
fileAction | action
fileStage | goal
fileStage | stage
stat | sb
stat | osb

## Detailed Description

File name and stat information.

Definition at line 120 of file fsm.h.

## Field Documentation

fileAction fsm_s::action

| File disposition. Definition at line 164 of file fsm.h. Referenced by fsmCommitLinks(), fsmMakeLinks(), fsmMapPath(), and fsmStage().

unsigned int* fsm_s::archiveSize

| Pointer to archive size. Definition at line 140 of file fsm.h. Referenced by fsmSetup().

int fsm_s::astriplen

| Length of buildroot prefix. Definition at line 156 of file fsm.h. Referenced by fsmMapPath(), and fsmStage().

const char* fsm_s::baseName

| File base name. Definition at line 161 of file fsm.h. Referenced by fsmFsPath(), fsmMapPath(), and writeFile().

FD_t fsm_s::cfd

| Payload file handle. Definition at line 123 of file fsm.h. Referenced by fsmSetup(), fsmTeardown(), and writeFile().

int fsm_s::commit

| Commit synchronously? Definition at line 158 of file fsm.h.

const char* fsm_s::dirName

| File directory name. Definition at line 160 of file fsm.h. Referenced by fsmFsPath(), fsmMapPath(), and writeFile().

int fsm_s::diskchecked

| Has stat(2) been performed? Definition at line 153 of file fsm.h.

short* fsm_s::dnlx

| Last dirpath verified indexes. Definition at line 148 of file fsm.h. Referenced by freeFSM(), fsmMkdirs(), and fsmRmdirs().

int fsm_s::exists

| Does current file exist on disk? Definition at line 154 of file fsm.h.

const char** fsm_s::failedFile

| First file name that failed. Definition at line 141 of file fsm.h. Referenced by fsmMakeLinks(), fsmSetup(), fsmTeardown(), and writeLinkedFile().

unsigned fsm_s::fflags

| File flags. Definition at line 163 of file fsm.h. Referenced by fsmMapPath().

const char* fsm_s::fmd5sum

| File MD5 sum (NULL disables). Definition at line 162 of file fsm.h. Referenced by expandRegular(), and fsmMapAttrs().

fileStage fsm_s::goal

| Package state machine goal. Definition at line 165 of file fsm.h. Referenced by fsmSetup(), and saveHardLink().

FSMI_t fsm_s::iter

| File iterator. Definition at line 136 of file fsm.h. Referenced by freeFSM(), fsmGetFi(), fsmGetTs(), fsmSetup(), and fsmTeardown().

int fsm_s::ix

| Current file iterator index. Definition at line 137 of file fsm.h. Referenced by fsmCommitLinks(), fsmMakeLinks(), fsmMapAttrs(), fsmMapPath(), saveHardLink(), writeFile(), and writeLinkedFile().

char* fsm_s::ldn

| Last dirpath verified. Definition at line 149 of file fsm.h. Referenced by freeFSM(), fsmMkdirs(), and fsmRmdirs().

int fsm_s::ldnalloc

| Last dirpath allocated length. Definition at line 151 of file fsm.h.

int fsm_s::ldnlen

| Last dirpath current length. Definition at line 150 of file fsm.h.

struct hardLink_s* fsm_s::li

| Current hard linked file(s). Definition at line 139 of file fsm.h. Referenced by freeFSM(), fsmCommitLinks(), fsmMakeLinks(), fsmStage(), saveHardLink(), and writeLinkedFile().

struct hardLink_s* fsm_s::links

| Pending hard linked file(s). Definition at line 138 of file fsm.h. Referenced by freeFSM(), fsmCommitLinks(), fsmStage(), and saveHardLink().

cpioMapFlags fsm_s::mapFlags

| Bit(s) to control mapping. Definition at line 159 of file fsm.h. Referenced by fsmMapAttrs(), fsmMapPath(), fsmStage(), and writeFile().

int fsm_s::mkdirsdone

| Have "orphan" dirs been created? Definition at line 155 of file fsm.h.

const char* fsm_s::nsuffix

| New, created, file suffix. Definition at line 145 of file fsm.h. Referenced by fsmCommitLinks(), fsmMakeLinks(), fsmMapPath(), saveHardLink(), and writeLinkedFile().

const char* fsm_s::opath

| Original file name. Definition at line 122 of file fsm.h. Referenced by fsmMakeLinks(), and writeFile().

struct stat fsm_s::osb

| Original file stat(2) info. Definition at line 168 of file fsm.h. Referenced by fsmMkdirs(), fsmStage(), and writeFile().

const char* fsm_s::osuffix

| Old, preserved, file suffix. Definition at line 144 of file fsm.h. Referenced by fsmMapPath().

const char* fsm_s::path

| Current file name. Definition at line 121 of file fsm.h. Referenced by cpioHeaderRead(), cpioHeaderWrite(), freeFSM(), fsmCommitLinks(), fsmMakeLinks(), fsmMapPath(), fsmMkdirs(), fsmRmdirs(), fsmStage(), saveHardLink(), writeFile(), and writeLinkedFile().

int fsm_s::postpone

| Skip remaining stages? Definition at line 152 of file fsm.h. Referenced by fsmStage().

int fsm_s::rc

| External file stage return code. Definition at line 157 of file fsm.h. Referenced by fsmSetup(), fsmStage(), and fsmTeardown().

char* fsm_s::rdb

| read: Buffer allocated. Definition at line 126 of file fsm.h.

char* fsm_s::rdbuf

| read: Buffer. Definition at line 125 of file fsm.h. Referenced by cpioHeaderWrite(), cpioTrailerWrite(), fsmMkdirs(), fsmRmdirs(), and writeFile().

size_t fsm_s::rdlen

| read: Number of bytes requested. Definition at line 128 of file fsm.h. Referenced by writeFile().

size_t fsm_s::rdnb

| read: Number of bytes returned. Definition at line 129 of file fsm.h. Referenced by cpioHeaderRead(), cpioHeaderWrite(), cpioTrailerWrite(), and writeFile().

size_t fsm_s::rdsize

| read: Buffer allocated size. Definition at line 127 of file fsm.h. Referenced by writeFile().

FD_t fsm_s::rfd

| read: File handle. Definition at line 124 of file fsm.h. Referenced by writeFile().

struct stat fsm_s::sb

| Current file stat(2) info. Definition at line 167 of file fsm.h. Referenced by expandRegular(), fsmCommitLinks(), fsmMapAttrs(), fsmMapPath(), fsmMkdirs(), fsmStage(), saveHardLink(), and writeFile().

fileStage fsm_s::stage

| External file stage. Definition at line 166 of file fsm.h. Referenced by fsmStage().

char fsm_s::subbuf[64]

| Definition at line 143 of file fsm.h.

const char* fsm_s::subdir

| Current file sub-directory. Definition at line 142 of file fsm.h. Referenced by fsmMapPath().

char fsm_s::sufbuf[64]

| Definition at line 147 of file fsm.h. Referenced by fsmSetup().

const char* fsm_s::suffix

| Current file suffix. Definition at line 146 of file fsm.h. Referenced by fsmMapPath().

FD_t fsm_s::wfd

| write: File handle. Definition at line 130 of file fsm.h. Referenced by expandRegular().

char* fsm_s::wrb

| write: Buffer allocated. Definition at line 132 of file fsm.h.

char* fsm_s::wrbuf

| write: Buffer. Definition at line 131 of file fsm.h. Referenced by cpioHeaderRead().

size_t fsm_s::wrlen

| write: Number of bytes requested. Definition at line 134 of file fsm.h. Referenced by cpioHeaderRead(), and expandRegular().

size_t fsm_s::wrnb

| write: Number of bytes returned. Definition at line 135 of file fsm.h. Referenced by cpioHeaderWrite(), expandRegular(), and writeFile().

size_t fsm_s::wrsize

| write: Buffer allocated size. Definition at line 133 of file fsm.h. Referenced by cpioHeaderRead(), and expandRegular().

The documentation for this struct was generated from the following file:

- lib/fsm.h