| Age | Commit message (Expand) | Author | Files | Lines |
| 2023-07-26 | cli: introduce exit-node subcommand to list and filter exit nodes | Charlotte Brandhorst-Satzkorn | 1 | -0/+3 |
| 2023-07-08 | tailcfg,etc: remove unused tailcfg.Node.KeepAlive field | Brad Fitzpatrick | 1 | -6/+2 |
| 2023-06-07 | version: detect tvOS by checking XPC_SERVICE_NAME (#8295) | Andrea Gottardo | 1 | -0/+2 |
| 2023-05-24 | tka: provide authority StateID in NetworkLockStatus response (#8200) | Andrea Gottardo | 1 | -0/+5 |
| 2023-03-09 | cmd/tailscale: surface node-key for locked out tailnet-lock peers | Tom DNetto | 2 | -0/+3 |
| 2023-02-08 | ipn/ipnstate: update field docs on PeerStatus. | Maisem Ali | 1 | -8/+21 |
| 2023-01-27 | all: update copyright and license headers | Will Norris | 2 | -6/+4 |
| 2023-01-23 | ipn/ipnstate: add PeerStatus.KeyExpiry for tailscale status --json | Brad Fitzpatrick | 1 | -0/+8 |
| 2023-01-13 | ipn/ipnlocal: add Expired to PeerStatus | Mihai Parparita | 1 | -0/+8 |
| 2023-01-13 | cmd/tailscale/cli: plumb TUN mode into tailscale web template | Brad Fitzpatrick | 1 | -0/+4 |
| 2023-01-02 | util/codegen, all: use latest year, not time.Now, in generated files | Brad Fitzpatrick | 1 | -1/+1 |
| 2022-12-19 | ipn/ipnlocal: fix StatusWithoutPeers not populating parts of Status | Brad Fitzpatrick | 1 | -0/+2 |
| 2022-11-30 | cmd/tailscale,ipn: surface TKA-filtered peers in lock status command | Tom DNetto | 2 | -0/+50 |
| 2022-11-26 | cmd/tailscale: add start of "debug derp" subcommand | Brad Fitzpatrick | 1 | -0/+8 |
| 2022-11-22 | cmd/tailscale,ipn: implement lock log command | Tom DNetto | 1 | -0/+10 |
| 2022-11-19 | ipn/ipnlocal: actually fill out PeerAPIURLs in PeerStatus | Brad Fitzpatrick | 1 | -0/+3 |
| 2022-11-15 | all: store NL keys per profile | Maisem Ali | 1 | -0/+1 |
| 2022-11-11 | cmd/tailscale,ipn: minor fixes to tailscale lock commands | Tom DNetto | 1 | -1/+19 |
| 2022-08-28 | cmd/tailscale: add emoji for illumos in status subcommand | Nahum Shalman | 1 | -0/+2 |
| 2022-08-22 | client,cmd/tailscale,ipn,tka,types: implement tka initialization flow | Tom DNetto | 1 | -0/+15 |
| 2022-07-25 | all: convert more code to use net/netip directly | Brad Fitzpatrick | 1 | -5/+5 |
| 2022-07-25 | net/netaddr: start migrating to net/netip via new netaddr adapter package | Brad Fitzpatrick | 1 | -1/+1 |
| 2022-06-07 | ipn/ipnstate: add ExitNodeStatus to share the exit node if it is in use, the ... | Melanie Warrick | 1 | -0/+16 |
| 2022-05-28 | cmd/tailscale, ipn/ipnlocal: add "peerapi" ping type | Brad Fitzpatrick | 1 | -0/+4 |
| 2022-05-03 | wgengine, net/packet, cmd/tailscale: add ICMP echo | James Tucker | 1 | -1/+1 |
| 2022-04-15 | tailcfg, control/controlclient: TSMP & disco pings | James Tucker | 1 | -0/+18 |
| 2022-04-12 | ipn/ipnstate: make status page more mobile-friendly | Ilya Mateyko | 1 | -0/+1 |
| 2022-03-25 | ipn/ipnstate: put SSH Host Keys in ipnstate.PeerStatus | Brad Fitzpatrick | 1 | -0/+6 |
| 2022-03-17 | all: use any instead of interface{} | Josh Bleecher Snyder | 1 | -1/+1 |
| 2022-03-16 | types/views: add generic Slice[T] and remove StringSlice | Maisem Ali | 1 | -1/+1 |
| 2022-02-22 | ipn/ipnlocal: use views for Peer.PrimaryRoutes and Peer.Tags | Maisem Ali | 1 | -4/+5 |
| 2022-02-21 | ipn/{ipnlocal,ipnstate}: add Tags and PrimaryRoutes to PeerStatus | Maisem Ali | 1 | -7/+21 |
| 2022-02-15 | ipn: add `TailnetStatus` field to `tailscale status --json` (#3865) | Ross Zurowski | 1 | -9/+25 |
| 2022-01-26 | ipn/ipnstate: add TailnetName to status | Brad Fitzpatrick | 1 | -0/+4 |
| 2021-12-09 | ipn/ipnstate: remove old deprecated TailAddr IPv4-only field | Brad Fitzpatrick | 1 | -5/+1 |
| 2021-12-08 | ipn/ipnstate, cmd/tailscale: add Online bool to tailscale status & --json | Brad Fitzpatrick | 1 | -1/+5 |
| 2021-11-30 | cmd/tailscale, ipn/ipnstate: note which nodes are exit nodes in status | Brad Fitzpatrick | 1 | -8/+12 |
| 2021-11-22 | ipn/ipnstate: clarify PeerStatusLite.LastHandshake | Josh Bleecher Snyder | 1 | -2/+7 |
| 2021-11-01 | ipn/ipnstate: use key.NodePublic instead of tailcfg.NodeKey. | David Anderson | 1 | -1/+1 |
| 2021-10-29 | ipn/ipnstate: use key.NodePublic instead of the generic key.Public. | David Anderson | 1 | -9/+9 |
| 2021-09-07 | cmd/tailscale: fix "tailscale ip $self-host-hostname" | Brad Fitzpatrick | 1 | -0/+4 |
| 2021-09-02 | wgengine/magicsock, health, ipn/ipnstate: track DERP-advertised health | Brad Fitzpatrick | 1 | -0/+5 |
| 2021-08-04 | ipn/ipnstate: move tailscale status "active" determination to tailscaled | Brad Fitzpatrick | 1 | -6/+13 |
| 2021-07-29 | wgengine/magicsock: use mono.Time | Josh Bleecher Snyder | 1 | -3/+4 |
| 2021-06-15 | tailcfg: add DNSConfig.CertDomains | Brad Fitzpatrick | 1 | -0/+7 |
| 2021-05-07 | ipn/{ipnlocal,ipnstate}: add PeerStatus.ID stable ID to status --json output | Brad Fitzpatrick | 1 | -0/+4 |
| 2021-04-16 | ipn/ipnlocal, etc: require file sharing capability to send/recv files | Brad Fitzpatrick | 1 | -1/+2 |
| 2021-04-14 | ipn/ipnstate: add PeerStatus.TailscaleIPs slice, deprecate TailAddr | Brad Fitzpatrick | 1 | -5/+17 |
| 2021-03-29 | net/{packet,tstun}: send peerapi port in TSMP pongs | Brad Fitzpatrick | 1 | -0/+5 |
| 2021-03-25 | ipn/ipnlocal: start of peerapi between nodes | Brad Fitzpatrick | 1 | -23/+21 |