Annotation of embedaddon/strongswan/src/libtnccs/plugins/tnc_imv/tnc_imv.h, revision 1.1.1.1

1.1       misho       1: /*
                      2:  * Copyright (C) 2010 Andreas Steffen
                      3:  * HSR Hochschule fuer Technik Rapperswil
                      4:  *
                      5:  * This program is free software; you can redistribute it and/or modify it
                      6:  * under the terms of the GNU General Public License as published by the
                      7:  * Free Software Foundation; either version 2 of the License, or (at your
                      8:  * option) any later version.  See <http://www.fsf.org/copyleft/gpl.txt>.
                      9:  *
                     10:  * This program is distributed in the hope that it will be useful, but
                     11:  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
                     12:  * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
                     13:  * for more details.
                     14:  */
                     15: 
                     16: /**
                     17:  *
                     18:  * @defgroup tnc_imv_t tnc_imv
                     19:  * @{ @ingroup tnc_imv
                     20:  */
                     21: 
                     22: #ifndef TNC_IMV_H_
                     23: #define TNC_IMV_H_
                     24: 
                     25: #include <tnc/imv/imv.h>
                     26: 
                     27: /**
                     28:  * Create an Integrity Measurement Verifier loaded from a library.
                     29:  *
                     30:  * @param name                 name of the IMV
                     31:  * @param filename             path to the dynamic IMV library
                     32:  * @return                             instance of the imv_t interface
                     33:  */
                     34: imv_t* tnc_imv_create(char *name, char *filename);
                     35: 
                     36: /**
                     37:  * Create an Integrity Measurement Verifier from a set of IMV functions.
                     38:  *
                     39:  * @param name                                         name of the IMV
                     40:  * @param initialize                           TNC_IMV_InitializePointer
                     41:  * @param notify_connection_change     TNC_IMV_NotifyConnectionChangePointer
                     42:  * @param receive_message                      TNC_IMV_ReceiveMessagePointer
                     43:  * @param receive_message_long         TNC_IMV_ReceiveMessageLongPointer
                     44:  * @param solicit_recommendation       TNC_IMV_SolicitRecommendationPointer
                     45:  * @param batch_ending                         TNC_IMV_BatchEndingPointer
                     46:  * @param terminate                                    TNC_IMV_TerminatePointer
                     47:  * @param provide_bind_function                TNC_IMV_ProvideBindFunctionPointer
                     48:  * @return                                                     instance of the imv_t interface
                     49:  */
                     50: imv_t* tnc_imv_create_from_functions(char *name,
                     51:                                TNC_IMV_InitializePointer initialize,
                     52:                                TNC_IMV_NotifyConnectionChangePointer notify_connection_change,
                     53:                                TNC_IMV_ReceiveMessagePointer receive_message,
                     54:                                TNC_IMV_ReceiveMessageLongPointer receive_message_long,
                     55:                                TNC_IMV_SolicitRecommendationPointer solicit_recommendation,
                     56:                                TNC_IMV_BatchEndingPointer batch_ending,
                     57:                                TNC_IMV_TerminatePointer terminate,
                     58:                                TNC_IMV_ProvideBindFunctionPointer provide_bind_function);
                     59: 
                     60: #endif /** TNC_IMV_H_ @}*/

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>