; This file is part of OpenTTD.
; OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
; OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
; See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
;

; Network settings as stored in the secrets configuration file ("secrets.cfg").

[pre-amble]
static bool ReplaceAsteriskWithEmptyPassword(std::string &newval);

static const SettingVariant _network_secrets_settings_table[] = {
[post-amble]
};
[templates]
SDTC_SSTR  =  SDTC_SSTR(              $var, $type, $flags, $def,             $length,                                  $pre_cb, $post_cb, $from, $to,        $cat, $extra, $startup),

[validation]

[defaults]
flags    = SF_NONE
interval = 0
str      = STR_NULL
strhelp  = STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT
strval   = STR_NULL
pre_cb   = nullptr
post_cb  = nullptr
load     = nullptr
from     = SL_MIN_VERSION
to       = SL_MAX_VERSION
cat      = SC_ADVANCED
extra    = 0
startup  = false



[SDTC_SSTR]
var      = network.server_password
type     = SLE_STR
length   = NETWORK_PASSWORD_LENGTH
flags    = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_NETWORK_ONLY
def      = nullptr
pre_cb   = ReplaceAsteriskWithEmptyPassword
post_cb  = [](auto) { NetworkServerUpdateGameInfo(); }
cat      = SC_BASIC

[SDTC_SSTR]
var      = network.rcon_password
type     = SLE_STR
length   = NETWORK_PASSWORD_LENGTH
flags    = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_NETWORK_ONLY
def      = nullptr
pre_cb   = ReplaceAsteriskWithEmptyPassword
cat      = SC_BASIC

[SDTC_SSTR]
var      = network.admin_password
type     = SLE_STR
length   = NETWORK_PASSWORD_LENGTH
flags    = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_NETWORK_ONLY
def      = nullptr
cat      = SC_BASIC

[SDTC_SSTR]
var      = network.default_company_pass
type     = SLE_STR
length   = NETWORK_PASSWORD_LENGTH
flags    = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC
def      = nullptr

[SDTC_SSTR]
var      = network.network_id
type     = SLE_STR
length   = NETWORK_SERVER_ID_LENGTH
flags    = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_NETWORK_ONLY
def      = nullptr

[SDTC_SSTR]
var      = network.server_invite_code
type     = SLE_STR
length   = NETWORK_INVITE_CODE_LENGTH
flags    = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_NETWORK_ONLY
def      = nullptr

[SDTC_SSTR]
var      = network.server_invite_code_secret
type     = SLE_STR
length   = NETWORK_INVITE_CODE_SECRET_LENGTH
flags    = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_NETWORK_ONLY
def      = nullptr
