Tanaka Akira wrote:
> In article <4443534E.5030303 / path.berkeley.edu>,
>   Joel VanderWerf <vjoel / path.berkeley.edu> writes:
> 
>> Hi. IO#readpartial seems to be broken on ARM (Intel XScale, gumstix),
>> and this is causing telnet to hang. The problem is that readpartial(n)
>> hangs until all n bytes are received. I've tested this with TCPSockets.
>>
>> Any suggestions for me to try next? What might be misconfigured?
>>
>> Gumstix use uClibc (http://www.busybox.net/) rather than GNU libc.
>>
>> This is with ruby-1.8.4.
> 
> I guess READ_DATA_PENDING is not defined properly because
> uClibc.
> 
> If my guess is right, ruby 1.9 should work well.
> ruby 1.9 has its own buffering mechanism to avoid stdio
> buffering.

Thank for the suggestion. There is a problem with ext/socket. Here is
what shows up in mkmf.log:

--------------------

have_struct_member: checking for struct msghdr.msg_accrights...
-------------------- no

"arm-linux-gcc -c -I../.. -I../../.  -g -O2   conftest.c"
conftest.c:7: error: structure has no member named `msg_accrights'
checked program was:
/* begin */

#include <sys/types.h>
#include <sys/socket.h>

/*top*/
int main() { return 0; }
int s = (char *)&((struct msghdr*)0)->msg_accrights - (char *)0;
/* end */

--------------------



Btw, there is a minor bug in ext/Setup: there is still a line for
enumerator. It is commented out, but maybe it should be deleted, since
enumerator is in the core now.

-- 
      vjoel : Joel VanderWerf : path berkeley edu : 510 665 3407