Blame lib/fsm.h

2ff057
#ifndef H_FSM
2ff057
#define H_FSM
2ff057
2ff057
/** \ingroup payload
2ff057
 * \file lib/fsm.h
2ff057
 * File state machine to handle a payload within an rpm package.
2ff057
 */
2ff057
2ff057
#include <rpm/rpmfi.h>
2ff057
2ff057
#ifdef __cplusplus
2ff057
extern "C" {
2ff057
#endif
2ff057
2ff057
typedef struct rpmpsm_s * rpmpsm;
2ff057
2ff057
/**
2ff057
 * Execute a file actions for package
2ff057
 * @param ts		transaction set
2ff057
 * @param te		transaction set element
2ff057
 * @param files		transaction element file info
2ff057
 * @param psm		owner psm (or NULL)
2ff057
 * @retval failedFile	pointer to first file name that failed (malloced)
2ff057
 * @return		0 on success
2ff057
 */
2ff057
2ff057
int rpmPackageFilesInstall(rpmts ts, rpmte te, rpmfiles files,
2ff057
              rpmpsm psm, char ** failedFile);
2ff057
2ff057
int rpmPackageFilesRemove(rpmts ts, rpmte te, rpmfiles files,
2ff057
              rpmpsm psm, char ** failedFile);
2ff057
2ff057
RPM_GNUC_INTERNAL
2ff057
int rpmfiArchiveReadToFilePsm(rpmfi fi, FD_t fd, int nodigest, rpmpsm psm);
2ff057
2ff057
RPM_GNUC_INTERNAL
2ff057
void rpmpsmNotify(rpmpsm psm, int what, rpm_loff_t amount);
2ff057
#ifdef __cplusplus
2ff057
}
2ff057
#endif
2ff057
2ff057
#endif	/* H_FSM */