From 1fce03879e28f44e17c40a4f53349d9e1f3d3993 Mon Sep 17 00:00:00 2001 From: Bjørn Mork Date: Sun, 25 Apr 2021 11:57:49 +0200 Subject: trying to move indication setup --- src/mm-bearer-qmi.c | 50 ++++++++++++++++++++++++++------------------------ 1 file changed, 26 insertions(+), 24 deletions(-) diff --git a/src/mm-bearer-qmi.c b/src/mm-bearer-qmi.c index 0734e9b1..9c206e90 100644 --- a/src/mm-bearer-qmi.c +++ b/src/mm-bearer-qmi.c @@ -422,15 +422,15 @@ typedef enum { CONNECT_STEP_IPV4, CONNECT_STEP_WDS_CLIENT_IPV4, CONNECT_STEP_BIND_DATA_PORT_IPV4, - CONNECT_STEP_IP_FAMILY_IPV4, CONNECT_STEP_ENABLE_INDICATIONS_IPV4, + CONNECT_STEP_IP_FAMILY_IPV4, CONNECT_STEP_START_NETWORK_IPV4, CONNECT_STEP_GET_CURRENT_SETTINGS_IPV4, CONNECT_STEP_IPV6, CONNECT_STEP_WDS_CLIENT_IPV6, CONNECT_STEP_BIND_DATA_PORT_IPV6, - CONNECT_STEP_IP_FAMILY_IPV6, CONNECT_STEP_ENABLE_INDICATIONS_IPV6, + CONNECT_STEP_IP_FAMILY_IPV6, CONNECT_STEP_START_NETWORK_IPV6, CONNECT_STEP_GET_CURRENT_SETTINGS_IPV6, CONNECT_STEP_LAST @@ -1677,6 +1677,7 @@ connect_context_step (GTask *task) } /* fall through */ case CONNECT_STEP_BIND_DATA_PORT_IPV4: + mm_obj_dbg (self, "ctx->sio_port=%d, ctx->mux_id=%d", ctx->sio_port, ctx->mux_id); /* If SIO port given, bind client to it */ if (ctx->sio_port != QMI_SIO_PORT_NONE) { g_autoptr(QmiMessageWdsBindDataPortInput) input = NULL; @@ -1719,6 +1720,18 @@ connect_context_step (GTask *task) mm_obj_dbg (self, "running '%s'", step2str(ctx->step)); /* fall through */ + case CONNECT_STEP_ENABLE_INDICATIONS_IPV4: + common_setup_cleanup_packet_service_status_unsolicited_events (ctx->self, + ctx->client_ipv4, + TRUE, + &ctx->packet_service_status_ipv4_indication_id); + setup_event_report_unsolicited_events (ctx->self, + ctx->client_ipv4, + g_task_get_cancellable (task), + (GAsyncReadyCallback) connect_enable_indications_ipv4_ready, + task); + return; + case CONNECT_STEP_IP_FAMILY_IPV4: /* If client is new enough, select IP family */ if (!ctx->no_ip_family_preference) { @@ -1743,17 +1756,6 @@ connect_context_step (GTask *task) mm_obj_dbg (self, "running '%s'", step2str(ctx->step)); /* fall through */ - case CONNECT_STEP_ENABLE_INDICATIONS_IPV4: - common_setup_cleanup_packet_service_status_unsolicited_events (ctx->self, - ctx->client_ipv4, - TRUE, - &ctx->packet_service_status_ipv4_indication_id); - setup_event_report_unsolicited_events (ctx->self, - ctx->client_ipv4, - g_task_get_cancellable (task), - (GAsyncReadyCallback) connect_enable_indications_ipv4_ready, - task); - return; case CONNECT_STEP_START_NETWORK_IPV4: { QmiMessageWdsStartNetworkInput *input; @@ -1861,6 +1863,17 @@ connect_context_step (GTask *task) ctx->step++; mm_obj_dbg (self, "running '%s'", step2str(ctx->step)); /* fall through */ + case CONNECT_STEP_ENABLE_INDICATIONS_IPV6: + common_setup_cleanup_packet_service_status_unsolicited_events (ctx->self, + ctx->client_ipv6, + TRUE, + &ctx->packet_service_status_ipv6_indication_id); + setup_event_report_unsolicited_events (ctx->self, + ctx->client_ipv6, + g_task_get_cancellable (task), + (GAsyncReadyCallback) connect_enable_indications_ipv6_ready, + task); + return; case CONNECT_STEP_IP_FAMILY_IPV6: { QmiMessageWdsSetIpFamilyInput *input; @@ -1880,17 +1893,6 @@ connect_context_step (GTask *task) return; } - case CONNECT_STEP_ENABLE_INDICATIONS_IPV6: - common_setup_cleanup_packet_service_status_unsolicited_events (ctx->self, - ctx->client_ipv6, - TRUE, - &ctx->packet_service_status_ipv6_indication_id); - setup_event_report_unsolicited_events (ctx->self, - ctx->client_ipv6, - g_task_get_cancellable (task), - (GAsyncReadyCallback) connect_enable_indications_ipv6_ready, - task); - return; case CONNECT_STEP_START_NETWORK_IPV6: { QmiMessageWdsStartNetworkInput *input; -- cgit v1.2.3