---
Changes from v1:
- split different changes to small patches, it will be easier to review
- fixed some problem according to Kevin's comment
Changes from v2:
- fix issue of returning real error
- set s->fd to -1 when parse fails, won't call migrate_fd_error()
Changes from v3:
- try to use help functions in qemu-socket.c
Changes from v4:
- introduce set_socket_error() to restore real errno
- fix connect error process
Changes from v5:
- use error class to pass socket error
Changes from v6:
- merge error process and nonblock support together
- fix leak of repeatedly error_set()
- coding style fix
- fix EWOULDBLOCK process
Changes from v7:
- posix: let EWOULDBLOCK fall through to CONNECT_FAILED path
- add unknown error process
- fix typo
Changes from v8:
- reuse rc variable
- fix a NULL pointer dereference
Changes from v9:
- handle non-blocking correctly if errp is NULL
Changes from v10:
- send out the whole series, no change
- add 'Reviewed-by'
Changes from v11:
- trivial fix: update error description in qerror.c
---
Amos Kong (4):
qerror: add five qerror strings
sockets: change inet_connect() to support nonblock socket
sockets: use error class to pass listen error
use inet_listen()/inet_connect() to support ipv6 migration
migration-tcp.c | 77 +++++++++++++++----------------------------------------
migration.c | 14 ++++++----
migration.h | 7 +++--
nbd.c | 4 +--
qemu-char.c | 4 +--
qemu-sockets.c | 60 ++++++++++++++++++++++++++++++++++++-------
qemu_socket.h | 10 ++++---
qerror.c | 20 ++++++++++++++
qerror.h | 15 +++++++++++
ui/vnc.c | 5 ++--
vl.c | 7 ++++-
11 files changed, 138 insertions(+), 85 deletions(-)