diff options
author | Martin Willi <martin@revosec.ch> | 2012-11-15 09:50:20 +0100 |
---|---|---|
committer | Martin Willi <martin@revosec.ch> | 2012-11-30 15:48:20 +0100 |
commit | 016d343a50f32b468d559c93bcfa7335c800a072 (patch) | |
tree | cc80a3972a867a81c330d4bb1546423619f06b34 /src/libtnccs/tnc/imc | |
parent | be18ee8123d6de3984a04f9feb1e457b7c45b0b5 (diff) | |
download | strongswan-016d343a50f32b468d559c93bcfa7335c800a072.tar.bz2 strongswan-016d343a50f32b468d559c93bcfa7335c800a072.tar.xz |
Add wrappers to IMC/IMV managers loading IMC/IMVs from function pointers
Diffstat (limited to 'src/libtnccs/tnc/imc')
-rw-r--r-- | src/libtnccs/tnc/imc/imc_manager.h | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/src/libtnccs/tnc/imc/imc_manager.h b/src/libtnccs/tnc/imc/imc_manager.h index 25e0efe9d..db033c4c0 100644 --- a/src/libtnccs/tnc/imc/imc_manager.h +++ b/src/libtnccs/tnc/imc/imc_manager.h @@ -55,7 +55,31 @@ struct imc_manager_t { * @param path path of the IMC dynamic library file * @return TRUE if loading succeeded */ - bool (*load)(imc_manager_t *this, char *name, char *path); + bool (*load)(imc_manager_t *this, char *name, char *path); + + /** + * Load and initialize an IMC from a set of TNC IMC functions. + * + * @param name name of the IMC + * @param initialize TNC_IMC_InitializePointer + * @param notify_connection_change TNC_IMC_NotifyConnectionChangePointer + * @param begin_handshake TNC_IMC_BeginHandshakePointer + * @param receive_message TNC_IMC_ReceiveMessagePointer + * @param receive_message_long TNC_IMC_ReceiveMessageLongPointer + * @param batch_ending TNC_IMC_BatchEndingPointer + * @param terminate TNC_IMC_TerminatePointer + * @param provide_bind_function TNC_IMC_ProvideBindFunctionPointer + * @return TRUE if loading succeeded + */ + bool (*load_from_functions)(imc_manager_t *this, char *name, + TNC_IMC_InitializePointer initialize, + TNC_IMC_NotifyConnectionChangePointer notify_connection_change, + TNC_IMC_BeginHandshakePointer begin_handshake, + TNC_IMC_ReceiveMessagePointer receive_message, + TNC_IMC_ReceiveMessageLongPointer receive_message_long, + TNC_IMC_BatchEndingPointer batch_ending, + TNC_IMC_TerminatePointer terminate, + TNC_IMC_ProvideBindFunctionPointer provide_bind_function); /** * Check if an IMC with a given ID is registered with the IMC manager |