Ésta es una función que se puede registrar como una devolución de llamada y se invoca cuando un mensaje se propaga de un nodo a otro. Se invoca para todos los mensajes propagados dentro del grupo de ejecución en el que se registró la devolución de llamada, si el estado de la rutina de salida de usuario es activo. La devolución de llamada se registra proporcionando un puntero a la función al pasar el campo iFpPropagatedMessageCallback de la estructura CCI_UE_VFT a cciRegisterUserExit.
typedef void (*cciPropagatedMessageCallback)( CciDataContext* userContext, CciMessage* message, CciMessage* localEnvironment, CciMessage* exceptionList, CciMessage* environment, CciConnection* connection);
void myPropagatedMessageCallback( CciMessage* message, CciMessage* localEnvironment, CciMessage* exceptionList, CciMessage* environment, CciConnection* connection){ int rc = CCI_SUCCESS; CciNode* targetNode = cciGetTargetNode(amp rc, connection); CciChar targetNodeName [initialStringBufferLength]; targetNodeNameLength = cciGetNodeName(amp rc, targetNode, targetNodeName, initialStringBufferLength); /*you should now check the rc for unexpected values*/ /*if rc is CCI_BUFFER_TOO_SMALL then you should resize and retry*/ }