Andrzej Zaborowski [Thu, 17 Sep 2009 20:43:22 +0000 (22:43 +0200)]
Do PIN authentication
This adds checking whether PIN is required during SIM initialisation and
delaying the sim ready notifications until after correct PIN is given.
Denis Kenzior [Fri, 18 Sep 2009 18:47:34 +0000 (13:47 -0500)]
Assume sms is registered only when sim ready
Denis Kenzior [Fri, 18 Sep 2009 18:41:29 +0000 (13:41 -0500)]
Assume cbs is registered after sim ready
Denis Kenzior [Fri, 18 Sep 2009 18:38:50 +0000 (13:38 -0500)]
Assume netreg is registered when sim ready
Marcel Holtmann [Fri, 18 Sep 2009 20:56:03 +0000 (13:56 -0700)]
Fix trailing whitespace
Denis Kenzior [Fri, 18 Sep 2009 18:33:41 +0000 (13:33 -0500)]
Add disconnection function
Denis Kenzior [Fri, 18 Sep 2009 18:33:22 +0000 (13:33 -0500)]
Simplify cleanup logic
Denis Kenzior [Thu, 17 Sep 2009 18:41:52 +0000 (13:41 -0500)]
Refactor language preference parsing
- Make sure to handle capital / lower case ISO639 strings
- Properly handle the case where files are empty / unused
- Don't emit the signal unless the preferences are useable
- Simplify the logic and be a bit more readable
Denis Kenzior [Thu, 17 Sep 2009 17:18:48 +0000 (12:18 -0500)]
Simplify function logic
Denis Kenzior [Thu, 17 Sep 2009 17:17:42 +0000 (12:17 -0500)]
Use g_ascii_isdigit
Denis Kenzior [Thu, 17 Sep 2009 17:04:56 +0000 (12:04 -0500)]
Fix potential memory leak
Denis Kenzior [Thu, 17 Sep 2009 17:04:45 +0000 (12:04 -0500)]
Rename function to be more clear
Denis Kenzior [Thu, 17 Sep 2009 16:53:37 +0000 (11:53 -0500)]
Use existing function for converting to iso639
Denis Kenzior [Thu, 17 Sep 2009 16:53:19 +0000 (11:53 -0500)]
Assume CBS is registered when SIM ready
Andrzej Zaborowski [Thu, 17 Sep 2009 13:58:29 +0000 (15:58 +0200)]
Present list of preferred languages on SimManager interfce.
We try to detect the old (2G / 2G+, 51.011) EFlp format and deal
with the file contents accordingly.
Denis Kenzior [Thu, 17 Sep 2009 15:15:34 +0000 (10:15 -0500)]
Convert all the modem drivers to the new API
Denis Kenzior [Thu, 17 Sep 2009 15:14:02 +0000 (10:14 -0500)]
Split populate modem driver method
Introduce two new methods
- pre_sim - SIM is not inserted or locked. This should populate
the modem with atoms that can be used without the SIM.
Generally this is the devinfo atom, the sim atom and the voice
call atom (emergency calls only)
- post_sim - SIM is ready. This method should populate the
modem with the remaining atoms
Denis Kenzior [Wed, 16 Sep 2009 22:08:54 +0000 (17:08 -0500)]
Add sim api documentation
Denis Kenzior [Tue, 15 Sep 2009 19:35:39 +0000 (14:35 -0500)]
Add reading of various CBS related EFs
- EFcbmi - Cell Broadcast Identifiers
- EFcbmir - Cell Broadcast Identifier Ranges
- EFcbmid - Cell Broadcast Identifiers for Data Download
Aki Niemi [Wed, 16 Sep 2009 10:43:07 +0000 (13:43 +0300)]
Miscellaneous clean-ups
Aki Niemi [Wed, 16 Sep 2009 10:42:45 +0000 (13:42 +0300)]
Add proper bootstrapping to phonebook driver
Aki Niemi [Wed, 16 Sep 2009 10:42:04 +0000 (13:42 +0300)]
gisi: Make reachability detection more robust
Aki Niemi [Wed, 16 Sep 2009 10:40:49 +0000 (13:40 +0300)]
Increase network scan/set timeout values
Denis Kenzior [Wed, 16 Sep 2009 10:07:36 +0000 (05:07 -0500)]
Make sure unit tests also use right pdu buffer len
Andrzej Zaborowski [Wed, 16 Sep 2009 14:03:50 +0000 (16:03 +0200)]
Check received PDUs fit in the buffer, fix buffer size.
Denis Kenzior [Tue, 15 Sep 2009 19:35:09 +0000 (14:35 -0500)]
Fix: do not leak memory, cleanup the topic list
Aki Niemi [Wed, 16 Sep 2009 06:05:53 +0000 (09:05 +0300)]
Fix restrict keyword usage
Aki Niemi [Tue, 15 Sep 2009 12:37:01 +0000 (15:37 +0300)]
Add proper bootstrap using g_isi_verify()
Aki Niemi [Tue, 15 Sep 2009 12:36:11 +0000 (15:36 +0300)]
Remove version query; use gisi/client.h instead
Aki Niemi [Tue, 15 Sep 2009 12:35:47 +0000 (15:35 +0300)]
gisi: Add ISI version and reachability check API
This patch adds an API for querying the ISI version of the resource
with which the client is associated. This information is only
available after g_isi_verify() has been called on the client. This is
because we use the version query message as a vehicle for reachability
checking.
Aki Niemi [Tue, 15 Sep 2009 08:17:39 +0000 (11:17 +0300)]
Fix error reporting in phonebook driver
Aki Niemi [Mon, 14 Sep 2009 21:35:22 +0000 (00:35 +0300)]
Remove extra debug
Aki Niemi [Mon, 14 Sep 2009 21:12:28 +0000 (00:12 +0300)]
Fix a possible but improbable leak
Marcel Holtmann [Mon, 14 Sep 2009 21:10:15 +0000 (14:10 -0700)]
Fix compiler warnings on 64-bit systems
RISKÓ Gergely [Mon, 14 Sep 2009 14:52:43 +0000 (17:52 +0300)]
Add introspection interface to the output of introspection calls
This provides better compatibility with some D-Bus clients, such as qdbus.
Aki Niemi [Mon, 14 Sep 2009 20:44:50 +0000 (23:44 +0300)]
Fix to use gisi/iter.h to decode sub-blocks
Aki Niemi [Mon, 14 Sep 2009 20:43:57 +0000 (23:43 +0300)]
Adapt to changed sub-block iterator API
Aki Niemi [Mon, 14 Sep 2009 20:43:17 +0000 (23:43 +0300)]
Add support for long sub-block header
Aki Niemi [Mon, 14 Sep 2009 13:21:35 +0000 (16:21 +0300)]
Refactor to use gisi/iter.h
Aki Niemi [Mon, 14 Sep 2009 13:21:18 +0000 (16:21 +0300)]
Modify to use the new alpha tag getter
Aki Niemi [Mon, 14 Sep 2009 13:21:06 +0000 (16:21 +0300)]
Add and modify string getters
Add a getter for latin ASCII only tags, and change the alpha tag
getter. Turns out not all alpha tags in ISI are of the length-value
variety.
Aki Niemi [Mon, 14 Sep 2009 11:45:12 +0000 (14:45 +0300)]
Coding style clean-ups
Aki Niemi [Mon, 14 Sep 2009 11:34:27 +0000 (14:34 +0300)]
Use gisi/iter.h for decoding sub-blocks
Aki Niemi [Mon, 14 Sep 2009 11:34:00 +0000 (14:34 +0300)]
gisi: Add ISI sub-block iterator
Aki Niemi [Mon, 14 Sep 2009 11:33:31 +0000 (14:33 +0300)]
Clean up IMSI decoding
Aki Niemi [Mon, 14 Sep 2009 10:00:45 +0000 (13:00 +0300)]
Remove trailing WS
Aki Niemi [Mon, 14 Sep 2009 09:54:16 +0000 (12:54 +0300)]
Remove unnecessary debug
Aki Niemi [Mon, 14 Sep 2009 09:52:21 +0000 (12:52 +0300)]
Add basic bootsrap for the SMS driver
Aki Niemi [Mon, 14 Sep 2009 09:51:48 +0000 (12:51 +0300)]
Add preliminary CBS driver
Aki Niemi [Mon, 14 Sep 2009 09:45:54 +0000 (12:45 +0300)]
Add proper bootstrapping for netreg driver
Use the ISI version query to bootstrap the netreg driver.
Aki Niemi [Mon, 14 Sep 2009 09:44:59 +0000 (12:44 +0300)]
Remove unnecessary debugs
Aki Niemi [Sat, 12 Sep 2009 19:39:50 +0000 (22:39 +0300)]
Fix registration status decoding
Aki Niemi [Sat, 12 Sep 2009 18:44:11 +0000 (21:44 +0300)]
Fixes for proper coding style
Aki Niemi [Sat, 12 Sep 2009 16:30:58 +0000 (19:30 +0300)]
Fix signal strength value calculation
Aki Niemi [Sat, 12 Sep 2009 15:58:18 +0000 (18:58 +0300)]
Add IMSI retrieval to sim driver
Modified patch originally provided by Jukka Saunamäki.
Aki Niemi [Sat, 12 Sep 2009 15:57:16 +0000 (18:57 +0300)]
Fix to use new success/failure callback macros
Aki Niemi [Sat, 12 Sep 2009 15:42:42 +0000 (18:42 +0300)]
Add implementation of netreg driver
Aki Niemi [Sat, 12 Sep 2009 12:47:00 +0000 (15:47 +0300)]
Clean up macros for success/failure callbacks
Marcel Holtmann [Sat, 12 Sep 2009 07:01:05 +0000 (09:01 +0200)]
Fix compilation error with missing return value
Denis Kenzior [Sat, 12 Sep 2009 02:38:55 +0000 (21:38 -0500)]
Update the network registration API
Denis Kenzior [Sat, 12 Sep 2009 02:38:08 +0000 (21:38 -0500)]
Support base station name cell broadcasts
If we receive an immediate cell-specific cell broadcast, report it as
the base station id up to netreg atom
Denis Kenzior [Sat, 12 Sep 2009 02:35:31 +0000 (21:35 -0500)]
Add utility for setting the netreg base station
Denis Kenzior [Fri, 11 Sep 2009 21:25:30 +0000 (16:25 -0500)]
Enable registration / location updates for CBS
- This tracks the current Location Area Code / Cell ID and PLMN. If any
of these change, the assembly is notified. This is required to
implement proper CBS message duplicate detection according to 23.041
Denis Kenzior [Fri, 11 Sep 2009 21:25:15 +0000 (16:25 -0500)]
Add network registration status watch capability
Denis Kenzior [Fri, 11 Sep 2009 20:18:27 +0000 (15:18 -0500)]
Remove extra free of cbs assembly
Denis Kenzior [Fri, 11 Sep 2009 19:06:18 +0000 (14:06 -0500)]
Create watchlists during register
Denis Kenzior [Fri, 11 Sep 2009 19:05:39 +0000 (14:05 -0500)]
Port sim ready watch to __ofono_watchlist
Denis Kenzior [Fri, 11 Sep 2009 17:36:35 +0000 (12:36 -0500)]
Rework DECLARE_FAILURE to be a bit nicer
Denis Kenzior [Fri, 11 Sep 2009 04:01:59 +0000 (23:01 -0500)]
Refactor various watch functions
Use a common core kernel for all the watcher registrations /
notifications. This is now done in watch.c
Denis Kenzior [Thu, 10 Sep 2009 23:19:48 +0000 (18:19 -0500)]
Add netreg getter functions
- Get Location, CellID
- Current Operator
- Registration Status
- Technology
Denis Kenzior [Thu, 10 Sep 2009 23:13:11 +0000 (18:13 -0500)]
Fix cut-paste error
Denis Kenzior [Thu, 10 Sep 2009 22:44:36 +0000 (17:44 -0500)]
Ensure CBS is in a known state at startup
Denis Kenzior [Thu, 10 Sep 2009 22:40:16 +0000 (17:40 -0500)]
Add ability to expire PLMN wide messages
Denis Kenzior [Thu, 10 Sep 2009 22:20:00 +0000 (17:20 -0500)]
Fix double free issue
Denis Kenzior [Thu, 10 Sep 2009 21:29:05 +0000 (16:29 -0500)]
Fix unused variable
Andrzej Zaborowski [Thu, 10 Sep 2009 16:57:11 +0000 (18:57 +0200)]
Keep modem->powered_pending up to date after set_powered.
Without this once a request to power up the modem fails, modem.c won't
retry even when asked.
Andrzej Zaborowski [Thu, 10 Sep 2009 16:39:07 +0000 (18:39 +0200)]
Fix generation of Message Waiting PropertyChanged signals.
Andrzej Zaborowski [Thu, 10 Sep 2009 16:37:40 +0000 (18:37 +0200)]
Fix parsing of Enhanced Voicemail notifications.
Denis Kenzior [Thu, 10 Sep 2009 21:11:24 +0000 (16:11 -0500)]
Enable cell broadcast for phonesim plugin
Denis Kenzior [Thu, 10 Sep 2009 21:11:08 +0000 (16:11 -0500)]
Add atmodem cell broadcast driver
Denis Kenzior [Thu, 10 Sep 2009 21:10:14 +0000 (16:10 -0500)]
Add initial Cell Broadcast atom implementation
Denis Kenzior [Thu, 10 Sep 2009 02:25:03 +0000 (21:25 -0500)]
Handle empty topic range lists
Denis Kenzior [Thu, 10 Sep 2009 02:24:39 +0000 (21:24 -0500)]
Make cbs_topic_ranges_to_string work with all ids
Denis Kenzior [Thu, 10 Sep 2009 02:24:13 +0000 (21:24 -0500)]
Fix memory leak
Denis Kenzior [Wed, 9 Sep 2009 19:29:00 +0000 (14:29 -0500)]
Add unit test for CBS topic range functions
Denis Kenzior [Wed, 9 Sep 2009 19:28:20 +0000 (14:28 -0500)]
Add CBS topic range functions
Rémi Denis-Courmont [Thu, 10 Sep 2009 14:20:02 +0000 (17:20 +0300)]
gisi: cannot do ioctl() with Netlink sockets, use local instead
Rémi Denis-Courmont [Thu, 10 Sep 2009 14:18:17 +0000 (17:18 +0300)]
gisi: Fix embarrassing typo
Rémi Denis-Courmont [Thu, 10 Sep 2009 11:49:30 +0000 (14:49 +0300)]
gisi: bring Phonet interface up before telling upper layers about it
This should get kernel-assisted Phonet autoconfiguration to work (and it
shouldn't hurt in other cases). Otherwise, the upper layers will try to
send packets, which will fail. Then they will probably just time out.
Rémi Denis-Courmont [Wed, 9 Sep 2009 13:35:44 +0000 (16:35 +0300)]
gisi: disable logging by default
The debug_func was not initialized.
Denis Kenzior [Tue, 8 Sep 2009 21:52:12 +0000 (16:52 -0500)]
Fix make distcheck
Denis Kenzior [Tue, 8 Sep 2009 21:43:53 +0000 (16:43 -0500)]
Add unit test for sms assembly serialization
Denis Kenzior [Tue, 8 Sep 2009 21:40:56 +0000 (16:40 -0500)]
Rework SMS fragment backup storage
The SMS address can actually contain other characters than 0-9, +, *, #,
particularly when the alphanumeric address type is used. This is
commonly used by services such as Google or carrier specific SMS
services.
Rework the SMS address storage to simply re-use the SMS address pdu
format, which consists of up to 12 hex-encoded bytes.
Denis Kenzior [Tue, 8 Sep 2009 21:40:38 +0000 (16:40 -0500)]
Fix style issue
Denis Kenzior [Tue, 8 Sep 2009 21:39:16 +0000 (16:39 -0500)]
Fix off by one error in assembly serialize
The proper PDU was not being written out fully
Denis Kenzior [Tue, 8 Sep 2009 21:24:31 +0000 (16:24 -0500)]
Fixup unit test data
50 in first octet of deliver isn't valid
Andrzej Zaborowski [Sat, 5 Sep 2009 01:16:02 +0000 (03:16 +0200)]
Write state of SMS assembly to disk and restore on startup.
This way we can continue receiving segmented messages over a reset or
crash.
Denis Kenzior [Tue, 8 Sep 2009 19:15:40 +0000 (14:15 -0500)]
Fix style issue
Andrzej Zaborowski [Sat, 5 Sep 2009 01:12:19 +0000 (03:12 +0200)]
Move create_dirs to storage.c, add file read/write utilities
Andrzej Zaborowski [Fri, 4 Sep 2009 14:48:03 +0000 (16:48 +0200)]
Read messages left over in ME storage on startup.
On modems that don't support +CMT (or for class 2 SMSes) the messages are
stored in the modem and then read and deleted from there in two separate
steps with no warranty that deletion succeeds or (more likely) power is
cut before the deletion happens. Over time the memory may become full
and if we don't want to deal with this condition we need to check on
startup if there are messages we haven't deleted.
We can't differentiate between those messages and those the user already
had on the SIM / modem before installing ofono or switching phones, so we
might want to deliver messages with REC READ status with some kind of
indication that these are potentially old so the UI doesn't emit spurious
alerts. We don't do this now and just deliver as usual.