-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 31/08/16 20:55, David Sommerseth wrote:
> 
> Hi,
> 
> I have for a long time pondered on how we can make the management 
> API more suitable for more modern tools and tasks.  So I am just 
> giving an extremely early heads-up on on what I'm poking at ...
> and hopefully receive some feedbacks on what you think.
> 
> One of the things which have struck me is that D-Bus is adopted a 
> lot of places, and its internal API have been considered stable
> for about 10 years or more.  Even though there are areas where
> D-Bus seems a bit over-engineered, it has proved to be a very
> useful IPC mechanism for a lot of software.

[...snip...]

Time for some proof-of-concept code!

<https://gitlab.com/dazo/openvpn-dbus-poc/tree/master>

This is just a plain and silly TCP management to D-Bus proxy.  It
does nothing fancy, but it is just a little introduction to how
D-Bus can simplify getting an integration to a management interface
in OpenVPN.

To do the more advanced features, such as signalling ("push" messages
from server to listening D-Bus clients) is something which will
require a lot more work and I have not considered doing this.

All information to get started should be fairly well documented in the
source code.  But if anyone have any questions, no question is too silly
.

A few details.

- - *DO NOT RUN THIS IN PRODUCTION!*  This is *Proof of Concept* code.
  It will be buggy, it is hacky and you cannot fully trust it.

- - A proper implementation will not use Python on the D-Bus server side,
  but will be included into the core OpenVPN C code.

- - A proper implementation will also use "properties".  This is
  currently not possible to do via the dbus-python implementation, at
  least not without too much additional hackery.  For a PoC, I did not
  consider this important.  But a proper implementation in C will make
  use of object properties to provide read-only information.

- - The API provided via the D-Bus by this proxy WILL change.

- - Please do not start massive improvements to this code, unless
  it helps understanding better D-Bus features which can be worth
  investigating further.

  Again: A proper D-Bus server implementation will happen inside
  the OpenVPN C code.  This code is purely to help us getting further
  in this discussion.

- - And please do not judge the code harshly.  I have prioritised
  getting something which works for a PoC.  I have not added much
  styling or very describing comments.  And yes, there will be bugs.


- -- 
kind regards,

David Sommerseth
OpenVPN Technologies, Inc

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)

iQIcBAEBAgAGBQJX0E5MAAoJEIbPlEyWcf3yh4wP/i5hEjqzqHy6hnocA0ANT5ov
VGfG1ZUF4QMUsyhjEbN2D1OM5sPQaPmH20CRcwbZGaZnuavDtjwBjc82IeopGaYC
S4VmjQYNwGMawmrYTOH3/ITg/JzySQ60wKMv5AZBPK31zcqoFFKaYw8klsvTsj/N
sO+ew/btlNdeosMKBGX/4+VjadgsvudX/o7GYfHVRonZX9E3B7tV7gE4EX5Z99xn
UEnnwHzH6Olw6dhObNopPaFiFLte9Indt1iOLb3Fng0qZL5BDqw/ltr4h5klmD3R
gJGFi75yarT41wW65ONZPm/530gzuwWEyaS2yPJ8YF7QLSiy8RZcMhdxjUP4a+dA
31dBfv/pWXHwM5lan668d9aIjAJ/q++9IMZmwIaqNI7MCudwemXjZ1opnwopz5rQ
nDjtOCjMeUhYo7aJAPTcxfUF+ty4JnMSnkWMRt7PJg1hJG5E4VbRiWPPDIfsXW0h
g8WRMPHPe/bG3dC/qH6zdzupi7GqHy9UyPeVBFrJ56TuWoGeuRKQ6NL4ahn67Vt1
th5rifBMEqsq/wxeQ+7EBYlgkNrO7A9ewo/5KNQVnYeRUv+kWAwrxeUAYzMWh7B8
Co0UX0mKV65IR/QH0hwag0mRgS7IxTX9Y5pV7WTfqmIzxaggWTrcJFVRby5Wr4Cq
Na26b+buT6xGdEnotrqf
=bbcG
-----END PGP SIGNATURE-----

------------------------------------------------------------------------------
_______________________________________________
Openvpn-devel mailing list
Openvpn-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openvpn-devel

Reply via email to