4 ms·
Because some C programs are pretty excellent, and rewrites cause bugs? E.g. replacing OpenNTPd, Postfix, OpenSSH - or djbdns or qmail - by a rewrite probably do
by JoachimSchipper 11y ago
Because some C programs are pretty excellent, and rewrites cause bugs? E.g. replacing OpenNTPd, Postfix, OpenSSH - or djbdns or qmail - by a rewrite probably doesn't reduce the number of problems.
(In particular, note that SSH daemons can fail in many ways other than by remote code execution.)
In the long run, C's role is indeed shrinking - but let's not be too hasty.
- nickpsecurity 11y agoYou can always do it close to original implementation. A straight-up clone. Should preserve at least most of the logical-level countermeasures.
- tptacek 11y agoFor a full-featured SSH running on a machine I was likely to log into and work interactively on, I'd prefer OpenSSH. But most of what people do with SSH in a devops context isn't interactive; it's a simple control channel for well-defined sequences of file transfers and commands. I'd prefer a minimal, Go/Rust-based SSH server for my EC2 servers, for instance. I don't know why I'd prefer OpenNTP to a Go/Rust NTP. What's the advantage to it? OpenNTP is carefully built to avoid a class of bugs that its implementation language is very susceptible to. Go/Rust simply don't have those bugs at all. The latter seems like the safer option. Same goes for DNS.