~ubuntu-branches/ubuntu/utopic/ofono/utopic-proposed

« back to all changes in this revision

Viewing changes to src/modem.c

  • Committer: Package Import Robot
  • Author(s): Ubuntu daily release, Alfonso Sanchez-Beato, Tony Espy, Ubuntu daily release
  • Date: 2014-09-26 17:34:10 UTC
  • mfrom: (1.3.26)
  • Revision ID: package-import@ubuntu.com-20140926173410-dd4yzlutz0mf37n6
Tags: 1.12.bzr6878+14.10.20140926-0ubuntu1
[ Alfonso Sanchez-Beato ]
* include, plugins/mtk.c, src/modem.c,sim.c: Fix PUK crash (LP: #1365481)
  If the SIM gets locked in particular sequence, ofono will crash
  while trying to free the list of SIM SPN watch events ( which
  have already been freed ).  MTK fix is a bit more involved than
  the stanard RIL logic.

* plugins/mtk.c,ril.c: Show emergency numbers in flight-mode (LP: #1366188)
  Modify plugin logic to create the SimManager interface even if
  no SIM is present.

* gril, unit: fix indicator-network crash (LP: #1368675)
  RIL defines a set of network registration states for emergency
  calling that don't map directly to ofono's states.  This results
  in NetworkRegistration Status not being set at all, which in
  turn crashes the indicator.

* rilmodem/gprs.c: fix crash due to stale timer event (LP: # 1373351)
  A 5s timer is set to retry a STATUS request to RIL, however if
  FlightMode is enabled, the gprs atom is destroyed, and the pending
  timer callback has a stale gprs reference.  Now the timer id is
  stored, and when the atom destroyed, the timer event is cancelled.

* mtkmodem/radio-setttings.c: fix RadioSettings creation (LP: #1374029 )
  If the MTK modem returns a RADIO_NOT_AVAIL error in response
  to a FastDormany RIL request, the RadioSetting initialization
  callback sequence is broken, and thus the RadioSettings interface
  isn't created.  This in turn prevents powerd from enabling
  FastDorancy whenever the screen is turned off, and also has
  implications for system-settings too.

[ Tony Espy ]
* plugins/ubuntu-apndb.c: allow MMS APNs w/out proxy (LP: #1362008)
  Prior to this change, MMS APNs w/out a proxy were skipped.
  Now APNs are skipped if message center is missing, which makes
  more sense.

[ Ubuntu daily release ]
* New rebuild forced

Show diffs side-by-side

added added

removed removed

Lines of Context:
87
87
        void                    *driver_data;
88
88
        char                    *driver_type;
89
89
        char                    *name;
 
90
        ofono_bool_t            driver_watches_sim;
90
91
};
91
92
 
92
93
struct ofono_devinfo {
697
698
        case OFONO_SIM_STATE_RESETTING:
698
699
                break;
699
700
        case OFONO_SIM_STATE_LOCKED_OUT:
700
 
                modem_change_state(modem, MODEM_STATE_PRE_SIM);
 
701
                if (modem->driver_watches_sim == FALSE)
 
702
                        modem_change_state(modem, MODEM_STATE_PRE_SIM);
701
703
                break;
702
704
        case OFONO_SIM_STATE_READY:
703
705
                /* Avoid state regressions */
1803
1805
        modem->driver_type = g_strdup(type);
1804
1806
}
1805
1807
 
 
1808
void ofono_modem_set_driver_watches_sim(struct ofono_modem *modem,
 
1809
                                        ofono_bool_t value)
 
1810
{
 
1811
        modem->driver_watches_sim = value;
 
1812
}
 
1813
 
 
1814
ofono_bool_t ofono_modem_get_driver_watches_sim(struct ofono_modem *modem)
 
1815
{
 
1816
        return modem->driver_watches_sim;
 
1817
}
 
1818
 
1806
1819
struct ofono_modem *ofono_modem_create(const char *name, const char *type)
1807
1820
{
1808
1821
        struct ofono_modem *modem;