diff options
author | 2017-01-27 19:11:33 +0000 | |
---|---|---|
committer | 2017-01-30 13:34:57 +0000 | |
commit | 9650f4238498e09230ff76bf458043be9ef00df2 (patch) | |
tree | 43ffd18f5fad9ba56a977242656e0c44a0773492 /ll-can-binding.h | |
parent | 48fa36ee26b91de5b64fc0b4263f1a7f12d5b6fc (diff) |
Check that socket is opened before read.
And some cleanup
Change-Id: Ib3ccf158f141a55e3356f811985d5dcf0dd5fe0c
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Diffstat (limited to 'll-can-binding.h')
-rw-r--r-- | ll-can-binding.h | 43 |
1 files changed, 4 insertions, 39 deletions
diff --git a/ll-can-binding.h b/ll-can-binding.h index 3b0bd64..1c993d7 100644 --- a/ll-can-binding.h +++ b/ll-can-binding.h @@ -15,19 +15,6 @@ * limitations under the License. */ -/* max. number of CAN interfaces given on the cmdline */ -#define MAXSOCK 16 - -/* buffer sizes for CAN frame string representations */ -#define CL_ID (sizeof("12345678##1")) -#define CL_DATA sizeof(".AA") -#define CL_BINDATA sizeof(".10101010") - - /* CAN FD ASCII hex short representation with DATA_SEPERATORs */ -#define CL_CFSZ (2*CL_ID + 64*CL_DATA) - -#define CANID_DELIM '#' - /* * Interface between the daemon and the binding */ @@ -92,32 +79,6 @@ can_event *can_events_list; /* TODO : Add help comments :p */ static int connect_to_event_loop(); -const char hex_asc_upper[] = "0123456789ABCDEF"; - -#define hex_asc_upper_lo(x) hex_asc_upper[((x) & 0x0F)] -#define hex_asc_upper_hi(x) hex_asc_upper[((x) & 0xF0) >> 4] - -static inline void put_hex_byte(char *buf, __u8 byte) -{ - buf[0] = hex_asc_upper_hi(byte); - buf[1] = hex_asc_upper_lo(byte); -} - -static inline void _put_id(char *buf, int end_offset, canid_t id) -{ - /* build 3 (SFF) or 8 (EFF) digit CAN identifier */ - while (end_offset >= 0) { - buf[end_offset--] = hex_asc_upper[id & 0xF]; - id >>= 4; - } -} - -#define put_sff_id(buf, id) _put_id(buf, 2, id) -#define put_eff_id(buf, id) _put_id(buf, 7, id) - -static void parse_can_frame(openxc_CanMessage *can_message, struct canfd_frame *canfd_frame, int maxdlen); - - // Initialize default can_handler values static struct can_handler can_handler = { .socket = -1, @@ -126,3 +87,7 @@ static struct can_handler can_handler = { }; static void send_event(); + +static int retry( int(*func)()); + +static void parse_can_frame(openxc_CanMessage *can_message, struct canfd_frame *canfd_frame, int maxdlen); |