Re: kernel-package hooks transition
* Colin Watson <cjwatson@debian.org> [051224 18:30]:
> The fd 3 redirection (and the corresponding redirection of stdout to
> stderr in the shell confmodule) was always acknowledged as a nasty hack
> in debconf. At the time, as I understand it, Joey reckoned it was easier
> to do that than to try to get everyone to change maintainer script code
> that used stdout.
It may be an ugly hack, but I think it was predictable that it was
necessary. (postinst is quite an complex thing to expect widely used
things like stdin and stdout to be secure to use).
> It has various undesirable consequences, such as the
> requirement to call db_stop before starting daemons that don't take care
> to close down all their file descriptors,
Hopefully people will not only call db_stop, but also fix the buggy
daemon. (And I almost consider this a good consequence, as it makes it a
bit easier to find buggy code, even security-relvant buggy code)
> and some very weird
> workarounds in the confmodule bindings for other languages (see the
> changelog entry for debconf 0.3.74).
That is more a problem of inconsistency. I never understood why those
scripts are not called debconf communication at fds 3 and 4. (and put
/dev/null in stdin and something else to avoi things reading from it)
This way only buggy daemons would cause problems. (and beside fd_stop,
just give them 3>/dev/null to work around)
Hochachtungsvoll,
Bernhard R. Link
Reply to: