3
2
forked from Dniel97/artemis

aimedb: allow listen address override

This commit is contained in:
Hay1tsme 2024-01-14 16:48:41 -05:00
parent e36989e7cc
commit 7cf8b4fd5f
4 changed files with 10 additions and 1 deletions

View File

@ -66,7 +66,8 @@ class AimedbServlette():
def start(self) -> None: def start(self) -> None:
self.logger.info(f"Start on port {self.config.aimedb.port}") self.logger.info(f"Start on port {self.config.aimedb.port}")
asyncio.create_task(asyncio.start_server(self.dataReceived, self.config.server.listen_address, self.config.aimedb.port)) addr = self.config.aimedb.listen_address if self.config.aimedb.listen_address else self.config.server.listen_address
asyncio.create_task(asyncio.start_server(self.dataReceived, addr, self.config.aimedb.port))
async def dataReceived(self, reader: asyncio.StreamReader, writer: asyncio.StreamWriter): async def dataReceived(self, reader: asyncio.StreamReader, writer: asyncio.StreamWriter):
self.logger.debug(f"Connection made from {writer.get_extra_info('peername')[0]}") self.logger.debug(f"Connection made from {writer.get_extra_info('peername')[0]}")

View File

@ -320,6 +320,12 @@ class AimedbConfig:
self.__config, "core", "aimedb", "enable", default=True self.__config, "core", "aimedb", "enable", default=True
) )
@property
def listen_address(self) -> bool:
return CoreConfig.get_config_field(
self.__config, "core", "aimedb", "listen_address", default=""
)
@property @property
def loglevel(self) -> int: def loglevel(self) -> int:
return CoreConfig.str_to_loglevel( return CoreConfig.str_to_loglevel(

View File

@ -49,6 +49,7 @@
- `signing_key`: Location of the RSA Private key used to sign billing requests. Must match the public key distributed to users or the billing server will not connect. Default `cert/billing.key` - `signing_key`: Location of the RSA Private key used to sign billing requests. Must match the public key distributed to users or the billing server will not connect. Default `cert/billing.key`
## Aimedb ## Aimedb
- `enable`: Whether or not aimedb should run. Default `True` - `enable`: Whether or not aimedb should run. Default `True`
- `listen_address`: IP Address or hostname that the aimedb server will listen for connections on. Leave this blank to use the listen address under `server`. Default `""`
- `loglevel`: Logging level for the aimedb server. Default `info` - `loglevel`: Logging level for the aimedb server. Default `info`
- `port`: Port the aimedb server should listen for connections on. Games are hardcoded to ask for port `22345` so only change if you have a proxy redirecting properly. Default `22345` - `port`: Port the aimedb server should listen for connections on. Games are hardcoded to ask for port `22345` so only change if you have a proxy redirecting properly. Default `22345`
- `key`: Key to encrypt/decrypt aimedb requests and responses. MUST be set or the server will not start. If set incorrectly, your server will not properly handle aimedb requests. Default `""` - `key`: Key to encrypt/decrypt aimedb requests and responses. MUST be set or the server will not start. If set incorrectly, your server will not properly handle aimedb requests. Default `""`

View File

@ -55,6 +55,7 @@ billing:
aimedb: aimedb:
enable: True enable: True
listen_address: ""
loglevel: "info" loglevel: "info"
port: 22345 port: 22345
key: "" key: ""