Brad Fitzpatrick
fe91043315
wgengine/magicsock, net/netcheck, feature/featuretags: add udptransport and nattraversal features
...
Contining the trend of making everything be optional that could
possibly be optional, this makes the magicsock UDP underlay transport
be optional. (mostly replacing a bunch of GOOS != "js" checks in the process)
Omitting udptransport (ts_omit_udptransport) makes magicsock DERP-only: no
UDP sockets, no advertised endpoints, and netcheck measures DERP latency
over HTTPS. Omitting only nattraversal keeps disco ping/pong to peers'
advertised endpoints but drops STUN, call-me-maybe, the peer relay client,
the endpoint tracker, and UDP lifetime probing.
Both are plain linker dead-code elimination via buildfeatures
constants. (as oppposed to moving the code all over into feature
packages and indirecting through hooks) The minimal linux/amd64
tailscaled shrinks by 258 KB without nattraversal and 561 KB without
both.
Updates #12614
Change-Id: Ife10804b48a168d9481e4321c18ed8fc85fa71f1
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com >
2026-09-29 06:09:17 -07:00
..
2026-01-23 15:49:45 -08:00
2026-06-24 16:56:49 +01:00
2026-01-23 15:49:45 -08:00
2026-06-01 16:31:54 -07:00
2026-06-26 15:31:38 +01:00
2026-07-21 11:33:36 -07:00
2026-02-08 10:04:04 -08:00
2026-02-08 10:04:04 -08:00
2026-01-23 15:49:45 -08:00
2026-01-23 15:49:45 -08:00
2026-01-23 15:49:45 -08:00
2026-06-24 16:56:49 +01:00
2026-07-01 08:09:50 -07:00
2026-07-01 08:09:50 -07:00
2026-07-01 08:09:50 -07:00
2026-07-01 08:09:50 -07:00
2026-07-01 08:09:50 -07:00
2026-07-01 08:09:50 -07:00
2026-07-01 08:09:50 -07:00
2026-07-07 13:12:13 -07:00
2026-01-23 15:49:45 -08:00
2026-01-23 15:49:45 -08:00
2026-08-14 17:39:15 -07:00
2026-08-14 17:39:15 -07:00
2026-07-07 13:12:13 -07:00
2026-07-07 13:12:13 -07:00
2026-04-05 15:52:51 -07:00
2026-03-06 13:32:03 -08:00
2026-01-23 15:49:45 -08:00
2026-07-07 13:12:13 -07:00
2026-04-02 12:06:39 -07:00
2026-01-23 15:49:45 -08:00
2026-01-23 15:49:45 -08:00
2026-01-23 15:49:45 -08:00
2026-07-29 15:36:40 -07:00
2026-09-28 13:26:52 -07:00
2026-03-05 05:31:41 -08:00
2026-07-27 13:59:29 -07:00
2026-07-27 13:59:29 -07:00
2026-01-23 15:49:45 -08:00
2026-01-23 15:49:45 -08:00
2026-03-23 09:27:27 +00:00
2026-03-23 09:27:27 +00:00
2026-01-23 15:49:45 -08:00
2026-04-05 15:52:51 -07:00
2026-08-07 16:30:35 -07:00
2026-07-10 14:26:11 -07:00
2026-08-07 16:30:35 -07:00
2026-06-01 11:59:33 -07:00
2026-07-07 12:10:34 -07:00
2026-01-23 15:49:45 -08:00
2026-06-09 11:43:24 -07:00
2026-06-09 11:43:24 -07:00
2026-01-23 15:49:45 -08:00
2026-01-23 15:49:45 -08:00
2026-01-23 15:49:45 -08:00
2026-07-14 20:22:23 -04:00
2026-01-23 15:49:45 -08:00
2026-01-23 15:49:45 -08:00
2026-01-23 15:49:45 -08:00
2026-02-19 11:39:16 -08:00
2026-09-29 06:09:17 -07:00
2026-02-08 10:04:04 -08:00
2026-01-23 15:49:45 -08:00
2026-03-06 13:32:03 -08:00
2026-07-27 13:41:15 -07:00
2026-08-31 14:25:58 -07:00
2026-08-31 14:25:58 -07:00
2026-06-02 17:09:54 -04:00
2026-06-02 17:09:54 -04:00
2026-08-31 14:25:58 -07:00
2026-01-23 15:49:45 -08:00
2026-08-21 14:23:06 -06:00
2026-07-21 11:33:36 -07:00
2026-07-21 11:33:36 -07:00
2026-03-05 20:13:18 -08:00
2026-08-31 20:31:01 -07:00
2026-01-23 15:49:45 -08:00
2026-03-06 13:32:03 -08:00
2026-01-23 15:49:45 -08:00
2026-03-06 13:32:03 -08:00
2026-06-11 12:11:37 +01:00
2026-06-24 16:56:49 +01:00
2026-01-27 13:42:04 -08:00
2026-01-23 15:49:45 -08:00
2026-01-23 15:49:45 -08:00
2026-04-27 18:54:14 -07:00
2026-07-30 16:23:09 -04:00
2026-07-30 16:23:09 -04:00
2026-01-23 15:49:45 -08:00
2026-08-31 20:31:01 -07:00
2026-06-30 07:09:25 -07:00
2026-02-12 14:49:52 -05:00
2026-02-02 15:19:06 -08:00
2026-01-23 15:49:45 -08:00
2026-01-23 15:49:45 -08:00
2026-07-24 11:39:53 -07:00
2026-09-16 14:28:46 -04:00
2026-09-16 14:28:46 -04:00