[Spice-devel] [PATCH spice-streaming-agent v2 0/9] nonblocking mode for stream port and some refactor

Lukáš Hrázký lhrazky at redhat.com
Wed May 16 16:25:58 UTC 2018


Changes since v1:
- Improved some commit log messages.
- Renamed errno_ to sys_errno.
- Used inheriting constructors for errors.
- Used std::runtime_error as predecessor of the Error class to handle
  the message string.
- Cleaned up the terminators in the unit test :)
- Fixed a typo in the WriteError exception.
- Fixed the locking in "Encapsulate the stream port fd and locking".

Lukáš Hrázký (9):
  Use read_all() to read headers of received messages
  Move out {read,write}_all() to a separate module
  Implement an exception hierarchy for ReadError
  Introduce a WriteError exception for write_all()
  Unify the structure of write_all() and read_all()
  Add a unit test for the stream port
  Change the mode to NONBLOCK for the virtio port
  Encapsulate the stream port fd and locking
  Refactor and simplify polling for messages to read

 src/Makefile.am                    |   4 +
 src/error.cpp                      |  21 ++++
 src/error.hpp                      |  53 +++++++++
 src/spice-streaming-agent.cpp      | 218 ++++++++++++-------------------------
 src/stream-port.cpp                | 118 ++++++++++++++++++++
 src/stream-port.hpp                |  35 ++++++
 src/unittests/.gitignore           |   1 +
 src/unittests/Makefile.am          |   9 +-
 src/unittests/test-stream-port.cpp |  81 ++++++++++++++
 9 files changed, 389 insertions(+), 151 deletions(-)
 create mode 100644 src/error.cpp
 create mode 100644 src/error.hpp
 create mode 100644 src/stream-port.cpp
 create mode 100644 src/stream-port.hpp
 create mode 100644 src/unittests/test-stream-port.cpp

-- 
2.16.2



More information about the Spice-devel mailing list