fix: tighten custom bind probing (#740) (thanks @jeffersonwarrior)
This commit is contained in:
@@ -4,6 +4,7 @@
|
|||||||
|
|
||||||
### Changes
|
### Changes
|
||||||
- Cron: accept ISO timestamps for one-shot schedules (UTC) and allow optional delete-after-run; wired into CLI + macOS editor.
|
- Cron: accept ISO timestamps for one-shot schedules (UTC) and allow optional delete-after-run; wired into CLI + macOS editor.
|
||||||
|
- Gateway: add Tailscale binary discovery, custom bind mode, and probe auth retry for password changes. (#740 — thanks @jeffersonwarrior)
|
||||||
|
|
||||||
## 2026.1.12-4
|
## 2026.1.12-4
|
||||||
|
|
||||||
|
|||||||
@@ -436,10 +436,7 @@ async function gatherDaemonStatus(opts: {
|
|||||||
| "loopback"
|
| "loopback"
|
||||||
| "custom";
|
| "custom";
|
||||||
const customBindHost = daemonCfg.gateway?.customBindHost;
|
const customBindHost = daemonCfg.gateway?.customBindHost;
|
||||||
const bindHost = await resolveGatewayBindHost(
|
const bindHost = await resolveGatewayBindHost(bindMode, customBindHost);
|
||||||
bindMode,
|
|
||||||
customBindHost,
|
|
||||||
);
|
|
||||||
const tailnetIPv4 = pickPrimaryTailnetIPv4();
|
const tailnetIPv4 = pickPrimaryTailnetIPv4();
|
||||||
const probeHost = pickProbeHostForBind(bindMode, tailnetIPv4, customBindHost);
|
const probeHost = pickProbeHostForBind(bindMode, tailnetIPv4, customBindHost);
|
||||||
const probeUrlOverride =
|
const probeUrlOverride =
|
||||||
|
|||||||
@@ -263,7 +263,9 @@ async function promptGatewayConfig(
|
|||||||
if (
|
if (
|
||||||
parts.every((part) => {
|
parts.every((part) => {
|
||||||
const n = parseInt(part, 10);
|
const n = parseInt(part, 10);
|
||||||
return !Number.isNaN(n) && n >= 0 && n <= 255 && part === String(n);
|
return (
|
||||||
|
!Number.isNaN(n) && n >= 0 && n <= 255 && part === String(n)
|
||||||
|
);
|
||||||
})
|
})
|
||||||
)
|
)
|
||||||
return undefined;
|
return undefined;
|
||||||
|
|||||||
@@ -426,7 +426,9 @@ export async function runOnboardingWizard(
|
|||||||
if (
|
if (
|
||||||
parts.every((part) => {
|
parts.every((part) => {
|
||||||
const n = parseInt(part, 10);
|
const n = parseInt(part, 10);
|
||||||
return !Number.isNaN(n) && n >= 0 && n <= 255 && part === String(n);
|
return (
|
||||||
|
!Number.isNaN(n) && n >= 0 && n <= 255 && part === String(n)
|
||||||
|
);
|
||||||
})
|
})
|
||||||
)
|
)
|
||||||
return undefined;
|
return undefined;
|
||||||
|
|||||||
Reference in New Issue
Block a user