Code Review
/
apps
/
agl-service-can-low-level.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
j1939: update using latest commits in linux-next
[apps/agl-service-can-low-level.git]
/
low-can-binding
/
utils
/
socketcan-j1939
/
socketcan-j1939.cpp
diff --git
a/low-can-binding/utils/socketcan-j1939/socketcan-j1939.cpp
b/low-can-binding/utils/socketcan-j1939/socketcan-j1939.cpp
index
bb74c76
..
8ce16fb
100644
(file)
--- a/
low-can-binding/utils/socketcan-j1939/socketcan-j1939.cpp
+++ b/
low-can-binding/utils/socketcan-j1939/socketcan-j1939.cpp
@@
-21,6
+21,7
@@
#include <iostream>
#include <algorithm>
#include <vector>
#include <iostream>
#include <algorithm>
#include <vector>
+
#include "./socketcan-j1939.hpp"
#include "socketcan-j1939-addressclaiming.hpp"
#include "./socketcan-j1939.hpp"
#include "socketcan-j1939-addressclaiming.hpp"
@@
-50,12
+51,9
@@
namespace utils
{
filter.name = name;
if(name_mask != J1939_NO_NAME)
{
filter.name = name;
if(name_mask != J1939_NO_NAME)
- {
filter.name_mask = name_mask;
filter.name_mask = name_mask;
- } else
- {
+ else
filter.name_mask = ~0ULL;
filter.name_mask = ~0ULL;
- }
++filter_on;
}
++filter_on;
}
@@
-63,30
+61,25
@@
namespace utils
{
filter.addr = addr;
if(addr_mask != J1939_NO_ADDR)
{
filter.addr = addr;
if(addr_mask != J1939_NO_ADDR)
- {
filter.addr_mask = addr_mask;
filter.addr_mask = addr_mask;
- } else
- {
+ else
filter.addr_mask = ~0;
filter.addr_mask = ~0;
- }
+
++filter_on;
}
if (pgn <= J1939_PGN_MAX)
{
filter.pgn = pgn;
if(pgn_mask != J1939_NO_PGN)
++filter_on;
}
if (pgn <= J1939_PGN_MAX)
{
filter.pgn = pgn;
if(pgn_mask != J1939_NO_PGN)
- {
filter.pgn_mask = pgn_mask;
filter.pgn_mask = pgn_mask;
- } else
- {
+ else
filter.pgn_mask = ~0;
filter.pgn_mask = ~0;
- }
+
++filter_on;
}
++filter_on;
}
+
if(filter_on)
if(filter_on)
- {
setopt(SOL_CAN_J1939, SO_J1939_FILTER, &filter, sizeof(filter));
setopt(SOL_CAN_J1939, SO_J1939_FILTER, &filter, sizeof(filter));
- }
}
/**
}
/**
@@
-98,16
+91,12
@@
namespace utils
*/
void socketcan_j1939_t::define_opt(bool promisc, bool recv_own_msgs, bool broadcast)
{
*/
void socketcan_j1939_t::define_opt(bool promisc, bool recv_own_msgs, bool broadcast)
{
- int promisc_i = 0;
- int recv_own_msgs_i = 0;
- int broadcast_i = 0;
-
- if(promisc) promisc_i = 1;
- if(recv_own_msgs) recv_own_msgs_i=1;
- if(broadcast) broadcast_i = 1;
+ int promisc_i = promisc ? 1 : 0;
+ //int recv_own_msgs_i = recv_own_msgs ? 1 : 0;
+ int broadcast_i = broadcast ? 1 : 0;
setopt(SOL_CAN_J1939, SO_J1939_PROMISC, &promisc_i, sizeof(promisc_i));
setopt(SOL_CAN_J1939, SO_J1939_PROMISC, &promisc_i, sizeof(promisc_i));
- setopt(SOL_CAN_J1939, SO_J1939_RECV_OWN, &recv_own_msgs_i, sizeof(recv_own_msgs_i));
+
//
setopt(SOL_CAN_J1939, SO_J1939_RECV_OWN, &recv_own_msgs_i, sizeof(recv_own_msgs_i));
setopt(SOL_SOCKET, SO_BROADCAST, &broadcast_i, sizeof(broadcast_i));
}
setopt(SOL_SOCKET, SO_BROADCAST, &broadcast_i, sizeof(broadcast_i));
}
@@
-141,32
+130,18
@@
namespace utils
if(addr <= 0 || addr >= UINT8_MAX )
if(addr <= 0 || addr >= UINT8_MAX )
- {
tx_address_.can_addr.j1939.addr = J1939_NO_ADDR;
tx_address_.can_addr.j1939.addr = J1939_NO_ADDR;
- }
else
else
- {
tx_address_.can_addr.j1939.addr = addr;
tx_address_.can_addr.j1939.addr = addr;
- }
-
if(name <= 0 || name >= UINT64_MAX )
if(name <= 0 || name >= UINT64_MAX )
- {
tx_address_.can_addr.j1939.name = J1939_NO_NAME;
tx_address_.can_addr.j1939.name = J1939_NO_NAME;
- }
else
else
- {
tx_address_.can_addr.j1939.name = name;
tx_address_.can_addr.j1939.name = name;
- }
if(pgn <= 0 || pgn > J1939_PGN_MAX)
if(pgn <= 0 || pgn > J1939_PGN_MAX)
- {
tx_address_.can_addr.j1939.pgn = J1939_NO_PGN;
tx_address_.can_addr.j1939.pgn = J1939_NO_PGN;
- }
else
else
- {
tx_address_.can_addr.j1939.pgn = pgn;
tx_address_.can_addr.j1939.pgn = pgn;
- }
-
}
}
@@
-233,9
+208,8
@@
namespace utils
ssize_t nbytes = recvfrom(socket_, &data, sizeof(data), flag, (struct sockaddr *)&peername, &peernamelen);
if(nbytes < 0)
ssize_t nbytes = recvfrom(socket_, &data, sizeof(data), flag, (struct sockaddr *)&peername, &peernamelen);
if(nbytes < 0)
- {
return nullptr;
return nullptr;
- }
+
//AFB_DEBUG("Data available: %i bytes read", (int)nbytes);
struct timeval tv;
//AFB_DEBUG("Data available: %i bytes read", (int)nbytes);
struct timeval tv;
@@
-256,7
+230,7
@@
namespace utils
*/
int socketcan_j1939_t::write_j1939_message(pgn_t pgn, std::vector<uint8_t> &data, uint32_t len_data)
{
*/
int socketcan_j1939_t::write_j1939_message(pgn_t pgn, std::vector<uint8_t> &data, uint32_t len_data)
{
- j1939_message_t msg = j1939_message_t(
J1939_MAX_DLEN, len_data, message_format_t::J1939
, data, 0, 0, pgn, 0);
+ j1939_message_t msg = j1939_message_t(
len_data
, data, 0, 0, pgn, 0);
msg.set_sockname(pgn,J1939_NO_NAME,J1939_NO_ADDR);
return write_message(msg);
}
msg.set_sockname(pgn,J1939_NO_NAME,J1939_NO_ADDR);
return write_message(msg);
}
@@
-274,9
+248,7
@@
namespace utils
uint8_t data[jm.get_data_vector().size()];
for(int i=0; i<jm.get_data_vector().size(); i++)
uint8_t data[jm.get_data_vector().size()];
for(int i=0; i<jm.get_data_vector().size(); i++)
- {
data[i] = jm.get_data_vector()[i];
data[i] = jm.get_data_vector()[i];
- }
if (sendto(socket_, &data, sizeof(data), 0, (const struct sockaddr *)&sockname, sizeof(sockname)) < 0)
{
if (sendto(socket_, &data, sizeof(data), 0, (const struct sockaddr *)&sockname, sizeof(sockname)) < 0)
{
@@
-285,4
+257,4
@@
namespace utils
}
return 0;
}
}
return 0;
}
-}
\ No newline at end of file
+}