On Feb 16 18:13, Michael Haubenwallner wrote:
> On 2/16/19 10:38 AM, Corinna Vinschen wrote:
> > setmode(fd, O_BINARY) works on Cygwin.
> 
> Well... true.
> 
> What I'm trying to say is that restoring the *default* mode is currently 
> broken, because traditionally the default mode simply is called "text
> mode" - which is enough for DOS only systems, but confusing in Cygwin.
> 
> As for Cygwin the default mode is more complex, we may want to call it
> something like the "Cygwin text mode" instead.  Consequently, the mode
> that does force \r should be called the "DOS text mode".
> 
> Whether the "Cygwin text mode" is with or without \r depends on some
> other property like the text mount.
> 
> However, after setting the "binary mode", libraries like openssl BIO
> want to be able to restore the "non-binary mode" - whatever name it
> may have.  So they use the only available API: setmode(fd, O_TEXT).
> And IMO they're right to expect the "Cygwin text mode" on Cygwin.
> 
> If they really need the "DOS text mode", they either should handle the
> \r in binary mode - or we provide some new setmode(fd, O_DOSTEXT) API.
> 
> In hope to be more clear now,
> /haubi/

I really miss the problem you're trying to solve here.  Why should an
application setting O_BINARY explicitely revert this decision on the
same file descriptor?  That doesn't make sense.


Corinna

-- 
Corinna Vinschen
Cygwin Maintainer

Attachment: signature.asc
Description: PGP signature

Reply via email to