Config.java

  1package eu.siacs.conversations;
  2
  3import android.graphics.Bitmap;
  4
  5import eu.siacs.conversations.xmpp.chatstate.ChatState;
  6
  7public final class Config {
  8
  9	public static final String LOGTAG = "conversations";
 10
 11
 12	public static final String DOMAIN_LOCK = null; //only allow account creation for this domain
 13	public static final boolean DISALLOW_REGISTRATION_IN_UI = false; //hide the register checkbox
 14	public static final boolean HIDE_PGP_IN_UI = false; //some more consumer focused clients might want to disable OpenPGP
 15	public static final boolean FORCE_E2E_ENCRYPTION = false; //disables ability to send unencrypted 1-on-1
 16	public static final boolean ALLOW_NON_TLS_CONNECTIONS = false; //very dangerous. you should have a good reason to set this to true
 17	public static final boolean FORCE_ORBOT = false; // always use TOR
 18	public static final boolean HIDE_MESSAGE_TEXT_IN_NOTIFICATION = false;
 19	public static final boolean SHOW_CONNECTED_ACCOUNTS = false; //show number of connected accounts in foreground notification
 20
 21	public static final boolean ALWAYS_NOTIFY_BY_DEFAULT = false;
 22
 23	public static final boolean LEGACY_NAMESPACE_HTTP_UPLOAD = false;
 24
 25	public static final int PING_MAX_INTERVAL = 300;
 26	public static final int PING_MIN_INTERVAL = 30;
 27	public static final int PING_TIMEOUT = 15;
 28	public static final int SOCKET_TIMEOUT = 15;
 29	public static final int CONNECT_TIMEOUT = 90;
 30	public static final int CONNECT_DISCO_TIMEOUT = 20;
 31	public static final int CARBON_GRACE_PERIOD = 90;
 32	public static final int MINI_GRACE_PERIOD = 750;
 33
 34	public static final int AVATAR_SIZE = 192;
 35	public static final Bitmap.CompressFormat AVATAR_FORMAT = Bitmap.CompressFormat.WEBP;
 36
 37	public static final int IMAGE_SIZE = 1920;
 38	public static final Bitmap.CompressFormat IMAGE_FORMAT = Bitmap.CompressFormat.JPEG;
 39	public static final int IMAGE_QUALITY = 75;
 40	public static final int IMAGE_MAX_SIZE = 524288; //512KiB
 41
 42	public static final int MESSAGE_MERGE_WINDOW = 20;
 43
 44	public static final int PAGE_SIZE = 50;
 45	public static final int MAX_NUM_PAGES = 3;
 46
 47	public static final int REFRESH_UI_INTERVAL = 500;
 48
 49	public static final boolean DISABLE_PROXY_LOOKUP = false; //useful to debug ibb
 50	public static final boolean DISABLE_HTTP_UPLOAD = false;
 51	public static final boolean DISABLE_STRING_PREP = false; // setting to true might increase startup performance
 52	public static final boolean EXTENDED_SM_LOGGING = false; // log stanza counts
 53	public static final boolean RESET_ATTEMPT_COUNT_ON_NETWORK_CHANGE = true; //setting to true might increase power consumption
 54
 55	public static final boolean ENCRYPT_ON_HTTP_UPLOADED = false;
 56
 57	public static final boolean REPORT_WRONG_FILESIZE_IN_OTR_JINGLE = true;
 58
 59	public static final boolean SHOW_REGENERATE_AXOLOTL_KEYS_BUTTON = false;
 60
 61	public static final boolean X509_VERIFICATION = false; //use x509 certificates to verify OMEMO keys
 62
 63	public static final boolean IGNORE_ID_REWRITE_IN_MUC = true;
 64
 65	public static final boolean REQUEST_DISCO = true;
 66
 67	public static final long MILLISECONDS_IN_DAY = 24 * 60 * 60 * 1000;
 68	public static final long MAM_MAX_CATCHUP =  MILLISECONDS_IN_DAY / 2;
 69	public static final int MAM_MAX_MESSAGES = 500;
 70
 71	public static final ChatState DEFAULT_CHATSTATE = ChatState.ACTIVE;
 72	public static final int TYPING_TIMEOUT = 8;
 73
 74	public static final String ENABLED_CIPHERS[] = {
 75		"TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
 76		"TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA384",
 77		"TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA256",
 78		"TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
 79		"TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA",
 80		"TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA",
 81
 82		"TLS_DHE_RSA_WITH_AES_128_GCM_SHA256",
 83		"TLS_DHE_RSA_WITH_AES_128_GCM_SHA384",
 84		"TLS_DHE_RSA_WITH_AES_256_GCM_SHA256",
 85		"TLS_DHE_RSA_WITH_AES_256_GCM_SHA384",
 86
 87		"TLS_DHE_RSA_WITH_CAMELLIA_256_SHA",
 88
 89		// Fallback.
 90		"TLS_RSA_WITH_AES_128_GCM_SHA256",
 91		"TLS_RSA_WITH_AES_128_GCM_SHA384",
 92		"TLS_RSA_WITH_AES_256_GCM_SHA256",
 93		"TLS_RSA_WITH_AES_256_GCM_SHA384",
 94		"TLS_RSA_WITH_AES_128_CBC_SHA256",
 95		"TLS_RSA_WITH_AES_128_CBC_SHA384",
 96		"TLS_RSA_WITH_AES_256_CBC_SHA256",
 97		"TLS_RSA_WITH_AES_256_CBC_SHA384",
 98		"TLS_RSA_WITH_AES_128_CBC_SHA",
 99		"TLS_RSA_WITH_AES_256_CBC_SHA",
100	};
101
102	public static final String WEAK_CIPHER_PATTERNS[] = {
103		"_NULL_",
104		"_EXPORT_",
105		"_anon_",
106		"_RC4_",
107		"_DES_",
108		"_MD5",
109	};
110
111	private Config() {
112
113	}
114}