mirror of
https://github.com/tailscale/tailscale.git
synced 2026-11-04 16:43:10 -05:00
* wgengine/magicsock: implement conn.MultiSocketBind Bind a group of UDP sockets sharing one local port per address family. A flow index is plumbed through the send path to pick which socket a batch leaves from. Group size is fixed at Options.UDPSockets for the life of the Conn. In case rebind comes short, the group is padded out with conns that block until closed. No caller sets Options.UDPSockets yet, every group holds a single socket and this is inert. Additionally, add test coverage for the now exercised net/sockopts paths. Updates tailscale/corp#48168 Signed-off-by: Alex Valiushko <alexvaliushko@tailscale.com> Change-Id: I253646c753fa46e2efd0ad2158d24c416a6a6964
19 lines
787 B
Nix
19 lines
787 B
Nix
# This is a shell.nix file used to describe the environment that
|
|
# tailscale needs for development.
|
|
#
|
|
# For more information about this and why this file is useful, see here:
|
|
# https://nixos.org/guides/nix-pills/developing-with-nix-shell.html
|
|
#
|
|
# Also look into direnv: https://direnv.net/, this can make it so that you can
|
|
# automatically get your environment set up when you change folders into the
|
|
# project.
|
|
(import (
|
|
let
|
|
lock = builtins.fromJSON (builtins.readFile ./flake.lock);
|
|
in fetchTarball {
|
|
url = "https://github.com/edolstra/flake-compat/archive/${lock.nodes.flake-compat.locked.rev}.tar.gz";
|
|
sha256 = lock.nodes.flake-compat.locked.narHash; }
|
|
) {
|
|
src = ./.;
|
|
}).shellNix
|
|
# nix-direnv cache busting line: sha256-/EHX7MAi3vR9BZBjmOO+3CS3jFnSikBMANtYUrTTLY4= |