[Spice-devel] [PATCH spice-server v4 00/20] Port SPICE server to Windows

Frediano Ziglio fziglio at redhat.com
Sun Mar 3 19:09:12 UTC 2019


ping

> 
> ping
> 
> > 
> > Windows support is useful to use with Qemu under Windows as host or
> > to implement servers like Xspice.
> > Mainly SPICE server uses lot of libraries to expose a TCP protocol.
> > As TCP is implemented with socket library which is quite portable was
> > not that hard to port.
> > Beside some minor feature (see REAME.Windows) all was ported.
> > During porting was choosen to keep Unix as the main platform, if a
> > change would require too much changes some Windows wrapper is
> > preferred instead. Not too complicated stuff, the main "wrapper" is
> > that Windows errors from socket are written back into errno to avoid
> > to change lot of code handling errors.
> > 
> > Changes since v3:
> > - reduce compatibility layer size:
> >   - do not change function name if not required;
> >   - use int instead of a new socket_t.
> > 
> > Changes since v2:
> > - better %m replacement;
> > - many comments updates;
> > - typo and grammar fixes;
> > - use int to store socket descriptors/handles;
> > - merge all v2 updates into a single series;
> > - split formatting string patch.
> > 
> > Frediano Ziglio (20):
> >   Use proper format strings for spice_log
> >   build: Detect Windows build and change some definitions
> >   Avoids %m in formatting for Windows
> >   windows: Undefine some conflicting preprocessor macros
> >   tests: Provide alarm replacement for Windows
> >   test-stat: Adjust delay checks
> >   sys-socket: Introduce some utility to make sockets more portable
> >   sys-socket: Add socket_newpair utility
> >   net-utils: Use socket compatibility layer
> >   reds: Use socket compatibility layer
> >   red-stream: Use socket compatibility layer
> >   dispatcher: Use socket compatibility layer
> >   test-leaks: Use socket compatibility layer
> >   test-channel: Use socket compatibility layer
> >   windows: Disable code not working on Windows
> >   dispatcher: Port to Windows
> >   tests: Exclude tests that cannot work on Windows
> >   red-stream: Fix SSL connection for Windows
> >   Disable recording filtering for Windows
> >   Add some notes for the Windows port
> > 
> >  README.Windows                    |  18 ++
> >  configure.ac                      |  20 ++-
> >  server/Makefile.am                |   2 +
> >  server/char-device.c              |   3 +-
> >  server/dispatcher.c               |  28 ++-
> >  server/gstreamer-encoder.c        |   4 +-
> >  server/main-channel-client.c      |   6 +-
> >  server/memslot.c                  |   2 +-
> >  server/mjpeg-encoder.c            |   6 +-
> >  server/net-utils.c                |  11 ++
> >  server/red-channel-client.c       |   2 +
> >  server/red-channel.c              |   6 +-
> >  server/red-client.c               |   6 +-
> >  server/red-common.h               |   1 +
> >  server/red-qxl.c                  |   4 +
> >  server/red-record-qxl.c           |   7 +
> >  server/red-replay-qxl.c           |   9 +-
> >  server/red-stream.c               |  48 ++++-
> >  server/red-stream.h               |   2 +
> >  server/red-worker.c               |   6 +
> >  server/reds.c                     |  53 +++---
> >  server/sound.c                    |   5 +-
> >  server/stat-file.c                |   2 +
> >  server/sys-socket.c               | 287 ++++++++++++++++++++++++++++++
> >  server/sys-socket.h               | 142 +++++++++++++++
> >  server/tests/Makefile.am          |  11 +-
> >  server/tests/basic-event-loop.c   |   2 +
> >  server/tests/replay.c             |   2 +
> >  server/tests/stat-test.c          |  12 +-
> >  server/tests/test-channel.c       |   9 +-
> >  server/tests/test-leaks.c         |   5 +-
> >  server/tests/test-loop.c          |   1 +
> >  server/tests/test-record.c        |   7 +-
> >  server/tests/test-stream-device.c |   1 +
> >  server/tests/win-alarm.c          |  65 +++++++
> >  server/tests/win-alarm.h          |  26 +++
> >  tools/Makefile.am                 |   2 +
> >  37 files changed, 753 insertions(+), 70 deletions(-)
> >  create mode 100644 README.Windows
> >  create mode 100644 server/sys-socket.c
> >  create mode 100644 server/sys-socket.h
> >  create mode 100644 server/tests/win-alarm.c
> >  create mode 100644 server/tests/win-alarm.h
> > 
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/spice-devel


More information about the Spice-devel mailing list