- case CGW_TYPE_CAN_ETH_UDP:
- addattr_l( &req.nh, sizeof(req), CGW_ETH_IP, ð_addr, sizeof(eth_addr) );
- addattr_l( &req.nh, sizeof(req), CGW_ETH_PORT, ð_port, sizeof(eth_port) );
- break;
- case CGW_TYPE_ETH_CAN_UDP:
- break;
- default:
- break;
+ req.rtcan.gwtype = (src_if == IF_CAN) ? CGW_TYPE_CAN_ETH_UDP : CGW_TYPE_ETH_CAN_UDP;
+ addattr_l( &req.nh, sizeof(req), CGW_CAN_IF, &can_ifidx, sizeof(can_ifidx) );
+ switch( req.rtcan.gwtype )
+ {
+ case CGW_TYPE_CAN_ETH_UDP:
+ addattr_l( &req.nh, sizeof(req), CGW_ETH_IP, ð_addr, sizeof(eth_addr) );
+ addattr_l( &req.nh, sizeof(req), CGW_ETH_PORT, ð_port, sizeof(eth_port) );
+ break;
+ case CGW_TYPE_ETH_CAN_UDP:
+ break;
+ default:
+ break;
+ }