Blame lib/rpmvf.h

Packit Service 7203c3
#ifndef _RPMVF_H
Packit Service 7203c3
#define _RPMVF_H
Packit Service 7203c3
Packit Service 7203c3
/** \ingroup rpmvf
Packit Service 7203c3
 * \file lib/rpmvf.h
Packit Service 7203c3
 *
Packit Service 7203c3
 * \brief Verify a package. The constants that enable/disable some sanity checks (mainly used at post (un)install)
Packit Service 7203c3
 */
Packit Service 7203c3
#include <rpm/rpmtypes.h>
Packit Service 7203c3
#include <rpm/rpmutil.h>
Packit Service 7203c3
Packit Service 7203c3
#ifdef __cplusplus
Packit Service 7203c3
extern "C" {
Packit Service 7203c3
#endif
Packit Service 7203c3
Packit Service 7203c3
/** \ingroup rpmvf
Packit Service 7203c3
 * Bit(s) for rpmVerifyFile() attributes and result.
Packit Service 7203c3
 */
Packit Service 7203c3
enum rpmVerifyAttrs_e {
Packit Service 7203c3
    RPMVERIFY_NONE	= 0,		/*!< */
Packit Service 7203c3
    RPMVERIFY_MD5	= (1 << 0),	/*!< from %verify(md5) - obsolete */
Packit Service 7203c3
    RPMVERIFY_FILEDIGEST= (1 << 0),	/*!< from %verify(filedigest) */
Packit Service 7203c3
    RPMVERIFY_FILESIZE	= (1 << 1),	/*!< from %verify(size) */
Packit Service 7203c3
    RPMVERIFY_LINKTO	= (1 << 2),	/*!< from %verify(link) */
Packit Service 7203c3
    RPMVERIFY_USER	= (1 << 3),	/*!< from %verify(user) */
Packit Service 7203c3
    RPMVERIFY_GROUP	= (1 << 4),	/*!< from %verify(group) */
Packit Service 7203c3
    RPMVERIFY_MTIME	= (1 << 5),	/*!< from %verify(mtime) */
Packit Service 7203c3
    RPMVERIFY_MODE	= (1 << 6),	/*!< from %verify(mode) */
Packit Service 7203c3
    RPMVERIFY_RDEV	= (1 << 7),	/*!< from %verify(rdev) */
Packit Service 7203c3
    RPMVERIFY_CAPS	= (1 << 8),	/*!< from %verify(caps) */
Packit Service 7203c3
	/* bits 9-14 unused, reserved for rpmVerifyAttrs */
Packit Service 7203c3
    RPMVERIFY_CONTEXTS	= (1 << 15),	/*!< verify: from --nocontexts */
Packit Service 7203c3
	/* bits 16-22 used in rpmVerifyFlags */
Packit Service 7203c3
	/* bits 23-27 used in rpmQueryFlags */
Packit Service 7203c3
    RPMVERIFY_READLINKFAIL= (1 << 28),	/*!< readlink failed */
Packit Service 7203c3
    RPMVERIFY_READFAIL	= (1 << 29),	/*!< file read failed */
Packit Service 7203c3
    RPMVERIFY_LSTATFAIL	= (1 << 30),	/*!< lstat failed */
Packit Service 7203c3
    RPMVERIFY_LGETFILECONFAIL	= (1 << 31)	/*!< lgetfilecon failed */
Packit Service 7203c3
};
Packit Service 7203c3
Packit Service 7203c3
typedef rpmFlags rpmVerifyAttrs;
Packit Service 7203c3
Packit Service 7203c3
#define	RPMVERIFY_ALL		~(RPMVERIFY_NONE)
Packit Service 7203c3
#define	RPMVERIFY_FAILURES	\
Packit Service 7203c3
  (RPMVERIFY_LSTATFAIL|RPMVERIFY_READFAIL|RPMVERIFY_READLINKFAIL|RPMVERIFY_LGETFILECONFAIL)
Packit Service 7203c3
Packit Service 7203c3
/** \ingroup rpmvf
Packit Service 7203c3
 * Bit(s) to control rpmVerify() operation
Packit Service 7203c3
 */
Packit Service 7203c3
enum rpmVerifyFlags_e {
Packit Service 7203c3
    VERIFY_DEFAULT	= 0,		/*!< */
Packit Service 7203c3
    VERIFY_MD5		= (1 << 0),	/*!< from --nomd5 - obsolete */
Packit Service 7203c3
    VERIFY_FILEDIGEST	= (1 << 0),	/*!< from --nofiledigest */
Packit Service 7203c3
    VERIFY_SIZE		= (1 << 1),	/*!< from --nosize */
Packit Service 7203c3
    VERIFY_LINKTO	= (1 << 2),	/*!< from --nolinkto */
Packit Service 7203c3
    VERIFY_USER		= (1 << 3),	/*!< from --nouser */
Packit Service 7203c3
    VERIFY_GROUP	= (1 << 4),	/*!< from --nogroup */
Packit Service 7203c3
    VERIFY_MTIME	= (1 << 5),	/*!< from --nomtime */
Packit Service 7203c3
    VERIFY_MODE		= (1 << 6),	/*!< from --nomode */
Packit Service 7203c3
    VERIFY_RDEV		= (1 << 7),	/*!< from --nodev */
Packit Service 7203c3
    VERIFY_CAPS		= (1 << 8),	/*!< from --nocaps */
Packit Service 7203c3
	/* bits 9-14 unused, reserved for rpmVerifyAttrs */
Packit Service 7203c3
    VERIFY_CONTEXTS	= (1 << 15),	/*!< verify: from --nocontexts */
Packit Service 7203c3
    VERIFY_FILES	= (1 << 16),	/*!< verify: from --nofiles */
Packit Service 7203c3
    VERIFY_DEPS		= (1 << 17),	/*!< verify: from --nodeps */
Packit Service 7203c3
    VERIFY_SCRIPT	= (1 << 18),	/*!< verify: from --noscripts */
Packit Service 7203c3
    VERIFY_DIGEST	= (1 << 19),	/*!< verify: from --nodigest */
Packit Service 7203c3
    VERIFY_SIGNATURE	= (1 << 20),	/*!< verify: from --nosignature */
Packit Service 7203c3
    VERIFY_PATCHES	= (1 << 21),	/*!< verify: from --nopatches */
Packit Service 7203c3
    VERIFY_HDRCHK	= (1 << 22),	/*!< verify: from --nohdrchk */
Packit Service 7203c3
    VERIFY_FOR_LIST	= (1 << 23),	/*!< query:  from --list */
Packit Service 7203c3
    VERIFY_FOR_STATE	= (1 << 24),	/*!< query:  from --state */
Packit Service 7203c3
    VERIFY_FOR_DOCS	= (1 << 25),	/*!< query:  from --docfiles */
Packit Service 7203c3
    VERIFY_FOR_CONFIG	= (1 << 26),	/*!< query:  from --configfiles */
Packit Service 7203c3
    VERIFY_FOR_DUMPFILES= (1 << 27)	/*!< query:  from --dump */
Packit Service 7203c3
	/* bits 28-31 used in rpmVerifyAttrs */
Packit Service 7203c3
};
Packit Service 7203c3
Packit Service 7203c3
typedef rpmFlags rpmVerifyFlags;
Packit Service 7203c3
Packit Service 7203c3
#define	VERIFY_ATTRS	\
Packit Service 7203c3
  ( VERIFY_FILEDIGEST | VERIFY_SIZE | VERIFY_LINKTO | VERIFY_USER | VERIFY_GROUP | \
Packit Service 7203c3
    VERIFY_MTIME | VERIFY_MODE | VERIFY_RDEV | VERIFY_CONTEXTS | VERIFY_CAPS )
Packit Service 7203c3
#define	VERIFY_ALL	\
Packit Service 7203c3
  ( VERIFY_ATTRS | VERIFY_FILES | VERIFY_DEPS | VERIFY_SCRIPT | VERIFY_DIGEST |\
Packit Service 7203c3
    VERIFY_SIGNATURE | VERIFY_HDRCHK )
Packit Service 7203c3
Packit Service 7203c3
/** \ingroup rpmvf
Packit Service 7203c3
 * Verify file attributes (including digest).
Packit Service 7203c3
 * @deprecated		use rpmfiVerify() / rpmfilesVerify() instead
Packit Service 7203c3
 * @param ts		transaction set
Packit Service 7203c3
 * @param fi		file info (with linked header and current file index)
Packit Service 7203c3
 * @retval *res		bit(s) returned to indicate failure
Packit Service 7203c3
 * @param omitMask	bit(s) to disable verify checks
Packit Service 7203c3
 * @return		0 on success (or not installed), 1 on error
Packit Service 7203c3
 */
Packit Service 7203c3
RPM_GNUC_DEPRECATED
Packit Service 7203c3
int rpmVerifyFile(const rpmts ts, rpmfi fi,
Packit Service 7203c3
		rpmVerifyAttrs * res, rpmVerifyAttrs omitMask);
Packit Service 7203c3
Packit Service 7203c3
Packit Service 7203c3
#ifdef __cplusplus
Packit Service 7203c3
}
Packit Service 7203c3
#endif
Packit Service 7203c3
Packit Service 7203c3
#endif /* _RPMTYPES_H */