Blue-sky thread - ideas for well after 1.0
Eric S. Raymond
esr at thyrsus.com
Sat Aug 26 17:35:24 UTC 2017
Because we've done our work well, we're on what looks like an easy
glide path to a 1.0 release in September. There are no more issues
that look like blockers rather than irritations; if forced to it, we
could ship tomorrow.
I believe we've earned the luxury of some blue-sky thinking. I'm not
talking about relatively short-term good ideas like NTS or AES-CMAC;
those are normal forward engineering. I mean really ambitious plans.
I'm going to share the two out-there ideas I have for the long term,
and invite any of the rest of you to pitch in your own or react to
1. Field, and then push through IETF, an IPv5 that solves the
functional problems with IPv4, like failing to embed its epoch in sync
packets. I have some notes towards this in devel/ipv5.txt.
I've stated before at our FTF meetings that this is my personal
endgame. Having got this done, I think I'd be ready to pass the
maintainer's baton onwards.
2. Translate the whole mess to Go. Of course, the motivation for this
would be to forever banish all buffer-overrun and memory-allocation
bugs forever, and their related security issues.
(For those of you unfamiliar with Go, it is an extremely C-like
language with garbage collection, an object system, and some
very elegant concurrency primitives. Google 'golang' for more.)
Back when we had 231KLOC of messy code with a lot of non-standardized
calls in it, moving it to different language would have been
impractical. Now that we're down to 56KLOC of code that is mostly
POSIX-clean, it's beginning to look pretty attractive.
Because the boilerplate required for memory management in C is
so bulky, I think we might drop as much as 10KLOC in the move.
And if I'm wrong, I'm probably underestimating the gains.
A 46KLOC ntpd (about the size GPSD is now) that could never have an
overrun vulnerability again would be an achievement.
<a href="http://www.catb.org/~esr/">Eric S. Raymond</a>
Never could an increase of comfort or security be a sufficient good to be
bought at the price of liberty. -- Hillaire Belloc
More information about the devel