mirror of
https://github.com/ibm-s390-linux/s390-tools.git
synced 2026-08-05 02:14:52 +00:00
pvattest is a tool to attest an IBM Secure Execution guest. In a trusted environment, one can create a request using `pvattest create`. To get a measurement of an untrusted IBM Secure Execution guest call 'pvattest perform'. Again in a trusted environment, call 'pvattest verify' to verify that the measurement is the expected one. The tool runs on s390 and x86. It has the same requirements like libpv and therefore requires openssl v1.1.1+, glib2.56+, and libcurl. Additionally, to measure, the linux kernel must provide the Ultravisor userspace interface `uvdevice` at /dev/uv and must be executed on an IBM Secure Execution guest on hardware with Ultravisor attestation support, like IBM z16 or later. Signed-off-by: Steffen Eiden <seiden@linux.ibm.com> Reviewed-by: Marc Hartmayer <mhartmay@linux.ibm.com> Signed-off-by: Jan Höppner <hoeppner@linux.ibm.com>
38 lines
869 B
C
38 lines
869 B
C
/*
|
|
* Common functions for pvattest.
|
|
*
|
|
* IBM Corp. 2022
|
|
*
|
|
* s390-tools is free software; you can redistribute it and/or modify
|
|
* it under the terms of the MIT license. See LICENSE for details.
|
|
*/
|
|
#ifndef PVATTEST_COMMON_H
|
|
#define PVATTEST_COMMON_H
|
|
/* Must be included before any other header */
|
|
#include "config.h"
|
|
|
|
#include <glib/gi18n-lib.h>
|
|
#include <stdio.h>
|
|
|
|
#include "libpv/glib-helper.h"
|
|
#include "libpv/macros.h"
|
|
#include "lib/zt_common.h"
|
|
|
|
#include "types.h"
|
|
|
|
#define COPYRIGHT_NOTICE "Copyright IBM Corp. 2022"
|
|
|
|
#define AES_256_GCM_TAG_SIZE 16
|
|
|
|
gboolean wrapped_g_file_set_content(const char *filename, GBytes *bytes, mode_t mode,
|
|
GError **error);
|
|
|
|
/**
|
|
* just ref's up if one of them is NULL.
|
|
* If both NULL returns NULL.
|
|
* Otherwise returns lh ++ rh
|
|
*/
|
|
GBytes *secure_gbytes_concat(GBytes *lh, GBytes *rh);
|
|
|
|
#endif /* PVATTEST_COMMON_H */
|