Hi Thomas,
[Added the mailing list. There might be someone else
On Tue, Nov 12, 2019 at 11:24:13PM +0000, Thomas Green wrote:
Here is how I reproduce the problem I'm having in the simplest
manner using connmanctl:
:~# connmanctl
connmanctl> agent on
Agent registered
connmanctl> services ethernet_0008720978e2_cable
/net/connman/service/ethernet_0008720978e2_cable
Type = ethernet
Security = [ ]
State = online
Favorite = True
Immutable = False
AutoConnect = True
Name = Wired
Ethernet = [ Method=auto, Interface=eno1, Address=00:08:72:09:78:E2, MTU=1500 ]
IPv4 = [ Method=manual, Address=10.20.187.13, Netmask=255.255.255.0,
Gateway=10.20.187.1 ]
IPv4.Configuration = [ Method=manual, Address=10.20.187.13, Netmask=255.255.255.0,
Gateway=10.20.187.1 ]
IPv6 = [ Method=auto, Address=2620:10a:90cc:e187:208:72ff:fe09:78e2, PrefixLength=64,
Privacy=disabled ]
IPv6.Configuration = [ Method=auto, Privacy=disabled ]
Nameservers = [ 10.20.55.200, 10.150.5.200 ]
Nameservers.Configuration = [ 10.20.55.200, 10.150.5.200 ]
Timeservers = [ ]
Timeservers.Configuration = [ ]
Domains = [ ]
Domains.Configuration = [ ]
Proxy = [ Method=direct ]
Proxy.Configuration = [ ]
mDNS = False
mDNS.Configuration = False
Provider = [ ]
connmanctl> scan wifi
Scan completed for wifi
connmanctl> services
*AO Wired ethernet_0008720978e2_cable
XXXXXXX wifi_4889e71fb337_YYYYYYYYYYYYY_managed_psk
connmanctl> disconnect ethernet_0008720978e2_cable
Disconnected ethernet_0008720978e2_cable
connmanctl> config ethernet_0008720978e2_cable autoconnect off
connmanctl> connect wifi_4889e71fb337_YYYYYYYYYYYYY_managed_psk
Agent RequestInput wifi_4889e71fb337_YYYYYYYYYYYYY_managed_psk
Passphrase = [ Type=psk, Requirement=mandatory ]
Agent request cancelled by ConnMan
Error /net/connman/service/wifi_4889e71fb337_YYYYYYYYYYYYY_managed_psk: Invalid
arguments
connmanctl> connect ethernet_0008720978e2_cable
Connected ethernet_0008720978e2_cable
connmanctl> services ethernet_0008720978e2_cable
/net/connman/service/ethernet_0008720978e2_cable
Type = ethernet
Security = [ ]
State = ready
Favorite = True
Immutable = False
AutoConnect = False
Name = Wired
Ethernet = [ Method=auto, Interface=eno1, Address=00:08:72:09:78:E2, MTU=1500 ]
IPv4 = [ Method=manual, Address=10.20.187.13, Netmask=255.255.255.0 ]
IPv4.Configuration = [ Method=manual, Address=10.20.187.13, Netmask=255.255.255.0 ]
IPv6 = [ ]
IPv6.Configuration = [ Method=auto, Privacy=disabled ]
Nameservers = [ 10.20.55.200, 10.150.5.200 ]
Nameservers.Configuration = [ 10.20.55.200, 10.150.5.200 ]
Timeservers = [ ]
Timeservers.Configuration = [ ]
Domains = [ ]
Domains.Configuration = [ ]
Proxy = [ Method=direct ]
Proxy.Configuration = [ ]
mDNS = False
mDNS.Configuration = False
Provider = [ ]
connmanctl> quit
As you notice, when being prompted for the passphrase for the
wireless connection I cancel it. (in this case I use another
instance of connmanctl. In my application an asynchronous thread
issues the cancel). Then try to reconnect the original manual
config for the Ethernet. At that point you see that in IPv4 and
IPv4 configuration the gateway is absent. So the connection is
'ready' but is never online, because it can't reach out on to the
internet. I'm not having any great luck determining why it's being
deleted, except for the proposed patch I sent you before. If you
could help track this down, I'd appreciate it.
So the cancel is important to trigger this? This sounds like a race
somewhere. The patch will just hide the problem in this case.
I just realized, there are two services involved. Without the WiFi one
you don't see it?
I admit, this is really confusing. The two services should not have
any interactions at all.
Could you provide a log with --debug output when you do the steps
above?
Thanks,
Daniel