Thanks for the responses
almut, thanks for investigating with ltrace. I don't have ltrace on mac osx 10.4.11, so I was not able to try that out for myself. Ok, so now perl doesn't call the C stdio library to establish buffering and newline conversions. Instead, as ikegami said, perl uses its own PerlIO 'layers'. Edit: Actually, you can still direct perl to use the C stdio library if you want:
:stdioLayer which calls fread , fwrite and fseek /ftell etc. Note that as this is "real" stdio it will ignore any layers beneath it and go straight to the operating system via the C library as usual.
I'm not sure how that is useful, though.
ikegami, I'm not quite understanding what connect() has to do with which PerlIO layers are added to an IO::Socket::INET socket. Wouldn't new() be the method in which the layers were established for the socket? I don't have windows, so I can't test out newline conversions. Or, were you just checking every method to see if any of them added a newline conversion layer to the socket?
In reply to Re: IO::Socket::INET newline conversions and buffering
by 7stud
in thread IO::Socket::INET newline conversions and buffering
by 7stud
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |