Wolfgang Grandegger wrote:
> Wolfgang Grandegger wrote:
>> Jan Kiszka wrote:
>>> Wolfgang Grandegger wrote:
>>>> Jan Kiszka wrote:
>>>>> Hi Wolfgang,
>>>>> something is inconsistent about CAN_RAW in RT-Socket-CAN compared to
>>>>> plain Socket-CAN. Also, the latter doesn't know any CAN_PROTO_xxx
>>>>> unless
>>>>> I oversee something. Please have a look.
>>>> There is CAN_PROTO_RAW defined and I have added some time ago
>>>> CAN_RAW to
>>>> rtcan.h to be compatible with Socket-CAN:
>>>>   /** Particular CAN protocols
>>>>    *
>>>>    *  Currently only the RAW protocol is supported.
>>>>    */
>>>>   #define CAN_RAW  0
>>> Yes, I know. But the question remains which way to go for rtcan:
>>> Socket-CAN doesn't know CAN_PROTO_*, RT-Socket-CAN comes with CAN_RAW as
>>> well now, but having a different value. That should be resolved, on
>>> whatever side, IMHO.
>> Ah, now I understand your concern. CAN_PROTO_RAW actually serves the
>> same purpose then CAN_RAW defining the particular CAN protocol. I'm
>> going to clean it up soon removing CAN_PROTO_RAW and updating the doc.
>> CAN_PROTO_RAW was not used by any application, IIRC.
> The man page for "socket" describes the protocol argument as shown below:
>        The  protocol specifies a particular protocol to be used with the
>        socket. Normally only a single protocol exists to support a
>        particular socket  type within a given protocol family, in which
>        case protocol can be specified as 0. However, it is possible that
>        many  protocols  may exist, in which case a particular protocol
>        must be specified in this manner.
> A value of 0 is valid for RT-Socket-CAN but not for Socket-CAN.
> Therefore we need to define CAN_RAW=1 for compatibility reasons.


Moreover, 0 means "unspecified default protocol" according to POSIX. On
what does Socket-CAN map it, CAN_RAW? Anyway, we have no other option so
far with RT-Socket-CAN.


Attachment: signature.asc
Description: OpenPGP digital signature

Xenomai-core mailing list

Reply via email to