aboutsummaryrefslogtreecommitdiffstats
path: root/src/libcharon/tnc/tnccs/tnccs_manager.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libcharon/tnc/tnccs/tnccs_manager.h')
-rw-r--r--src/libcharon/tnc/tnccs/tnccs_manager.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/libcharon/tnc/tnccs/tnccs_manager.h b/src/libcharon/tnc/tnccs/tnccs_manager.h
index 40c3d0a22..127147e26 100644
--- a/src/libcharon/tnc/tnccs/tnccs_manager.h
+++ b/src/libcharon/tnc/tnccs/tnccs_manager.h
@@ -65,9 +65,11 @@ struct tnccs_manager_t {
* Create a TNCCS connection and assign a unique connection ID
*
* @param tnccs TNCCS connection instance
+ * @param send_message callback function adding a message to a TNCCS batch
* @result assigned connection ID
*/
- TNC_ConnectionID (*create_connection)(tnccs_manager_t *this, tnccs_t *tnccs);
+ TNC_ConnectionID (*create_connection)(tnccs_manager_t *this, tnccs_t *tnccs,
+ tnccs_send_message_t send_message);
/**
* Remove a TNCCS connection using its connection ID.
@@ -77,6 +79,20 @@ struct tnccs_manager_t {
void (*remove_connection)(tnccs_manager_t *this, TNC_ConnectionID id);
/**
+ * Add an IMC/IMV message to the batch of a given connection ID.
+ *
+ * @param id target connection ID
+ * @param message message to be added
+ * @param message_len message length
+ * @param message_type message type
+ * @result return code
+ */
+ TNC_Result (*send_message)(tnccs_manager_t *this, TNC_ConnectionID id,
+ TNC_BufferReference message,
+ TNC_UInt32 message_len,
+ TNC_MessageType message_type);
+
+ /**
* Destroy a tnccs_manager instance.
*/
void (*destroy)(tnccs_manager_t *this);