Commit Graph

15 Commits

Author SHA1 Message Date
Rolf Neugebauer
26b2dc0dd7 vsudd: use vendor'ed hvsock/vsock modules
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2016-05-19 13:54:48 +01:00
Justin Cormack
a740d022ff use build-base not alpine-sdk as smaller
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-05-17 10:00:58 -05:00
Ian Campbell
b4722c2533 vsudd: Reduce logging
Previously the logs for a single connection would be something like:

2016/05/04 12:44:41 171 Accepted connection on fd 5 from 00000002.00010006
2016/05/04 12:44:41 171 Connected to docker &{{0xc82008a5b0}}
2016/05/04 12:44:44 171 copying from vsock to docker:  4465 bytes done
2016/05/04 12:44:44 171 copying from docker to vsock:  1324 bytes done
2016/05/04 12:44:44 171 Done. read: 4465 written: 1324
2016/05/04 12:44:44 171 Closing docker &{{0xc82008a5b0}}
2016/05/04 12:44:44 171 Closing vsock &{0xc820086840}

The "Connected" and "Closing" lines are not useful now that it is debugged and
working well. The "copying..." lines are redundant with the "Done" line. Reduce
to just:

2016/05/04 14:00:41 4 Accepted connection on fd 10 from 00000002.00010003
2016/05/04 14:00:41 4 Done. read: 90 written: 145

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-05-04 15:01:47 +01:00
Rolf Neugebauer
d93ef30ce7 9pudc: remove binary, which probably was accidentally checked in
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2016-04-21 14:02:13 +01:00
Rolf Neugebauer
f279329456 vsudd: start vsudd on Windows against a GUID
Using 23a432c2-537a-4291-bcb5-d62504644739 as the GUID (randomly generated).
The Windows host side will uses this as service ID, once written.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2016-04-21 14:02:13 +01:00
Rolf Neugebauer
89e8ac2612 vsudd: Add support for Hyper-V sockets
- If a GUID is passed in use AF_HYPERV else AFVSOCK

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2016-04-21 14:02:13 +01:00
Rolf Neugebauer
0ef55d5da1 vsudd: restructure to make it easier to add support for HyperV sockets
- Move VSOCK listen code into separate functions
- Remove VSOCK soecific code from handleOne()
- Turn 'port' argument into a string

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2016-04-21 14:02:13 +01:00
Ian Campbell
dad42c8dc4 vsudd: Close via the File vsock not the raw fd.
Otherwise the underlying gets closed twice, once by the File's finalizer (which
occurs at whichever point vsock appears no longer used) and another time by the
syscall.Close(), which leads to EBADF. The various syscall.shutdown can also
suffer from this if the File happens to get finalized first, but the reference
in the defer'd function now keeps the File alive until we are truly done with
the socket.

This seems to resolve the random stalls and failures seen in "make test".

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-08 15:08:10 +01:00
Ian Campbell
113ca08cae vsudd: Log as we Close both sockets (via defer)
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-08 15:08:10 +01:00
Ian Campbell
777ddec6b8 vsudd: Bind to VSOCK_CID_ANY rather than "3"
This is equivalent to binding to 0.0.0.0 rather than a specific IP address.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-08 15:08:10 +01:00
Ian Campbell
d82a23a399 vsudd: Log the peer's port number
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-08 15:08:10 +01:00
Ian Campbell
a8e3b55775 vsudd: include fd in vsock File object name (used in logs)
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-08 15:08:10 +01:00
Justin Cormack
0106abbf96 start vsudd before docker
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-07 15:11:35 +01:00
Ian Campbell
dd237901ea vsudd: Enable timestamps on logging
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-05 14:16:19 +01:00
Ian Campbell
eac9d655c6 vsudd: New daemon to proxy vsock to Unix domain sock
Used to proxy vsock 2376 <-> /var/run/docker.sock in the Moby VM.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-04-05 13:50:06 +01:00