Skip to main content

API

API Overview

Define the following APIs using the __stdcall (WINAPI) calling convention.

API NamePurpose
UserCallOut_GetUserCfgRetrieve callout custom parameters
UserCallOut_SetUserCfgSet callout custom parameters
UserCallOut_ChInitInitialize channel information
UserCallOut_ChDeInitFinalize channel information
UserCallOut_MonStartNotification that monitoring has started
UserCallOut_CreMacDaPreFixReqRequest prefix data for MAC generation (transmit)
UserCallOut_CreMacDaPostFixReqRequest postfix data for MAC generation (transmit)
UserCallOut_TruncatedFvReqRequest truncated FV data
UserCallOut_MacDaPreFixReqRequest prefix data for MAC verification
UserCallOut_MacDaPostFixReqRequest postfix data for MAC verification
UserCallOut_AfterMacVerifyNotify MAC verification result
UserCallOut_AfterTransMsgNotify completion of MAC transmit request
UserCallOut_MonStopNotification that monitoring has stopped

Details for each API follow the format below. Return MPX_COUT_OK (DWORD) from every API (see the constant definitions for error codes).

FieldDescription
Signature<Return type> <API name> (<arguments>, ...)
Arguments<Type> (*1)(Name)<in/out> (*2)Argument description
FunctionAPI behavior
Call timingWhen the API is called
NotesAdditional information

*1: For values set in or retrieved from structures, see Structure Definitions.
*2: Use “in” if the value is supplied when the function is called; “out” if the function populates the value.

UserCallOut_GetUserCfg

Notifies the security plug-in of the callout custom parameters.

FieldDescription
SignatureDWORD UserCallOut_GetUserCfg ( StCustomParamCfg CalloutCfgs[] ,
LPDWORD CfgNum )
ArgumentsStCustomParamCfg []CalloutCfgsoutArray of parameter information
LPDWORDCfgNumoutNumber of parameter entries
FunctionNotifies the security plug-in of the callout custom parameters.
Call timingCalled when the Callout Custom Param Setting dialog is displayed.

UserCallOut_SetUserCfg

Receives callout custom parameters from the security plug-in.

FieldDescription
SignatureDWORD UserCallOut_SetUserCfg ( StCustomParamCfg CalloutCfgs[] ,
DWORD CfgNum )
ArgumentsStCustomParamCfg []CalloutCfgsinArray of parameter information
DWORDCfgNuminNumber of parameter entries
FunctionReceives callout custom parameters from the security plug-in.
Call timingCalled when the OK button is clicked in the Callout Custom Param Setting dialog.

UserCallOut_ChInit

Performs the required initialization for each channel.

FieldDescription
SignatureDWORD UserCallOut_ChInit ( DWORD Ch , DWORD InnerCh )
ArgumentsDWORDChinChannel
DWORDInnerChinInternal channel
FunctionPerforms the required initialization for each channel.
Call timingCalled once per channel immediately before the transmit and receive threads start when monitoring begins.

UserCallOut_ChDeInit

Performs the required cleanup for each channel.

FieldDescription
SignatureDWORD UserCallOut_ChDeInit ( DWORD Ch , DWORD InnerCh )
ArgumentsDWORDChinChannel
DWORDInnerChinInternal channel
FunctionPerforms the required cleanup for each channel.
Call timingCalled once per channel immediately before the transmit and receive threads stop when monitoring ends.

UserCallOut_MonStart

Notifies that monitoring has started.

FieldDescription
Signature

DWORD UserCallOut_MonStart ( DWORD Ch , DWORD InnerCh , DWORD ThreadType , StMsgConfig PrefixCfg ,
StMsgConfig PostfixCfg )

ArgumentsDWORDChinChannel
DWORDInnerChinInternal channel
DWORDThreadTypeinCalling thread
StMsgConfigPrefixCfginSecurity settings for the prefix
StMsgConfigPostfixCfginSecurity settings for the postfix
FunctionNotifies that monitoring has started.
Call timingCalled by both the transmit and receive threads of each channel with message authentication enabled when monitoring starts.
NotesFor ThreadType values, see Thread Types.

UserCallOut_CreMacDaPreFixReq

Requests prefix data used to generate the MAC for transmission.

FieldDescription
Signature

DWORD UserCallOut_CreMacDaPreFixReq ( StFrameCfg FrameCfg , StFrameInfo FrameInfo , LPBYTE Prefix , LPDWORD PrefixLen )

ArgumentsStFrameCfgFrameCfginTransmit frame configuration
StFrameInfoFrameInfoinTransmit frame information
LPBYTEPrefixoutPointer to the prefix output buffer
LPDWORDPrefixLenoutPointer to the prefix length (bytes)
FunctionRequests prefix data used to generate the MAC for transmission.
Call timingCalled by the transmit thread while generating a transmit message, before MAC generation.

UserCallOut_CreMacDaPostFixReq

Requests postfix data used to generate the MAC for transmission.

FieldDescription
Signature

DWORD UserCallOut_CreMacDaPostFixReq ( StFrameCfg FrameCfg , StFrameInfo FrameInfo , LPBYTE Postfix , LPDWORD PostfixLen )

ArgumentsStFrameCfgFrameCfginTransmit frame configuration
StFrameInfoFrameInfoinTransmit frame information
LPBYTEPostfixoutPointer to the postfix output buffer
LPDWORDPostfixLenoutPointer to the postfix length (bytes)
FunctionRequests postfix data used to generate the MAC for transmission.
Call timingCalled by the transmit thread while generating a transmit message, before MAC generation.

UserCallOut_TruncatedFvReq

Requests the truncated FV to include in the message.

FieldDescription
Signature

DWORD UserCallOut_TruncatedFvReq ( StFrameCfg FrameCfg , StFrameInfo FrameInfo , StPrePostData Prefix ,
StPrePostData Postfix , LPBYTE TruncatedFv , LPDWORD TruncatedFvLen )

ArgumentsStFrameCfgFrameCfginTransmit frame configuration
StFrameInfoFrameInfoinTransmit frame information
StPrePostDataPrefixinPrefix used for MAC generation
StPrePostDataPostfixinPostfix used for MAC generation
LPBYTETruncatedFvoutPointer to the truncated FV output buffer
LPDWORDTruncatedFvLenoutPointer to the truncated FV length (bytes)
FunctionRequests the truncated FV to include in the message.
Call timingCalled by the transmit thread immediately before sending the request to the MicroPeckerX unit.

UserCallOut_MacDaPreFixReq

Requests prefix data used to generate the MAC for verification.

FieldDescription
Signature

DWORD UserCallOut_MacDaPreFixReq ( DWORD VeryAttemptCnt , StFrameCfg FrameCfg , StFrameInfo FrameInfo ,
LPBYTE Prefix , LPDWORD PrefixLen )

ArgumentsDWORDVeryAttemptCntinVerification attempt count
StFrameCfgFrameCfginTransmit frame configuration
StFrameInfoFrameInfoinTransmit frame information
LPBYTEPrefixoutPointer to the prefix output buffer
LPDWORDPrefixLenoutPointer to the prefix length (bytes)
FunctionRequests prefix data used to generate the MAC for verification.
Call timingCalled by the monitor thread before MAC verification.

UserCallOut_MacDaPostFixReq

Requests postfix data used to generate the MAC for verification.

FieldDescription
Signature

DWORD UserCallOut_MacDaPostFixReq ( DWORD VeryAttemptCnt ,
StFrameCfg FrameCfg , StFrameInfo FrameInfo , LPBYTE Postfix ,
LPDWORD PostfixLen )

ArgumentsDWORDVeryAttemptCntinVerification attempt count
StFrameCfgFrameCfginTransmit frame configuration
StFrameInfoFrameInfoinTransmit frame information
LPBYTEPostfixoutPointer to the postfix output buffer
LPDWORDPostfixLenoutPointer to the postfix length (bytes)
FunctionRequests postfix data used to generate the MAC for verification.
Call timingCalled by the monitor thread before MAC verification.

UserCallOut_AfterMacVerify

Notifies the result of MAC verification.

FieldDescription
Signature

DWORD UserCallOut_AfterMacVerify ( StFrameCfg FrameCfg , StFrameInfo FrameInfo , StPrePostData Prefix ,
StPrePostData Postfix , DWORD VerifyResult )

ArgumentsStFrameCfgFrameCfginTransmit frame configuration
StFrameInfoFrameInfoinTransmit frame information
StPrePostDataPrefixinPrefix used for MAC generation
StPrePostDataPostfixinPostfix used for MAC generation
DWORDVerifyResultinMAC verification result
FunctionNotifies the result of MAC verification.
Call timingCalled by the monitor thread after MAC verification.

UserCallOut_AfterTransMsg

Notifies that the MAC transmit request has completed.

FieldDescription
Signature

DWORD UserCallOut_AfterTransMsg ( StFrameCfg FrameCfg ,
StFrameInfo FrameInfo )

ArgumentsStFrameCfgFrameCfginTransmit frame configuration
StFrameInfoFrameInfoinTransmit frame information
FunctionNotifies that the MAC transmit request has completed.
Call timingCalled immediately after submitting the transmit request to the MicroPeckerX unit.

UserCallOut_MonStop

Notifies that monitoring has stopped.

FieldDescription
Signature

DWORD UserCallOut_MonStop ( DWORD Ch , DWORD InnerCh ,
DWORD ThreadType , StMsgConfig PrefixCfg ,
StMsgConfig PostfixCfg )

ArgumentsDWORDChinChannel
DWORDInnerChinInternal channel
DWORDThreadTypeinCalling thread
StMsgConfigPrefixCfginSecurity settings for the prefix
StMsgConfigPostfixCfginSecurity settings for the postfix
FunctionNotifies that monitoring has stopped.
Call timingCalled by both the transmit and receive threads of each channel with message authentication enabled when monitoring stops.
NotesFor ThreadType values, see Thread Types.