[PATCH 0/1] End connection if connection failure and no agent
Christophe Ronco <[email protected]>
| Newsgroups | dev.linux.lists.connman |
|---|---|
| Message-ID | <[email protected]> |
I have a modem that is not able to reactivate a context just after a disconnection (I have an error in AT+CGDCONT in this case). Some seconds later, connection is possible. With connman 1.39, here is what happens when I disconnect and reconnect corresponding connman service: root@klk-zcel-030030:~ # date; connmanctl disconnect cellular_206018060790006_context1; date; connmanctl connect cellular_206018060790006_context1; date Tue Feb 20 10:00:19 UTC 2024 Disconnected cellular_206018060790006_context1 Tue Feb 20 10:00:19 UTC 2024 Error /net/connman/service/cellular_206018060790006_context1: Input/output error Tue Feb 20 10:00:20 UTC 2024 With connman 1.41, behavior changes: root@klk-zcel-030030:/# date; connmanctl disconnect cellular_206018060790006_context1; date; connmanctl connect cellular_206018060790006_context1; date Tue Jan 2 15:41:31 UTC 2024 Disconnected cellular_206018060790006_context1 Tue Jan 2 15:41:31 UTC 2024 Error /net/connman/service/cellular_206018060790006_context1: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken. Tue Jan 2 15:43:31 UTC 2024 "connmanctl connect" lasts 2 minutes (it ends with connection timeout). After the first unsuccessful connection attempt, nothing happens. No new context activation is asked to Ofono. During these 2 minutes, if I try to connect the service, I receive an "in progress" error. This looks like a bug to me. Change comes from commit 8ea2d67a6e8935d06f71b1ec77a2f89d72be49eb (service: Complete only after user connection retries). service_complete is not called anymore when error is received from ofono plugin. We wait for agent to call report_error_cb. There is no agent in this case so report_error_cb is never called. I think that service_complete should be called if there is no agent. Christophe Ronco (1): service: End connection if connection failure and no agent src/service.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) -- 2.25.1