rpm
5.4.10
|
Verify installed payload files from package metadata. More...
#include "system.h"
#include <rpmiotypes.h>
#include <rpmio.h>
#include <rpmcb.h>
#include "ugid.h"
#include <rpmtypes.h>
#include <rpmtag.h>
#include <pkgio.h>
#include <rpmfi.h>
#include "psm.h"
#include "legacy.h"
#include <rpmcli.h>
#include "debug.h"
Go to the source code of this file.
Data Structures | |
struct | rpmvf_s |
Macros | |
#define | _RPMFI_INTERNAL |
#define | _RPMSQ_INTERNAL |
#define | _RPMPS_INTERNAL /* XXX rpmps needs iterator. */ |
#define | _RPMTS_INTERNAL /* XXX expose rpmtsSetScriptFd */ |
#define | S_ISDEV(m) (S_ISBLK((m)) || S_ISCHR((m))) |
#define | FF_ISSET(_fflags, _FLAG) ((_fflags) & (RPMFILE_##_FLAG)) |
#define | VF_ISSET(_vflags, _FLAG) ((_vflags) & (RPMVERIFY_##_FLAG)) |
#define | VF_SET(_vflags, _FLAG) (_vflags) |= (RPMVERIFY_##_FLAG) |
#define | VF_CLR(_vflags, _FLAG) (_vflags) &= ~(RPMVERIFY_##_FLAG) |
#define | QVA_ISSET(_qvaflags, _FLAG) ((_qvaflags) & (VERIFY_##_FLAG)) |
#define | VSF_ISSET(_vsflags, _FLAG) ((_vsflags) & (RPMVSF_##_FLAG)) |
#define | VSF_SET(_vsflags, _FLAG) (_vsflags) |= (RPMVSF_##_FLAG) |
#define | VSF_CLR(_vsflags, _FLAG) (_vsflags) &= ~(RPMVSF_##_FLAG) |
#define | _mask (RPMVERIFY_FDIGEST|RPMVERIFY_HMAC) |
#define | _verify(_FLAG, _C) (VF_ISSET(res, _FLAG) ? _C : aok) |
#define | _verifylink(_FLAG, _C) |
#define | _verifyfile(_FLAG, _C) |
Typedefs | |
typedef struct rpmvf_s * | rpmvf |
Functions | |
static rpmvf | rpmvfFree (rpmvf vf) |
static rpmvf | rpmvfNew (rpmts ts, rpmfi fi, int i, rpmVerifyAttrs omitMask) |
static int | rpmvfVerify (rpmvf vf, int spew) |
Verify file attributes (including file digest). | |
static int | rpmVerifyScript (QVA_t qva, rpmts ts, rpmfi fi, FD_t scriptFd) |
Return exit code from running verify script from header. | |
static int | verifyDependencies (QVA_t qva, rpmts ts, Header h) |
Check installed package dependencies for problems. | |
int | showVerifyPackage (QVA_t qva, rpmts ts, Header h) |
Display results of package verify. | |
int | rpmcliVerify (rpmts ts, QVA_t qva, const char **argv) |
Verify package install. |
Variables | |
int | _rpmds_unspecified_epoch_noise |
Verify installed payload files from package metadata.
Definition in file verify.c.
#define _mask (RPMVERIFY_FDIGEST|RPMVERIFY_HMAC) |
#define _RPMTS_INTERNAL /* XXX expose rpmtsSetScriptFd */ |
#define _verify | ( | _FLAG, | |
_C | |||
) | (VF_ISSET(res, _FLAG) ? _C : aok) |
Referenced by rpmvfVerify().
#define _verifyfile | ( | _FLAG, | |
_C | |||
) |
Referenced by rpmvfVerify().
#define _verifylink | ( | _FLAG, | |
_C | |||
) |
Referenced by rpmvfVerify().
#define FF_ISSET | ( | _fflags, | |
_FLAG | |||
) | ((_fflags) & (RPMFILE_##_FLAG)) |
Definition at line 81 of file verify.c.
Referenced by rpmvfNew(), rpmvfVerify(), and showVerifyPackage().
#define QVA_ISSET | ( | _qvaflags, | |
_FLAG | |||
) | ((_qvaflags) & (VERIFY_##_FLAG)) |
Definition at line 87 of file verify.c.
Referenced by rpmcliVerify().
#define S_ISDEV | ( | m | ) | (S_ISBLK((m)) || S_ISCHR((m))) |
Definition at line 34 of file verify.c.
Referenced by rpmvfVerify().
#define VF_CLR | ( | _vflags, | |
_FLAG | |||
) | (_vflags) &= ~(RPMVERIFY_##_FLAG) |
Definition at line 85 of file verify.c.
Referenced by rpmvfNew(), and rpmvfVerify().
#define VF_ISSET | ( | _vflags, | |
_FLAG | |||
) | ((_vflags) & (RPMVERIFY_##_FLAG)) |
Definition at line 83 of file verify.c.
Referenced by rpmvfVerify().
#define VF_SET | ( | _vflags, | |
_FLAG | |||
) | (_vflags) |= (RPMVERIFY_##_FLAG) |
Definition at line 84 of file verify.c.
Referenced by rpmvfVerify().
#define VSF_CLR | ( | _vsflags, | |
_FLAG | |||
) | (_vsflags) &= ~(RPMVSF_##_FLAG) |
Definition at line 91 of file verify.c.
Referenced by rpmcliVerify().
#define VSF_ISSET | ( | _vsflags, | |
_FLAG | |||
) | ((_vsflags) & (RPMVSF_##_FLAG)) |
#define VSF_SET | ( | _vsflags, | |
_FLAG | |||
) | (_vsflags) |= (RPMVSF_##_FLAG) |
Definition at line 90 of file verify.c.
Referenced by rpmcliVerify().
Return exit code from running verify script from header.
qva | parsed query/verify options |
ts | transaction set |
fi | file info set |
scriptFd | file handle to use for stderr (or NULL) |
Definition at line 420 of file verify.c.
References rpmpsmFree(), rpmpsmNew(), rpmpsmScriptStage(), RPMRC_OK, RPMTAG_SANITYCHECK, RPMTAG_SANITYCHECKPROG, RPMTAG_VERIFYSCRIPT, RPMTAG_VERIFYSCRIPTPROG, and rpmtsSetScriptFd().
Referenced by showVerifyPackage().
Definition at line 95 of file verify.c.
References _free(), rpmvf_s::_item, rpmvf_s::fn, L, and rpmioItem_s::use.
Referenced by showVerifyPackage().
|
static |
Definition at line 119 of file verify.c.
References rpmvf_s::_item, rpmvf_s::dalgo, rpmvf_s::digest, rpmvf_s::dlen, DRD_xcalloc, FF_ISSET, rpmvf_s::fflags, rpmvf_s::fgroup, rpmvf_s::flink, rpmvf_s::fn, rpmvf_s::fstate, rpmvf_s::fuser, gnameToGid(), rpmioItem_s::pool, rpmfiFNlink(), rpmGetPath(), rpmtsRootDir(), RPMVERIFY_FAILURES, rpmvf_s::sb, unameToUid(), rpmioItem_s::use, VF_CLR, and rpmvf_s::vflags.
Referenced by showVerifyPackage().
Check installed package dependencies for problems.
qva | parsed query/verify options |
ts | transaction set |
h | header |
Definition at line 458 of file verify.c.
References _, alloca(), headerGetInstance(), headerGetOrigin(), rpmlog(), RPMLOG_NOTICE, rpmProblemGetAltNEVR(), rpmProblemGetPkgNEVR(), rpmpsFree(), rpmpsFreeIterator(), rpmpsInitIterator(), rpmpsNextIterator(), rpmpsNumProblems(), rpmpsProblem(), rpmtsAddEraseElement(), rpmtsAddInstallElement(), rpmtsCheck, rpmtsEmpty(), rpmtsProblems(), and stpcpy().
Referenced by showVerifyPackage().
int _rpmds_unspecified_epoch_noise |
Definition at line 130 of file rpmds.c.
Referenced by showVerifyPackage().