#include <isotp/receive.h>
-void isotp_handle_single_frame(IsoTpHandle* handle,
- IsoTpMessage* message) {
+bool isotp_handle_single_frame(IsoTpHandle* handle, IsoTpMessage* message) {
isotp_complete_receive(handle, message);
+ return true;
}
void isotp_complete_receive(IsoTpHandle* handle, IsoTpMessage* message) {
- handle->receive_handle.message_received_callback(message);
+ if(handle->receive_handle.message_received_callback != NULL) {
+ handle->receive_handle.message_received_callback(message);
+ }
}
IsoTpHandle isotp_receive(IsoTpShims* shims,
IsoTpHandle handle = {
success: false,
- completed: true,
+ completed: false,
receive_handle: receive_handle,
type: ISOTP_HANDLE_RECEIVING
};
return handle;
}
-