libj1939: add libj1939_parse_canaddr and reuse it by testj1939

this function will be needed jcat

Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
This commit is contained in:
Oleksij Rempel
2019-01-04 13:00:33 +01:00
parent c45a17e96b
commit e649b6ee2a
3 changed files with 24 additions and 23 deletions
+21
View File
@@ -92,6 +92,27 @@ static int libj1939_ifindex(const char *str)
return 0;
}
void libj1939_parse_canaddr(char *spec, struct sockaddr_can *paddr)
{
char *str;
str = strsep(&spec, ":");
if (strlen(str))
paddr->can_ifindex = if_nametoindex(str);
str = strsep(&spec, ",");
if (str && strlen(str))
paddr->can_addr.j1939.addr = strtoul(str, NULL, 0);
str = strsep(&spec, ",");
if (str && strlen(str))
paddr->can_addr.j1939.pgn = strtoul(str, NULL, 0);
str = strsep(&spec, ",");
if (str && strlen(str))
paddr->can_addr.j1939.name = strtoul(str, NULL, 0);
}
int libj1939_str2addr(const char *str, char **endp, struct sockaddr_can *can)
{
char *p;