mirror of
https://github.com/fosrl/pangolin.git
synced 2026-07-05 11:49:48 +00:00
54 lines
1.8 KiB
TypeScript
54 lines
1.8 KiB
TypeScript
import { ExitNode, exitNodes, Newt, Site, db } from "@server/db";
|
|
import { eq } from "drizzle-orm";
|
|
import { sendToClient } from "#dynamic/routers/ws";
|
|
import logger from "@server/logger";
|
|
import {
|
|
buildClientConfigurationForNewtClient,
|
|
buildTargetConfigurationForNewtClient
|
|
} from "./buildConfiguration";
|
|
import { canCompress } from "@server/lib/clientVersionChecks";
|
|
|
|
export async function sendNewtSyncMessage(newt: Newt, site: Site) {
|
|
// const {
|
|
// tcpTargets,
|
|
// udpTargets,
|
|
// validHealthCheckTargets,
|
|
// browserGatewayTargets,
|
|
// remoteExitNodeSubnets
|
|
// } = await buildTargetConfigurationForNewtClient(site.siteId);
|
|
// let exitNode: ExitNode | undefined;
|
|
// if (site.exitNodeId) {
|
|
// [exitNode] = await db
|
|
// .select()
|
|
// .from(exitNodes)
|
|
// .where(eq(exitNodes.exitNodeId, site.exitNodeId))
|
|
// .limit(1);
|
|
// }
|
|
// const { peers, targets } = await buildClientConfigurationForNewtClient(
|
|
// site,
|
|
// exitNode
|
|
// );
|
|
// await sendToClient(
|
|
// newt.newtId,
|
|
// {
|
|
// type: "newt/sync",
|
|
// data: {
|
|
// proxyTargets: {
|
|
// udp: udpTargets,
|
|
// tcp: tcpTargets
|
|
// },
|
|
// healthCheckTargets: validHealthCheckTargets,
|
|
// peers: peers,
|
|
// clientTargets: targets,
|
|
// browserGatewayTargets: browserGatewayTargets,
|
|
// remoteExitNodeSubnets: remoteExitNodeSubnets
|
|
// }
|
|
// },
|
|
// {
|
|
// compress: canCompress(newt.version, "newt")
|
|
// }
|
|
// ).catch((error) => {
|
|
// logger.warn(`Error sending newt sync message:`, error);
|
|
// });
|
|
}
|