39 lines
1.4 KiB
JavaScript
39 lines
1.4 KiB
JavaScript
const certs = require("../modules/certificatesManager")
|
|
const utils = require("../modules/utils")
|
|
const package = require("../package.json")
|
|
|
|
function getServerMetadata(hostname) {
|
|
const keys = certs.getKeys()
|
|
const publicKeyPEM = keys.playerCertificateKeys.public
|
|
|
|
const serverMeta = {
|
|
meta: {
|
|
serverName: process.env.SERVER_NAME || "Yggdrasil Server",
|
|
implementationName: package.name,
|
|
implementationVersion: package.version,
|
|
|
|
"feature.legacy_skin_api": utils.isTrueFromDotEnv("SUPPORT_LEGACY_SKIN_API"),
|
|
"feature.no_mojang_namespace": utils.isTrueFromDotEnv("SUPPORT_MOJANG_FALLBACK"),
|
|
"feature.enable_mojang_anti_features": utils.isTrueFromDotEnv("SUPPORT_MOJANG_TELEMETRY_BLOCKER"),
|
|
"feature.enable_profile_key": utils.isTrueFromDotEnv("SUPPORT_PROFILE_KEY"),
|
|
"feature.username_check": utils.isTrueFromDotEnv("SUPPORT_ONLY_DEFAULT_USERNAME"),
|
|
|
|
links: {
|
|
homepage: process.env.HOMEPAGE_URL || `http://${hostname}`,
|
|
}
|
|
},
|
|
skinDomains: [
|
|
hostname,
|
|
`.${hostname}`
|
|
],
|
|
signaturePublickey: publicKeyPEM
|
|
}
|
|
if (utils.isTrueFromDotEnv("SUPPORT_REGISTER")) {
|
|
serverMeta.meta.links.register = process.env.REGISTER_ENDPOINT || `http://${hostname}/register`
|
|
}
|
|
return serverMeta
|
|
}
|
|
|
|
module.exports = {
|
|
getServerMetadata
|
|
} |