Open SCAP Library: rpmverifypackage.c File Reference

Open SCAP Library

Data Structures | Macros | Functions | Variables
rpmverifypackage.c File Reference

rpmverifypackage probe More...

`#include <stdio.h>`
`#include <string.h>`
`#include <errno.h>`
`#include <assert.h>`
`#include <limits.h>`
`#include <sys/types.h>`
`#include <sys/stat.h>`
`#include <fcntl.h>`
`#include <pcre.h>`
`#include "rpm-helper.h"`
`#include "probe-chroot.h"`
`#include <rpm/rpmfi.h>`
`#include <rpm/rpmcli.h>`
`#include <popt.h>`
`#include <probe-api.h>`
`#include <alloc.h>`
`#include <common/assume.h>`
`#include "debug_priv.h"`
`#include "probe/entcmp.h"`
`#include <probe/probe.h>`
`#include <probe/option.h>`

## Data Structures
struct | rpmverifypackage_bhmap_t
struct | rpmverify_res
struct | verifypackage_global

## Macros
#define | RPMVERIFY_SKIP_CONFIG 0x1000000000000000
#define | RPMVERIFY_SKIP_GHOST 0x2000000000000000
#define | RPMVERIFY_RPMATTRMASK 0x00000000ffffffff
#define | RPMVERIFY_LOCK RPM_MUTEX_LOCK(&g_rpm.rpm.mutex)
#define | RPMVERIFY_UNLOCK RPM_MUTEX_UNLOCK(&g_rpm.rpm.mutex)
#define | CHROOT_ENTER() probe_chroot_enter(&g_rpm.chr)
#define | CHROOT_LEAVE() probe_chroot_leave(&g_rpm.chr)
#define | CHROOT_IS_SET() probe_chroot_is_set(&g_rpm.chr)
#define | CHROOT_PATH() probe_chroot_get_path(&g_rpm.chr)
#define | COMPARE_ENT(XXX)

## Functions
void | probe_offline_mode ()
| In this function can be set supported type of offline mode.
void * | probe_init (void)
| Dummy probe_fini function.
void | probe_fini (void *ptr)
| Dummy probe_fini function.
int | probe_main (probe_ctx *ctx, void *arg)

## Variables
const rpmverifypackage_bhmap_t | rpmverifypackage_bhmap []

## Detailed Description

rpmverifypackage probe

Author
  "Daniel Kopecek" dkope.nosp@m.cek@.nosp@m.redha.nosp@m.t.co.nosp@m.m
  "Petr Lautrbach" plaut.nosp@m.rba@.nosp@m.redha.nosp@m.t.co.nosp@m.m

## Macro Definition Documentation

## ◆ COMPARE_ENT

#define COMPARE_ENT | ( |  | XXX | ) |

Value:
if (XXX ## _ent != NULL) { \
ent = probe_entval_from_cstr( \
probe_ent_getdatatype(XXX ## _ent), res.XXX, strlen(res.XXX) \
); \
if (ent != NULL && probe_entobj_cmp(XXX ## _ent, ent) != OVAL_RESULT_TRUE) { \
SEXP_free(ent); \
continue; \
} \
SEXP_free(ent); \
}
probe_ent_getdatatype
oval_datatype_t probe_ent_getdatatype(const SEXP_t *ent)
Get the OVAL data type of an entity.
Definition: probe-api.c:1157
probe_entobj_cmp
oval_result_t probe_entobj_cmp(SEXP_t *ent_obj, SEXP_t *val)
Compare object entity&#39;s content with a value.
Definition: entcmp.c:429
OVAL_RESULT_TRUE
Characteristics being evaluated match the information represented in the system characteristic.
Definition: oval_types.h:328

## Variable Documentation

## ◆ rpmverifypackage_bhmap

const rpmverifypackage_bhmap_t rpmverifypackage_bhmap[]

Initial value:
= {
{ "nodeps", (uint64_t)VERIFY_DEPS , "--nodeps"},
{ "nodigest", (uint64_t)VERIFY_DIGEST , "--nodigest"},
{ "noscripts", (uint64_t)VERIFY_SCRIPT , "--noscript"},
{ "nosignature", (uint64_t)VERIFY_SIGNATURE , "--nosignature"}
}