aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRomain Forlot <romain.forlot@iot.bzh>2019-11-21 16:13:52 +0100
committerRomain Forlot <romain.forlot@iot.bzh>2019-12-03 19:46:26 +0100
commit3111212de145f0bb8b939856ea659c3a86b348d9 (patch)
tree9bcbb21f4354e043f244df1085c019bdf8296a66
parent3d3711a7b4f1ac20fa19ded2cbada58d74e549b4 (diff)
socket: Raise an error if open function failed.
The socket opening wasn't tested and we fails later on another function using the wrongly opened socket. This would not happens anymore. Change-Id: I9b30bd9fc13b99277cbef6f7aeaddadc57ad0b18 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
-rw-r--r--low-can-binding/utils/socketcan-j1939/socketcan-j1939.cpp2
-rw-r--r--low-can-binding/utils/socketcan.cpp3
2 files changed, 5 insertions, 0 deletions
diff --git a/low-can-binding/utils/socketcan-j1939/socketcan-j1939.cpp b/low-can-binding/utils/socketcan-j1939/socketcan-j1939.cpp
index 5cc96eda..000999ff 100644
--- a/low-can-binding/utils/socketcan-j1939/socketcan-j1939.cpp
+++ b/low-can-binding/utils/socketcan-j1939/socketcan-j1939.cpp
@@ -169,6 +169,8 @@ namespace utils
{
socket_ = socketcan_t::open(PF_CAN, SOCK_DGRAM, CAN_J1939);
+ if (socket_ < 0)
+ return socket_;
define_tx_address(device_name, name, pgn, addr);
diff --git a/low-can-binding/utils/socketcan.cpp b/low-can-binding/utils/socketcan.cpp
index 50dfafb3..e8e01980 100644
--- a/low-can-binding/utils/socketcan.cpp
+++ b/low-can-binding/utils/socketcan.cpp
@@ -73,6 +73,9 @@ namespace utils
{
close();
socket_ = ::socket(domain, type, protocol);
+ if (socket_ < 0)
+ AFB_ERROR("Open failed. %s", strerror(errno));
+
return socket_;
}