Conversation
+ Adds `udp_open_ex`, which allows passing `reuseaddr` and `reuseport` options to `uv_udp_open`. + Adds `tcp_keepalive_ex`, which allows passing `KEEPINTVL` and `KEEPCNT` options to `uv_tcp_keepalive`. + Adds the `frsize` field to the statfs table, which contains the fragment size of the filesystem. + Adds the `UDP_REUSEPORT` constant to the constant table. The existing suite has no tests for `udp_open`, so I have not added any for `udp_open_ex`. Given that `uv_udp_open` just calls `uv_udp_open_ex` with default options, this change shouldn't cause any regressions.
|
All the previous It seems like that approach would work for these new |
|
I think the the On the Lua side, it is better to keep a single interface. This way, it preserves the new extension capabilities without increasing complexity for Lua calls. Binding it 1:1 directly to the C API and Lua API is not the usual practice in Lua. |
|
My thought process was to ensure that the user could expect the semantics of any flags that they pass to luv (ie. if you pass reuseport, then you can expect that the handle has those semantics; or libuv throws EINVAL because the system doesn't support it), but I see now that the other cases of Will go ahead and draft up a fix to merge both functions back into their non |
https://github.com/libuv/libuv/releases/tag/v1.52.0
udp_open_ex, which allows passingreuseaddrandreuseportoptions touv_udp_open.tcp_keepalive_ex, which allows passingKEEPINTVLandKEEPCNToptions touv_tcp_keepalive.frsizefield to the statfs table, which contains the fragment size of the filesystem.UDP_REUSEPORTconstant to the constant table.The existing suite has no tests for
udp_open, so I have not added any forudp_open_ex. Given thatuv_udp_openjust callsuv_udp_open_exwith default options, this change shouldn't cause any regressions.