Files
holdmysocks--ps5-tailscale/launcher/report.h
T
holdmysocks bc19d3c251 Report start-up failures, limit access to own devices, warn about key expiry
- The launcher keeps a log (/data/tailscale/launcher.log) and shows a
  notification when it cannot start. A payload manager does not show what a
  payload prints, so a failed start used to leave no trace. The Go
  runtime's stderr goes to the same file until the daemon opens its log.
- New setting "who on the tailnet may connect": every device the tailnet's
  access rules allow (default), or only devices of the same user as the
  console. Applies to every forwarded TCP port, the UDP ports and the
  status page over the tailnet.
- The status page shows when the console's key expires and warns from two
  weeks before; the console shows a notification at 14, 3 and 1 days.
- A newer release is announced once on the console, not only on the page.
- Status page: click an address to copy it; OS, status and address columns
  no longer break mid-word; the facts stack on narrow screens.
2026-10-05 08:31:24 -04:00

21 lines
825 B
C

#pragma once
/* Where the launcher records what it did. A payload manager does not show
* what a payload prints, so this file is how a start that went wrong can be
* looked into afterwards. */
#define LAUNCHER_LOG "/data/tailscale/launcher.log"
/* Starts a new entry in the launcher log. */
void report_begin(void);
/* Writes a line to the launcher log and to whoever sent the payload. */
void report_log(const char *fmt, ...) __attribute__((format(printf, 1, 2)));
/* Like report_log, and also tells the user on screen that Tailscale did not
* start. */
void report_fail(const char *fmt, ...) __attribute__((format(printf, 1, 2)));
/* Points stderr at the launcher log, so that whatever the Go runtime prints
* if it dies before the daemon has opened its own log ends up there. */
void report_capture_stderr(void);