Menu

#138 Erroneous closing of receive md socket

1.3.2.0
closed
None
2017-02-10
2017-02-01
No

The following steps will lead to a closing of the UDP socket bound to port 17225 if an VOS_IO_ERR occurs on that socket. Afterwards the system will not be able to receive any message data.

  1. trdp_mdSend() calls mdSendPacket()
  2. trdp_mdSendPacket() calls vos_sockSendUDP()
  3. vos_sockSendUDP() returns VOS_IO_ERR
  4. trdp_mdSendPacket() checks return vaule against VOS_NO_ERR and returns TRDP_BLOCK_ERR
  5. trdp_mdSend() checks return value against TRDP_NO_ERR and TRDP_IO_ERR, all other errors lead to a appHandle->iface[iterMD->socketIdx].tcpParams.morituri = TRUE;: The socket will be closed

Proposed solution:
trdp_mdSendPacket() should map VOS_IO_ERR to TRDP_IO_ERR.

Discussion

  • Bernd Löhr

    Bernd Löhr - 2017-02-10
    • status: open --> pending
    • assigned_to: Bernd Löhr
     
  • Bernd Löhr

    Bernd Löhr - 2017-03-02
    • Status: pending --> closed
     

Log in to post a comment.

MongoDB Logo MongoDB