diff options
Diffstat (limited to 'nixpkgs/pkgs/os-specific/linux/kernel/linux-mptcp-93.nix')
-rw-r--r-- | nixpkgs/pkgs/os-specific/linux/kernel/linux-mptcp-93.nix | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/os-specific/linux/kernel/linux-mptcp-93.nix b/nixpkgs/pkgs/os-specific/linux/kernel/linux-mptcp-93.nix new file mode 100644 index 000000000000..8be59fbea903 --- /dev/null +++ b/nixpkgs/pkgs/os-specific/linux/kernel/linux-mptcp-93.nix @@ -0,0 +1,47 @@ +{ stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, ... } @ args: + +buildLinux (rec { + mptcpVersion = "0.93"; + modDirVersion = "4.9.60"; + version = "${modDirVersion}-mptcp_v${mptcpVersion}"; + + extraMeta = { + branch = "4.4"; + maintainers = with stdenv.lib.maintainers; [ teto layus ]; + }; + + src = fetchFromGitHub { + owner = "multipath-tcp"; + repo = "mptcp"; + rev = "v${mptcpVersion}"; + sha256 = "1irlppzvcmckrazs2c4vg6y8ji31552izc3wqabf401v57jvxcys"; + }; + + extraConfig = '' + IPV6 y + MPTCP y + IP_MULTIPLE_TABLES y + + # Enable advanced path-managers... + MPTCP_PM_ADVANCED y + MPTCP_FULLMESH y + MPTCP_NDIFFPORTS y + # ... but use none by default. + # The default is safer if source policy routing is not setup. + DEFAULT_DUMMY y + DEFAULT_MPTCP_PM default + + # MPTCP scheduler selection. + # Disabled as the only non-default is the useless round-robin. + MPTCP_SCHED_ADVANCED n + DEFAULT_MPTCP_SCHED default + + # Smarter TCP congestion controllers + TCP_CONG_LIA m + TCP_CONG_OLIA m + TCP_CONG_WVEGAS m + TCP_CONG_BALIA m + + '' + (args.extraConfig or ""); +} // args) + |