aboutsummaryrefslogtreecommitdiffstats
path: root/src/libcharon/tnc
diff options
context:
space:
mode:
authorAndreas Steffen <andreas.steffen@strongswan.org>2011-06-01 16:32:01 +0200
committerAndreas Steffen <andreas.steffen@strongswan.org>2011-06-01 16:33:44 +0200
commit7c4d4d209d2828a726db6b916bc69b7d3b08cc2c (patch)
tree414524cbdd1607a8830ac5c2901c50f353796ef3 /src/libcharon/tnc
parent91b9bc3e0f2ca4bbec636307e5ffa5e7c0803df3 (diff)
downloadstrongswan-7c4d4d209d2828a726db6b916bc69b7d3b08cc2c.tar.bz2
strongswan-7c4d4d209d2828a726db6b916bc69b7d3b08cc2c.tar.xz
make IMC/IMV pairs independent of libcharon
Diffstat (limited to 'src/libcharon/tnc')
-rw-r--r--src/libcharon/tnc/imc/imc.h3
-rw-r--r--src/libcharon/tnc/imv/imv.h3
-rw-r--r--src/libcharon/tnc/imv/imv_recommendations.h2
-rw-r--r--src/libcharon/tnc/pen/pen.c33
-rw-r--r--src/libcharon/tnc/pen/pen.h46
-rw-r--r--src/libcharon/tnc/tnccs/tnccs.h7
-rw-r--r--src/libcharon/tnc/tncif.c27
-rw-r--r--src/libcharon/tnc/tncif.h111
-rw-r--r--src/libcharon/tnc/tncifimc.h180
-rw-r--r--src/libcharon/tnc/tncifimv.c36
-rw-r--r--src/libcharon/tnc/tncifimv.h248
11 files changed, 9 insertions, 687 deletions
diff --git a/src/libcharon/tnc/imc/imc.h b/src/libcharon/tnc/imc/imc.h
index fe8f25b0f..ddedf714c 100644
--- a/src/libcharon/tnc/imc/imc.h
+++ b/src/libcharon/tnc/imc/imc.h
@@ -24,7 +24,8 @@
#ifndef IMC_H_
#define IMC_H_
-#include <tnc/tncifimc.h>
+#include <tncifimc.h>
+
#include <library.h>
typedef struct imc_t imc_t;
diff --git a/src/libcharon/tnc/imv/imv.h b/src/libcharon/tnc/imv/imv.h
index 26874ab0b..df338d40a 100644
--- a/src/libcharon/tnc/imv/imv.h
+++ b/src/libcharon/tnc/imv/imv.h
@@ -24,7 +24,8 @@
#ifndef IMV_H_
#define IMV_H_
-#include <tnc/tncifimv.h>
+#include <tncifimv.h>
+
#include <library.h>
typedef struct imv_t imv_t;
diff --git a/src/libcharon/tnc/imv/imv_recommendations.h b/src/libcharon/tnc/imv/imv_recommendations.h
index 3a6e25c9f..071b6b38a 100644
--- a/src/libcharon/tnc/imv/imv_recommendations.h
+++ b/src/libcharon/tnc/imv/imv_recommendations.h
@@ -21,7 +21,7 @@
#ifndef IMV_RECOMMENDATIONS_H_
#define IMV_RECOMMENDATIONS_H_
-#include <tnc/tncifimv.h>
+#include <tncifimv.h>
#include <library.h>
typedef enum recommendation_policy_t recommendation_policy_t;
diff --git a/src/libcharon/tnc/pen/pen.c b/src/libcharon/tnc/pen/pen.c
deleted file mode 100644
index 3dd92218d..000000000
--- a/src/libcharon/tnc/pen/pen.c
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright (C) 2011 Andreas Steffen
- * 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.
- */
-
-#include "pen.h"
-
-ENUM_BEGIN(pen_names, PEN_IETF, PEN_IETF,
- "IETF");
-ENUM_NEXT(pen_names, PEN_MICROSOFT, PEN_MICROSOFT, PEN_IETF,
- "Microsoft");
-ENUM_NEXT(pen_names, PEN_OSC, PEN_OSC, PEN_MICROSOFT,
- "OSC");
-ENUM_NEXT(pen_names, PEN_TCG, PEN_TCG, PEN_OSC,
- "TCG");
-ENUM_NEXT(pen_names, PEN_FHH, PEN_FHH, PEN_TCG,
- "FHH");
-ENUM_NEXT(pen_names, PEN_ITA, PEN_ITA, PEN_FHH,
- "ITA-HSR");
-ENUM_NEXT(pen_names, PEN_RESERVED, PEN_RESERVED, PEN_ITA,
- "Reserved");
-ENUM_END(pen_names, PEN_RESERVED);
-
diff --git a/src/libcharon/tnc/pen/pen.h b/src/libcharon/tnc/pen/pen.h
deleted file mode 100644
index e6eb7fc53..000000000
--- a/src/libcharon/tnc/pen/pen.h
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright (C) 2011 Andreas Steffen
- * 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 pen pen
- * @ingroup tnc
- *
- * @defgroup pent pen
- * @{ @ingroup pen
- */
-
-#ifndef PEN_H_
-#define PEN_H_
-
-#include <library.h>
-
-typedef enum pen_t pen_t;
-
-enum pen_t {
- PEN_IETF = 0x000000, /* 0 */
- PEN_MICROSOFT = 0x000137, /* 311 */
- PEN_OSC = 0x002358, /* 9048 */
- PEN_TCG = 0x005597, /* 21911 */
- PEN_FHH = 0x0080ab, /* 32939 */
- PEN_ITA = 0x00902a, /* 36906 */
- PEN_RESERVED = 0xffffff, /* 16777215 */
-};
-
-/**
- * enum names for pen_t.
- */
-extern enum_name_t *pen_names;
-
-#endif /** PEN_H_ @}*/
diff --git a/src/libcharon/tnc/tnccs/tnccs.h b/src/libcharon/tnc/tnccs/tnccs.h
index f97282ce9..dc8a422f7 100644
--- a/src/libcharon/tnc/tnccs/tnccs.h
+++ b/src/libcharon/tnc/tnccs/tnccs.h
@@ -24,9 +24,10 @@
#ifndef TNCCS_H_
#define TNCCS_H_
-#include <tnc/tncif.h>
-#include <tnc/tncifimc.h>
-#include <tnc/tncifimv.h>
+#include <tncif.h>
+#include <tncifimc.h>
+#include <tncifimv.h>
+
#include <library.h>
typedef enum tnccs_type_t tnccs_type_t;
diff --git a/src/libcharon/tnc/tncif.c b/src/libcharon/tnc/tncif.c
deleted file mode 100644
index b195685a3..000000000
--- a/src/libcharon/tnc/tncif.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Copyright (C) 2011 Andreas Steffen
- * 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.
- */
-
-#include "tncif.h"
-
-ENUM(TNC_Connection_State_names,
- TNC_CONNECTION_STATE_CREATE, TNC_CONNECTION_STATE_DELETE,
- "Create",
- "Handshake",
- "Allowed",
- "Isolated",
- "None",
- "Delete",
-);
-
diff --git a/src/libcharon/tnc/tncif.h b/src/libcharon/tnc/tncif.h
deleted file mode 100644
index 42a0232c7..000000000
--- a/src/libcharon/tnc/tncif.h
+++ /dev/null
@@ -1,111 +0,0 @@
-/* tncif.h
- *
- * Trusted Network Connect IF-IMV API version 1.20
- * Microsoft Windows DLL Platform Binding C Header
- * February 5, 2007
- *
- * Copyright(c) 2005-2007, Trusted Computing Group, Inc. All rights
- * reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * - Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * - Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- * - Neither the name of the Trusted Computing Group nor the names of
- * its contributors may be used to endorse or promote products
- * derived from this software without specific prior written
- * permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * Contact the Trusted Computing Group at
- * admin@trustedcomputinggroup.org for information on specification
- * licensing through membership agreements.
- *
- * Any marks and brands contained herein are the property of their
- * respective owners.
- *
- * Trusted Network Connect IF-IMC/IF-IMV API version 1.00 Revision 3
- * Microsoft Windows DLL Platform Binding C Header
- * Common definitions for IF-IMC and IF-IMV
- * extracted from tncifimc.h and tncifimv.h
- * Feb 12, 2007
- */
-
-/**
- * @defgroup tnc tnc
- * @ingroup libcharon
- *
- * @defgroup tncif tncif
- * @{ @ingroup tnc
- */
-
-#ifndef TNCIF_H_
-#define TNCIF_H_
-
-#include <library.h>
-
-/* Basic Types */
-typedef unsigned long TNC_UInt32;
-typedef unsigned char *TNC_BufferReference;
-
-/* Derived Types */
-typedef TNC_UInt32 TNC_ConnectionID;
-typedef TNC_UInt32 TNC_ConnectionState;
-typedef TNC_UInt32 TNC_RetryReason;
-typedef TNC_UInt32 TNC_MessageType;
-typedef TNC_MessageType *TNC_MessageTypeList;
-typedef TNC_UInt32 TNC_VendorID;
-typedef TNC_UInt32 TNC_MessageSubtype;
-typedef TNC_UInt32 TNC_Version;
-typedef TNC_UInt32 TNC_Result;
-
-/* Result Codes */
-#define TNC_RESULT_SUCCESS 0
-#define TNC_RESULT_NOT_INITIALIZED 1
-#define TNC_RESULT_ALREADY_INITIALIZED 2
-#define TNC_RESULT_NO_COMMON_VERSION 3
-#define TNC_RESULT_CANT_RETRY 4
-#define TNC_RESULT_WONT_RETRY 5
-#define TNC_RESULT_INVALID_PARAMETER 6
-#define TNC_RESULT_CANT_RESPOND 7
-#define TNC_RESULT_ILLEGAL_OPERATION 8
-#define TNC_RESULT_OTHER 9
-#define TNC_RESULT_FATAL 10
-
-/* Network Connection ID Values */
-#define TNC_CONNECTIONID_ANY 0xFFFFFFFF
-
-/* Network Connection State Values */
-#define TNC_CONNECTION_STATE_CREATE 0
-#define TNC_CONNECTION_STATE_HANDSHAKE 1
-#define TNC_CONNECTION_STATE_ACCESS_ALLOWED 2
-#define TNC_CONNECTION_STATE_ACCESS_ISOLATED 3
-#define TNC_CONNECTION_STATE_ACCESS_NONE 4
-#define TNC_CONNECTION_STATE_DELETE 5
-
-extern enum_name_t *TNC_Connection_State_names;
-
-/* Vendor ID Values */
-#define TNC_VENDORID_TCG 0
-#define TNC_VENDORID_ANY ((TNC_VendorID) 0xffffff)
-/* Message Subtype Values */
-#define TNC_SUBTYPE_ANY ((TNC_MessageSubtype) 0xff)
-
-#endif /** TNCIF_H_ @}*/
diff --git a/src/libcharon/tnc/tncifimc.h b/src/libcharon/tnc/tncifimc.h
deleted file mode 100644
index c6ddabd45..000000000
--- a/src/libcharon/tnc/tncifimc.h
+++ /dev/null
@@ -1,180 +0,0 @@
-/* tncifimc.h
- *
- * Trusted Network Connect IF-IMC API version 1.20 Revision 8
- * Microsoft Windows DLL Platform Binding C Header
- * February 5, 2007
- *
- * Copyright(c) 2005-2007, Trusted Computing Group, Inc. All rights
- * reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * - Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * - Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- * - Neither the name of the Trusted Computing Group nor the names of
- * its contributors may be used to endorse or promote products
- * derived from this software without specific prior written
- * permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * Contact the Trusted Computing Group at
- * admin@trustedcomputinggroup.org for information on specification
- * licensing through membership agreements.
- *
- * Any marks and brands contained herein are the property of their
- * respective owners.
- *
- */
-
-/**
- * @defgroup tncifimc tncifimc
- * @{ @ingroup tnc
- */
-
-#ifndef TNCIFIMC_H_
-#define TNCIFIMC_H_
-
-#include "tncif.h"
-
-/* Derived Types */
-
-typedef TNC_UInt32 TNC_IMCID;
-
-/* Function pointers */
-
-typedef TNC_Result (*TNC_IMC_InitializePointer)(
- TNC_IMCID imcID,
- TNC_Version minVersion,
- TNC_Version maxVersion,
- TNC_Version *pOutActualVersion);
-typedef TNC_Result (*TNC_IMC_NotifyConnectionChangePointer)(
- TNC_IMCID imcID,
- TNC_ConnectionID connectionID,
- TNC_ConnectionState newState);
-typedef TNC_Result (*TNC_IMC_BeginHandshakePointer)(
- TNC_IMCID imcID,
- TNC_ConnectionID connectionID);
-typedef TNC_Result (*TNC_IMC_ReceiveMessagePointer)(
- TNC_IMCID imcID,
- TNC_ConnectionID connectionID,
- TNC_BufferReference message,
- TNC_UInt32 messageLength,
- TNC_MessageType messageType);
-typedef TNC_Result (*TNC_IMC_BatchEndingPointer)(
- TNC_IMCID imcID,
- TNC_ConnectionID connectionID);
-typedef TNC_Result (*TNC_IMC_TerminatePointer)(
- TNC_IMCID imcID);
-typedef TNC_Result (*TNC_TNCC_ReportMessageTypesPointer)(
- TNC_IMCID imcID,
- TNC_MessageTypeList supportedTypes,
- TNC_UInt32 typeCount);
-typedef TNC_Result (*TNC_TNCC_SendMessagePointer)(
- TNC_IMCID imcID,
- TNC_ConnectionID connectionID,
- TNC_BufferReference message,
- TNC_UInt32 messageLength,
- TNC_MessageType messageType);
-typedef TNC_Result (*TNC_TNCC_RequestHandshakeRetryPointer)(
- TNC_IMCID imcID,
- TNC_ConnectionID connectionID,
- TNC_RetryReason reason);
-typedef TNC_Result (*TNC_TNCC_BindFunctionPointer)(
- TNC_IMCID imcID,
- char *functionName,
- void **pOutfunctionPointer);
-typedef TNC_Result (*TNC_IMC_ProvideBindFunctionPointer)(
- TNC_IMCID imcID,
- TNC_TNCC_BindFunctionPointer bindFunction);
-
-#define TNC_IFIMC_VERSION_1 1
-
-/* Handshake Retry Reason Values */
-
-#define TNC_RETRY_REASON_IMC_REMEDIATION_COMPLETE 0
-#define TNC_RETRY_REASON_IMC_SERIOUS_EVENT 1
-#define TNC_RETRY_REASON_IMC_INFORMATIONAL_EVENT 2
-#define TNC_RETRY_REASON_IMC_PERIODIC 3
-/* reserved for TNC_RETRY_REASON_IMV_IMPORTANT_POLICY_CHANGE: 4 */
-/* reserved for TNC_RETRY_REASON_IMV_MINOR_POLICY_CHANGE: 5 */
-/* reserved for TNC_RETRY_REASON_IMV_SERIOUS_EVENT: 6 */
-/* reserved for TNC_RETRY_REASON_IMV_MINOR_EVENT: 7 */
-/* reserved for TNC_RETRY_REASON_IMV_PERIODIC: 8 */
-
-/* IMC Functions */
-
-TNC_Result TNC_IMC_Initialize(
-/*in*/ TNC_IMCID imcID,
-/*in*/ TNC_Version minVersion,
-/*in*/ TNC_Version maxVersion,
-/*out*/ TNC_Version *pOutActualVersion);
-
-TNC_Result TNC_IMC_NotifyConnectionChange(
-/*in*/ TNC_IMCID imcID,
-/*in*/ TNC_ConnectionID connectionID,
-/*in*/ TNC_ConnectionState newState);
-
-TNC_Result TNC_IMC_BeginHandshake(
-/*in*/ TNC_IMCID imcID,
-/*in*/ TNC_ConnectionID connectionID);
-
-TNC_Result TNC_IMC_ReceiveMessage(
-/*in*/ TNC_IMCID imcID,
-/*in*/ TNC_ConnectionID connectionID,
-/*in*/ TNC_BufferReference messageBuffer,
-/*in*/ TNC_UInt32 messageLength,
-/*in*/ TNC_MessageType messageType);
-
-TNC_Result TNC_IMC_BatchEnding(
-/*in*/ TNC_IMCID imcID,
-/*in*/ TNC_ConnectionID connectionID);
-
-TNC_Result TNC_IMC_Terminate(
-/*in*/ TNC_IMCID imcID);
-
-TNC_Result TNC_IMC_ProvideBindFunction(
-/*in*/ TNC_IMCID imcID,
-/*in*/ TNC_TNCC_BindFunctionPointer bindFunction);
-
-/* TNC Client Functions */
-
-TNC_Result TNC_TNCC_ReportMessageTypes(
-/*in*/ TNC_IMCID imcID,
-/*in*/ TNC_MessageTypeList supportedTypes,
-/*in*/ TNC_UInt32 typeCount);
-
-TNC_Result TNC_TNCC_SendMessage(
-/*in*/ TNC_IMCID imcID,
-/*in*/ TNC_ConnectionID connectionID,
-/*in*/ TNC_BufferReference message,
-/*in*/ TNC_UInt32 messageLength,
-/*in*/ TNC_MessageType messageType);
-
-TNC_Result TNC_TNCC_RequestHandshakeRetry(
-/*in*/ TNC_IMCID imcID,
-/*in*/ TNC_ConnectionID connectionID,
-/*in*/ TNC_RetryReason reason);
-
-TNC_Result TNC_TNCC_BindFunction(
-/*in*/ TNC_IMCID imcID,
-/*in*/ char *functionName,
-/*out*/ void **pOutfunctionPointer);
-
-#endif /** TNCIFIMC_H_ @}*/
diff --git a/src/libcharon/tnc/tncifimv.c b/src/libcharon/tnc/tncifimv.c
deleted file mode 100644
index fbfd56566..000000000
--- a/src/libcharon/tnc/tncifimv.c
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Copyright (C) 2010 Andreas Steffen
- * 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.
- */
-
-#include "tncifimv.h"
-
-ENUM(TNC_IMV_Action_Recommendation_names,
- TNC_IMV_ACTION_RECOMMENDATION_ALLOW,
- TNC_IMV_ACTION_RECOMMENDATION_NO_RECOMMENDATION,
- "allow",
- "no access",
- "isolate",
- "no recommendation"
-);
-
-ENUM(TNC_IMV_Evaluation_Result_names,
- TNC_IMV_EVALUATION_RESULT_COMPLIANT,
- TNC_IMV_EVALUATION_RESULT_DONT_KNOW,
- "compliant",
- "non-compliant minor",
- "non-compliant major",
- "error",
- "don't know"
-);
-
diff --git a/src/libcharon/tnc/tncifimv.h b/src/libcharon/tnc/tncifimv.h
deleted file mode 100644
index 4ec101337..000000000
--- a/src/libcharon/tnc/tncifimv.h
+++ /dev/null
@@ -1,248 +0,0 @@
-/* tncifimv.h
- *
- * Trusted Network Connect IF-IMV API version 1.20
- * Microsoft Windows DLL Platform Binding C Header
- * February 5, 2007
- *
- * Copyright(c) 2005-2007, Trusted Computing Group, Inc. All rights
- * reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * - Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * - Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- * - Neither the name of the Trusted Computing Group nor the names of
- * its contributors may be used to endorse or promote products
- * derived from this software without specific prior written
- * permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * Contact the Trusted Computing Group at
- * admin@trustedcomputinggroup.org for information on specification
- * licensing through membership agreements.
- *
- * Any marks and brands contained herein are the property of their
- * respective owners.
- */
-
-/**
- * @defgroup tncifimv tncifimv
- * @{ @ingroup tnc
- */
-
-#ifndef TNCIFIMV_H_
-#define TNCIFIMV_H_
-
-#include "tncif.h"
-
-#include <library.h>
-
-typedef TNC_UInt32 TNC_IMVID;
-typedef TNC_UInt32 TNC_IMV_Action_Recommendation;
-typedef TNC_UInt32 TNC_IMV_Evaluation_Result;
-typedef TNC_UInt32 TNC_AttributeID;
-
-/* Function pointers */
-
-typedef TNC_Result (*TNC_IMV_InitializePointer)(
- TNC_IMVID imvID,
- TNC_Version minVersion,
- TNC_Version maxVersion,
- TNC_Version *pOutActualVersion);
-typedef TNC_Result (*TNC_IMV_NotifyConnectionChangePointer)(
- TNC_IMVID imvID,
- TNC_ConnectionID connectionID,
- TNC_ConnectionState newState);
-typedef TNC_Result (*TNC_IMV_ReceiveMessagePointer)(
- TNC_IMVID imvID,
- TNC_ConnectionID connectionID,
- TNC_BufferReference message,
- TNC_UInt32 messageLength,
- TNC_MessageType messageType);
-typedef TNC_Result (*TNC_IMV_SolicitRecommendationPointer)(
- TNC_IMVID imvID,
- TNC_ConnectionID connectionID);
-typedef TNC_Result (*TNC_IMV_BatchEndingPointer)(
- TNC_IMVID imvID,
- TNC_ConnectionID connectionID);
-typedef TNC_Result (*TNC_IMV_TerminatePointer)(
- TNC_IMVID imvID);
-typedef TNC_Result (*TNC_TNCS_ReportMessageTypesPointer)(
- TNC_IMVID imvID,
- TNC_MessageTypeList supportedTypes,
- TNC_UInt32 typeCount);
-typedef TNC_Result (*TNC_TNCS_SendMessagePointer)(
- TNC_IMVID imvID,
- TNC_ConnectionID connectionID,
- TNC_BufferReference message,
- TNC_UInt32 messageLength,
- TNC_MessageType messageType);
-typedef TNC_Result (*TNC_TNCS_RequestHandshakeRetryPointer)(
- TNC_IMVID imvID,
- TNC_ConnectionID connectionID,
- TNC_RetryReason reason);
-typedef TNC_Result (*TNC_TNCS_ProvideRecommendationPointer)(
- TNC_IMVID imvID,
- TNC_ConnectionID connectionID,
- TNC_IMV_Action_Recommendation recommendation,
- TNC_IMV_Evaluation_Result evaluation);
-typedef TNC_Result (*TNC_TNCS_GetAttributePointer)(
- TNC_IMVID imvID,
-TNC_ConnectionID connectionID,
-TNC_AttributeID attributeID,
- TNC_UInt32 bufferLength,
- TNC_BufferReference buffer,
- TNC_UInt32 *pOutValueLength);
-typedef TNC_Result (*TNC_TNCS_SetAttributePointer)(
- TNC_IMVID imvID,
- TNC_ConnectionID connectionID,
-TNC_AttributeID attributeID,
- TNC_UInt32 bufferLength,
- TNC_BufferReference buffer);
-typedef TNC_Result (*TNC_TNCS_BindFunctionPointer)(
- TNC_IMVID imvID,
- char *functionName,
- void **pOutfunctionPointer);
-typedef TNC_Result (*TNC_IMV_ProvideBindFunctionPointer)(
- TNC_IMVID imvID,
- TNC_TNCS_BindFunctionPointer bindFunction);
-
-/* Version Numbers */
-
-#define TNC_IFIMV_VERSION_1 1
-
-/* Handshake Retry Reason Values */
-
-/* reserved for TNC_RETRY_REASON_IMC_REMEDIATION_COMPLETE: 0 */
-/* reserved for TNC_RETRY_REASON_IMC_SERIOUS_EVENT: 1 */
-/* reserved for TNC_RETRY_REASON_IMC_INFORMATIONAL_EVENT: 2 */
-/* reserved for TNC_RETRY_REASON_IMC_PERIODIC: 3 */
-#define TNC_RETRY_REASON_IMV_IMPORTANT_POLICY_CHANGE 4
-#define TNC_RETRY_REASON_IMV_MINOR_POLICY_CHANGE 5
-#define TNC_RETRY_REASON_IMV_SERIOUS_EVENT 6
-#define TNC_RETRY_REASON_IMV_MINOR_EVENT 7
-#define TNC_RETRY_REASON_IMV_PERIODIC 8
-
-/* IMV Action Recommendation Values */
-
-#define TNC_IMV_ACTION_RECOMMENDATION_ALLOW 0
-#define TNC_IMV_ACTION_RECOMMENDATION_NO_ACCESS 1
-#define TNC_IMV_ACTION_RECOMMENDATION_ISOLATE 2
-#define TNC_IMV_ACTION_RECOMMENDATION_NO_RECOMMENDATION 3
-
-extern enum_name_t *TNC_IMV_Action_Recommendation_names;
-
-/* IMV Evaluation Result Values */
-
-#define TNC_IMV_EVALUATION_RESULT_COMPLIANT 0
-#define TNC_IMV_EVALUATION_RESULT_NONCOMPLIANT_MINOR 1
-#define TNC_IMV_EVALUATION_RESULT_NONCOMPLIANT_MAJOR 2
-#define TNC_IMV_EVALUATION_RESULT_ERROR 3
-#define TNC_IMV_EVALUATION_RESULT_DONT_KNOW 4
-
-extern enum_name_t *TNC_IMV_Evaluation_Result_names;
-
-/* Message Attribute ID Values */
-
-#define TNC_ATTRIBUTEID_PREFERRED_LANGUAGE ((TNC_AttributeID) 0x00000001)
-#define TNC_ATTRIBUTEID_REASON_STRING ((TNC_AttributeID) 0x00000002)
-#define TNC_ATTRIBUTEID_REASON_LANGUAGE ((TNC_AttributeID) 0x00000003)
-
-/* IMV Functions */
-
-TNC_Result TNC_IMV_Initialize(
-/*in*/ TNC_IMVID imvID,
-/*in*/ TNC_Version minVersion,
-/*in*/ TNC_Version maxVersion,
-/*in*/ TNC_Version *pOutActualVersion);
-
-TNC_Result TNC_IMV_NotifyConnectionChange(
-/*in*/ TNC_IMVID imvID,
-/*in*/ TNC_ConnectionID connectionID,
-/*in*/ TNC_ConnectionState newState);
-
-TNC_Result TNC_IMV_ReceiveMessage(
-/*in*/ TNC_IMVID imvID,
-/*in*/ TNC_ConnectionID connectionID,
-/*in*/ TNC_BufferReference messageBuffer,
-/*in*/ TNC_UInt32 messageLength,
-/*in*/ TNC_MessageType messageType);
-
-TNC_Result TNC_IMV_SolicitRecommendation(
-/*in*/ TNC_IMVID imvID,
-/*in*/ TNC_ConnectionID connectionID);
-
-TNC_Result TNC_IMV_BatchEnding(
-/*in*/ TNC_IMVID imvID,
-/*in*/ TNC_ConnectionID connectionID);
-
-TNC_Result TNC_IMV_Terminate(
-/*in*/ TNC_IMVID imvID);
-
-TNC_Result TNC_IMV_ProvideBindFunction(
-/*in*/ TNC_IMVID imvID,
-/*in*/ TNC_TNCS_BindFunctionPointer bindFunction);
-
-/* TNC Server Functions */
-
-TNC_Result TNC_TNCS_ReportMessageTypes(
-/*in*/ TNC_IMVID imvID,
-/*in*/ TNC_MessageTypeList supportedTypes,
-/*in*/ TNC_UInt32 typeCount);
-
-TNC_Result TNC_TNCS_SendMessage(
-/*in*/ TNC_IMVID imvID,
-/*in*/ TNC_ConnectionID connectionID,
-/*in*/ TNC_BufferReference message,
-/*in*/ TNC_UInt32 messageLength,
-/*in*/ TNC_MessageType messageType);
-
-TNC_Result TNC_TNCS_RequestHandshakeRetry(
-/*in*/ TNC_IMVID imvID,
-/*in*/ TNC_ConnectionID connectionID,
-/*in*/ TNC_RetryReason reason);
-
-TNC_Result TNC_TNCS_ProvideRecommendation(
-/*in*/ TNC_IMVID imvID,
-/*in*/ TNC_ConnectionID connectionID,
-/*in*/ TNC_IMV_Action_Recommendation recommendation,
-/*in*/ TNC_IMV_Evaluation_Result evaluation);
-
-TNC_Result TNC_TNCS_GetAttribute(
-/*in*/ TNC_IMVID imvID,
-/*in*/ TNC_ConnectionID connectionID,
-/*in*/ TNC_AttributeID attributeID,
-/*in*/ TNC_UInt32 bufferLength,
-/*out*/ TNC_BufferReference buffer,
-/*out*/ TNC_UInt32 *pOutValueLength);
-
-TNC_Result TNC_TNCS_SetAttribute(
-/*in*/ TNC_IMVID imvID,
-/*in*/ TNC_ConnectionID connectionID,
-/*in*/ TNC_AttributeID attributeID,
-/*in*/ TNC_UInt32 bufferLength,
-/*in*/ TNC_BufferReference buffer);
-
-TNC_Result TNC_TNCS_BindFunction(
-/*in*/ TNC_IMVID imvID,
-/*in*/ char *functionName,
-/*in*/ void **pOutfunctionPointer);
-
-#endif /** TNCIFIMV_H_ @}*/