SIM PIN Unlock doesn't always trigger an actual unlock action

Bug #1426876 reported by Tony Espy
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
indicator-network (Ubuntu)
Incomplete
Medium
Unassigned
unity8 (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

current build number: 127
device name: krillin
channel: ubuntu-touch/devel-proposed

Two SIMs installed, SIM in the second slot is PIN-locked.

It's possible for a PIN to be entered on the SIM auto-prompt screen ( displayed at boot ) and the subsequent action ( ie. the DBus EnterPin call to ofono ) to get dropped. This results in the SIM still being locked when the user dismisses the greeter.

This bug was discovered while testing an ofono vivid silo. The associated ofono merge request is:

https://code.launchpad.net/~phablet-team/ofono/ww10-update/+merge/250665

The version of ofono in the silo (ubuntu-013) is:

1.12.bzr6888+15.04.20150224-0ubuntu1

There's some kind of race condition involved, as this seldom happens ( ~5% of the time ).

I was finally able to prove that this was unity8 ( or some other upper layer component ) by adding info log messages to the ofono functions that handle the DBus EnterPin method, and the associated callback function. The scenario that clinched it for me was:

1. Boot phone

2. Enter bad PIN and tap check button when prompted for SIM2
[ See that remaining Retries is reported as 2 ]

3. Enter PIN again and tap check button again

4. Examine syslog and notice that there's only a single call to EnterPIN, which is followed by a log message showing the callback failure for the bad PIN entered.

Tony Espy (awe)
description: updated
Revision history for this message
Michael Terry (mterry) wrote :

I doubt this is unity8's issue. Unity8 only does the following:
- Initiate the original call to com.ubuntu.connectivity1.Private.UnlockAllModems, which seems to be working fine.
- Render the notification dialogs when requested by indicator-network

So I'm inclined to leave investigation to indicator-network team

Revision history for this message
Tony Espy (awe) wrote :

Thanks for the comment Mike. All I know is that a DBus call wasn't made to ofono, so it's somewhere in the stack above. I'll make sure to bring this up with the indicator team at this week's network/telephony meeting.

Revision history for this message
Tony Espy (awe) wrote :

@Mike

So to be clear, the indicator sends a signal to unity8 which causes it to render the Enter PIN page? When the user clicks the checkmark, what happens, does unity8 make a subsequent DBus request? If so, to what destination and method?

Revision history for this message
Michael Terry (mterry) wrote :

@Tony, the indicator makes a libnotify request (which goes over dbus) with a bunch of special x-canonical hints that tells the notification daemon (unity8) to render the notification as a PIN entry. unity8 does so and then responds to the indicator (over dbus).

It is certainly possible that unity8 is not replying to the indicator. Or that the indicator isn't responding back to ofono.

Revision history for this message
Michael Terry (mterry) wrote :

(As to the specific destination and methods for libnotify, I'm not entirely sure off the top of my head.)

Revision history for this message
Michael Terry (mterry) wrote :

Despite unity8 also being a possible culprit, I was guessing it might be the indicator because the bug description indicated that it mattered which sim slot was locked. unity8 doesn't even get that information. So I figured it was below unity8. But if it looks like the indicator is doing its job fine, I'll give a look at the notification code in unity8.

Revision history for this message
Michał Sawicz (saviq) wrote : Re: [Bug 1426876] Re: SIM PIN Unlock doesn't always trigger an actual unlock action

> So to be clear, the indicator sends a signal to unity8 which causes it
> to render the Enter PIN page? When the user clicks the checkmark, what
> happens, does unity8 make a subsequent DBus request? If so, to what
> destination and method?

It tells the originator of the PIN request (indicator-network) over
UnityMenuModel that the button was pressed, they can then read the value
and act on it.

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in indicator-network (Ubuntu):
status: New → Confirmed
Changed in unity8 (Ubuntu):
status: New → Confirmed
Revision history for this message
Antti Kaijanmäki (kaijanmaki) wrote :

needs more investigation.

Changed in indicator-network (Ubuntu):
importance: Undecided → Medium
status: Confirmed → Incomplete
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.