There are a large number of files in the tree that define _GNU_SOURCE
despite not actually using features hidden behind this flag. This patch
removes all these definitions in one fell swoop...
Handle different message types for IND subscriptions based on the
presence of the GISI_MODEM_FLAG_USE_LEGACY_SUBSCRIBE flag. This
enables building modem plugins for modems that only support one or the
other available IND types.
Based on patches from:
Jessica Nilsson <jessica.j.nilsson@stericsson.com>
Client or server mark their pending objects with
the function g_isi_pending_set_owner().
When client or server get destroyed or reset the pending objects are
removed with the function g_isi_remove_pending_by_owner(). As a client
or server always uses only a particular resource, all the pending
objects are conveniently stored into a single list.
Some resources send INDs with non-zero unique transaction ID, which
can conflict with pending RESPs. To fix this, we use two sockets, one
dedicated for INDs, and one dedicated to REQs, NTFs and RESPs.
This new modem API supercedes the old client and server APIs. It
properly queues resource subscriptions and version queries, as well as
caches reachability status for a given resource.
Also, this is a complete redesign of ISI message handling, adding
another layer of abstraction to multiplexing operations to a given
modem resource.