aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDan Williams <dcbw@redhat.com>2016-05-11 11:24:59 -0500
committerDan Williams <dcbw@redhat.com>2016-05-27 12:30:05 -0500
commit9cc851954d6c0525ae97b8b0be7661870aa17224 (patch)
tree96d2a5e3a7235f3292e2df1670c2833f8c8edf1b /src
parent830b6ebca8e218efeecd211b7a058366ef26272e (diff)
broadband-bearer-mbm: simplify dial_3gpp connection setup flow
There are a few key parts to this patch: 1) move the poll id into the Dial3gppContext structure as it is conceptually part of the connection context data. This simplifies context cleanup by keeping the poll id cleanup in one place. 2) move unsolicited connection status (E2NAP) handling into the normal connection codepath, instead of completing the connection context from the report_connection_status() E2NAP handler. This simplifies connect code by not requiring checks for a NULL context everywhere, and allows us to pass the Dial3gppContext structure around instead of the Bearer object, since the Dial3gppContext will never be comleted/freed outside the normal connection flow codepaths like GLib idles and AT command requests. 3) use the connect context cancellable for all AT command requests in the connect path. This lets us use the error return from mm_base_modem_at_command_full_finish() to handle cancellation and also not bother listening to the 'cancelled' signal of the cancellable, since we can just check for cancellation the next time the ENAP poll function runs. https://bugs.freedesktop.org/show_bug.cgi?id=95304
Diffstat (limited to 'src')
0 files changed, 0 insertions, 0 deletions