From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: e1326252@student.tuwien.ac.at Received: from krantz.zx2c4.com (localhost [127.0.0.1]) by krantz.zx2c4.com (ZX2C4 Mail Server) with ESMTP id 05c407f1 for ; Wed, 14 Feb 2018 14:58:10 +0000 (UTC) Received: from mail1.student.tuwien.ac.at (mail1.student.tuwien.ac.at [193.170.73.221]) by krantz.zx2c4.com (ZX2C4 Mail Server) with ESMTP id 7c07d33f for ; Wed, 14 Feb 2018 14:58:09 +0000 (UTC) Received: from [192.168.0.102] ([178.188.66.253]) (authenticated bits=0) by mail1.student.tuwien.ac.at (8.14.7/8.13.8) with ESMTP id w1EF50Di010509 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO) for ; Wed, 14 Feb 2018 16:05:00 +0100 To: wireguard@lists.zx2c4.com From: Max Moser Subject: NetworkManager Plugin Message-ID: <7d5325a3-fa07-f67f-a31e-aadd44458d41@student.tuwien.ac.at> Date: Wed, 14 Feb 2018 16:05:00 +0100 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="------------67BCE5CF4A6372801BE3574D" List-Id: Development discussion of WireGuard List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , This is a multi-part message in MIME format. --------------67BCE5CF4A6372801BE3574D Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Good day, ladies and gentlemen! I have been working on a NM plugin for wireguard as part of my thesis for quite a while, but somehow I've never really found the time to work on that (sorry about that!). *Until recently.* Since we have semester break in February, I have finally found the time (and motivation) to put some effort into this thing. So, I forked the OpenVPN plugin at some point and built my current solution on that foundation. This means that my plugin is actually pretty much pure C, so almost no dependencies (obviously, NM, WG and GLib stuff). After briefly talking to my supervisor about making the thing public (which he considered to be a pretty positive step), I uploaded it from our internal GitLab to GitHub: https://github.com/max-moser/network-manager-wireguard/ The basic workflow of creating a NMConnection (either from scratch through the Connection-Editor UI, or by importing a wg-quick formatted conf file [export works too]) and connecting to it works. However, there are still a ton of issues open, of which I'll list just a few: * the plugin sets up the connection by spawning wg-quick on a temporary conf file instead of implementing that logic directly * the Editor UI isn't quite top notch and there are two tabs (IPv4 and IPv6) that I did not use, but also can't seem to get rid of * internally, everything in the plugin is stored as data-item and not as secret * etc. However, I think that most of those problems are not actually that huge and could be fixed without tremendous effort -- they are just many in number. So, if anybody would be interested in checking it out and maybe even contributing, I'd be very glad about that! :) Best regards, Max --------------67BCE5CF4A6372801BE3574D Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 7bit

Good day, ladies and gentlemen!



I have been working on a NM plugin for wireguard as part of my thesis for quite a while, but somehow I've never really found the time to work on that (sorry about that!).

Until recently.

Since we have semester break in February, I have finally found the time (and motivation) to put some effort into this thing.


So, I forked the OpenVPN plugin at some point and built my current solution on that foundation. This means that my plugin is actually pretty much pure C, so almost no dependencies (obviously, NM, WG and GLib stuff).

After briefly talking to my supervisor about making the thing public (which he considered to be a pretty positive step), I uploaded it from our internal GitLab to GitHub:
https://github.com/max-moser/network-manager-wireguard/


The basic workflow of creating a NMConnection (either from scratch through the Connection-Editor UI, or by importing a wg-quick formatted conf file [export works too]) and connecting to it works.

However, there are still a ton of issues open, of which I'll list just a few:

* the plugin sets up the connection by spawning wg-quick on a temporary conf file instead of implementing that logic directly
* the Editor UI isn't quite top notch and there are two tabs (IPv4 and IPv6) that I did not use, but also can't seem to get rid of
* internally, everything in the plugin is stored as data-item and not as secret
* etc.


However, I think that most of those problems are not actually that huge and could be fixed without tremendous effort -- they are just many in number.

So, if anybody would be interested in checking it out and maybe even contributing, I'd be very glad about that! :)



Best regards,

Max

--------------67BCE5CF4A6372801BE3574D--