rilmodem: Do not always use sim's app in status->gsm_umts_index
| Affects | Status | Importance | Assigned to | Milestone | |
|---|---|---|---|---|---|
| | Canonical System Image |
High
|
Unassigned | ||
| | ofono (Ubuntu) |
High
|
Tony Espy | ||
Bug Description
In driver/
The code then checks if the card_state returned by the GET_SIM_STATUS reply is PRESENT and search_index is less than num_apps. If both are true, search_index is used to index the returned reply_sim_app array ( which leads to undefined behavior if the index is negative ) and then passed to configure_
The code should check search index, and if negative and num_apps >=1, set search_index to 0.
ofono version 1.12.bzr6888+
Device: LG L90 Dual (I'm doing a port.)
Related branches
- Alfonso Sanchez-Beato: Approve on 2015-05-21
- PS Jenkins bot: Approve (continuous-integration) on 2015-05-20
-
Diff: 1621 lines (+900/-245)19 files modifiedMakefile.am (+3/-0)
debian/changelog (+32/-0)
doc/connman-api.txt (+11/-0)
drivers/qcommsimmodem/qcom_msim_constants.h (+27/-0)
drivers/rilmodem/sim.c (+195/-31)
drivers/rilmodem/vendor.h (+2/-1)
gril/grilreply.c (+33/-0)
gril/grilreply.h (+3/-0)
gril/grilrequest.c (+44/-0)
gril/grilrequest.h (+10/-0)
plugins/qcom-msim.c (+76/-0)
plugins/ubuntu-apndb.c (+4/-2)
src/gprs.c (+229/-133)
test/create-ia-context (+0/-47)
test/list-modems (+46/-1)
test/reset-contexts (+20/-0)
test/set-context-property (+63/-30)
unit/test-grilreply.c (+56/-0)
unit/test-grilrequest.c (+46/-0)
| Changed in ofono (Ubuntu): | |
| status: | New → Confirmed |
| assignee: | nobody → Tony Espy (awe) |
| importance: | Undecided → High |
| description: | updated |
Looking at the definition of the reply to RIL_REQUEST_
http://
I see that if RIL_CardStatus_
Maybe the right approach here is to not use the indexes in RIL_CardStatus_v6 and look directly at the array RIL_CardStatus_
@Ratchanan, would it be possible to obtain the full hex traces from you phone? To get them please do as root in the phone:
# stop ofono
# OFONO_RIL_TRACE="" OFONO_RIL_
let it run for a few seconds and please attach the resulting file to the bug.
| Ratchanan Srirattanamet (peat-new) wrote : | #3 |
@Alfonso, I've attached the log. But I think I know why gsm_umts_index is -1 now. After reading the log from Cyanogenmod, I've found that I need to make another request to rild to select app we'll use. I actually have a patch (hack!) that make my phone register with the network and talks USSD, but I think it's out of scope of this bug now.
| Ratchanan Srirattanamet (peat-new) wrote : | #4 |
Sorry, attach wrong file.
@Ratchanan, thanks for the log. This implies that we should not really use the index if set to -1 for your modem, but send the request for selecting an application before. Great to know that you are already able to register, maybe getting ofonod to work will just need a couple of minor adjustments. If that is the case, you could define a new vendor in
drivers/
and use it as necessary. The repo we use for our development is
https:/
Patches are always welcome ;)
| Tony Espy (awe) wrote : | #6 |
As this patch was merged into our upstream git repository, I'm changing the Status to FixCommitted. See the following pull-request for details:
| Changed in ofono (Ubuntu): | |
| status: | In Progress → Fix Committed |
| Changed in canonical-devices-system-image: | |
| importance: | Undecided → High |
| milestone: | none → ww22-2015 |
| status: | New → In Progress |
| Launchpad Janitor (janitor) wrote : | #7 |
This bug was fixed in the package ofono - 1.12.bzr6896+
---------------
ofono (1.12.bzr6896+
[ Ratchanan Srirattanamet ]
* build, gril, rilmodem, qcommsimmodem, plugins/
support for LG L90 Dual which uses a Qualcomm dual-SIM modem (LP: #1427788)
[ Alfonso Sanchez-Beato ]
* src/gprs.c: support for 'ResetContexts' (LP: #1338758)
Adds a new ConnectionManager 'ResetContexts' DBus method
which deletes all existing gprs contexts and forces
re-provisioning to occur.
* plugins/
This change causes APNs with an 'ipv6' protocol value
to instead be provisioned with 'ip', forcing IPv4 to
be used.
[ Jonas Drange ]
* doc/connman-
[ Tony Espy ]
* test/set-
This change adds support for the 'Preferred' ( and 'Active')
properties which both need to be DBus variant wrapped booleans.
Also added support for multi-SIM which was lacking from this script.
* test/list-modems: add privacy support (LP: #1438715)
Obfuscate any properties which can be tied to the end-user
( eg. SubscriberNumbers, SubscriberIdentity, ... ).
-- CI Train Bot <email address hidden> Thu, 21 May 2015 08:44:39 +0000
| Changed in ofono (Ubuntu): | |
| status: | Fix Committed → Fix Released |
| Changed in canonical-devices-system-image: | |
| status: | In Progress → Fix Released |


Proposed fix in:
https:/ /github. com/rilmodem/ ofono/pull/ 166