mirror of
https://github.com/fosrl/pangolin.git
synced 2026-09-05 10:49:16 +02:00
Basic DNS config send empty for olm
This commit is contained in:
@@ -0,0 +1,20 @@
|
|||||||
|
import config from "@server/lib/config";
|
||||||
|
|
||||||
|
// Mirrors the optional fields on the olm client's TunnelConfig - any field
|
||||||
|
// present here overrides the value the olm client is otherwise locally
|
||||||
|
// configured with; an absent field leaves the client's own config alone.
|
||||||
|
export type OlmDnsConfig = {
|
||||||
|
upstreamDns?: string[];
|
||||||
|
overrideDns?: boolean;
|
||||||
|
tunnelDns?: boolean;
|
||||||
|
matchDomains?: string[];
|
||||||
|
};
|
||||||
|
|
||||||
|
export function buildOlmDnsConfig(): OlmDnsConfig | undefined {
|
||||||
|
return {
|
||||||
|
upstreamDns: undefined,
|
||||||
|
overrideDns: undefined,
|
||||||
|
tunnelDns: undefined,
|
||||||
|
matchDomains: undefined
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -15,6 +15,7 @@ import { encodeHexLowerCase } from "@oslojs/encoding";
|
|||||||
import { sha256 } from "@oslojs/crypto/sha2";
|
import { sha256 } from "@oslojs/crypto/sha2";
|
||||||
import { getUserDeviceName } from "@server/db/names";
|
import { getUserDeviceName } from "@server/db/names";
|
||||||
import { buildSiteConfigurationForOlmClient } from "./buildConfiguration";
|
import { buildSiteConfigurationForOlmClient } from "./buildConfiguration";
|
||||||
|
import { buildOlmDnsConfig } from "./dnsConfig";
|
||||||
import { OlmErrorCodes, sendOlmError } from "./error";
|
import { OlmErrorCodes, sendOlmError } from "./error";
|
||||||
import { handleFingerprintInsertion } from "./fingerprintingUtils";
|
import { handleFingerprintInsertion } from "./fingerprintingUtils";
|
||||||
import { build } from "@server/build";
|
import { build } from "@server/build";
|
||||||
@@ -512,6 +513,7 @@ export const handleOlmRegisterMessage: MessageHandler = async (context) => {
|
|||||||
tunnelIP: `${clientSubnet.split("/")[0]}/${exitNode.address.split("/")[1]}` // we need to use the exit node's subnet mask here because the client will be using the exit node's subnet mask for its routing table so we can address it
|
tunnelIP: `${clientSubnet.split("/")[0]}/${exitNode.address.split("/")[1]}` // we need to use the exit node's subnet mask here because the client will be using the exit node's subnet mask for its routing table so we can address it
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
|
dnsConfig: buildOlmDnsConfig(),
|
||||||
chainId: chainId
|
chainId: chainId
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user