Re: The meaning of Enable in MM/NM world of mobile broadband?



On Wed, 2011-08-03 at 00:28 +0200, Marius Kotsbak wrote:
> Den 02. aug. 2011 17:58, skrev Andrew Bird (Sphere Systems):
> > There is one thing I noticed though after doing a few tests with NM on Ubuntu
> > Natty. If after first insertion of a device, the user dismisses the PIN entry
> > dialog without authenticating. Then he subsequently uses the nm-applet to
> > enable mobile broadband but it doesn't prompt again for PIN. Which means that
> > to see registration/sig strength/networks etc, the user must first attempt a
> > connection in order to get prompted for PIN and auth, or he must pull the
> > stick and reinsert. Which may be expected behaviour I guess, but a little
> > awkward.
> 
> There is also another similar issue,  it seems to ask for PIN after 
> bootup even if the PIN is saved on the connection, and then it might ask 
> again on the actual connection. I can maybe understand the technical 
> reasons for that, but it is annoying for the user.

Saving the PIN in the connection was a mistake when 3G was first added.
The PIN is specific to the SIM in almost all cases, not specific to the
connection.  Long ago I added a "SIM Identifier" and "Device Identifier"
to each modem in ModemManager, which I intended the applet to use to
store PIN codes in the keyring for automatically unlocking the modem.
If the "SIM ID" was present (not all modems can provide it because not
all modems allow grabbing the IMSI before they are unlocked) then the
applet should use that to look up the PIN code in the keyring.  If the
SIM ID is not available, the applet should use the Device ID.  Only as a
fallback should they PIN from the connection data be used, because the
connection data is *not* SIM specific and thus if you change SIM cards
or set a different PIN code, the PIN stored in the connection data will
be wrong and you could lock your SIM.

So this is something that's looking for help if anyone wants to
implement this in the applet.  Basically we'd store the PIN in the
keyring and add the SIM ID as a property when doing so, and when a new
device was seen look through the keyring and match the SIM ID and either
pre-fill the dialog or automatically unlock the device.  This isn't
something that NetworkManager should really be doing, it's much more of
a UI sort of thing.

If you're using an embedded platform with a PIN-locked SIM, then using
the connection data would be appropriate because it's highly unlikely
things will be changing often and you can deal with it when it does.
But for more desktop-oriented setups we shouldn't be using the
connection data for PIN storage at all.

Dan



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]