MCPcopy Create free account
hub / github.com/RT-Thread/rt-thread / rt_link_handshake_handle

Function rt_link_handshake_handle

components/utilities/rt-link/src/rtlink.c:566–589  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

564}
565
566static rt_err_t rt_link_handshake_handle(struct rt_link_frame *receive_frame)
567{
568 LOG_D("HANDSHAKE: seq(%d) param(%d)", receive_frame->head.sequence, receive_frame->extend.parameter);
569 rt_link_scb->state = RT_LINK_CONNECT;
570 /* sync requester tx seq, responder rx seq = requester tx seq */
571 rt_link_scb->rx_record.rx_seq = receive_frame->head.sequence;
572 /* sync requester rx seq, responder tx seq = requester rx seq */
573 rt_link_scb->tx_seq = (rt_uint8_t)receive_frame->extend.parameter;
574
575 if (rt_link_scb->service[receive_frame->head.service] != RT_NULL)
576 {
577 rt_link_scb->service[receive_frame->head.service]->state = RT_LINK_CONNECT;
578 rt_link_command_frame_send(receive_frame->head.service,
579 receive_frame->head.sequence,
580 RT_LINK_CONFIRM_FRAME, RT_NULL);
581 }
582 else
583 {
584 rt_link_command_frame_send(receive_frame->head.service,
585 receive_frame->head.sequence,
586 RT_LINK_DETACH_FRAME, RT_NULL);
587 }
588 return RT_EOK;
589}
590
591static rt_err_t rt_link_detach_handle(struct rt_link_frame *receive_frame)
592{

Callers 1

rt_link_parse_frameFunction · 0.85

Calls 1

Tested by

no test coverage detected