added TNC_TNCC_ReportMessageTypesLong() and TNC_TNCS_ReportMessageTypesLong() messages
This commit is contained in:
+44
-33
@@ -40,11 +40,11 @@ struct imc_t {
|
||||
* the API version number to be used. It also supplies the IMC ID, an IMC
|
||||
* identifier that the IMC must use when calling TNC Client callback functions.
|
||||
*
|
||||
* @param imcID IMC ID assigned by TNCC
|
||||
* @param minVersion minimum API version supported by TNCC
|
||||
* @param maxVersion maximum API version supported by TNCC
|
||||
* @param OutActualVersion mutually supported API version number
|
||||
* @return TNC result code
|
||||
* @param imcID IMC ID assigned by TNCC
|
||||
* @param minVersion minimum API version supported by TNCC
|
||||
* @param maxVersion maximum API version supported by TNCC
|
||||
* @param OutActualVersion mutually supported API version number
|
||||
* @return TNC result code
|
||||
*/
|
||||
TNC_Result (*initialize)(TNC_IMCID imcID,
|
||||
TNC_Version minVersion,
|
||||
@@ -55,10 +55,10 @@ struct imc_t {
|
||||
* The TNC Client calls this function to inform the IMC that the state of
|
||||
* the network connection identified by connectionID has changed to newState.
|
||||
*
|
||||
* @param imcID IMC ID assigned by TNCC
|
||||
* @param connectionID network connection ID assigned by TNCC
|
||||
* @param newState new network connection state
|
||||
* @return TNC result code
|
||||
* @param imcID IMC ID assigned by TNCC
|
||||
* @param connectionID network connection ID assigned by TNCC
|
||||
* @param newState new network connection state
|
||||
* @return TNC result code
|
||||
*/
|
||||
TNC_Result (*notify_connection_change)(TNC_IMCID imcID,
|
||||
TNC_ConnectionID connectionID,
|
||||
@@ -68,9 +68,9 @@ struct imc_t {
|
||||
* The TNC Client calls this function to indicate that an Integrity Check
|
||||
* Handshake is beginning and solicit messages from IMCs for the first batch.
|
||||
*
|
||||
* @param imcID IMC ID assigned by TNCC
|
||||
* @param connectionID network connection ID assigned by TNCC
|
||||
* @return TNC result code
|
||||
* @param imcID IMC ID assigned by TNCC
|
||||
* @param connectionID network connection ID assigned by TNCC
|
||||
* @return TNC result code
|
||||
*/
|
||||
TNC_Result (*begin_handshake)(TNC_IMCID imcID,
|
||||
TNC_ConnectionID connectionID);
|
||||
@@ -81,12 +81,12 @@ struct imc_t {
|
||||
* the number of octets indicated by messageLength. The type of the message
|
||||
* is indicated by messageType.
|
||||
*
|
||||
* @param imcID IMC ID assigned by TNCS
|
||||
* @param connectionID network connection ID assigned by TNCC
|
||||
* @param message reference to buffer containing message
|
||||
* @param messageLength number of octets in message
|
||||
* @param messageType message type of message
|
||||
* @return TNC result code
|
||||
* @param imcID IMC ID assigned by TNCS
|
||||
* @param connectionID network connection ID assigned by TNCC
|
||||
* @param message reference to buffer containing message
|
||||
* @param messageLength number of octets in message
|
||||
* @param messageType message type of message
|
||||
* @return TNC result code
|
||||
*/
|
||||
TNC_Result (*receive_message)(TNC_IMCID imcID,
|
||||
TNC_ConnectionID connectionID,
|
||||
@@ -99,9 +99,9 @@ struct imc_t {
|
||||
* received in a batch have been delivered and this is the IMC’s last chance
|
||||
* to send a message in the batch of IMC messages currently being collected.
|
||||
*
|
||||
* @param imcID IMC ID assigned by TNCC
|
||||
* @param connectionID network connection ID assigned by TNCC
|
||||
* @return TNC result code
|
||||
* @param imcID IMC ID assigned by TNCC
|
||||
* @param connectionID network connection ID assigned by TNCC
|
||||
* @return TNC result code
|
||||
*/
|
||||
TNC_Result (*batch_ending)(TNC_IMCID imcID,
|
||||
TNC_ConnectionID connectionID);
|
||||
@@ -110,8 +110,8 @@ struct imc_t {
|
||||
* The TNC Client calls this function to close down the IMC when all work is
|
||||
* complete or the IMC reports TNC_RESULT_FATAL.
|
||||
*
|
||||
* @param imcID IMC ID assigned by TNCC
|
||||
* @return TNC result code
|
||||
* @param imcID IMC ID assigned by TNCC
|
||||
* @return TNC result code
|
||||
*/
|
||||
TNC_Result (*terminate)(TNC_IMCID imcID);
|
||||
|
||||
@@ -122,9 +122,9 @@ struct imc_t {
|
||||
* TNCS bind function. The IMV can then use the TNCS bind function to obtain
|
||||
* pointers to any other TNCS functions.
|
||||
*
|
||||
* @param imcID IMC ID assigned by TNCC
|
||||
* @param bindFunction pointer to TNC_TNCC_BindFunction
|
||||
* @return TNC result code
|
||||
* @param imcID IMC ID assigned by TNCC
|
||||
* @param bindFunction pointer to TNC_TNCC_BindFunction
|
||||
* @return TNC result code
|
||||
*/
|
||||
TNC_Result (*provide_bind_function)(TNC_IMCID imcID,
|
||||
TNC_TNCC_BindFunctionPointer bindFunction);
|
||||
@@ -132,38 +132,49 @@ struct imc_t {
|
||||
/**
|
||||
* Sets the ID of an imc_t object.
|
||||
*
|
||||
* @param id IMC ID to be assigned
|
||||
* @param id IMC ID to be assigned
|
||||
*/
|
||||
void (*set_id)(imc_t *this, TNC_IMCID id);
|
||||
|
||||
/**
|
||||
* Returns the ID of an imc_t object.
|
||||
*
|
||||
* @return assigned IMC ID
|
||||
* @return assigned IMC ID
|
||||
*/
|
||||
TNC_IMCID (*get_id)(imc_t *this);
|
||||
|
||||
/**
|
||||
* Returns the name of an imc_t object.
|
||||
*
|
||||
* @return name of IMC
|
||||
* @return name of IMC
|
||||
*/
|
||||
char* (*get_name)(imc_t *this);
|
||||
|
||||
/**
|
||||
* Sets the supported message types of an imc_t object.
|
||||
*
|
||||
* @param supported_types list of messages type supported by IMC
|
||||
* @param type_count number of supported message types
|
||||
* @param supported_types list of messages type supported by IMC
|
||||
* @param type_count number of supported message types
|
||||
*/
|
||||
void (*set_message_types)(imc_t *this, TNC_MessageTypeList supported_types,
|
||||
TNC_UInt32 type_count);
|
||||
|
||||
/**
|
||||
* Sets the supported long message types of an imc_t object.
|
||||
*
|
||||
* @param supported_vids list of vendor IDs supported by IMC
|
||||
* @param supported_subtypes list of messages type supported by IMC
|
||||
* @param type_count number of supported message types
|
||||
*/
|
||||
void (*set_message_types_long)(imc_t *this, TNC_VendorIDList supported_vids,
|
||||
TNC_MessageSubtypeList supported_subtypes,
|
||||
TNC_UInt32 type_count);
|
||||
|
||||
/**
|
||||
* Check if the IMC supports a given message type.
|
||||
*
|
||||
* @param message_type message type
|
||||
* @return TRUE if supported
|
||||
* @param message_type message type
|
||||
* @return TRUE if supported
|
||||
*/
|
||||
bool (*type_supported)(imc_t *this, TNC_MessageType message_type);
|
||||
|
||||
|
||||
@@ -84,23 +84,38 @@ struct imc_manager_t {
|
||||
/**
|
||||
* Begin a handshake between the IMCs and a connection
|
||||
*
|
||||
* @param id connection ID
|
||||
* @param id connection ID
|
||||
*/
|
||||
void (*begin_handshake)(imc_manager_t *this, TNC_ConnectionID id);
|
||||
|
||||
/**
|
||||
* Sets the supported message types reported by a given IMC
|
||||
*
|
||||
* @param id ID of reporting IMC
|
||||
* @param supported_types list of messages type supported by IMC
|
||||
* @param type_count number of supported message types
|
||||
* @return TNC result code
|
||||
* @param id ID of reporting IMC
|
||||
* @param supported_types list of messages type supported by IMC
|
||||
* @param type_count number of supported message types
|
||||
* @return TNC result code
|
||||
*/
|
||||
TNC_Result (*set_message_types)(imc_manager_t *this,
|
||||
TNC_IMCID id,
|
||||
TNC_MessageTypeList supported_types,
|
||||
TNC_UInt32 type_count);
|
||||
|
||||
/**
|
||||
* Sets the supported long message types reported by a given IMC
|
||||
*
|
||||
* @param id ID of reporting IMC
|
||||
* @param supported_vids list of vendor IDs supported by IMC
|
||||
* @param supported_subtypes list of messages type supported by IMC
|
||||
* @param type_count number of supported message types
|
||||
* @return TNC result code
|
||||
*/
|
||||
TNC_Result (*set_message_types_long)(imc_manager_t *this,
|
||||
TNC_IMCID id,
|
||||
TNC_VendorIDList supported_vids,
|
||||
TNC_MessageSubtypeList supported_subtypes,
|
||||
TNC_UInt32 type_count);
|
||||
|
||||
/**
|
||||
* Delivers a message to interested IMCs.
|
||||
*
|
||||
|
||||
+44
-33
@@ -40,11 +40,11 @@ struct imv_t {
|
||||
* the API version number to be used. It also supplies the IMV ID, an IMV
|
||||
* identifier that the IMV must use when calling TNC Server callback functions.
|
||||
*
|
||||
* @param imvID IMV ID assigned by TNCS
|
||||
* @param minVersion minimum API version supported
|
||||
* @param maxVersion maximum API version supported by TNCS
|
||||
* @param OutActualVersion mutually supported API version number
|
||||
* @return TNC result code
|
||||
* @param imvID IMV ID assigned by TNCS
|
||||
* @param minVersion minimum API version supported
|
||||
* @param maxVersion maximum API version supported by TNCS
|
||||
* @param OutActualVersion mutually supported API version number
|
||||
* @return TNC result code
|
||||
*/
|
||||
TNC_Result (*initialize)(TNC_IMVID imvID,
|
||||
TNC_Version minVersion,
|
||||
@@ -55,10 +55,10 @@ struct imv_t {
|
||||
* The TNC Server calls this function to inform the IMV that the state of
|
||||
* the network connection identified by connectionID has changed to newState.
|
||||
*
|
||||
* @param imvID IMV ID assigned by TNCS
|
||||
* @param connectionID network connection ID assigned by TNCS
|
||||
* @param newState new network connection state
|
||||
* @return TNC result code
|
||||
* @param imvID IMV ID assigned by TNCS
|
||||
* @param connectionID network connection ID assigned by TNCS
|
||||
* @param newState new network connection state
|
||||
* @return TNC result code
|
||||
*/
|
||||
TNC_Result (*notify_connection_change)(TNC_IMVID imvID,
|
||||
TNC_ConnectionID connectionID,
|
||||
@@ -69,9 +69,9 @@ struct imv_t {
|
||||
* Handshake (after all IMC-IMV messages have been delivered) to solicit
|
||||
* recommendations from IMVs that have not yet provided a recommendation.
|
||||
*
|
||||
* @param imvID IMV ID assigned by TNCS
|
||||
* @param connectionID network connection ID assigned by TNCS
|
||||
* @return TNC result code
|
||||
* @param imvID IMV ID assigned by TNCS
|
||||
* @param connectionID network connection ID assigned by TNCS
|
||||
* @return TNC result code
|
||||
*/
|
||||
TNC_Result (*solicit_recommendation)(TNC_IMVID imvID,
|
||||
TNC_ConnectionID connectionID);
|
||||
@@ -82,12 +82,12 @@ struct imv_t {
|
||||
* the number of octets indicated by messageLength. The type of the message
|
||||
* is indicated by messageType.
|
||||
*
|
||||
* @param imvID IMV ID assigned by TNCS
|
||||
* @param connectionID network connection ID assigned by TNCS
|
||||
* @param message reference to buffer containing message
|
||||
* @param messageLength number of octets in message
|
||||
* @param messageType message type of message
|
||||
* @return TNC result code
|
||||
* @param imvID IMV ID assigned by TNCS
|
||||
* @param connectionID network connection ID assigned by TNCS
|
||||
* @param message reference to buffer containing message
|
||||
* @param messageLength number of octets in message
|
||||
* @param messageType message type of message
|
||||
* @return TNC result code
|
||||
*/
|
||||
TNC_Result (*receive_message)(TNC_IMVID imvID,
|
||||
TNC_ConnectionID connectionID,
|
||||
@@ -100,9 +100,9 @@ struct imv_t {
|
||||
* received in a batch have been delivered and this is the IMV’s last chance
|
||||
* to send a message in the batch of IMV messages currently being collected.
|
||||
*
|
||||
* @param imvID IMV ID assigned by TNCS
|
||||
* @param connectionID network connection ID assigned by TNCS
|
||||
* @return TNC result code
|
||||
* @param imvID IMV ID assigned by TNCS
|
||||
* @param connectionID network connection ID assigned by TNCS
|
||||
* @return TNC result code
|
||||
*/
|
||||
TNC_Result (*batch_ending)(TNC_IMVID imvID,
|
||||
TNC_ConnectionID connectionID);
|
||||
@@ -110,8 +110,8 @@ struct imv_t {
|
||||
/**
|
||||
* The TNC Server calls this function to close down the IMV.
|
||||
*
|
||||
* @param imvID IMV ID assigned by TNCS
|
||||
* @return TNC result code
|
||||
* @param imvID IMV ID assigned by TNCS
|
||||
* @return TNC result code
|
||||
*/
|
||||
TNC_Result (*terminate)(TNC_IMVID imvID);
|
||||
|
||||
@@ -122,9 +122,9 @@ struct imv_t {
|
||||
* TNCS bind function. The IMV can then use the TNCS bind function to obtain
|
||||
* pointers to any other TNCS functions.
|
||||
*
|
||||
* @param imvID IMV ID assigned by TNCS
|
||||
* @param bindFunction pointer to TNC_TNCS_BindFunction
|
||||
* @return TNC result code
|
||||
* @param imvID IMV ID assigned by TNCS
|
||||
* @param bindFunction pointer to TNC_TNCS_BindFunction
|
||||
* @return TNC result code
|
||||
*/
|
||||
TNC_Result (*provide_bind_function)(TNC_IMVID imvID,
|
||||
TNC_TNCS_BindFunctionPointer bindFunction);
|
||||
@@ -132,38 +132,49 @@ struct imv_t {
|
||||
/**
|
||||
* Sets the ID of an imv_t object.
|
||||
*
|
||||
* @param id IMV ID to be assigned
|
||||
* @param id IMV ID to be assigned
|
||||
*/
|
||||
void (*set_id)(imv_t *this, TNC_IMVID id);
|
||||
|
||||
/**
|
||||
* Returns the ID of an imv_t object.
|
||||
*
|
||||
* @return IMV ID assigned by TNCS
|
||||
* @return IMV ID assigned by TNCS
|
||||
*/
|
||||
TNC_IMVID (*get_id)(imv_t *this);
|
||||
|
||||
/**
|
||||
* Returns the name of an imv_t object.
|
||||
*
|
||||
* @return name of IMV
|
||||
* @return name of IMV
|
||||
*/
|
||||
char* (*get_name)(imv_t *this);
|
||||
|
||||
/**
|
||||
* Sets the supported message types of an imv_t object.
|
||||
*
|
||||
* @param supported_types list of messages type supported by IMV
|
||||
* @param type_count number of supported message types
|
||||
* @param supported_types list of messages type supported by IMV
|
||||
* @param type_count number of supported message types
|
||||
*/
|
||||
void (*set_message_types)(imv_t *this, TNC_MessageTypeList supported_types,
|
||||
TNC_UInt32 type_count);
|
||||
|
||||
/**
|
||||
* Sets the supported long message types of an imv_t object.
|
||||
*
|
||||
* @param supported_vids list of vendor IDs supported by IMC
|
||||
* @param supported_subtypes list of messages type supported by IMC
|
||||
* @param type_count number of supported message types
|
||||
*/
|
||||
void (*set_message_types_long)(imv_t *this, TNC_VendorIDList supported_vids,
|
||||
TNC_MessageSubtypeList supported_subtypes,
|
||||
TNC_UInt32 type_count);
|
||||
|
||||
/**
|
||||
* Check if the IMV supports a given message type.
|
||||
*
|
||||
* @param message_type message type
|
||||
* @return TRUE if supported
|
||||
* @param message_type message type
|
||||
* @return TRUE if supported
|
||||
*/
|
||||
bool (*type_supported)(imv_t *this, TNC_MessageType message_type);
|
||||
|
||||
|
||||
@@ -106,20 +106,35 @@ struct imv_manager_t {
|
||||
/**
|
||||
* Sets the supported message types reported by a given IMV
|
||||
*
|
||||
* @param id ID of reporting IMV
|
||||
* @param supported_types list of messages type supported by IMV
|
||||
* @param type_count number of supported message types
|
||||
* @return TNC result code
|
||||
* @param id ID of reporting IMV
|
||||
* @param supported_types list of messages type supported by IMV
|
||||
* @param type_count number of supported message types
|
||||
* @return TNC result code
|
||||
*/
|
||||
TNC_Result (*set_message_types)(imv_manager_t *this,
|
||||
TNC_IMVID id,
|
||||
TNC_MessageTypeList supported_types,
|
||||
TNC_UInt32 type_count);
|
||||
|
||||
/**
|
||||
* Sets the supported long message types reported by a given IMV
|
||||
*
|
||||
* @param id ID of reporting IMV
|
||||
* @param supported_vids list of vendor IDs supported by IMV
|
||||
* @param supported_subtypes list of messages type supported by IMV
|
||||
* @param type_count number of supported message types
|
||||
* @return TNC result code
|
||||
*/
|
||||
TNC_Result (*set_message_types_long)(imv_manager_t *this,
|
||||
TNC_IMVID id,
|
||||
TNC_VendorIDList supported_vids,
|
||||
TNC_MessageSubtypeList supported_subtypes,
|
||||
TNC_UInt32 type_count);
|
||||
|
||||
/**
|
||||
* Solicit recommendations from IMVs that have not yet provided one
|
||||
*
|
||||
* @param id connection ID
|
||||
* @param id connection ID
|
||||
*/
|
||||
void (*solicit_recommendation)(imv_manager_t *this, TNC_ConnectionID id);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user