Use send functions without explicit timeout. Return booleans instead
of pointers - nobody really used GIsiPending but relied on client
doing the cleanup.
Add g_isi_client_set_timeout(), g_isi_client_(v)send_with_timeout().
With the fix to query the signal strength when the registration status
changes it should be now fine again to just ignore notifications about
signal strength changes when not registered. So put this extra check
and comment back into signal strenth notification function.
Signal strength is set to -1 whenever registration status changes
and differs from registered or roaming. When registration status
changes again to registered or roaming, the signal strength needs to
be updated, added query towards driver to get it.
According to dbus documentation, dbus_message_iter_append_basic()
expects a "const char**" if type is string and a simple pointer for
other types. Since we a iterating an array, the value passed is already
a pointer.
As per the ETSI TS 102 223 section 6.5.4, If the terminal
receives an icon, and either an empty or no alpha identifier/text string
is given by the UICC, than the terminal shall reject the command
with general result "Command data not understood by terminal".
In *ECAV, the number will not be included if caller id is hidden.
Set it to an empty string in that case, and set number type to
128, unknown number type.
COLP and COLR are better named respectively as ConnectedLinePresentation
and ConnectedLineRestriction as stated in 27.007 sections 7.8 and 7.31.
CalledLine* name will be used in future for CDIP.
It seesm that some networks send the push notifications with a source
port of 0 instead of 9200. Instead of accepting any source port, add
an additional datagram handler for the source port 0.