git subrepo clone https://github.com/mailcow/mailcow-dockerized.git mailcow/src/mailcow-dockerized

subrepo: subdir:   "mailcow/src/mailcow-dockerized"
  merged:   "a832becb"
upstream: origin:   "https://github.com/mailcow/mailcow-dockerized.git"
  branch:   "master"
  commit:   "a832becb"
git-subrepo: version:  "0.4.3"
  origin:   "???"
  commit:   "???"
Change-Id: If5be2d621a211e164c9b6577adaa7884449f16b5
diff --git a/mailcow/src/mailcow-dockerized/data/web/inc/vars.inc.php b/mailcow/src/mailcow-dockerized/data/web/inc/vars.inc.php
new file mode 100644
index 0000000..f497ffb
--- /dev/null
+++ b/mailcow/src/mailcow-dockerized/data/web/inc/vars.inc.php
@@ -0,0 +1,208 @@
+<?php
+error_reporting(E_ERROR);
+//error_reporting(E_ALL);
+
+/*
+PLEASE USE THE FILE "vars.local.inc.php" TO OVERWRITE SETTINGS AND MAKE THEM PERSISTENT!
+This file will be reset on upgrades.
+*/
+
+// SQL database connection variables
+$database_type = 'mysql';
+$database_sock = '/var/run/mysqld/mysqld.sock';
+$database_host = 'mysql';
+$database_user = getenv('DBUSER');
+$database_pass = getenv('DBPASS');
+$database_name = getenv('DBNAME');
+
+// Other variables
+$mailcow_hostname = getenv('MAILCOW_HOSTNAME');
+$default_pass_scheme = getenv('MAILCOW_PASS_SCHEME');
+
+// Autodiscover settings
+// ===
+// Auto-detect HTTPS port =>
+$https_port = strpos($_SERVER['HTTP_HOST'], ':');
+if ($https_port === FALSE) {
+  $https_port = 443;
+} else {
+  $https_port = substr($_SERVER['HTTP_HOST'], $https_port+1);
+}
+
+// Alternatively select port here =>
+//$https_port = 1234;
+// Other settings =>
+$autodiscover_config = array(
+  // General autodiscover service type: "activesync" or "imap"
+  // emClient uses autodiscover, but does not support ActiveSync. mailcow excludes emClient from ActiveSync.
+  // With SOGo disabled, the type will always fallback to imap. CalDAV and CardDAV will be excluded, too.
+  'autodiscoverType' => 'activesync',
+  // If autodiscoverType => activesync, also use ActiveSync (EAS) for Outlook desktop clients (>= Outlook 2013 on Windows)
+  // Outlook for Mac does not support ActiveSync
+  'useEASforOutlook' => 'no',
+  // Please don't use STARTTLS-enabled service ports in the "port" variable.
+  // The autodiscover service will always point to SMTPS and IMAPS (TLS-wrapped services).
+  // The autoconfig service will additionally announce the STARTTLS-enabled ports, specified in the "tlsport" variable.
+  'imap' => array(
+    'server' => $mailcow_hostname,
+    'port' => end(explode(':', getenv('IMAPS_PORT'))),
+    'tlsport' => end(explode(':', getenv('IMAP_PORT'))),
+  ),
+  'pop3' => array(
+    'server' => $mailcow_hostname,
+    'port' => end(explode(':', getenv('POPS_PORT'))),
+    'tlsport' => end(explode(':', getenv('POP_PORT'))),
+  ),
+  'smtp' => array(
+    'server' => $mailcow_hostname,
+    'port' => end(explode(':', getenv('SMTPS_PORT'))),
+    'tlsport' => end(explode(':', getenv('SUBMISSION_PORT'))),
+  ),
+  'activesync' => array(
+    'url' => 'https://'.$mailcow_hostname.($https_port == 443 ? '' : ':'.$https_port).'/Microsoft-Server-ActiveSync',
+  ),
+  'caldav' => array(
+    'server' => $mailcow_hostname,
+    'port' => $https_port,
+  ),
+  'carddav' => array(
+    'server' => $mailcow_hostname,
+    'port' => $https_port,
+  ),
+);
+
+// If false, we will use DEFAULT_LANG
+// Uses HTTP_ACCEPT_LANGUAGE header
+$DETECT_LANGUAGE = true;
+
+// Change default language
+$DEFAULT_LANG = 'en';
+
+// Available languages
+$AVAILABLE_LANGUAGES = array('ca', 'cs', 'de', 'en', 'es', 'fi', 'fr', 'hu', 'it', 'ko', 'lv', 'nl', 'pl', 'pt', 'ro', 'ru', 'sk', 'sv', 'zh');
+
+// Change theme (default: lumen)
+// Needs to be one of those: cerulean, cosmo, cyborg, darkly, flatly, journal, lumen, paper, readable, sandstone,
+// simplex, slate, spacelab, superhero, united, yeti
+// See https://bootswatch.com/
+// WARNING: Only lumen is loaded locally. Enabling any other theme, will download external sources.
+$DEFAULT_THEME = 'lumen';
+
+// Password complexity as regular expression
+// Min. 6 characters
+$PASSWD_REGEP = '.{6,}';
+// Min. 6 characters, which must include at least one uppercase letter, one lowercase letter and one number
+// $PASSWD_REGEP = '^(?=.*[A-Z])(?=.*[0-9])(?=.*[a-z]).{6,}$';
+// Min. 6 characters, which must include at least one letter and one number
+// $PASSWD_REGEP = '^(?=.*[0-9])(?=.*[A-Za-z]).{6,}$';
+
+// Show DKIM private keys - false by default
+$SHOW_DKIM_PRIV_KEYS = false;
+
+// mailcow Apps - buttons on login screen
+$MAILCOW_APPS = array(
+  array(
+    'name' => 'Webmail',
+    'link' => '/SOGo/',
+  )
+);
+
+// Rows until pagination begins
+$PAGINATION_SIZE = 20;
+
+// Default number of rows/lines to display (log table)
+$LOG_LINES = 1000;
+
+// Rows until pagination begins (log table)
+$LOG_PAGINATION_SIZE = 50;
+
+// Session lifetime in seconds
+$SESSION_LIFETIME = 10800;
+
+// Label for OTP devices
+$OTP_LABEL = "mailcow UI";
+
+// Default "to" address in relay test tool
+$RELAY_TO = "null@hosted.mailcow.de";
+
+// How long to wait (in s) for cURL Docker requests
+$DOCKER_TIMEOUT = 60;
+
+// Anonymize IPs logged via UI
+$ANONYMIZE_IPS = true;
+
+// Split DKIM key notation (bind format)
+$SPLIT_DKIM_255 = false;
+
+// OAuth2 settings
+$REFRESH_TOKEN_LIFETIME = 2678400;
+$ACCESS_TOKEN_LIFETIME = 86400;
+// Logout from mailcow after first OAuth2 session profile request
+$OAUTH2_FORGET_SESSION_AFTER_LOGIN = false;
+
+// MAILBOX_DEFAULT_ATTRIBUTES define default attributes for new mailboxes
+// These settings will not change existing mailboxes
+
+// Force incoming TLS for new mailboxes by default
+$MAILBOX_DEFAULT_ATTRIBUTES['tls_enforce_in'] = false;
+
+// Force outgoing TLS for new mailboxes by default
+$MAILBOX_DEFAULT_ATTRIBUTES['tls_enforce_out'] = false;
+
+// Force password change on next login (only allows login to mailcow UI)
+$MAILBOX_DEFAULT_ATTRIBUTES['force_pw_update'] = false;
+
+// Enable SOGo access (set to false to disable access by default)
+$MAILBOX_DEFAULT_ATTRIBUTES['sogo_access'] = true;
+
+// Send notification when quarantine is not empty (never, hourly, daily, weekly)
+$MAILBOX_DEFAULT_ATTRIBUTES['quarantine_notification'] = 'hourly';
+
+// Mailbox has IMAP access by default
+$MAILBOX_DEFAULT_ATTRIBUTES['imap_access'] = true;
+
+// Mailbox has POP3 access by default
+$MAILBOX_DEFAULT_ATTRIBUTES['pop3_access'] = true;
+
+// Mailbox has SMTP access by default
+$MAILBOX_DEFAULT_ATTRIBUTES['smtp_access'] = true;
+
+// Mailbox receives notifications about...
+// "add_header" - mail that was put into the Junk folder
+// "reject" - mail that was rejected
+// "all" - mail that was rejected and put into the Junk folder
+$MAILBOX_DEFAULT_ATTRIBUTES['quarantine_category'] = 'reject';
+
+// Default mailbox format, should not be changed unless you know exactly, what you do, keep the trailing ":"
+// Check dovecot.conf for further changes (e.g. shared namespace)
+$MAILBOX_DEFAULT_ATTRIBUTES['mailbox_format'] = 'maildir:';
+
+// Show last IMAP and POP3 logins
+$SHOW_LAST_LOGIN = true;
+
+// UV flag handling in FIDO2/WebAuthn - defaults to false to allow iOS logins
+// true = required
+// false = preferred
+// string 'required' 'preferred' 'discouraged'
+$FIDO2_UV_FLAG_REGISTER = 'preferred';
+$FIDO2_UV_FLAG_LOGIN = 'preferred'; // iOS ignores the key via NFC if required - known issue
+$FIDO2_USER_PRESENT_FLAG = true;
+$FIDO2_FORMATS = array('apple', 'android-key', 'android-safetynet', 'fido-u2f', 'none', 'packed', 'tpm');
+
+// Set visible Rspamd maps in mailcow UI, do not change unless you know what you are doing
+$RSPAMD_MAPS = array(
+  'regex' => array(
+    'Header-From: Blacklist' => 'global_mime_from_blacklist.map',
+    'Header-From: Whitelist' => 'global_mime_from_whitelist.map',
+    'Envelope Sender Blacklist' => 'global_smtp_from_blacklist.map',
+    'Envelope Sender Whitelist' => 'global_smtp_from_whitelist.map',
+    'Recipient Blacklist' => 'global_rcpt_blacklist.map',
+    'Recipient Whitelist' => 'global_rcpt_whitelist.map',
+    'Fishy TLDS (only fired in combination with bad words)' => 'fishy_tlds.map',
+    'Bad Words (only fired in combination with fishy TLDs)' => 'bad_words.map',
+    'Bad Words DE (only fired in combination with fishy TLDs)' => 'bad_words_de.map',
+    'Bad Languages' => 'bad_languages.map',
+    'Bulk Mail Headers' => 'bulk_header.map',
+    'Monitoring Hosts' => 'monitoring_nolog.map'
+  )
+);