summaryrefslogtreecommitdiffstats
path: root/CAN-binder/low-can-binding/utils/socket.cpp
diff options
context:
space:
mode:
authorRomain Forlot <romain.forlot@iot.bzh>2017-04-22 13:58:26 +0200
committerRomain Forlot <romain.forlot@iot.bzh>2017-04-22 13:58:26 +0200
commit1ee784aca5696286f567a4504b22a11cdaa0d0f8 (patch)
tree94f248d65135a17ed569f69a1c8290b69b8dd66b /CAN-binder/low-can-binding/utils/socket.cpp
parentf0973849c4df5740ffb241a21fc08398fa741a7e (diff)
Fix: opening bcm socket still trying to bind as a RAW socket.
Wrong condition testing making connect and bind happens. Change-Id: Ic75a74d044e9763fdf42e50f7643b26ffaf5d76d Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Diffstat (limited to 'CAN-binder/low-can-binding/utils/socket.cpp')
-rw-r--r--CAN-binder/low-can-binding/utils/socket.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/CAN-binder/low-can-binding/utils/socket.cpp b/CAN-binder/low-can-binding/utils/socket.cpp
index 01937ed4..f4a30111 100644
--- a/CAN-binder/low-can-binding/utils/socket.cpp
+++ b/CAN-binder/low-can-binding/utils/socket.cpp
@@ -127,10 +127,13 @@ namespace utils
txAddress_.can_family = AF_CAN;
txAddress_.can_ifindex = ifr.ifr_ifindex;
- if(bcm && connect((struct sockaddr *)&txAddress_, sizeof(txAddress_)) < 0)
+ if(bcm)
{
- ERROR(binder_interface, "%s: Connect failed. %s", __FUNCTION__, strerror(errno));
- close();
+ if(connect((struct sockaddr *)&txAddress_, sizeof(txAddress_)) < 0)
+ {
+ ERROR(binder_interface, "%s: Connect failed. %s", __FUNCTION__, strerror(errno));
+ close();
+ }
}
// It's a RAW socket request, bind it to txAddress
else if(bind((struct sockaddr *)&txAddress_, sizeof(txAddress_)) < 0)