Open SCAP Library
Loading...
Searching...
No Matches
rpmverifypackage_probe.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 "rpm-helper.h"
#include "probe-chroot.h"
#include <rpm/rpmcrypto.h>
#include <rpm/rpmfi.h>
#include <rpm/rpmcli.h>
#include <popt.h>
#include <probe-api.h>
#include "debug_priv.h"
#include "probe/entcmp.h"
#include <probe/probe.h>
#include <probe/option.h>
#include "rpmverifypackage_probe.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()
 
#define CHROOT_LEAVE()
 
#define CHROOT_IS_SET()
 
#define CHROOT_PATH()
 
#define COMPARE_ENT(XXX)
 

Functions

int rpmverifypackage_probe_offline_mode_supported ()
 
void * rpmverifypackage_probe_init (void)
 
void rpmverifypackage_probe_fini (void *ptr)
 
int rpmverifypackage_probe_main (probe_ctx *ctx, void *arg)
 

Variables

const rpmverifypackage_bhmap_t rpmverifypackage_bhmap []
 

Detailed Description

Macro Definition Documentation

◆ CHROOT_ENTER

#define CHROOT_ENTER ( )
Value:
probe_chroot_enter(&g_rpm->chr)

◆ CHROOT_IS_SET

#define CHROOT_IS_SET ( )
Value:
probe_chroot_is_set(&g_rpm->chr)

◆ CHROOT_LEAVE

#define CHROOT_LEAVE ( )
Value:
probe_chroot_leave(&g_rpm->chr)

◆ CHROOT_PATH

#define CHROOT_PATH ( )
Value:
probe_chroot_get_path(&g_rpm->chr)

◆ 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); \
}
@ OVAL_RESULT_TRUE
Characteristics being evaluated match the information represented in the system characteristic.
Definition oval_types.h:446
oval_result_t probe_entobj_cmp(SEXP_t *ent_obj, SEXP_t *val)
Compare object entity's content with a value.
Definition entcmp.c:433
oval_datatype_t probe_ent_getdatatype(const SEXP_t *ent)
Get the OVAL data type of an entity.
Definition probe-api.c:1170

Variable Documentation

◆ rpmverifypackage_bhmap

const rpmverifypackage_bhmap_t rpmverifypackage_bhmap[]
Initial value:
= {
{ "nodeps", (uint64_t)VERIFY_DEPS , "--nodeps"},
{ "noscripts", (uint64_t)VERIFY_SCRIPT , "--noscript"},
}