mirror of
https://github.com/zerotier/ZeroTierOne.git
synced 2024-12-25 07:31:05 +00:00
Updated README.md
This commit is contained in:
parent
18db95d0e9
commit
21889305e0
@ -125,24 +125,28 @@ To Test:
|
|||||||
|
|
||||||
### Extended Version Notes
|
### Extended Version Notes
|
||||||
|
|
||||||
20151027 Added Redis-server support
|
20151027 Added Redis-server support:
|
||||||
Notes:
|
|
||||||
- Added extra logic to detect socket re-issuing and consequent service-side double mapping.
|
- Added extra logic to detect socket re-issuing and consequent service-side double mapping.
|
||||||
Redis appears to try to set its initial listen socket to IPV6 only, this currently fails. As
|
Redis appears to try to set its initial listen socket to IPV6 only, this currently fails. As
|
||||||
a result, Redis will close the socket and re-open it. The server will now test for closures
|
a result, Redis will close the socket and re-open it. The server will now test for closures
|
||||||
during mapping and will eliminate any mappings to broken pipes.
|
during mapping and will eliminate any mappings to broken pipes.
|
||||||
|
|
||||||
|
|
||||||
20151021 Added Node.js support
|
20151021 Added Node.js support:
|
||||||
Notes:
|
|
||||||
- syscall(long number, ...) is now intercepted and re-directs the __NR_accept4 call to our intercepted accept4() function
|
- syscall(long number, ...) is now intercepted and re-directs the __NR_accept4 call to our intercepted accept4() function
|
||||||
|
|
||||||
- accept() now returns -EAGAIN in the case that we cannot read a signal byte from the descriptor linked to the service. This
|
- accept() now returns -EAGAIN in the case that we cannot read a signal byte from the descriptor linked to the service. This
|
||||||
is because the uv__server_io() function in libuv used by Node.js looks for this return value upon failure, without it we
|
is because the uv__server_io() function in libuv used by Node.js looks for this return value upon failure, without it we
|
||||||
were observing an innfinite loop in the I/O polling code in libuv.
|
were observing an innfinite loop in the I/O polling code in libuv.
|
||||||
|
|
||||||
- accept4() now correctly sets given flags for descriptor returned by accept()
|
- accept4() now correctly sets given flags for descriptor returned by accept()
|
||||||
|
|
||||||
- setsockopt() was modified to return success on any call with the following conditions:
|
- setsockopt() was modified to return success on any call with the following conditions:
|
||||||
level == IPPROTO_TCP || (level == SOL_SOCKET && option_name == SO_KEEPALIVE)
|
level == IPPROTO_TCP || (level == SOL_SOCKET && option_name == SO_KEEPALIVE)
|
||||||
This might be unnecessary or might need a better workaround
|
This might be unnecessary or might need a better workaround
|
||||||
|
|
||||||
- Careful attention should be given to how arguments are passed in the intercepted syscall() function, this differs for
|
- Careful attention should be given to how arguments are passed in the intercepted syscall() function, this differs for
|
||||||
32/64-bit systems
|
32/64-bit systems
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user