wiki:Topics-2013-11-16

Version 9 (modified by Samuli Seppänen, 10 years ago) (diff)

--

OpenVPN 2.4/3.x

  • Contributor license agreement (CLA)
    • This is required to get OpenVPN to Apple AppStore and possibly other stores (Windows Marketplace?) due to their incompatibility with the AGPLv3 license
    • We need to minimize the scope of the agreement (see below)
    • Android contributor license agreements look fairly good and we can assume lots of legal expertise and resources have been thrown at them
  • Permissing licensing
    • At this point it's not clear if use of a permissive license would fully negate the need for a CLA
    • BSD/Mit/Apache licenses
    • If OpenVPN 3.0 was released under a permissive license, there would be the risk that (big) companies might fork it, and we'd end up with tons of probably incompatible forks
      • One way to combat this potential fragmentation would be to standardize the OpenVPN protocol
      • There would be significant overhead in managing the standardization
  • Minizing the scope of the CLA
    • This minimizes the risk of fragmentation, forks and loss of contributions
    • Maximize the possibility of extending OpenVPN using isolating APIs
      • Plugins and such would not be covered by the CLA
    • OpenVPN 2.x extension mechanisms
      • The plugin API
      • Management interface
      • SSL library abstraction
      • Platform support (isolated by #ifdefs
    • OpenVPN 3.x extension mechanisms
      • SSL library abstraction
      • ... and others
    • We could possibly split the server-side code from the client-side code, in which case only the client-side code would be covered by the CLA
  • Public release date for OpenVPN 3.x codebase
    • There is an old tar.gz source packages available
    • James will try to release this in next couple of weeks
  • Future of OpenVPN 2.x
    • We will need to keep 2.x around until 3.x is a (near) complete replacement for 2.x
      • This will probably mean releasing at least 2.4, and possibly 2.5