
050
The Car Hacker
’
s Handbook
SocketCAN
addr.can_ifindex = ifr.ifr_ifindex;
bind(s, (struct sockaddr *)&addr, sizeof(addr));
CAN
s = socket(PF_CAN, SOCK_RAW, CAN_RAW);
PF_CAN
CAN_RAW
BCM: broadcast manager
CAN_BCM
BCM
CAN
2
strcpy(ifr.ifr_name, "can0");
ioctl(s, SIOCGIFINDEX, &ifr);
sockaddr
CAN
addr.can_family = AF_CAN;
addr.can_ifindex = ifr.ifr_ifindex;
bind(s, (struct sockaddr *)&addr, sizeof(addr));
CANフ レ ー ム の セットアップ
CAN
...