ipn: include full tailfs shares in ipn notifications

This allows the Mac application to regain access to restricted
folders after restarts.

Updates tailscale/corp#16827

Signed-off-by: Percy Wegmann <percy@tailscale.com>
This commit is contained in:
Percy Wegmann
2024-02-27 21:22:45 -06:00
committed by Percy Wegmann
parent 80f1cb6227
commit e324a5660f
5 changed files with 20 additions and 24 deletions

View File

@@ -10,6 +10,7 @@ import (
"tailscale.com/ipn/ipnstate"
"tailscale.com/tailcfg"
"tailscale.com/tailfs"
"tailscale.com/types/empty"
"tailscale.com/types/key"
"tailscale.com/types/netmap"
@@ -123,11 +124,12 @@ type Notify struct {
ClientVersion *tailcfg.ClientVersion `json:",omitempty"`
// TailFSShares tracks the full set of current TailFSShares that we're
// publishing as name->path. Some client applications, like the MacOS and
// publishing as name->share. Some client applications, like the MacOS and
// Windows clients, will listen for updates to this and handle serving
// these shares under the identity of the unprivileged user that is running
// the application.
TailFSShares map[string]string `json:",omitempty"`
// the application. A nil value here means that we're not broadcasting
// shares information, an empty value means that there are no shares.
TailFSShares map[string]*tailfs.Share
// type is mirrored in xcode/Shared/IPN.swift
}