[ECOS] Network programming for eCos under linux
Grant Edwards
grante@visi.com
Wed Aug 8 08:42:00 GMT 2001
On Wed, Aug 08, 2001 at 09:13:19AM -0600, Trenton D. Adams wrote:
>> > > Watch out for endianness issues. i386 linux is little endian.
>> > > Whats the endianness of your target? Things like this affects
>> > > network code.
>> >
>> > This shouldn't pose a problem since I've configured my ARM as
>> > little-endian. However, htons (), htonl (), etc should solve
>> > that problem anyhow, shouldn't it? I mean as far networking
>> > code goes that is. I would obviously have to be careful about
>> > data types between the two if they were different. It's nice
>> > to have the ARM with 32-bit little-endian! Makes my life a lot
>> > easier since I'm sending data to a PC.
>>
>> You're headed for trouble. I work on software where the author
>> "knew" data was being sent from one little endian machine to
>> another over the network. Unfortunately one of the ends is now
>> big-endian, and it's now a royal PITA to maintain this stuff.
>> Unfortunalyte there aren't standard host-to-little-endian and
>> little-endian-to-host macros.
>
> How so? Are you referring to the networking code, or the data
> types?
Application data.
> We're not going to be sending to anything other than a PC so
> either way it shouldn't be a problem should it?
Just like the code I'm working on would never be sending to
anything other than an x86. Except the x86-based box has been
replaced by a big-endian ARM box.
--
Grant Edwards
grante@visi.com
More information about the Ecos-discuss
mailing list