rpm/lib/rpmscript.h

34 lines
891 B
C

#ifndef _RPMSCRIPT_H
#define _RPMSCRIPT_H
#include <rpm/rpmtypes.h>
#include <rpm/argv.h>
typedef enum rpmscriptFlags_e {
RPMSCRIPT_NONE = 0,
RPMSCRIPT_EXPAND = (1 << 0), /* macro expansion */
RPMSCRIPT_QFORMAT = (1 << 1), /* header queryformat expansion */
} rpmscriptFlags;
typedef struct rpmScript_s * rpmScript;
struct rpmScript_s {
rpmTag tag; /* script tag */
char **args; /* scriptlet call arguments */
char *body; /* script body */
char *descr; /* description for logging */
rpmscriptFlags flags; /* flags to control operation */
};
RPM_GNUC_INTERNAL
rpmScript rpmScriptFromTag(Header h, rpmTag scriptTag);
RPM_GNUC_INTERNAL
rpmScript rpmScriptFree(rpmScript script);
RPM_GNUC_INTERNAL
rpmRC rpmScriptRun(rpmScript script, int arg1, int arg2,
rpmts ts, ARGV_const_t prefixes, int warn_only);
#endif /* _RPMSCRIPT_H */