Linux: Fix Error Handling in TransportRpmsg_delete
authorAngela Stegmaier <angelabaker@ti.com>
Thu, 14 Apr 2016 21:01:48 +0000 (16:01 -0500)
committerAngela Stegmaier <angelabaker@ti.com>
Wed, 20 Apr 2016 18:45:44 +0000 (13:45 -0500)
commit84f2b39f64a31827962c065554c29b4f255c6974
tree3006ae37c4cd6df3f0e6cd2830d18c4c9c0ebe1d
parentdc6c5082f478225b7fbce4216173e6c5b36100b4
Linux: Fix Error Handling in TransportRpmsg_delete

TransportRpmsg_delete was not checking for a NULL handle
before de-referencing it, resulting in an application crash
if it was called with a NULL handle. A NULL handle was
being passed to TransportRpmsg_delete in the case where
TransportRpmsg_create socket connect call failed. In this
case, TransportRpmsg_create called TransportRpmsg_delete
with a NULL handle.

This patch adds a check for a NULL handle before de-referencing
the pointer in TransportRpmsg_delete, and also takes care
to cleanup the socket in TransportRpmsg_create in the failure
case where it cannot be cleaned by TransportRpmsg_delete.

Signed-off-by: Angela Stegmaier <angelabaker@ti.com>
linux/src/transport/TransportRpmsg.c