strongswan/src/libimcv/pts/components/tcg/tcg_comp_func_name.h

99 lines
2.9 KiB
C

/*
* Copyright (C) 2011 Sansar Choinyambuu
* HSR Hochschule fuer Technik Rapperswil
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation; either version 2 of the License, or (at your
* option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* for more details.
*/
/**
* @defgroup pts_tcg_comp_func_name pts_tcg_comp_func_name
* @{ @ingroup pts
*/
#ifndef PTS_TCG_COMP_FUNC_NAME_H_
#define PTS_TCG_COMP_FUNC_NAME_H_
typedef enum pts_tcg_qualifier_type_t pts_tcg_qualifier_type_t;
typedef enum pts_tcg_comp_func_name_t pts_tcp_comp_func_name_t;
#include <library.h>
/**
* PTS Component Functional Name Qualifier Flags for the TCG namespace
* see section 5.2 of PTS Protocol: Binding to TNC IF-M Specification
*
* 0 1 2 3 4 5
* +-+-+-+-+-+-+
* |K|S| Type |
* +-+-+-+-+-+-+
*/
#define PTS_TCG_QUALIFIER_FLAG_KERNEL (1<<5)
#define PTS_TCG_QUALIFIER_FLAG_SUB (1<<4)
extern char pts_tcg_qualifier_flag_names[];
/**
* Size of the PTS Component Functional Name Qualifier Type field
*/
#define PTS_TCG_QUALIFIER_TYPE_SIZE 4
/**
* PTS Component Functional Name Qualifier Types for the TCG namespace
* see section 5.2 of PTS Protocol: Binding to TNC IF-M Specification
*/
enum pts_tcg_qualifier_type_t {
/** Unknown */
PTS_TCG_QUALIFIER_TYPE_UNKNOWN = 0x0,
/** Trusted Platform */
PTS_TCG_QUALIFIER_TYPE_TRUSTED = 0x1,
/** Operating System */
PTS_TCG_QUALIFIER_TYPE_OS = 0x2,
/** Graphical User Interface */
PTS_TCG_QUALIFIER_TYPE_GUI = 0x3,
/** Application */
PTS_TCG_QUALIFIER_TYPE_APP = 0x4,
/** Networking */
PTS_TCG_QUALIFIER_TYPE_NET = 0x5,
/** Library */
PTS_TCG_QUALIFIER_TYPE_LIB = 0x6,
/** TNC Defined Component */
PTS_TCG_QUALIFIER_TYPE_TNC = 0x7,
/** All matching Components */
PTS_TCG_QUALIFIER_TYPE_ALL = 0xF,
};
extern enum_name_t *pts_tcg_qualifier_type_names;
/**
* PTS Component Functional Name Binary Enumeration for the TCG namespace
* see section 5.3 of PTS Protocol: Binding to TNC IF-M Specification
*/
enum pts_tcg_comp_func_name_t {
/** Ignore */
PTS_TCG_COMP_FUNC_NAME_IGNORE = 0x0000,
/** CRTM */
PTS_TCG_COMP_FUNC_NAME_CRTM = 0x0001,
/** BIOS */
PTS_TCG_COMP_FUNC_NAME_BIOS = 0x0002,
/** Platform Extensions */
PTS_TCG_COMP_FUNC_NAME_PLATFORM_EXT = 0x0003,
/** Motherboard Firmware */
PTS_TCG_COMP_FUNC_NAME_BOARD = 0x0004,
/** Initial Program Loader */
PTS_TCG_COMP_FUNC_NAME_INIT_LOADER = 0x0005,
/** Option ROMs */
PTS_TCG_COMP_FUNC_NAME_OPT_ROMS = 0x0006,
};
extern enum_name_t *pts_tcg_comp_func_names;
#endif /** PTS_TCG_COMP_FUNC_NAME_H_ @}*/