tailscale/cmd
Brad Fitzpatrick c7d68724ad types/key: shrink NodePublic by using unique.Handle representation
@raggi and I have been experimenting with using unique.Handle for
public keys in various places.

This is an experiment to see what it looks like just going all the
way, so a NodePublic is always just a single word (a single pointer)
behind the scenes, so 8 bytes (in practice, on 64-bit) instead of 32
bytes.

Downsides are some extra unique.Make lookups (probably cheap enough)
and it makes data structures that were previously skipped by GC as
having no pointers no longer skipped. But on the upside, it saves
memory and makes certain operations much faster.

Updates tailscale/corp#24485

Change-Id: Ic5c807b86b465769b046fba5d640c4fe73bf2a2f
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2024-11-11 12:40:28 -08:00
..
addlicense all: update tools that manage copyright headers 2023-01-27 15:36:29 -08:00
build-webclient client/web: precompress assets 2023-12-07 20:57:31 -05:00
cloner cmd/cloner, cmd/viewer, util/codegen: add support for aliases of cloneable types 2024-08-23 15:43:40 -05:00
connector-gen cmd/connector-gen: add helper tool for wide app connector configurations 2023-12-15 09:29:42 -08:00
containerboot cmd/{k8s-operator,containerboot},kube/egressservices: fix Pod IP check for dual stack clusters (#13721) 2024-10-08 18:35:23 +01:00
derper types/key: shrink NodePublic by using unique.Handle representation 2024-11-11 12:40:28 -08:00
derpprobe cmd/derpprobe: add /healthz endpoint 2024-10-15 16:35:24 -04:00
dist release/dist/qnap: add qnap target builder 2024-04-22 17:43:28 -04:00
get-authkey client/tailscale,cmd/{cli,get-authkey,k8s-operator}: set distinct User-Agents 2024-10-11 10:45:03 -05:00
gitops-pusher cmd/gitops-pusher: ignore previous etag if local acls match control (#13068) 2024-08-08 13:23:06 -07:00
hello cmd/hello: link to the Hello KB article (#11022) 2024-02-02 15:48:31 -08:00
k8s-nameserver cmd/k8s-nameserver: fix AAAA record query response (#12412) 2024-06-10 17:57:22 +01:00
k8s-operator types/key: shrink NodePublic by using unique.Handle representation 2024-11-11 12:40:28 -08:00
mkmanifest cmd/mkmanifest, cmd/tailscale, cmd/tailscaled: remove Windows arm32 resources from OSS 2023-03-01 15:45:12 -07:00
mkpkg go.mod: upgrade nfpm to v2 (#8786) 2023-08-03 13:00:45 -07:00
mkversion version/mkversion: open-source version generation logic 2023-02-18 05:21:05 +00:00
nardump all: update copyright and license headers 2023-01-27 15:36:29 -08:00
natc cmd/natc: fix nil pointer 2024-09-17 09:48:48 -07:00
netlogfmt all: use Go 1.22 range-over-int 2024-04-16 15:32:38 -07:00
nginx-auth tailcfg,all: add and use Node.IsTagged() 2023-03-13 08:44:25 -07:00
pgproxy tsnet: split user facing and backend logging 2024-05-10 15:29:13 -07:00
printdep cmd/printdep: print correct toolchain URL 2023-02-11 17:57:36 +00:00
proxy-to-grafana cmd/proxy-to-grafana: add flag for alternative control server 2024-06-21 12:17:39 +02:00
sniproxy all: use math/rand/v2 more 2024-06-05 15:24:04 -07:00
speedtest all: update copyright and license headers 2023-01-27 15:36:29 -08:00
ssh-auth-none-demo all: replace deprecated ioutil references 2023-08-23 23:53:19 +01:00
stunc cmd/stunc: support user-specified port (#12469) 2024-06-14 09:46:16 -07:00
stund types/key: shrink NodePublic by using unique.Handle representation 2024-11-11 12:40:28 -08:00
stunstamp cmd/stunstamp: add protocol context to timeout logs (#13422) 2024-09-09 18:42:13 -07:00
sync-containers all: adjust some build tags for plan9 2023-08-24 15:42:35 -07:00
systray cmd/systray: handle reconnects to IPN bus (#13386) 2024-09-05 10:11:05 -07:00
tailscale types/key: shrink NodePublic by using unique.Handle representation 2024-11-11 12:40:28 -08:00
tailscaled types/key: shrink NodePublic by using unique.Handle representation 2024-11-11 12:40:28 -08:00
testcontrol all: use Go 1.22 range-over-int 2024-04-16 15:32:38 -07:00
testwrapper cmd/testwrapper: add pkg runtime to output (#13894) 2024-10-24 09:41:54 -05:00
tl-longchain cmd/tl-longchain: tool to re-sign nodes with long rotation signatures 2024-08-21 18:22:22 +01:00
tsconnect cmd/tsconnect: block after starting esbuild dev server 2024-11-03 07:30:22 -08:00
tsidp cmd/tsidp: add --dir flag 2024-09-29 16:15:22 -07:00
tsshd all: update copyright and license headers 2023-01-27 15:36:29 -08:00
tta cmd/tta: pull out test driver dialing into a type, fix bugs 2024-08-26 15:36:30 -07:00
viewer cmd/viewer: import types/views when generating a getter for a map field 2024-10-21 16:29:16 -05:00
vnet tstest/natlab/vnet: add start of IPv6 support 2024-08-24 18:02:38 -07:00
xdpderper all: add test for package comments, fix, add comments as needed 2024-07-10 09:57:00 -07:00