ucs: implement transaction handling
commit9cd892618c5c731f5ecdda158a9acdee96cbb147
authorStefan Becker <chemobejk@gmail.com>
Sun, 25 Aug 2013 13:49:47 +0000 (25 16:49 +0300)
committerStefan Becker <chemobejk@gmail.com>
Sun, 25 Aug 2013 13:59:20 +0000 (25 16:59 +0300)
treed106ab9706f7f0e58d3885c408a029c401fe519e
parent9172491186e7699623bb82b16e912e2aa1938d26
ucs: implement transaction handling

We can't rely on the serialization of HTTP requests alone. We need
transactions to group UCS operations together so that no other UCS
operation can interfere.

- every UCS request is now enqueued first
- when a request has been enqueued or a response has been processed,
  then we check if we are allowed to send a request and if there is an
  enqueued request
- transactions obsolete the deferred request handling -> removed
- for now every request is using the default transaction
- request takes ownership of body string now
- fixed two places where we didn't properly handle payload on error
- move sipe_ucs_free() before connection cleanup
src/core/sipe-core.c
src/core/sipe-ucs.c