Felix Kronlage wrote:
On Thu, Oct 09, 2008 at 02:24:39AM -0600, James Yonan wrote:
Hi Yonan,
Changelog:
2008.10.07 -- Version 2.1_rc13
* Bundled OpenSSL 0.9.8i with Windows installer.
* Management interface can now listen on a unix
domain socket, for example:
management /tmp/openvpn unix
Also added management-client-user and management-client-group
directives to control which processes are allowed to connect
to the socket.
what I dont quite understand is, why you add stuff like this to
the release candidate instead of finally getting 2.1 out of the
door and then make small subsequent releases. OpenVPN has been
stuck (imho) for way too long in the RC phase now entering the
infamous game of not just adding new stuff to RC's but instead
introducing bugs in the RCs instead of just closing them...
It's a good question that deserves a full answer.
I'll agree with anyone that it's taken longer than expected to get 2.1
final out the door. But I would encourage you to take a look at the
commit log for 2008, and you will see that the changes predominantly
address fixes.
With regard to the unix domain socket fix above, I would argue that
supporting unix domain sockets in the management interface is an
important security feature. This is because passwords and other
sensitive data may be passed across the management interface connection,
and only unix domain sockets give each side of the connection the
ability to see which UID and GID is connected to the other side.
There are other reasons as well for a long 2.1 beta cycle. One of them
is that quite a large number of people are using OpenVPN now, and it
increases the frequency of obscure bug reports, some of which are
difficult or impossible to reproduce by the development team. When we
fix one of these bugs, sometimes it takes days or weeks to know for sure
whether the bug was really fixed (for example see r3330 from
mid-September, "fixed a bug that can cause SSL/TLS negotiations in UDP
mode to fail if UDP packets are dropped").
Another reason for the delay is our goal to stabilize the Management
Interface API before 2.1 final. The management interface is a major
connection point between OpenVPN and other software packages (such as
client or server GUIs) and as such we need to ensure its completeness
before we mark the 2.1 milestone, so that we can avoid the
community-wide support headaches associated with a moving-target API.
I think there's a precedent as well for long-term beta cycles. In the
old days of pre-open-source computing, beta cycles were short, internal
testing affairs that might only last a few months. Companies needed to
get stuff out the door, even if it wasn't ready, because they had to get
to the revenue. Then open source came onto the scene and I think it's
redefined, to a certain extent, the beta cycle. Now the beta cycle is
ended only at that point where widespread testing and usage by the
community proves the stability of the product and the readiness to end
the beta cycle. Today, even commercial companies such as Google have
embraced that standard.
So yes, getting 2.1 final out the door is a top priority for us. But it
won't happen until it's ready.
James