blob: b07950c53ede70c51e4ce7c38e075518946309c2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
#include <isotp/receive.h>
bool isotp_handle_single_frame(IsoTpHandle* handle, IsoTpMessage* message) {
isotp_complete_receive(handle, message);
return true;
}
void isotp_complete_receive(IsoTpHandle* handle, IsoTpMessage* message) {
if(handle->receive_handle.message_received_callback != NULL) {
handle->receive_handle.message_received_callback(message);
}
}
IsoTpHandle isotp_receive(IsoTpShims* shims,
const uint16_t arbitration_id, IsoTpMessageReceivedHandler callback) {
IsoTpReceiveHandle receive_handle = {
arbitration_id: arbitration_id,
message_received_callback: callback
};
IsoTpHandle handle = {
success: false,
completed: false,
receive_handle: receive_handle,
type: ISOTP_HANDLE_RECEIVING
};
return handle;
}
|