After taking another look at this I noticed that the function where we
create the Netplan YAML is called when the connection is created AND
when the connection is going down as though it was being updated.

The first time it's called the parameters is_volatile, is_nm_generated
and is_external are all set to true so we skip the libnetplan calls.
Although when it's called when the connection is going down they are all
false. And that's when the Netplan file is created and network-manager
gets to a point in the code it shouldn't reach, so it crashes and the
files are never removed.

Not sure if calling the plugin writer in this case is a bug or not as
the connection is volatile and is going to be deleted anyway. Maybe lost
tracking of the connection nature (volatile, nm_generated and external)
is the actual bug, not sure yet.

One way to work around this is generating Netplan YAMLs regardless if
the connection is volatile. If network-manager will create a file for it
we could create a file for Netplan too. In fact, after removing the
conditions to call libnetplan, the files are created and deleted when
the OpenVPN client and/or server is stopped.

Note that from network-manager 1.42.0 on, even the loopback interface
can be represented as a connection, so we will have a Netplan file for
it as well.

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to network-manager in Ubuntu.
https://bugs.launchpad.net/bugs/1998207

Title:
  netplan network-manager plugin tries to save temporary connections

Status in netplan:
  Triaged
Status in network-manager package in Ubuntu:
  Triaged

Bug description:
  *** Note: This bug is mostly about comment #10, now ***

  When creating an OpenVPN connection, a temporal connection called tunN
  is created. For instance, after activating a connection called
  vpntest, I have:

  NAME          UUID                                  TYPE      DEVICE
  vpntest       458856e6-8f0f-4dc6-82f2-dd72868252a0  vpn       ens3
  tun0          1eb1dbe8-5678-4818-9adf-fb2dc01ed132  tun       tun0

  tun0 is created/removed after activating/deactivating vpntest and
  should not really be saved, but I see netplan adding it in
  /etc/netplan. And while doing so the plugin also reports some errors
  (I see these when stopping the connection):

  Nov 28 16:16:57 ubuntu NetworkManager[11752]: <error> [1669652217.2920] BUG: 
the profile cannot be stored in keyfile format without becoming unusable: 
cannot access file: No such file or directory
  Nov 28 16:16:57 ubuntu NetworkManager[11752]: 
((src/libnm-core-impl/nm-connection.c:342)): assertion '<dropped>' failed
  Nov 28 16:16:57 ubuntu NetworkManager[11752]: <warn>  [1669652217.2920] 
keyfile: commit: failure to write 1eb1dbe8-5678-4818-9adf-fb2dc01ed132 ((null)) 
to 
"/run/NetworkManager/system-connections/tun0-1eb1dbe8-5678-4818-9adf-fb2dc01ed132.nmconnection":
 keyfile writer produces an invalid connection: cannot access file: No such 
file or directory

To manage notifications about this bug go to:
https://bugs.launchpad.net/netplan/+bug/1998207/+subscriptions


-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to