On Fri, 2016-04-15 at 13:13 +0200, Dave Conroy wrote: > Hi Thomas, > That explains it, thank you very much - you are correct in what I am > looking after. > There doesn't seem to be a working disconnect option in my version of > NetworkManager (1.193). I will try different GTK themes to see if it > is a problem with the theme itself.
Certainly NetworkManager, its D-Bus API, and `nmcli connection disconnect` support disconnecting a VPN connection. If your UI doesn't allow for that, it's a UI limitation/decision. I don't think GTK themes help there. Are you using the gnome-shell (Gnome3) NetworkManager integration? I am not familiar with how that works there, maybe there is no disconnect button? That would be strange... > Would there by chance be pre/post hooks that I could utilize to > execute before the connection is made? I could write up a script that > disconnects any active connection this way. There are dispatcher scripts. First, ensure to have the dispatcher service running: `systemctl enable NetworkManager-dispatcher.service` Then place scripts to /etc/NetworkManager/dispatcher.d. See `man NetworkManager` for the events there. Note that the events `pre-up` and `pre-down` are special (because they block the device transition, we only want to call scripts there, which opt-in for those events. See the manual. Note, that `pre-up` might be a place to disconnect the other connection. The problem here is, that the (blocking) pre-up event is not emited ~before starting with activation~, but before ~declaring the device/VPN as fully up~ (but at that point, the VPN connection is already up for most of the part). So, if your VPN connections all want to use tun0, you cannot avoid that. I guess, it would be a nice feature to have such ~conflicting connection`. But well... An alternative feature would be a "pre-activation" dispatcher event... Thomas > Thanks for the prompt response, > Dave > > On 15/04/16 12:15 PM, Thomas Haller wrote: > > Hi Dave, > > > > > > On Fri, 2016-04-15 at 06:04 +0200, Dave Conroy wrote: > > > I've just subscribed to a VPN service that has multiple > > > locations, > > > and imported all the necessary .ovpn files into Network Manager. > > > It seems that I do not have the option to disconnect from the > > > VPNs > > > when connected, and upon choosing another location it creates > > > another > > > tun device. > > You mean, you would like to have a configuration option in your VPN > > "connection", so that when activating another specific VPN > > connection, > > the former gets automatically disconnected? > > > > No, NetworkManager doesn't have a concept of ~conflicting~ > > connections. > > When you activate connection A, you'd have to manually disconnect > > connection B. > > > > > > > I've made the change to no success to > > > /etc/NetworkManager/VPN/openvpn-service.name > > > supports-multiple-connections=false > > > Yet it still connects multiple locations without disconnecting > > > the > > > previous connection. > > That shouldn't happen. Did you restart NM after changing the file? > > But > > I suspect the file /etc/NetworkManager/VPN/openvpn-service.name is > > ignored and instead it uses /usr/lib/NetworkManager/VPN/openvpn- > > service.name. The file in /etc only exists for backward > > compatibility, > > in 1.2, the location of this file moved to /usr/lib. > > > > Changing supports-multiple-connection=false actually should give > > you > > the conflicting behavior, but that doesn't sound like the right > > approach. First of all, openvpn-service.name is not user- > > configuration. > > This setting is here to tell NetworkManager that this plugin is new > > enough to support multiple activations of Openvpn connections > > (simultaneously). It's not here to implement ~conflicting > > connections~. > > > > Before 1.2, VPN plugins did not support to activate more then once > > at a > > time. Old plugins were always supports-multiple-connections=false. > > > > > > > Furthermore, I've set it to specifically use tun0 for my > > > connections > > > yet upon trying to load another connection even after "disabling" > > > the > > > VPN (I use Cinnamon Desktop) it says that it cannot access tun0 > > > as > > > the device is busy. I can disconnect via nmctl > > Yes, you can disconnect with nmcli. > > > > > but was wondering if there was a way that I could force > > > NetworkManaager to only use one VPN connection at a time, > > > releasing > > > back tun0 to be used again. > > No, such a concept doesn't exist (up to now). > > > > > > > Error Code: > > > ERROR: Cannot ioctl TUNSETIFF tun0: Device or resource busy > > > (errno=16) > > openvpn said that? Yes, that sounds expected, right? > > > > > > > > Thomas > > -- > Dave Conroy ([email protected]) PGP: 0x45C0F342 > Pedaling around the world away from a job in Information Technology > Tired of I.T! http://www.tiredofit.ca The Book - Now available! > http://www.tiredofit.ca/book/
signature.asc
Description: This is a digitally signed message part
_______________________________________________ networkmanager-list mailing list [email protected] https://mail.gnome.org/mailman/listinfo/networkmanager-list
