Print VSOCK warning only with VSOCK-LISTEN

This commit is contained in:
Gerhard Rieger 2021-10-24 16:38:34 +02:00
parent e78e911cbb
commit e9c055b750
3 changed files with 13 additions and 12 deletions

View file

@ -10,6 +10,9 @@ Corrections:
Fixed a few minor coding issues
A VSOCK warning message was generated with all listening addresses
instead of only with VSOCK-LISTEN
Testing:
Prevent the TIMESTAMP tests from sporadically failing due do seconds
overflow

View file

@ -152,18 +152,6 @@ int _xioopen_listen(struct single *xfd, int xioflags, struct sockaddr *us, sockl
applyopts_offset(xfd, opts);
applyopts_cloexec(xfd->fd, opts);
#if defined(WITH_VSOCK) && defined(IOCTL_VM_SOCKETS_GET_LOCAL_CID)
{
unsigned int cid;
if (Ioctl(xfd->fd, IOCTL_VM_SOCKETS_GET_LOCAL_CID, &cid) < 0) {
Warn2("ioctl(%d, IOCTL_VM_SOCKETS_GET_LOCAL_CID, ...): %s",
xfd->fd, strerror(errno));
} else {
Notice1("VSOCK CID=%u", cid);
}
}
#endif
applyopts(xfd->fd, opts, PH_PREBIND);
applyopts(xfd->fd, opts, PH_BIND);
if (Bind(xfd->fd, (struct sockaddr *)us, uslen) < 0) {

View file

@ -139,6 +139,16 @@ static int xioopen_vsock_listen(int argc, const char *argv[], struct opt *opts,
return ret;
}
{
unsigned int cid;
if (Ioctl(xfd->fd, IOCTL_VM_SOCKETS_GET_LOCAL_CID, &cid) < 0) {
Warn2("ioctl(%d, IOCTL_VM_SOCKETS_GET_LOCAL_CID, ...): %s",
xfd->fd, strerror(errno));
} else {
Notice1("VSOCK CID=%u", cid);
}
}
opts0 = copyopts(opts, GROUP_ALL);
ret = retropt_bind(opts, pf, socktype, protocol, (struct sockaddr *)&sa_bind,