Re: [Haskell-cafe] Discussion: The CLOEXEC problem

Quoth David Turner
Non-inheritable-by-default makes sense to me - if you forget to clear FD_CLOEXEC when you meant to then your program breaks loudly and obviously;
This is where we differ. First, it isn't fair to say we "forget" to clear FD_CLOEXEC, if in pre-existing software we didn't have a CLOEXEC bit to clear. Rather, in the existing set of applications that have an exec - whether in Haskell code or not - we can expect that some subset of them will start to behave differently. Maybe behave better, but in any case likely a surprise to everyone because we've reversed the default on some large subset of file descriptors. And I think it's very optimistic to predict that the breakage will be obvious - the obvious effects will naturally be obvious, but I personally am not up to accounting for all non-obvious cases. And there's the other FDs - inherited, non-Haskell, sockets - so we still need another solution if we're serious about fixing the problem. Donn
participants (1)
-
Donn Cave