1<?php 2/* 3** Zabbix 4** Copyright (C) 2001-2021 Zabbix SIA 5** 6** This program is free software; you can redistribute it and/or modify 7** it under the terms of the GNU General Public License as published by 8** the Free Software Foundation; either version 2 of the License, or 9** (at your option) any later version. 10** 11** This program is distributed in the hope that it will be useful, 12** but WITHOUT ANY WARRANTY; without even the implied warranty of 13** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14** GNU General Public License for more details. 15** 16** You should have received a copy of the GNU General Public License 17** along with this program; if not, write to the Free Software 18** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 19**/ 20 21 22define('ZABBIX_VERSION', '3.0.32'); 23define('ZABBIX_API_VERSION', '3.0.32'); 24define('ZABBIX_EXPORT_VERSION', '3.0'); 25define('ZABBIX_DB_VERSION', 3000000); 26 27define('ZABBIX_COPYRIGHT_FROM', '2001'); 28define('ZABBIX_COPYRIGHT_TO', '2021'); 29 30define('ZBX_LOGIN_ATTEMPTS', 5); 31define('ZBX_LOGIN_BLOCK', 30); // sec 32 33define('ZBX_MIN_PERIOD', 60); // 1 minute 34define('ZBX_MAX_PERIOD', 63072000); // the maximum period for the time bar control, ~2 years (2 * 365 * 86400) 35define('ZBX_MAX_DATE', 2147483647); // 19 Jan 2038 05:14:07 36define('ZBX_PERIOD_DEFAULT', 3600); // 1 hour 37 38// the maximum period to display history data for the latest data and item overview pages in seconds 39// by default set to 86400 seconds (24 hours) 40define('ZBX_HISTORY_PERIOD', 86400); 41 42define('ZBX_WIDGET_ROWS', 20); 43 44define('ZBX_FONTPATH', realpath('fonts')); // where to search for font (GD > 2.0.18) 45define('ZBX_GRAPH_FONT_NAME', 'DejaVuSans'); // font file name 46define('ZBX_GRAPH_LEGEND_HEIGHT', 120); // when graph height is less then this value, some legend will not show up 47 48define('ZBX_SCRIPT_TIMEOUT', 60); // in seconds 49 50define('GRAPH_YAXIS_SIDE_DEFAULT', 0); // 0 - LEFT SIDE, 1 - RIGHT SIDE 51 52define('ZBX_MAX_IMAGE_SIZE', 1048576); // 1024 * 1024 53 54define('ZBX_UNITS_ROUNDOFF_THRESHOLD', 0.01); 55define('ZBX_UNITS_ROUNDOFF_UPPER_LIMIT', 2); 56define('ZBX_UNITS_ROUNDOFF_MIDDLE_LIMIT', 4); 57define('ZBX_UNITS_ROUNDOFF_LOWER_LIMIT', 6); 58 59define('ZBX_PRECISION_10', 10); 60 61define('ZBX_DEFAULT_INTERVAL', '1-7,00:00-24:00'); 62 63define('ZBX_SCRIPT_TYPE_CUSTOM_SCRIPT', 0); 64define('ZBX_SCRIPT_TYPE_IPMI', 1); 65define('ZBX_SCRIPT_TYPE_SSH', 2); 66define('ZBX_SCRIPT_TYPE_TELNET', 3); 67define('ZBX_SCRIPT_TYPE_GLOBAL_SCRIPT', 4); 68 69define('ZBX_SCRIPT_EXECUTE_ON_AGENT', 0); 70define('ZBX_SCRIPT_EXECUTE_ON_SERVER', 1); 71 72define('ZBX_FLAG_DISCOVERY_NORMAL', 0x0); 73define('ZBX_FLAG_DISCOVERY_RULE', 0x1); 74define('ZBX_FLAG_DISCOVERY_PROTOTYPE', 0x2); 75define('ZBX_FLAG_DISCOVERY_CREATED', 0x4); 76 77define('EXTACK_OPTION_ALL', 0); 78define('EXTACK_OPTION_UNACK', 1); 79define('EXTACK_OPTION_BOTH', 2); 80 81define('TRIGGERS_OPTION_RECENT_PROBLEM', 1); 82define('TRIGGERS_OPTION_ALL', 2); 83define('TRIGGERS_OPTION_IN_PROBLEM', 3); 84 85define('ZBX_ACK_STS_ANY', 1); 86define('ZBX_ACK_STS_WITH_UNACK', 2); 87define('ZBX_ACK_STS_WITH_LAST_UNACK', 3); 88 89define('EVENTS_OPTION_NOEVENT', 1); 90define('EVENTS_OPTION_ALL', 2); 91define('EVENTS_OPTION_NOT_ACK', 3); 92 93define('ZBX_FONT_NAME', 'DejaVuSans'); 94 95define('ZBX_AUTH_INTERNAL', 0); 96define('ZBX_AUTH_LDAP', 1); 97define('ZBX_AUTH_HTTP', 2); 98 99define('ZBX_DB_DB2', 'IBM_DB2'); 100define('ZBX_DB_MYSQL', 'MYSQL'); 101define('ZBX_DB_ORACLE', 'ORACLE'); 102define('ZBX_DB_POSTGRESQL', 'POSTGRESQL'); 103define('ZBX_DB_SQLITE3', 'SQLITE3'); 104 105define('ZBX_DB_MAX_ID', '9223372036854775807'); 106 107// maximum number of records for create() or update() API calls 108define('ZBX_DB_MAX_INSERTS', 10000); 109 110define('ZBX_SHOW_TECHNICAL_ERRORS', false); 111 112define('PAGE_TYPE_HTML', 0); 113define('PAGE_TYPE_IMAGE', 1); 114define('PAGE_TYPE_XML', 2); 115define('PAGE_TYPE_JS', 3); // javascript 116define('PAGE_TYPE_CSS', 4); 117define('PAGE_TYPE_HTML_BLOCK', 5); // simple block of html (as text) 118define('PAGE_TYPE_JSON', 6); // simple JSON 119define('PAGE_TYPE_JSON_RPC', 7); // api call 120define('PAGE_TYPE_TEXT_FILE', 8); // api call 121define('PAGE_TYPE_TEXT', 9); // simple text 122define('PAGE_TYPE_CSV', 10); // CSV format 123define('PAGE_TYPE_TEXT_RETURN_JSON', 11); // input plaintext output json 124 125define('ZBX_SESSION_ACTIVE', 0); 126define('ZBX_SESSION_PASSIVE', 1); 127 128define('ZBX_DROPDOWN_FIRST_NONE', 0); 129define('ZBX_DROPDOWN_FIRST_ALL', 1); 130 131define('T_ZBX_STR', 0); 132define('T_ZBX_INT', 1); 133define('T_ZBX_DBL', 2); 134define('T_ZBX_CLR', 5); 135define('T_ZBX_DBL_BIG', 9); 136define('T_ZBX_DBL_STR', 10); 137define('T_ZBX_TP', 11); 138 139define('O_MAND', 0); 140define('O_OPT', 1); 141define('O_NO', 2); 142 143define('P_SYS', 1); 144define('P_UNSET_EMPTY', 2); 145define('P_CRLF', 4); 146define('P_ACT', 16); 147define('P_NZERO', 32); 148define('P_NO_TRIM', 64); 149define('ZBX_URI_VALID_SCHEMES', 'http,https,ftp,file,mailto,tel,ssh'); 150 151// Validate URI against schemes whitelist defined in ZBX_URI_VALID_SCHEMES. 152define('VALIDATE_URI_SCHEMES', true); 153 154// misc parameters 155define('IMAGE_FORMAT_PNG', 'PNG'); 156define('IMAGE_FORMAT_JPEG', 'JPEG'); 157define('IMAGE_FORMAT_TEXT', 'JPEG'); 158 159define('IMAGE_TYPE_ICON', 1); 160define('IMAGE_TYPE_BACKGROUND', 2); 161 162define('ITEM_CONVERT_WITH_UNITS', 0); // - do not convert empty units 163define('ITEM_CONVERT_NO_UNITS', 1); // - no units 164 165define('ZBX_SORT_UP', 'ASC'); 166define('ZBX_SORT_DOWN', 'DESC'); 167 168define('AUDIT_ACTION_ADD', 0); 169define('AUDIT_ACTION_UPDATE', 1); 170define('AUDIT_ACTION_DELETE', 2); 171define('AUDIT_ACTION_LOGIN', 3); 172define('AUDIT_ACTION_LOGOUT', 4); 173define('AUDIT_ACTION_ENABLE', 5); 174define('AUDIT_ACTION_DISABLE', 6); 175 176define('AUDIT_RESOURCE_USER', 0); 177define('AUDIT_RESOURCE_ZABBIX_CONFIG', 2); 178define('AUDIT_RESOURCE_MEDIA_TYPE', 3); 179define('AUDIT_RESOURCE_HOST', 4); 180define('AUDIT_RESOURCE_ACTION', 5); 181define('AUDIT_RESOURCE_GRAPH', 6); 182define('AUDIT_RESOURCE_GRAPH_ELEMENT', 7); 183define('AUDIT_RESOURCE_USER_GROUP', 11); 184define('AUDIT_RESOURCE_APPLICATION', 12); 185define('AUDIT_RESOURCE_TRIGGER', 13); 186define('AUDIT_RESOURCE_HOST_GROUP', 14); 187define('AUDIT_RESOURCE_ITEM', 15); 188define('AUDIT_RESOURCE_IMAGE', 16); 189define('AUDIT_RESOURCE_VALUE_MAP', 17); 190define('AUDIT_RESOURCE_IT_SERVICE', 18); 191define('AUDIT_RESOURCE_MAP', 19); 192define('AUDIT_RESOURCE_SCREEN', 20); 193define('AUDIT_RESOURCE_SCENARIO', 22); 194define('AUDIT_RESOURCE_DISCOVERY_RULE', 23); 195define('AUDIT_RESOURCE_SLIDESHOW', 24); 196define('AUDIT_RESOURCE_SCRIPT', 25); 197define('AUDIT_RESOURCE_PROXY', 26); 198define('AUDIT_RESOURCE_MAINTENANCE', 27); 199define('AUDIT_RESOURCE_REGEXP', 28); 200define('AUDIT_RESOURCE_MACRO', 29); 201define('AUDIT_RESOURCE_TEMPLATE', 30); 202define('AUDIT_RESOURCE_TRIGGER_PROTOTYPE', 31); 203 204define('CONDITION_TYPE_HOST_GROUP', 0); 205define('CONDITION_TYPE_HOST', 1); 206define('CONDITION_TYPE_TRIGGER', 2); 207define('CONDITION_TYPE_TRIGGER_NAME', 3); 208define('CONDITION_TYPE_TRIGGER_SEVERITY', 4); 209define('CONDITION_TYPE_TRIGGER_VALUE', 5); 210define('CONDITION_TYPE_TIME_PERIOD', 6); 211define('CONDITION_TYPE_DHOST_IP', 7); 212define('CONDITION_TYPE_DSERVICE_TYPE', 8); 213define('CONDITION_TYPE_DSERVICE_PORT', 9); 214define('CONDITION_TYPE_DSTATUS', 10); 215define('CONDITION_TYPE_DUPTIME', 11); 216define('CONDITION_TYPE_DVALUE', 12); 217define('CONDITION_TYPE_TEMPLATE', 13); 218define('CONDITION_TYPE_EVENT_ACKNOWLEDGED', 14); 219define('CONDITION_TYPE_APPLICATION', 15); 220define('CONDITION_TYPE_MAINTENANCE', 16); 221define('CONDITION_TYPE_DRULE', 18); 222define('CONDITION_TYPE_DCHECK', 19); 223define('CONDITION_TYPE_PROXY', 20); 224define('CONDITION_TYPE_DOBJECT', 21); 225define('CONDITION_TYPE_HOST_NAME', 22); 226define('CONDITION_TYPE_EVENT_TYPE', 23); 227define('CONDITION_TYPE_HOST_METADATA', 24); 228 229define('CONDITION_OPERATOR_EQUAL', 0); 230define('CONDITION_OPERATOR_NOT_EQUAL', 1); 231define('CONDITION_OPERATOR_LIKE', 2); 232define('CONDITION_OPERATOR_NOT_LIKE', 3); 233define('CONDITION_OPERATOR_IN', 4); 234define('CONDITION_OPERATOR_MORE_EQUAL', 5); 235define('CONDITION_OPERATOR_LESS_EQUAL', 6); 236define('CONDITION_OPERATOR_NOT_IN', 7); 237define('CONDITION_OPERATOR_REGEXP', 8); 238 239// event type action condition values 240define('EVENT_TYPE_ITEM_NOTSUPPORTED', 0); 241define('EVENT_TYPE_ITEM_NORMAL', 1); 242define('EVENT_TYPE_LLDRULE_NOTSUPPORTED', 2); 243define('EVENT_TYPE_LLDRULE_NORMAL', 3); 244define('EVENT_TYPE_TRIGGER_UNKNOWN', 4); 245define('EVENT_TYPE_TRIGGER_NORMAL', 5); 246 247define('HOST_STATUS_MONITORED', 0); 248define('HOST_STATUS_NOT_MONITORED', 1); 249define('HOST_STATUS_TEMPLATE', 3); 250define('HOST_STATUS_PROXY_ACTIVE', 5); 251define('HOST_STATUS_PROXY_PASSIVE', 6); 252 253define('HOST_ENCRYPTION_NONE', 1); 254define('HOST_ENCRYPTION_PSK', 2); 255define('HOST_ENCRYPTION_CERTIFICATE', 4); 256 257define('PSK_MIN_LEN', 32); 258 259define('HOST_MAINTENANCE_STATUS_OFF', 0); 260define('HOST_MAINTENANCE_STATUS_ON', 1); 261 262define('INTERFACE_SECONDARY', 0); 263define('INTERFACE_PRIMARY', 1); 264 265define('INTERFACE_USE_DNS', 0); 266define('INTERFACE_USE_IP', 1); 267 268define('INTERFACE_TYPE_ANY', -1); 269define('INTERFACE_TYPE_UNKNOWN', 0); 270define('INTERFACE_TYPE_AGENT', 1); 271define('INTERFACE_TYPE_SNMP', 2); 272define('INTERFACE_TYPE_IPMI', 3); 273define('INTERFACE_TYPE_JMX', 4); 274 275define('SNMP_BULK_DISABLED', 0); 276define('SNMP_BULK_ENABLED', 1); 277 278define('MAINTENANCE_STATUS_ACTIVE', 0); 279define('MAINTENANCE_STATUS_APPROACH', 1); 280define('MAINTENANCE_STATUS_EXPIRED', 2); 281 282define('HOST_AVAILABLE_UNKNOWN', 0); 283define('HOST_AVAILABLE_TRUE', 1); 284define('HOST_AVAILABLE_FALSE', 2); 285 286define('MAINTENANCE_TYPE_NORMAL', 0); 287define('MAINTENANCE_TYPE_NODATA', 1); 288 289define('TIMEPERIOD_TYPE_ONETIME', 0); 290define('TIMEPERIOD_TYPE_HOURLY', 1); 291define('TIMEPERIOD_TYPE_DAILY', 2); 292define('TIMEPERIOD_TYPE_WEEKLY', 3); 293define('TIMEPERIOD_TYPE_MONTHLY', 4); 294define('TIMEPERIOD_TYPE_YEARLY', 5); 295 296// report periods 297define('REPORT_PERIOD_TODAY', 0); 298define('REPORT_PERIOD_YESTERDAY', 1); 299define('REPORT_PERIOD_CURRENT_WEEK', 2); 300define('REPORT_PERIOD_CURRENT_MONTH', 3); 301define('REPORT_PERIOD_CURRENT_YEAR', 4); 302define('REPORT_PERIOD_LAST_WEEK', 5); 303define('REPORT_PERIOD_LAST_MONTH', 6); 304define('REPORT_PERIOD_LAST_YEAR', 7); 305 306define('SYSMAP_LABEL_ADVANCED_OFF', 0); 307define('SYSMAP_LABEL_ADVANCED_ON', 1); 308 309define('MAP_LABEL_TYPE_LABEL', 0); 310define('MAP_LABEL_TYPE_IP', 1); 311define('MAP_LABEL_TYPE_NAME', 2); 312define('MAP_LABEL_TYPE_STATUS', 3); 313define('MAP_LABEL_TYPE_NOTHING', 4); 314define('MAP_LABEL_TYPE_CUSTOM', 5); 315 316define('MAP_LABEL_LOC_DEFAULT', -1); 317define('MAP_LABEL_LOC_BOTTOM', 0); 318define('MAP_LABEL_LOC_LEFT', 1); 319define('MAP_LABEL_LOC_RIGHT', 2); 320define('MAP_LABEL_LOC_TOP', 3); 321 322define('SYSMAP_ELEMENT_TYPE_HOST', 0); 323define('SYSMAP_ELEMENT_TYPE_MAP', 1); 324define('SYSMAP_ELEMENT_TYPE_TRIGGER', 2); 325define('SYSMAP_ELEMENT_TYPE_HOST_GROUP',3); 326define('SYSMAP_ELEMENT_TYPE_IMAGE', 4); 327 328define('SYSMAP_ELEMENT_SUBTYPE_HOST_GROUP', 0); 329define('SYSMAP_ELEMENT_SUBTYPE_HOST_GROUP_ELEMENTS', 1); 330 331define('SYSMAP_ELEMENT_AREA_TYPE_FIT', 0); 332define('SYSMAP_ELEMENT_AREA_TYPE_CUSTOM', 1); 333 334define('SYSMAP_ELEMENT_AREA_VIEWTYPE_GRID', 0); 335 336define('SYSMAP_ELEMENT_ICON_ON', 0); 337define('SYSMAP_ELEMENT_ICON_OFF', 1); 338define('SYSMAP_ELEMENT_ICON_MAINTENANCE', 3); 339define('SYSMAP_ELEMENT_ICON_DISABLED', 4); 340 341define('SYSMAP_HIGHLIGHT_OFF', 0); 342define('SYSMAP_HIGHLIGHT_ON', 1); 343 344define('SYSMAP_GRID_SHOW_ON', 1); 345define('SYSMAP_GRID_SHOW_OFF', 0); 346 347define('SYSMAP_EXPAND_MACROS_OFF', 0); 348define('SYSMAP_EXPAND_MACROS_ON', 1); 349 350define('SYSMAP_GRID_ALIGN_ON', 1); 351define('SYSMAP_GRID_ALIGN_OFF', 0); 352 353define('PUBLIC_SHARING', 0); 354define('PRIVATE_SHARING', 1); 355 356define('ZBX_ITEM_DELAY_DEFAULT', 30); 357 358define('ITEM_TYPE_ZABBIX', 0); 359define('ITEM_TYPE_SNMPV1', 1); 360define('ITEM_TYPE_TRAPPER', 2); 361define('ITEM_TYPE_SIMPLE', 3); 362define('ITEM_TYPE_SNMPV2C', 4); 363define('ITEM_TYPE_INTERNAL', 5); 364define('ITEM_TYPE_SNMPV3', 6); 365define('ITEM_TYPE_ZABBIX_ACTIVE', 7); 366define('ITEM_TYPE_AGGREGATE', 8); 367define('ITEM_TYPE_HTTPTEST', 9); 368define('ITEM_TYPE_EXTERNAL', 10); 369define('ITEM_TYPE_DB_MONITOR', 11); 370define('ITEM_TYPE_IPMI', 12); 371define('ITEM_TYPE_SSH', 13); 372define('ITEM_TYPE_TELNET', 14); 373define('ITEM_TYPE_CALCULATED', 15); 374define('ITEM_TYPE_JMX', 16); 375define('ITEM_TYPE_SNMPTRAP', 17); 376 377define('ITEM_VALUE_TYPE_FLOAT', 0); 378define('ITEM_VALUE_TYPE_STR', 1); // aka Character 379define('ITEM_VALUE_TYPE_LOG', 2); 380define('ITEM_VALUE_TYPE_UINT64', 3); 381define('ITEM_VALUE_TYPE_TEXT', 4); 382 383define('ITEM_DATA_TYPE_DECIMAL', 0); 384define('ITEM_DATA_TYPE_OCTAL', 1); 385define('ITEM_DATA_TYPE_HEXADECIMAL', 2); 386define('ITEM_DATA_TYPE_BOOLEAN', 3); 387 388define('ZBX_DEFAULT_KEY_DB_MONITOR', 'db.odbc.select[<unique short description>,<dsn>]'); 389define('ZBX_DEFAULT_KEY_DB_MONITOR_DISCOVERY', 'db.odbc.discovery[<unique short description>,<dsn>]'); 390define('ZBX_DEFAULT_KEY_SSH', 'ssh.run[<unique short description>,<ip>,<port>,<encoding>]'); 391define('ZBX_DEFAULT_KEY_TELNET', 'telnet.run[<unique short description>,<ip>,<port>,<encoding>]'); 392define('ZBX_DEFAULT_KEY_JMX', 'jmx[<object name>,<attribute name>]'); 393 394define('SYSMAP_ELEMENT_USE_ICONMAP_ON', 1); 395define('SYSMAP_ELEMENT_USE_ICONMAP_OFF', 0); 396 397define('ZBX_ICON_PREVIEW_HEIGHT', 24); 398define('ZBX_ICON_PREVIEW_WIDTH', 24); 399 400define('ITEM_STATUS_ACTIVE', 0); 401define('ITEM_STATUS_DISABLED', 1); 402define('ITEM_STATUS_NOTSUPPORTED', 3); 403 404define('ITEM_STATE_NORMAL', 0); 405define('ITEM_STATE_NOTSUPPORTED', 1); 406 407define('ITEM_SNMPV3_SECURITYLEVEL_NOAUTHNOPRIV', 0); 408define('ITEM_SNMPV3_SECURITYLEVEL_AUTHNOPRIV', 1); 409define('ITEM_SNMPV3_SECURITYLEVEL_AUTHPRIV', 2); 410 411define('ITEM_AUTHTYPE_PASSWORD', 0); 412define('ITEM_AUTHTYPE_PUBLICKEY', 1); 413 414define('ITEM_AUTHPROTOCOL_MD5', 0); 415define('ITEM_AUTHPROTOCOL_SHA', 1); 416 417define('ITEM_PRIVPROTOCOL_DES', 0); 418define('ITEM_PRIVPROTOCOL_AES', 1); 419 420define('ITEM_LOGTYPE_INFORMATION', 1); 421define('ITEM_LOGTYPE_WARNING', 2); 422define('ITEM_LOGTYPE_ERROR', 4); 423define('ITEM_LOGTYPE_FAILURE_AUDIT', 7); 424define('ITEM_LOGTYPE_SUCCESS_AUDIT', 8); 425define('ITEM_LOGTYPE_CRITICAL', 9); 426define('ITEM_LOGTYPE_VERBOSE', 10); 427 428define('ITEM_DELAY_FLEX_TYPE_FLEXIBLE', 0); 429define('ITEM_DELAY_FLEX_TYPE_SCHEDULING', 1); 430 431define('GRAPH_ITEM_DRAWTYPE_LINE', 0); 432define('GRAPH_ITEM_DRAWTYPE_FILLED_REGION', 1); 433define('GRAPH_ITEM_DRAWTYPE_BOLD_LINE', 2); 434define('GRAPH_ITEM_DRAWTYPE_DOT', 3); 435define('GRAPH_ITEM_DRAWTYPE_DASHED_LINE', 4); 436define('GRAPH_ITEM_DRAWTYPE_GRADIENT_LINE', 5); 437define('GRAPH_ITEM_DRAWTYPE_BOLD_DOT', 6); 438 439define('MAP_LINK_DRAWTYPE_LINE', 0); 440define('MAP_LINK_DRAWTYPE_BOLD_LINE', 2); 441define('MAP_LINK_DRAWTYPE_DOT', 3); 442define('MAP_LINK_DRAWTYPE_DASHED_LINE', 4); 443 444define('SERVICE_ALGORITHM_NONE', 0); // do not calculate 445define('SERVICE_ALGORITHM_MAX', 1); // problem, if one children has a problem 446define('SERVICE_ALGORITHM_MIN', 2); // problem, if all children have problems 447 448define('SERVICE_SLA', 99.05); 449 450define('SERVICE_SHOW_SLA_OFF', 0); 451define('SERVICE_SHOW_SLA_ON', 1); 452 453define('SERVICE_STATUS_OK', 0); 454 455define('TRIGGER_MULT_EVENT_DISABLED', 0); 456define('TRIGGER_MULT_EVENT_ENABLED', 1); 457 458define('TRIGGER_STATUS_ENABLED', 0); 459define('TRIGGER_STATUS_DISABLED', 1); 460 461define('TRIGGER_VALUE_FALSE', 0); 462define('TRIGGER_VALUE_TRUE', 1); 463 464define('TRIGGER_STATE_NORMAL', 0); 465define('TRIGGER_STATE_UNKNOWN', 1); 466 467define('TRIGGER_SEVERITY_NOT_CLASSIFIED', 0); 468define('TRIGGER_SEVERITY_INFORMATION', 1); 469define('TRIGGER_SEVERITY_WARNING', 2); 470define('TRIGGER_SEVERITY_AVERAGE', 3); 471define('TRIGGER_SEVERITY_HIGH', 4); 472define('TRIGGER_SEVERITY_DISASTER', 5); 473define('TRIGGER_SEVERITY_COUNT', 6); 474 475define('ALERT_MAX_RETRIES', 3); 476 477define('ALERT_STATUS_NOT_SENT', 0); 478define('ALERT_STATUS_SENT', 1); 479define('ALERT_STATUS_FAILED', 2); 480 481define('ALERT_TYPE_MESSAGE', 0); 482define('ALERT_TYPE_COMMAND', 1); 483 484define('MEDIA_STATUS_ACTIVE', 0); 485define('MEDIA_STATUS_DISABLED', 1); 486 487define('MEDIA_TYPE_STATUS_ACTIVE', 0); 488define('MEDIA_TYPE_STATUS_DISABLED', 1); 489 490define('MEDIA_TYPE_EMAIL', 0); 491define('MEDIA_TYPE_EXEC', 1); 492define('MEDIA_TYPE_SMS', 2); 493define('MEDIA_TYPE_JABBER', 3); 494define('MEDIA_TYPE_EZ_TEXTING', 100); 495 496define('SMTP_CONNECTION_SECURITY_NONE', 0); 497define('SMTP_CONNECTION_SECURITY_STARTTLS', 1); 498define('SMTP_CONNECTION_SECURITY_SSL_TLS', 2); 499 500define('SMTP_AUTHENTICATION_NONE', 0); 501define('SMTP_AUTHENTICATION_NORMAL', 1); 502 503define('EZ_TEXTING_LIMIT_USA', 0); 504define('EZ_TEXTING_LIMIT_CANADA', 1); 505 506define('ACTION_DEFAULT_SUBJ_TRIGGER', '{TRIGGER.STATUS}: {TRIGGER.NAME}'); 507define('ACTION_DEFAULT_SUBJ_AUTOREG', 'Auto registration: {HOST.HOST}'); 508define('ACTION_DEFAULT_SUBJ_DISCOVERY', 'Discovery: {DISCOVERY.DEVICE.STATUS} {DISCOVERY.DEVICE.IPADDRESS}'); 509 510define('ACTION_DEFAULT_MSG_TRIGGER', "Trigger: {TRIGGER.NAME}\nTrigger status: {TRIGGER.STATUS}\n". 511 "Trigger severity: {TRIGGER.SEVERITY}\nTrigger URL: {TRIGGER.URL}\n\nItem values:\n\n". 512 "1. {ITEM.NAME1} ({HOST.NAME1}:{ITEM.KEY1}): {ITEM.VALUE1}\n". 513 "2. {ITEM.NAME2} ({HOST.NAME2}:{ITEM.KEY2}): {ITEM.VALUE2}\n". 514 "3. {ITEM.NAME3} ({HOST.NAME3}:{ITEM.KEY3}): {ITEM.VALUE3}\n\n". 515 "Original event ID: {EVENT.ID}" 516); 517define('ACTION_DEFAULT_MSG_AUTOREG', "Host name: {HOST.HOST}\nHost IP: {HOST.IP}\nAgent port: {HOST.PORT}"); 518define('ACTION_DEFAULT_MSG_DISCOVERY', "Discovery rule: {DISCOVERY.RULE.NAME}\n\nDevice IP:{DISCOVERY.DEVICE.IPADDRESS}\n". 519 "Device DNS: {DISCOVERY.DEVICE.DNS}\nDevice status: {DISCOVERY.DEVICE.STATUS}\n". 520 "Device uptime: {DISCOVERY.DEVICE.UPTIME}\n\nDevice service name: {DISCOVERY.SERVICE.NAME}\n". 521 "Device service port: {DISCOVERY.SERVICE.PORT}\nDevice service status: {DISCOVERY.SERVICE.STATUS}\n". 522 "Device service uptime: {DISCOVERY.SERVICE.UPTIME}" 523); 524 525define('ACTION_STATUS_ENABLED', 0); 526define('ACTION_STATUS_DISABLED', 1); 527 528define('OPERATION_TYPE_MESSAGE', 0); 529define('OPERATION_TYPE_COMMAND', 1); 530define('OPERATION_TYPE_HOST_ADD', 2); 531define('OPERATION_TYPE_HOST_REMOVE', 3); 532define('OPERATION_TYPE_GROUP_ADD', 4); 533define('OPERATION_TYPE_GROUP_REMOVE', 5); 534define('OPERATION_TYPE_TEMPLATE_ADD', 6); 535define('OPERATION_TYPE_TEMPLATE_REMOVE',7); 536define('OPERATION_TYPE_HOST_ENABLE', 8); 537define('OPERATION_TYPE_HOST_DISABLE', 9); 538define('OPERATION_TYPE_HOST_INVENTORY', 10); 539 540define('CONDITION_EVAL_TYPE_AND_OR', 0); 541define('CONDITION_EVAL_TYPE_AND', 1); 542define('CONDITION_EVAL_TYPE_OR', 2); 543define('CONDITION_EVAL_TYPE_EXPRESSION', 3); 544 545// screen 546define('SCREEN_RESOURCE_GRAPH', 0); 547define('SCREEN_RESOURCE_SIMPLE_GRAPH', 1); 548define('SCREEN_RESOURCE_MAP', 2); 549define('SCREEN_RESOURCE_PLAIN_TEXT', 3); 550define('SCREEN_RESOURCE_HOSTS_INFO', 4); 551define('SCREEN_RESOURCE_TRIGGERS_INFO', 5); 552define('SCREEN_RESOURCE_SERVER_INFO', 6); 553define('SCREEN_RESOURCE_CLOCK', 7); 554define('SCREEN_RESOURCE_SCREEN', 8); 555define('SCREEN_RESOURCE_TRIGGERS_OVERVIEW', 9); 556define('SCREEN_RESOURCE_DATA_OVERVIEW', 10); 557define('SCREEN_RESOURCE_URL', 11); 558define('SCREEN_RESOURCE_ACTIONS', 12); 559define('SCREEN_RESOURCE_EVENTS', 13); 560define('SCREEN_RESOURCE_HOSTGROUP_TRIGGERS',14); 561define('SCREEN_RESOURCE_SYSTEM_STATUS', 15); 562define('SCREEN_RESOURCE_HOST_TRIGGERS', 16); 563// used in Monitoring > Latest data > Graph (history.php) 564define('SCREEN_RESOURCE_HISTORY', 17); 565define('SCREEN_RESOURCE_CHART', 18); 566define('SCREEN_RESOURCE_LLD_SIMPLE_GRAPH', 19); 567define('SCREEN_RESOURCE_LLD_GRAPH', 20); 568// used in Monitoring > Web > Details (httpdetails.php) 569define('SCREEN_RESOURCE_HTTPTEST_DETAILS', 21); 570// used in Monitoring > Discovery 571define('SCREEN_RESOURCE_DISCOVERY', 22); 572// used in Monitoring > Web 573define('SCREEN_RESOURCE_HTTPTEST', 23); 574 575define('SCREEN_SORT_TRIGGERS_DATE_DESC', 0); 576define('SCREEN_SORT_TRIGGERS_SEVERITY_DESC', 1); 577define('SCREEN_SORT_TRIGGERS_HOST_NAME_ASC', 2); 578define('SCREEN_SORT_TRIGGERS_TIME_ASC', 3); 579define('SCREEN_SORT_TRIGGERS_TIME_DESC', 4); 580define('SCREEN_SORT_TRIGGERS_TYPE_ASC', 5); 581define('SCREEN_SORT_TRIGGERS_TYPE_DESC', 6); 582define('SCREEN_SORT_TRIGGERS_STATUS_ASC', 7); 583define('SCREEN_SORT_TRIGGERS_STATUS_DESC', 8); 584define('SCREEN_SORT_TRIGGERS_RECIPIENT_ASC', 11); 585define('SCREEN_SORT_TRIGGERS_RECIPIENT_DESC', 12); 586 587define('SCREEN_MODE_PREVIEW', 0); 588define('SCREEN_MODE_EDIT', 1); 589define('SCREEN_MODE_SLIDESHOW', 2); 590define('SCREEN_MODE_JS', 3); 591 592define('SCREEN_SIMPLE_ITEM', 0); 593define('SCREEN_DYNAMIC_ITEM', 1); 594 595define('SCREEN_REFRESH_TIMEOUT', 30); 596define('SCREEN_REFRESH_RESPONSIVENESS', 10); 597 598define('SCREEN_SURROGATE_MAX_COLUMNS_MIN', 1); 599define('SCREEN_SURROGATE_MAX_COLUMNS_DEFAULT', 3); 600define('SCREEN_SURROGATE_MAX_COLUMNS_MAX', 100); 601 602define('SCREEN_MIN_SIZE', 1); 603define('SCREEN_MAX_SIZE', 100); 604 605define('DEFAULT_LATEST_ISSUES_CNT', 20); 606 607// alignments 608define('HALIGN_DEFAULT', 0); 609define('HALIGN_CENTER', 0); 610define('HALIGN_LEFT', 1); 611define('HALIGN_RIGHT', 2); 612 613define('VALIGN_DEFAULT', 0); 614define('VALIGN_MIDDLE', 0); 615define('VALIGN_TOP', 1); 616define('VALIGN_BOTTOM', 2); 617 618// info module style 619define('STYLE_HORIZONTAL', 0); 620define('STYLE_VERTICAL', 1); 621 622// view style [Overview] 623define('STYLE_LEFT', 0); 624define('STYLE_TOP', 1); 625 626// time module type 627define('TIME_TYPE_LOCAL', 0); 628define('TIME_TYPE_SERVER', 1); 629define('TIME_TYPE_HOST', 2); 630 631define('FILTER_TASK_SHOW', 0); 632define('FILTER_TASK_HIDE', 1); 633define('FILTER_TASK_MARK', 2); 634define('FILTER_TASK_INVERT_MARK', 3); 635 636define('MARK_COLOR_RED', 1); 637define('MARK_COLOR_GREEN', 2); 638define('MARK_COLOR_BLUE', 3); 639 640define('PROFILE_TYPE_ID', 1); 641define('PROFILE_TYPE_INT', 2); 642define('PROFILE_TYPE_STR', 3); 643 644define('CALC_FNC_MIN', 1); 645define('CALC_FNC_AVG', 2); 646define('CALC_FNC_MAX', 4); 647define('CALC_FNC_ALL', 7); 648define('CALC_FNC_LST', 9); 649 650define('SERVICE_TIME_TYPE_UPTIME', 0); 651define('SERVICE_TIME_TYPE_DOWNTIME', 1); 652define('SERVICE_TIME_TYPE_ONETIME_DOWNTIME', 2); 653 654define('USER_TYPE_ZABBIX_USER', 1); 655define('USER_TYPE_ZABBIX_ADMIN', 2); 656define('USER_TYPE_SUPER_ADMIN', 3); 657 658define('ZBX_NOT_INTERNAL_GROUP', 0); 659define('ZBX_INTERNAL_GROUP', 1); 660 661define('GROUP_STATUS_DISABLED', 1); 662define('GROUP_STATUS_ENABLED', 0); 663 664define('LINE_TYPE_NORMAL', 0); 665define('LINE_TYPE_BOLD', 1); 666 667// IMPORTANT!!! by priority DESC 668define('GROUP_GUI_ACCESS_SYSTEM', 0); 669define('GROUP_GUI_ACCESS_INTERNAL', 1); 670define('GROUP_GUI_ACCESS_DISABLED', 2); 671 672/** 673 * @see access_deny() 674 */ 675define('ACCESS_DENY_OBJECT', 0); 676define('ACCESS_DENY_PAGE', 1); 677 678define('GROUP_DEBUG_MODE_DISABLED', 0); 679define('GROUP_DEBUG_MODE_ENABLED', 1); 680 681define('PERM_READ_WRITE', 3); 682define('PERM_READ', 2); 683define('PERM_DENY', 0); 684 685define('PARAM_TYPE_TIME', 0); 686define('PARAM_TYPE_COUNTS', 1); 687 688define('ZBX_DEFAULT_AGENT', 'Zabbix'); 689define('ZBX_AGENT_OTHER', -1); 690 691define('HTTPTEST_AUTH_NONE', 0); 692define('HTTPTEST_AUTH_BASIC', 1); 693define('HTTPTEST_AUTH_NTLM', 2); 694 695define('HTTPTEST_STATUS_ACTIVE', 0); 696define('HTTPTEST_STATUS_DISABLED', 1); 697 698define('HTTPSTEP_ITEM_TYPE_RSPCODE', 0); 699define('HTTPSTEP_ITEM_TYPE_TIME', 1); 700define('HTTPSTEP_ITEM_TYPE_IN', 2); 701define('HTTPSTEP_ITEM_TYPE_LASTSTEP', 3); 702define('HTTPSTEP_ITEM_TYPE_LASTERROR', 4); 703 704define('HTTPTEST_STEP_RETRIEVE_MODE_CONTENT', 0); 705define('HTTPTEST_STEP_RETRIEVE_MODE_HEADERS', 1); 706 707define('HTTPTEST_STEP_FOLLOW_REDIRECTS_OFF', 0); 708define('HTTPTEST_STEP_FOLLOW_REDIRECTS_ON', 1); 709 710define('HTTPTEST_VERIFY_PEER_OFF', 0); 711define('HTTPTEST_VERIFY_PEER_ON', 1); 712 713define('HTTPTEST_VERIFY_HOST_OFF', 0); 714define('HTTPTEST_VERIFY_HOST_ON', 1); 715 716define('EVENT_ACK_DISABLED', '0'); 717define('EVENT_ACK_ENABLED', '1'); 718 719define('EVENT_NOT_ACKNOWLEDGED', '0'); 720define('EVENT_ACKNOWLEDGED', '1'); 721 722define('ZBX_ACKNOWLEDGE_SELECTED', 0); 723define('ZBX_ACKNOWLEDGE_PROBLEM', 1); 724define('ZBX_ACKNOWLEDGE_ALL', 2); 725 726define('EVENT_SOURCE_TRIGGERS', 0); 727define('EVENT_SOURCE_DISCOVERY', 1); 728define('EVENT_SOURCE_AUTO_REGISTRATION', 2); 729define('EVENT_SOURCE_INTERNAL', 3); 730 731define('EVENT_OBJECT_TRIGGER', 0); 732define('EVENT_OBJECT_DHOST', 1); 733define('EVENT_OBJECT_DSERVICE', 2); 734define('EVENT_OBJECT_AUTOREGHOST', 3); 735define('EVENT_OBJECT_ITEM', 4); 736define('EVENT_OBJECT_LLDRULE', 5); 737 738define('GRAPH_YAXIS_TYPE_CALCULATED', 0); 739define('GRAPH_YAXIS_TYPE_FIXED', 1); 740define('GRAPH_YAXIS_TYPE_ITEM_VALUE', 2); 741 742define('GRAPH_YAXIS_SIDE_LEFT', 0); 743define('GRAPH_YAXIS_SIDE_RIGHT', 1); 744 745define('GRAPH_ITEM_SIMPLE', 0); 746define('GRAPH_ITEM_SUM', 2); 747 748define('GRAPH_TYPE_NORMAL', 0); 749define('GRAPH_TYPE_STACKED', 1); 750define('GRAPH_TYPE_PIE', 2); 751define('GRAPH_TYPE_EXPLODED', 3); 752define('GRAPH_TYPE_3D', 4); 753define('GRAPH_TYPE_3D_EXPLODED', 5); 754define('GRAPH_TYPE_BAR', 6); 755define('GRAPH_TYPE_COLUMN', 7); 756define('GRAPH_TYPE_BAR_STACKED', 8); 757define('GRAPH_TYPE_COLUMN_STACKED', 9); 758 759define('BR_DISTRIBUTION_MULTIPLE_PERIODS', 1); 760define('BR_DISTRIBUTION_MULTIPLE_ITEMS', 2); 761define('BR_COMPARE_VALUE_MULTIPLE_PERIODS', 3); 762 763define('GRAPH_3D_ANGLE', 70); 764 765define('GRAPH_STACKED_ALFA', 15); // 0..100 transparency 766 767define('GRAPH_ZERO_LINE_COLOR_LEFT', 'AAAAAA'); 768define('GRAPH_ZERO_LINE_COLOR_RIGHT', '888888'); 769 770define('GRAPH_TRIGGER_LINE_OPPOSITE_COLOR', '000000'); 771 772define('ZBX_MAX_TREND_DIFF', 3600); 773 774define('ZBX_GRAPH_MAX_SKIP_CELL', 16); 775define('ZBX_GRAPH_MAX_SKIP_DELAY', 4); 776 777define('DOBJECT_STATUS_UP', 0); 778define('DOBJECT_STATUS_DOWN', 1); 779define('DOBJECT_STATUS_DISCOVER', 2); // only for events 780define('DOBJECT_STATUS_LOST', 3); // generated by discovery 781 782define('DRULE_STATUS_ACTIVE', 0); 783define('DRULE_STATUS_DISABLED', 1); 784 785define('DSVC_STATUS_ACTIVE', 0); 786define('DSVC_STATUS_DISABLED', 1); 787 788define('SVC_SSH', 0); 789define('SVC_LDAP', 1); 790define('SVC_SMTP', 2); 791define('SVC_FTP', 3); 792define('SVC_HTTP', 4); 793define('SVC_POP', 5); 794define('SVC_NNTP', 6); 795define('SVC_IMAP', 7); 796define('SVC_TCP', 8); 797define('SVC_AGENT', 9); 798define('SVC_SNMPv1', 10); 799define('SVC_SNMPv2c', 11); 800define('SVC_ICMPPING', 12); 801define('SVC_SNMPv3', 13); 802define('SVC_HTTPS', 14); 803define('SVC_TELNET', 15); 804 805define('DHOST_STATUS_ACTIVE', 0); 806define('DHOST_STATUS_DISABLED', 1); 807 808define('IM_FORCED', 0); 809define('IM_ESTABLISHED', 1); 810define('IM_TREE', 2); 811 812define('EXPRESSION_TYPE_INCLUDED', 0); 813define('EXPRESSION_TYPE_ANY_INCLUDED', 1); 814define('EXPRESSION_TYPE_NOT_INCLUDED', 2); 815define('EXPRESSION_TYPE_TRUE', 3); 816define('EXPRESSION_TYPE_FALSE', 4); 817 818define('HOST_INVENTORY_DISABLED', -1); 819define('HOST_INVENTORY_MANUAL', 0); 820define('HOST_INVENTORY_AUTOMATIC', 1); 821 822define('EXPRESSION_HOST_UNKNOWN', '#ERROR_HOST#'); 823define('EXPRESSION_HOST_ITEM_UNKNOWN', '#ERROR_ITEM#'); 824define('EXPRESSION_NOT_A_MACRO_ERROR', '#ERROR_MACRO#'); 825define('EXPRESSION_FUNCTION_UNKNOWN', '#ERROR_FUNCTION#'); 826define('EXPRESSION_UNSUPPORTED_VALUE_TYPE', '#ERROR_VALUE_TYPE#'); 827 828/** 829 * @deprecated use either a literal space " " or a non-breakable space " " instead 830 */ 831define('SPACE', ' '); 832 833/** 834 * Symbol used to separate name pairs such as "host: item" or "proxy: host". 835 * 836 * Should not be used as just a colon. 837 */ 838define('NAME_DELIMITER', ': '); 839 840define('UNKNOWN_VALUE', ''); 841 842// suffixes 843define('ZBX_BYTE_SUFFIXES', 'KMGT'); 844define('ZBX_TIME_SUFFIXES', 'smhdw'); 845 846// preg 847define('ZBX_PREG_PRINT', '^\x00-\x1F'); 848define('ZBX_PREG_MACRO_NAME', '([A-Z0-9\._]+)'); 849define('ZBX_PREG_MACRO_NAME_LLD', '([A-Z0-9\._]+)'); 850define('ZBX_PREG_INTERNAL_NAMES', '([0-9a-zA-Z_\. \-]+)'); // !!! Don't forget sync code with C !!! 851define('ZBX_PREG_NUMBER', '([\-+]?[0-9]+[.]?[0-9]*['.ZBX_BYTE_SUFFIXES.ZBX_TIME_SUFFIXES.']?)'); 852define('ZBX_PREG_INT', '([\-+]?[0-9]+['.ZBX_BYTE_SUFFIXES.ZBX_TIME_SUFFIXES.']?)'); 853define('ZBX_PREG_DEF_FONT_STRING', '/^[0-9\.:% ]+$/'); 854define('ZBX_PREG_DNS_FORMAT', '([0-9a-zA-Z_\.\-$]|\{\$?'.ZBX_PREG_MACRO_NAME.'\})*'); 855define('ZBX_PREG_HOST_FORMAT', ZBX_PREG_INTERNAL_NAMES); 856define('ZBX_PREG_MACRO_NAME_FORMAT', '(\{[A-Z\.]+\})'); 857define('ZBX_PREG_EXPRESSION_LLD_MACROS', '(\{\#'.ZBX_PREG_MACRO_NAME_LLD.'\})'); 858 859// !!! should be used with "x" modifier 860define('ZBX_PREG_ITEM_KEY_PARAMETER_FORMAT', '( 861 (?P>param) # match recursive parameter group 862 | 863 (\" # match quoted string 864 ( 865 ((\\\\)+?[^\\\\]) # match any amount of backslash with non-backslash ending 866 | 867 [^\"\\\\] # match any character except \ or " 868 )*? # match \" or any character except " 869 \") 870 | 871 [^\"\[\],][^,\]]*? #match unquoted string - any character except " [ ] and , at begining and any character except , and ] afterwards 872 | 873 () # match empty and only empty part 874)'); 875define('ZBX_PREG_ITEM_KEY_FORMAT', '([0-9a-zA-Z_\. \-]+? # match key 876(?P<param>( # name parameter group used in recursion 877 \[ # match opening bracket 878 ( 879 \s*?'.ZBX_PREG_ITEM_KEY_PARAMETER_FORMAT .' # match spaces and parameter 880 ( 881 \s*?,\s*? # match spaces, comma and spaces 882 '.ZBX_PREG_ITEM_KEY_PARAMETER_FORMAT .' # match parameter 883 )*? # match spaces, comma, spaces, parameter zero or more times 884 \s*? #matches spaces 885 ) 886 \] # match closing bracket 887))*? # matches non comma seperated brackets with parameters zero or more times 888)'); 889 890define('ZBX_USER_ONLINE_TIME', 600); // 10min 891define('ZBX_GUEST_USER','guest'); 892 893// IPMI 894define('IPMI_AUTHTYPE_DEFAULT', -1); 895define('IPMI_AUTHTYPE_NONE', 0); 896define('IPMI_AUTHTYPE_MD2', 1); 897define('IPMI_AUTHTYPE_MD5', 2); 898define('IPMI_AUTHTYPE_STRAIGHT', 4); 899define('IPMI_AUTHTYPE_OEM', 5); 900define('IPMI_AUTHTYPE_RMCP_PLUS', 6); 901 902define('IPMI_PRIVILEGE_CALLBACK', 1); 903define('IPMI_PRIVILEGE_USER', 2); 904define('IPMI_PRIVILEGE_OPERATOR', 3); 905define('IPMI_PRIVILEGE_ADMIN', 4); 906define('IPMI_PRIVILEGE_OEM', 5); 907 908define('ZBX_HAVE_IPV6', 1); 909define('ZBX_DISCOVERER_IPRANGE_LIMIT', 65536); 910 911define('ZBX_SOCKET_TIMEOUT', 3); // socket timeout limit 912define('ZBX_SOCKET_BYTES_LIMIT', 1048576); // socket response size limit, 1048576 is 1MB in bytes 913 914// value is also used in servercheck.js file 915define('SERVER_CHECK_INTERVAL', 10); 916 917define('DATE_TIME_FORMAT_SECONDS_XML', 'Y-m-d\TH:i:s\Z'); 918 919// XML export|import tags 920define('XML_TAG_MACRO', 'macro'); 921define('XML_TAG_HOST', 'host'); 922define('XML_TAG_HOSTINVENTORY', 'host_inventory'); 923define('XML_TAG_ITEM', 'item'); 924define('XML_TAG_TRIGGER', 'trigger'); 925define('XML_TAG_GRAPH', 'graph'); 926define('XML_TAG_GRAPH_ELEMENT', 'graph_element'); 927define('XML_TAG_DEPENDENCY', 'dependency'); 928 929define('ZBX_DEFAULT_IMPORT_HOST_GROUP', 'Imported hosts'); 930 931// XML import flags 932// See ZBX-8151. Old version of libxml suffered from setting DTDLOAD and NOENT flags by default, which allowed 933// performing XXE attacks. Calling libxml_disable_entity_loader(true) also had no affect if flags passed to libxml 934// calls were 0 - so for better security with legacy libxml we need to call libxml_disable_entity_loader(true) AND 935// pass the LIBXML_NONET flag. Please keep in mind that LIBXML_NOENT actually EXPANDS entities, opposite to it's name - 936// so this flag is not needed here. 937define('LIBXML_IMPORT_FLAGS', LIBXML_NONET); 938 939// XML validation 940define('XML_STRING', 0x01); 941define('XML_ARRAY', 0x02); 942define('XML_INDEXED_ARRAY', 0x04); 943define('XML_REQUIRED', 0x08); 944 945// JSON error codes. 946if (!defined('JSON_ERROR_NONE')) { 947 define('JSON_ERROR_NONE', 0); 948} 949if (!defined('JSON_ERROR_SYNTAX')) { 950 define('JSON_ERROR_SYNTAX', 4); 951} 952 953// API errors 954define('ZBX_API_ERROR_INTERNAL', 111); 955define('ZBX_API_ERROR_PARAMETERS', 100); 956define('ZBX_API_ERROR_PERMISSIONS', 120); 957define('ZBX_API_ERROR_NO_AUTH', 200); 958define('ZBX_API_ERROR_NO_METHOD', 300); 959 960define('API_OUTPUT_EXTEND', 'extend'); 961define('API_OUTPUT_COUNT', 'count'); 962 963define('SEC_PER_MIN', 60); 964define('SEC_PER_HOUR', 3600); 965define('SEC_PER_DAY', 86400); 966define('SEC_PER_WEEK', 604800); 967define('SEC_PER_MONTH', 2592000); 968define('SEC_PER_YEAR', 31536000); 969 970define('ZBX_JAN_2038', 2145916800); 971 972define('DAY_IN_YEAR', 365); 973 974define('ZBX_MIN_PORT_NUMBER', 0); 975define('ZBX_MAX_PORT_NUMBER', 65535); 976 977// input fields 978define('ZBX_TEXTAREA_MACRO_WIDTH', 200); 979define('ZBX_TEXTAREA_MACRO_VALUE_WIDTH', 250); 980define('ZBX_TEXTAREA_COLOR_WIDTH', 96); 981define('ZBX_TEXTAREA_FILTER_SMALL_WIDTH', 150); 982define('ZBX_TEXTAREA_FILTER_STANDARD_WIDTH', 300); 983define('ZBX_TEXTAREA_FILTER_BIG_WIDTH', 524); 984define('ZBX_TEXTAREA_TINY_WIDTH', 75); 985define('ZBX_TEXTAREA_SMALL_WIDTH', 150); 986define('ZBX_TEXTAREA_MEDIUM_WIDTH', 270); 987define('ZBX_TEXTAREA_STANDARD_WIDTH', 453); 988define('ZBX_TEXTAREA_BIG_WIDTH', 540); 989define('ZBX_TEXTAREA_NUMERIC_STANDARD_WIDTH', 75); 990define('ZBX_TEXTAREA_NUMERIC_BIG_WIDTH', 150); 991define('ZBX_TEXTAREA_2DIGITS_WIDTH', 35); // please use for date selector only 992define('ZBX_TEXTAREA_4DIGITS_WIDTH', 50); // please use for date selector only 993define('ZBX_TEXTAREA_INTERFACE_IP_WIDTH', 225); 994define('ZBX_TEXTAREA_INTERFACE_DNS_WIDTH', 175); 995define('ZBX_TEXTAREA_INTERFACE_PORT_WIDTH', 100); 996define('ZBX_TEXTAREA_STANDARD_ROWS', 7); 997 998// decoration borders 999define('ZBX_HOST_INTERFACE_WIDTH', 750); 1000 1001// overviews help 1002define('ZBX_OVERVIEW_HELP_MIN_WIDTH', 125); 1003 1004// dashboard widgets 1005define('WIDGET_DISCOVERY_STATUS', 'dscvry'); 1006define('WIDGET_FAVOURITE_GRAPHS', 'favgrph'); 1007define('WIDGET_FAVOURITE_MAPS', 'favmap'); 1008define('WIDGET_FAVOURITE_SCREENS', 'favscr'); 1009define('WIDGET_HOST_STATUS', 'hoststat'); 1010define('WIDGET_LAST_ISSUES', 'lastiss'); 1011define('WIDGET_SYSTEM_STATUS', 'syssum'); 1012define('WIDGET_WEB_OVERVIEW', 'webovr'); 1013define('WIDGET_ZABBIX_STATUS', 'stszbx'); 1014// event details widgets 1015define('WIDGET_HAT_TRIGGERDETAILS', 'hat_triggerdetails'); 1016define('WIDGET_HAT_EVENTDETAILS', 'hat_eventdetails'); 1017define('WIDGET_HAT_EVENTACK', 'hat_eventack'); 1018define('WIDGET_HAT_EVENTACTIONMSGS', 'hat_eventactionmsgs'); 1019define('WIDGET_HAT_EVENTACTIONMCMDS', 'hat_eventactionmcmds'); 1020define('WIDGET_HAT_EVENTLIST', 'hat_eventlist'); 1021// search widget 1022define('WIDGET_SEARCH_HOSTS', 'search_hosts'); 1023define('WIDGET_SEARCH_HOSTGROUP', 'search_hostgroup'); 1024define('WIDGET_SEARCH_TEMPLATES', 'search_templates'); 1025// slideshow 1026define('WIDGET_SLIDESHOW', 'hat_slides'); 1027 1028// validation 1029define('DB_ID', "({}>=0&&bccomp({},\"9223372036854775807\")<=0)&&"); 1030define('NOT_EMPTY', "({}!='')&&"); 1031define('NOT_ZERO', "({}!=0)&&"); 1032 1033define('ZBX_VALID_OK', 0); 1034define('ZBX_VALID_ERROR', 1); 1035define('ZBX_VALID_WARNING', 2); 1036 1037// user default theme 1038define('THEME_DEFAULT', 'default'); 1039 1040// the default theme 1041define('ZBX_DEFAULT_THEME', 'blue-theme'); 1042 1043define('ZABBIX_HOMEPAGE', 'http://www.zabbix.com'); 1044define('ZBX_DEFAULT_URL', 'zabbix.php?action=dashboard.view'); 1045 1046// non translatable date formats 1047define('TIMESTAMP_FORMAT', 'YmdHis'); 1048define('TIMESTAMP_FORMAT_ZERO_TIME', 'Ymd0000'); 1049 1050// date format context, usable for translators 1051define('DATE_FORMAT_CONTEXT', 'Date format (see http://php.net/date)'); 1052 1053// availability report modes 1054define('AVAILABILITY_REPORT_BY_HOST', 0); 1055define('AVAILABILITY_REPORT_BY_TEMPLATE', 1); 1056 1057// queue modes 1058define('QUEUE_OVERVIEW', 0); 1059define('QUEUE_OVERVIEW_BY_PROXY', 1); 1060define('QUEUE_DETAILS', 2); 1061 1062// item count to display in the details queue 1063define('QUEUE_DETAIL_ITEM_COUNT', 500); 1064 1065// constants for element "copy to..." target types 1066define('COPY_TYPE_TO_HOST', 0); 1067define('COPY_TYPE_TO_TEMPLATE', 2); 1068define('COPY_TYPE_TO_HOST_GROUP', 1); 1069 1070define('HISTORY_GRAPH', 'showgraph'); 1071define('HISTORY_BATCH_GRAPH', 'batchgraph'); 1072define('HISTORY_VALUES', 'showvalues'); 1073define('HISTORY_LATEST', 'showlatest'); 1074 1075// configuration -> maps default add icon name 1076define('MAP_DEFAULT_ICON', 'Server_(96)'); 1077 1078// CSS styles 1079define('ZBX_STYLE_ACTION_BUTTONS', 'action-buttons'); 1080define('ZBX_STYLE_ACTIVE_INDIC', 'active-indic'); 1081define('ZBX_STYLE_ACTIVE_BG', 'active-bg'); 1082define('ZBX_STYLE_ADM_IMG', 'adm-img'); 1083define('ZBX_STYLE_ARTICLE', 'article'); 1084define('ZBX_STYLE_AVERAGE_BG', 'average-bg'); 1085define('ZBX_STYLE_ARROW_DOWN', 'arrow-down'); 1086define('ZBX_STYLE_ARROW_LEFT', 'arrow-left'); 1087define('ZBX_STYLE_ARROW_RIGHT', 'arrow-right'); 1088define('ZBX_STYLE_ARROW_UP', 'arrow-up'); 1089define('ZBX_STYLE_BLUE', 'blue'); 1090define('ZBX_STYLE_BTN_ADD_FAV', 'btn-add-fav'); 1091define('ZBX_STYLE_BTN_ALT', 'btn-alt'); 1092define('ZBX_STYLE_BTN_CONF', 'btn-conf'); 1093define('ZBX_STYLE_BTN_DEBUG', 'btn-debug'); 1094define('ZBX_STYLE_BTN_GREY', 'btn-grey'); 1095define('ZBX_STYLE_BTN_INFO', 'btn-info'); 1096define('ZBX_STYLE_BTN_LINK', 'btn-link'); 1097define('ZBX_STYLE_BTN_MAX', 'btn-max'); 1098define('ZBX_STYLE_BTN_MIN', 'btn-min'); 1099define('ZBX_STYLE_BTN_REMOVE_FAV', 'btn-remove-fav'); 1100define('ZBX_STYLE_BTN_RESET', 'btn-reset'); 1101define('ZBX_STYLE_BTN_SEARCH', 'btn-search'); 1102define('ZBX_STYLE_BTN_WIDGET_ACTION', 'btn-widget-action'); 1103define('ZBX_STYLE_BTN_WIDGET_COLLAPSE', 'btn-widget-collapse'); 1104define('ZBX_STYLE_BTN_WIDGET_EXPAND', 'btn-widget-expand'); 1105define('ZBX_STYLE_BOTTOM', 'bottom'); 1106define('ZBX_STYLE_BROWSER_LOGO_CHROME', 'browser-logo-chrome'); 1107define('ZBX_STYLE_BROWSER_LOGO_FF', 'browser-logo-ff'); 1108define('ZBX_STYLE_BROWSER_LOGO_IE', 'browser-logo-ie'); 1109define('ZBX_STYLE_BROWSER_LOGO_OPERA', 'browser-logo-opera'); 1110define('ZBX_STYLE_BROWSER_LOGO_SAFARI', 'browser-logo-safari'); 1111define('ZBX_STYLE_BROWSER_WARNING_CONTAINER', 'browser-warning-container'); 1112define('ZBX_STYLE_BROWSER_WARNING_FOOTER', 'browser-warning-footer'); 1113define('ZBX_STYLE_CELL', 'cell'); 1114define('ZBX_STYLE_CELL_WIDTH', 'cell-width'); 1115define('ZBX_STYLE_CENTER', 'center'); 1116define('ZBX_STYLE_CLOCK', 'clock'); 1117define('ZBX_STYLE_CLOCK_FACE', 'clock-face'); 1118define('ZBX_STYLE_CLOCK_HAND', 'clock-hand'); 1119define('ZBX_STYLE_CLOCK_HAND_SEC', 'clock-hand-sec'); 1120define('ZBX_STYLE_CLOCK_LINES', 'clock-lines'); 1121define('ZBX_STYLE_COLOR_PICKER', 'color-picker'); 1122define('ZBX_STYLE_CURSOR_MOVE', 'cursor-move'); 1123define('ZBX_STYLE_CURSOR_POINTER', 'cursor-pointer'); 1124define('ZBX_STYLE_DASHBRD_WIDGET_HEAD', 'dashbrd-widget-head'); 1125define('ZBX_STYLE_DASHBRD_WIDGET_FOOT', 'dashbrd-widget-foot'); 1126define('ZBX_STYLE_DASHED_BORDER', 'dashed-border'); 1127define('ZBX_STYLE_DEBUG_OUTPUT', 'debug-output'); 1128define('ZBX_STYLE_DISABLED', 'disabled'); 1129define('ZBX_STYLE_DISASTER_BG', 'disaster-bg'); 1130define('ZBX_STYLE_DRAG_ICON', 'drag-icon'); 1131define('ZBX_STYLE_DRAG_DROP_AREA', 'drag-drop-area'); 1132define('ZBX_STYLE_TABLE_FORMS_SEPARATOR', 'table-forms-separator'); 1133define('ZBX_STYLE_FILTER_CONTAINER', 'filter-container'); 1134define('ZBX_STYLE_FILTER_BTN_CONTAINER', 'filter-btn-container'); 1135define('ZBX_STYLE_FILTER_FORMS', 'filter-forms'); 1136define('ZBX_STYLE_FILTER_TRIGGER', 'filter-trigger'); 1137define('ZBX_STYLE_FILTER_ACTIVE', 'filter-active'); 1138define('ZBX_STYLE_FLOAT_LEFT', 'float-left'); 1139define('ZBX_STYLE_FORM_INPUT_MARGIN', 'form-input-margin'); 1140define('ZBX_STYLE_FORM_NEW_GROUP', 'form-new-group'); 1141define('ZBX_STYLE_FOOTER', 'footer'); 1142define('ZBX_STYLE_GREEN', 'green'); 1143define('ZBX_STYLE_GREEN_BG', 'green-bg'); 1144define('ZBX_STYLE_GREY', 'grey'); 1145define('ZBX_STYLE_HEADER_LOGO', 'header-logo'); 1146define('ZBX_STYLE_HEADER_TITLE', 'header-title'); 1147define('ZBX_STYLE_HIDDEN', 'hidden'); 1148define('ZBX_STYLE_HIGH_BG', 'high-bg'); 1149define('ZBX_STYLE_HOR_LIST', 'hor-list'); 1150define('ZBX_STYLE_ICON_ACKN', 'icon-ackn'); 1151define('ZBX_STYLE_ICON_CAL', 'icon-cal'); 1152define('ZBX_STYLE_ICON_DEPEND_DOWN', 'icon-depend-down'); 1153define('ZBX_STYLE_ICON_DEPEND_UP', 'icon-depend-up'); 1154define('ZBX_STYLE_ICON_MAINT', 'icon-maint'); 1155define('ZBX_STYLE_ICON_WZRD_ACTION', 'icon-wzrd-action'); 1156define('ZBX_STYLE_INACTIVE_BG', 'inactive-bg'); 1157define('ZBX_STYLE_INFO_BG', 'info-bg'); 1158define('ZBX_STYLE_INPUT_COLOR_PICKER', 'input-color-picker'); 1159define('ZBX_STYLE_LEFT', 'left'); 1160define('ZBX_STYLE_LINK_ACTION', 'link-action'); 1161define('ZBX_STYLE_LINK_ALT', 'link-alt'); 1162define('ZBX_STYLE_LIST_HOR_CHECK_RADIO', 'list-hor-check-radio'); 1163define('ZBX_STYLE_LIST_HOR_MIN_WIDTH', 'list-hor-min-width'); 1164define('ZBX_STYLE_LIST_CHECK_RADIO', 'list-check-radio'); 1165define('ZBX_STYLE_LIST_TABLE', 'list-table'); 1166define('ZBX_STYLE_LOCAL_CLOCK', 'local-clock'); 1167define('ZBX_STYLE_LOG_NA_BG', 'log-na-bg'); 1168define('ZBX_STYLE_LOG_INFO_BG', 'log-info-bg'); 1169define('ZBX_STYLE_LOG_WARNING_BG', 'log-warning-bg'); 1170define('ZBX_STYLE_LOG_HIGH_BG', 'log-high-bg'); 1171define('ZBX_STYLE_LOG_DISASTER_BG', 'log-disaster-bg'); 1172define('ZBX_STYLE_LOGO', 'logo'); 1173define('ZBX_STYLE_MAP_AREA', 'map-area'); 1174define('ZBX_STYLE_MIDDLE', 'middle'); 1175define('ZBX_STYLE_MSG_GOOD', 'msg-good'); 1176define('ZBX_STYLE_MSG_BAD', 'msg-bad'); 1177define('ZBX_STYLE_MSG_BAD_GLOBAL', 'msg-bad-global'); 1178define('ZBX_STYLE_MSG_DETAILS', 'msg-details'); 1179define('ZBX_STYLE_MSG_DETAILS_BORDER', 'msg-details-border'); 1180define('ZBX_STYLE_NA_BG', 'na-bg'); 1181define('ZBX_STYLE_NAV', 'nav'); 1182define('ZBX_STYLE_NORMAL_BG', 'normal-bg'); 1183define('ZBX_STYLE_NOTIF_BODY', 'notif-body'); 1184define('ZBX_STYLE_NOTIF_INDIC', 'notif-indic'); 1185define('ZBX_STYLE_NOTIF_INDIC_CONTAINER', 'notif-indic-container'); 1186define('ZBX_STYLE_NOTHING_TO_SHOW', 'nothing-to-show'); 1187define('ZBX_STYLE_NOWRAP', 'nowrap'); 1188define('ZBX_STYLE_ORANGE', 'orange'); 1189define('ZBX_STYLE_OVERLAY_CLOSE_BTN', 'overlay-close-btn'); 1190define('ZBX_STYLE_OVERLAY_DESCR', 'overlay-descr'); 1191define('ZBX_STYLE_OVERLAY_DESCR_URL', 'overlay-descr-url'); 1192define('ZBX_STYLE_OVERFLOW_ELLIPSIS', 'overflow-ellipsis'); 1193define('ZBX_STYLE_OBJECT_GROUP', 'object-group'); 1194define('ZBX_STYLE_PAGING_BTN_CONTAINER', 'paging-btn-container'); 1195define('ZBX_STYLE_PAGING_SELECTED', 'paging-selected'); 1196define('ZBX_STYLE_PRELOADER', 'preloader'); 1197define('ZBX_STYLE_PROGRESS_BAR_BG', 'progress-bar-bg'); 1198define('ZBX_STYLE_PROGRESS_BAR_CONTAINER', 'progress-bar-container'); 1199define('ZBX_STYLE_PROGRESS_BAR_LABEL', 'progress-bar-label'); 1200define('ZBX_STYLE_RADIO_SEGMENTED', 'radio-segmented'); 1201define('ZBX_STYLE_RED', 'red'); 1202define('ZBX_STYLE_RED_BG', 'red-bg'); 1203define('ZBX_STYLE_REL_CONTAINER', 'rel-container'); 1204define('ZBX_STYLE_RIGHT', 'right'); 1205define('ZBX_STYLE_ROW', 'row'); 1206define('ZBX_STYLE_SCREEN_TABLE', 'screen-table'); 1207define('ZBX_STYLE_SEARCH', 'search'); 1208define('ZBX_STYLE_SELECTED', 'selected'); 1209define('ZBX_STYLE_SELECTED_ITEM_COUNT', 'selected-item-count'); 1210define('ZBX_STYLE_SERVER_NAME', 'server-name'); 1211define('ZBX_STYLE_SETUP_CONTAINER', 'setup-container'); 1212define('ZBX_STYLE_SETUP_FOOTER', 'setup-footer'); 1213define('ZBX_STYLE_SETUP_LEFT', 'setup-left'); 1214define('ZBX_STYLE_SETUP_LEFT_CURRENT', 'setup-left-current'); 1215define('ZBX_STYLE_SETUP_RIGHT', 'setup-right'); 1216define('ZBX_STYLE_SETUP_RIGHT_BODY', 'setup-right-body'); 1217define('ZBX_STYLE_SETUP_TITLE', 'setup-title'); 1218define('ZBX_STYLE_SIGNIN_CONTAINER', 'signin-container'); 1219define('ZBX_STYLE_SIGNIN_LINKS', 'signin-links'); 1220define('ZBX_STYLE_SIGNIN_LOGO', 'signin-logo'); 1221define('ZBX_STYLE_SIGN_IN_TXT', 'sign-in-txt'); 1222define('ZBX_STYLE_STATUS_CONTAINER', 'status-container'); 1223define('ZBX_STYLE_STATUS_GREEN', 'status-green'); 1224define('ZBX_STYLE_STATUS_GREY', 'status-grey'); 1225define('ZBX_STYLE_STATUS_RED', 'status-red'); 1226define('ZBX_STYLE_STATUS_YELLOW', 'status-yellow'); 1227define('ZBX_STYLE_SUBFILTER', 'subfilter'); 1228define('ZBX_STYLE_SUBFILTER_ENABLED', 'subfilter-enabled'); 1229define('ZBX_STYLE_TABLE', 'table'); 1230define('ZBX_STYLE_TABLE_FORMS', 'table-forms'); 1231define('ZBX_STYLE_TABLE_FORMS_CONTAINER', 'table-forms-container'); 1232define('ZBX_STYLE_TABLE_FORMS_TD_LEFT', 'table-forms-td-left'); 1233define('ZBX_STYLE_TABLE_FORMS_TD_RIGHT', 'table-forms-td-right'); 1234define('ZBX_STYLE_TABLE_PAGING', 'table-paging'); 1235define('ZBX_STYLE_TABLE_STATS', 'table-stats'); 1236define('ZBX_STYLE_TABS_NAV', 'tabs-nav'); 1237define('ZBX_STYLE_TFOOT_BUTTONS', 'tfoot-buttons'); 1238define('ZBX_STYLE_TD_DRAG_ICON', 'td-drag-icon'); 1239define('ZBX_STYLE_TIME_ZONE', 'time-zone'); 1240define('ZBX_STYLE_TOP', 'top'); 1241define('ZBX_STYLE_TOP_NAV', 'top-nav'); 1242define('ZBX_STYLE_TOP_NAV_CONTAINER', 'top-nav-container'); 1243define('ZBX_STYLE_TOP_NAV_HELP', 'top-nav-help'); 1244define('ZBX_STYLE_TOP_NAV_ICONS', 'top-nav-icons'); 1245define('ZBX_STYLE_TOP_NAV_PROFILE', 'top-nav-profile'); 1246define('ZBX_STYLE_TOP_NAV_SIGNOUT', 'top-nav-signout'); 1247define('ZBX_STYLE_TOP_NAV_ZBBSHARE', 'top-nav-zbbshare'); 1248define('ZBX_STYLE_TOP_SUBNAV', 'top-subnav'); 1249define('ZBX_STYLE_TOP_SUBNAV_CONTAINER', 'top-subnav-container'); 1250define('ZBX_STYLE_TREEVIEW', 'treeview'); 1251define('ZBX_STYLE_TREEVIEW_PLUS', 'treeview-plus'); 1252define('ZBX_STYLE_UPPERCASE', 'uppercase'); 1253define('ZBX_STYLE_WARNING_BG', 'warning-bg'); 1254define('ZBX_STYLE_YELLOW', 'yellow'); 1255 1256// server variables 1257define('HTTPS', isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] && $_SERVER['HTTPS'] != 'off'); 1258 1259// configuration -> hosts (macro inheritance) 1260define('MACRO_TYPE_INHERITED', 0x01); 1261define('MACRO_TYPE_HOSTMACRO', 0x02); 1262define('MACRO_TYPE_BOTH', 0x03); // MACRO_TYPE_INHERITED | MACRO_TYPE_HOSTMACRO 1263 1264// if magic quotes on, then get rid of them 1265if (get_magic_quotes_gpc()) { 1266 function zbx_stripslashes($value) { 1267 $value = is_array($value) ? array_map('zbx_stripslashes', $value) : stripslashes($value); 1268 return $value; 1269 } 1270 $_GET = zbx_stripslashes($_GET); 1271 $_POST = zbx_stripslashes($_POST); 1272 $_COOKIE = zbx_stripslashes($_COOKIE); 1273} 1274 1275// init $_REQUEST 1276ini_set('variables_order', 'GP'); 1277$_REQUEST = $_POST + $_GET; 1278 1279// init precision 1280ini_set('precision', 14); 1281 1282// BC Math scale. bcscale() can be undefined prior requirement check in setup. 1283if (function_exists('bcscale')) { 1284 bcscale(7); 1285} 1286 1287/** 1288 * The sandbox attribute enables an extra set of restrictions for the content in the iframe. Default is set to empty 1289 * string, which means all restrictions are applied. To disable, set to FALSE. To set a specific set of restrictions, 1290 * write a custom string. 1291 * https://www.w3.org/TR/2010/WD-html5-20100624/the-iframe-element.html#attr-iframe-sandbox 1292 */ 1293define('ZBX_IFRAME_SANDBOX', ''); 1294 1295// HTTP headers 1296/* 1297 * Value of HTTP X-Frame-options header. 1298 * 1299 * Supported options: 1300 * - SAMEORIGIN (string) - compatible with rfc7034. 1301 * - DENY (string) - compatible with rfc7034. 1302 * - a list (string) of comma-separated hostnames. If hostname is not between allowed, the SAMEORIGIN option is used. 1303 * - null - disable X-Frame-options header. 1304 */ 1305define('X_FRAME_OPTIONS', 'SAMEORIGIN'); 1306