diff options
author | CoprDistGit <infra@openeuler.org> | 2023-08-22 07:42:22 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-08-22 07:42:22 +0000 |
commit | d516352a45d3bae02cdf2e45f911bf284160f4e2 (patch) | |
tree | 241e942c09addefcfa2fbce5bba6d4debfaa38d0 | |
parent | f6d28d7c04688a8470e3652b1532006c2462cb21 (diff) |
automatic import of zabbix
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | sources | 1 | ||||
-rw-r--r-- | zabbix-agent.service | 11 | ||||
-rw-r--r-- | zabbix-config.patch | 45 | ||||
-rw-r--r-- | zabbix-configure-sscanf.patch | 16 | ||||
-rw-r--r-- | zabbix-crypto-policy.patch | 30 | ||||
-rw-r--r-- | zabbix-logrotate.in | 8 | ||||
-rw-r--r-- | zabbix-out-of-tree.patch | 1119 | ||||
-rw-r--r-- | zabbix-php-fpm.conf | 24 | ||||
-rw-r--r-- | zabbix-proxy-mysql.service | 11 | ||||
-rw-r--r-- | zabbix-proxy-pgsql.service | 11 | ||||
-rw-r--r-- | zabbix-proxy-sqlite3.service | 11 | ||||
-rw-r--r-- | zabbix-server-mysql.service | 11 | ||||
-rw-r--r-- | zabbix-server-pgsql.service | 11 | ||||
-rw-r--r-- | zabbix-tmpfiles-zabbix.conf | 1 | ||||
-rw-r--r-- | zabbix-tmpfiles-zabbixsrv.conf | 1 | ||||
-rw-r--r-- | zabbix-web.conf | 35 | ||||
-rw-r--r-- | zabbix.fc | 25 | ||||
-rw-r--r-- | zabbix.if | 199 | ||||
-rw-r--r-- | zabbix.spec | 704 | ||||
-rw-r--r-- | zabbix.te | 348 |
21 files changed, 2623 insertions, 0 deletions
@@ -0,0 +1 @@ +/zabbix-6.0.20.tar.gz @@ -0,0 +1 @@ +113d9226a6c69951831f9b723e81e75b zabbix-6.0.20.tar.gz diff --git a/zabbix-agent.service b/zabbix-agent.service new file mode 100644 index 0000000..aeed01b --- /dev/null +++ b/zabbix-agent.service @@ -0,0 +1,11 @@ +[Unit] +Description=Zabbix Monitor Agent +After=syslog.target network.target + +[Service] +Type=simple +ExecStart=/usr/sbin/zabbix_agentd -f +User=zabbix + +[Install] +WantedBy=multi-user.target diff --git a/zabbix-config.patch b/zabbix-config.patch new file mode 100644 index 0000000..9d58fc6 --- /dev/null +++ b/zabbix-config.patch @@ -0,0 +1,45 @@ +diff -up zabbix-6.0.2/ui/include/classes/core/CConfigFile.php.config zabbix-6.0.2/ui/include/classes/core/CConfigFile.php +--- zabbix-6.0.2/ui/include/classes/core/CConfigFile.php.config 2022-03-23 08:38:25.049013803 -0600 ++++ zabbix-6.0.2/ui/include/classes/core/CConfigFile.php 2022-03-23 08:39:25.001657019 -0600 +@@ -25,7 +25,7 @@ class CConfigFile { + const CONFIG_ERROR = 2; + const CONFIG_VAULT_ERROR = 3; + +- const CONFIG_FILE_PATH = '/conf/zabbix.conf.php'; ++ const CONFIG_FILE_PATH = '/etc/zabbix/web/zabbix.conf.php'; + + private static $supported_db_types = [ + ZBX_DB_MYSQL => true, +diff -up zabbix-6.0.2/ui/include/classes/core/ZBase.php.config zabbix-6.0.2/ui/include/classes/core/ZBase.php +--- zabbix-6.0.2/ui/include/classes/core/ZBase.php.config 2022-03-14 03:57:00.000000000 -0600 ++++ zabbix-6.0.2/ui/include/classes/core/ZBase.php 2022-03-23 08:38:25.052013836 -0600 +@@ -368,7 +368,7 @@ class ZBase { + * @throws Exception + */ + protected function setMaintenanceMode() { +- require_once 'conf/maintenance.inc.php'; ++ require_once '/etc/zabbix/web/maintenance.inc.php'; + + if (defined('ZBX_DENY_GUI_ACCESS')) { + if (!isset($ZBX_GUI_ACCESS_IP_RANGE) || !in_array(CWebUser::getIp(), $ZBX_GUI_ACCESS_IP_RANGE)) { +@@ -381,7 +381,7 @@ class ZBase { + * Load zabbix config file. + */ + protected function loadConfigFile() { +- $configFile = $this->getRootDir().CConfigFile::CONFIG_FILE_PATH; ++ $configFile = CConfigFile::CONFIG_FILE_PATH; + $config = new CConfigFile($configFile); + $this->config = $config->load(); + } +diff -up zabbix-6.0.2/ui/include/classes/setup/CSetupWizard.php.config zabbix-6.0.2/ui/include/classes/setup/CSetupWizard.php +--- zabbix-6.0.2/ui/include/classes/setup/CSetupWizard.php.config 2022-03-14 03:57:00.000000000 -0600 ++++ zabbix-6.0.2/ui/include/classes/setup/CSetupWizard.php 2022-03-23 08:38:25.054013857 -0600 +@@ -271,7 +271,7 @@ class CSetupWizard extends CForm { + // make zabbix.conf.php downloadable + header('Content-Type: application/x-httpd-php'); + header('Content-Disposition: attachment; filename="'.basename(CConfigFile::CONFIG_FILE_PATH).'"'); +- $config = new CConfigFile(APP::getInstance()->getRootDir().CConfigFile::CONFIG_FILE_PATH); ++ $config = new CConfigFile(CConfigFile::CONFIG_FILE_PATH); + $config->config = [ + 'DB' => [ + 'TYPE' => $this->getConfig('DB_TYPE'), diff --git a/zabbix-configure-sscanf.patch b/zabbix-configure-sscanf.patch new file mode 100644 index 0000000..a872ff5 --- /dev/null +++ b/zabbix-configure-sscanf.patch @@ -0,0 +1,16 @@ +sscanf needs <stdio.h> for the prototype. Submitted upstream here: + + <https://support.zabbix.com/browse/ZBX-21946> + +diff --git a/configure.ac b/configure.ac +index 0588004f9f89cdd5..bbc60e3a28369f9f 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1087,6 +1087,7 @@ AC_MSG_CHECKING(for long long format) + AC_TRY_RUN( + [ + #include <sys/types.h> ++#include <stdio.h> + int main() + { + uint64_t i; diff --git a/zabbix-crypto-policy.patch b/zabbix-crypto-policy.patch new file mode 100644 index 0000000..8a157ce --- /dev/null +++ b/zabbix-crypto-policy.patch @@ -0,0 +1,30 @@ +diff -up zabbix-5.0.2/src/libs/zbxcrypto/tls.c.crypto-policy zabbix-5.0.2/src/libs/zbxcrypto/tls.c +--- zabbix-5.0.2/src/libs/zbxcrypto/tls.c.crypto-policy 2020-07-06 03:54:32.000000000 -0600 ++++ zabbix-5.0.2/src/libs/zbxcrypto/tls.c 2020-07-18 21:22:13.125099598 -0600 +@@ -2932,7 +2932,7 @@ void zbx_tls_init_child(void) + goto out; + } + } +- else if (1 != SSL_CTX_set_cipher_list(ctx_cert, ciphers)) ++ else if (1 != SSL_CTX_set_cipher_list(ctx_cert, "PROFILE=SYSTEM")) + { + zbx_snprintf_alloc(&error, &error_alloc, &error_offset, "cannot set list of certificate" + " ciphersuites:"); +@@ -3014,7 +3014,7 @@ void zbx_tls_init_child(void) + goto out; + } + } +- else if (1 != SSL_CTX_set_cipher_list(ctx_psk, ciphers)) ++ else if (1 != SSL_CTX_set_cipher_list(ctx_psk, "PROFILE=SYSTEM")) + { + zbx_snprintf_alloc(&error, &error_alloc, &error_offset, "cannot set list of PSK ciphersuites:"); + goto out; +@@ -3070,7 +3070,7 @@ void zbx_tls_init_child(void) + goto out; + } + } +- else if (1 != SSL_CTX_set_cipher_list(ctx_all, ciphers)) ++ else if (1 != SSL_CTX_set_cipher_list(ctx_all, "PROFILE=SYSTEM")) + { + zbx_snprintf_alloc(&error, &error_alloc, &error_offset, "cannot set list of all ciphersuites:"); + goto out; diff --git a/zabbix-logrotate.in b/zabbix-logrotate.in new file mode 100644 index 0000000..6eeea97 --- /dev/null +++ b/zabbix-logrotate.in @@ -0,0 +1,8 @@ +/var/log/USER/zabbix_COMPONENT.log { + missingok + monthly + notifempty + compress + copytruncate + su USER USER +} diff --git a/zabbix-out-of-tree.patch b/zabbix-out-of-tree.patch new file mode 100644 index 0000000..9bfabaa --- /dev/null +++ b/zabbix-out-of-tree.patch @@ -0,0 +1,1119 @@ +diff -up zabbix-6.0.13/src/go/Makefile.am.out-of-tree zabbix-6.0.13/src/go/Makefile.am +--- zabbix-6.0.13/src/go/Makefile.am.out-of-tree 2023-02-01 00:19:54.520718582 -0700 ++++ zabbix-6.0.13/src/go/Makefile.am 2023-02-16 12:12:40.691876329 -0700 +@@ -57,15 +57,15 @@ zabbix.com/cmd/zabbix_web_service: + build: ${TARGETS} + + clean: +- go clean ./... ++ go clean $(srcdir)/... + rm -f bin/zabbix_agent2 bin/mock_server + + install-zabbix.com/cmd/zabbix_agent2: + CGO_CFLAGS="${CGO_CFLAGS}" CGO_LDFLAGS="${CGO_LDFLAGS}" GOBIN=${GOBIN} \ + go install -ldflags="${AGENT_GOLDFLAGS}" ${TARGETS} + $(MKDIR_P) "$(DESTDIR)$(AGENT2_CONFIG_PLUGINS_PATH)" +- test -f "$(DESTDIR)$(AGENT2_CONFIG_FILE)" || cp "conf/zabbix_agent2.conf" "$(DESTDIR)$(AGENT2_CONFIG_FILE)" +- for cfg in conf/zabbix_agent2.d/plugins.d/*.conf; do \ ++ test -f "$(DESTDIR)$(AGENT2_CONFIG_FILE)" || cp "$(top_srcdir)conf/zabbix_agent2.conf" "$(DESTDIR)$(AGENT2_CONFIG_FILE)" ++ for cfg in $(top_srcdir)conf/zabbix_agent2.d/plugins.d/*.conf; do \ + test -f "$(DESTDIR)$(AGENT2_CONFIG_PLUGINS_PATH)/"`basename $$cfg` || \ + cp "$$cfg" "$(DESTDIR)$(AGENT2_CONFIG_PLUGINS_PATH)/"`basename $$cfg`; \ + done +@@ -76,7 +76,7 @@ install-zabbix.com/cmd/zabbix_web_servic + install-exec-local: ${INSTALL_TARGETS} + + check: +- CGO_CFLAGS="${CGO_CFLAGS}" CGO_LDFLAGS="${CGO_LDFLAGS}" go test ./... ++ CGO_CFLAGS="${CGO_CFLAGS}" CGO_LDFLAGS="${CGO_LDFLAGS}" go test $(srcdir)/... + style: + CGO_CFLAGS="${CGO_CFLAGS}" CGO_LDFLAGS="${CGO_LDFLAGS}" golangci-lint run --new-from-rev=$(NEW_FROM_REV) ./... + format: +diff -up zabbix-6.0.13/src/libs/zbxalgo/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxalgo/Makefile.am +--- zabbix-6.0.13/src/libs/zbxalgo/Makefile.am.out-of-tree 2023-02-01 00:19:54.536718733 -0700 ++++ zabbix-6.0.13/src/libs/zbxalgo/Makefile.am 2023-02-16 12:12:40.692876324 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxalgo.a + + if SERVER +diff -up zabbix-6.0.13/src/libs/zbxaudit/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxaudit/Makefile.am +--- zabbix-6.0.13/src/libs/zbxaudit/Makefile.am.out-of-tree 2023-02-01 00:19:54.540718773 -0700 ++++ zabbix-6.0.13/src/libs/zbxaudit/Makefile.am 2023-02-16 12:12:40.693876319 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxaudit.a + + libzbxaudit_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxavailability/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxavailability/Makefile.am +--- zabbix-6.0.13/src/libs/zbxavailability/Makefile.am.out-of-tree 2023-02-01 00:19:54.544718811 -0700 ++++ zabbix-6.0.13/src/libs/zbxavailability/Makefile.am 2023-02-16 12:12:40.694876314 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxavailability.a + + libzbxavailability_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxcommon/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxcommon/Makefile.am +--- zabbix-6.0.13/src/libs/zbxcommon/Makefile.am.out-of-tree 2023-02-01 00:19:54.544718811 -0700 ++++ zabbix-6.0.13/src/libs/zbxcommon/Makefile.am 2023-02-16 12:12:40.695876310 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxcommon.a + + libzbxcommon_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxcommshigh/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxcommshigh/Makefile.am +--- zabbix-6.0.13/src/libs/zbxcommshigh/Makefile.am.out-of-tree 2023-01-30 00:22:04.944328308 -0700 ++++ zabbix-6.0.13/src/libs/zbxcommshigh/Makefile.am 2023-02-16 12:12:40.697876300 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxcommshigh.a + + libzbxcommshigh_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxcomms/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxcomms/Makefile.am +--- zabbix-6.0.13/src/libs/zbxcomms/Makefile.am.out-of-tree 2023-01-30 00:22:04.944328308 -0700 ++++ zabbix-6.0.13/src/libs/zbxcomms/Makefile.am 2023-02-16 12:12:40.698876295 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxcomms.a + + libzbxcomms_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxcompress/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxcompress/Makefile.am +--- zabbix-6.0.13/src/libs/zbxcompress/Makefile.am.out-of-tree 2023-01-23 01:33:45.931502136 -0700 ++++ zabbix-6.0.13/src/libs/zbxcompress/Makefile.am 2023-02-16 12:12:40.699876291 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxcompress.a + + libzbxcompress_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxconf/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxconf/Makefile.am +--- zabbix-6.0.13/src/libs/zbxconf/Makefile.am.out-of-tree 2023-01-23 01:33:45.931502136 -0700 ++++ zabbix-6.0.13/src/libs/zbxconf/Makefile.am 2023-02-16 12:12:40.699876291 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxconf.a + + libzbxconf_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxcrypto/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxcrypto/Makefile.am +--- zabbix-6.0.13/src/libs/zbxcrypto/Makefile.am.out-of-tree 2023-02-01 00:19:54.552718885 -0700 ++++ zabbix-6.0.13/src/libs/zbxcrypto/Makefile.am 2023-02-16 12:12:40.700876286 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxcrypto.a + + libzbxcrypto_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxdbcache/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxdbcache/Makefile.am +--- zabbix-6.0.13/src/libs/zbxdbcache/Makefile.am.out-of-tree 2023-01-30 00:22:04.948328337 -0700 ++++ zabbix-6.0.13/src/libs/zbxdbcache/Makefile.am 2023-02-16 12:12:40.701876281 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxdbcache.a + + libzbxdbcache_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxdbhigh/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxdbhigh/Makefile.am +--- zabbix-6.0.13/src/libs/zbxdbhigh/Makefile.am.out-of-tree 2023-02-01 00:19:54.568719037 -0700 ++++ zabbix-6.0.13/src/libs/zbxdbhigh/Makefile.am 2023-02-16 12:12:40.702876276 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + if DBSCHEMA + dbschema.c: $(top_srcdir)/create/src/schema.tmpl + $(top_srcdir)/create/bin/gen_schema.pl c > dbschema.c +diff -up zabbix-6.0.13/src/libs/zbxdb/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxdb/Makefile.am +--- zabbix-6.0.13/src/libs/zbxdb/Makefile.am.out-of-tree 2023-01-23 01:33:45.931502136 -0700 ++++ zabbix-6.0.13/src/libs/zbxdb/Makefile.am 2023-02-16 12:12:40.703876272 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxdb.a + + libzbxdb_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxdbupgrade/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxdbupgrade/Makefile.am +--- zabbix-6.0.13/src/libs/zbxdbupgrade/Makefile.am.out-of-tree 2023-02-01 00:19:54.572719076 -0700 ++++ zabbix-6.0.13/src/libs/zbxdbupgrade/Makefile.am 2023-02-16 12:12:40.704876267 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxdbupgrade.a + + libzbxdbupgrade_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxdiag/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxdiag/Makefile.am +--- zabbix-6.0.13/src/libs/zbxdiag/Makefile.am.out-of-tree 2023-01-30 00:22:04.964328451 -0700 ++++ zabbix-6.0.13/src/libs/zbxdiag/Makefile.am 2023-02-16 12:12:40.704876267 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxdiag_server.a libzbxdiag_proxy.a + + libzbxdiag_server_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxembed/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxembed/Makefile.am +--- zabbix-6.0.13/src/libs/zbxembed/Makefile.am.out-of-tree 2023-02-01 00:19:54.580719152 -0700 ++++ zabbix-6.0.13/src/libs/zbxembed/Makefile.am 2023-02-16 12:12:40.705876262 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxembed.a + + libzbxembed_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxeval/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxeval/Makefile.am +--- zabbix-6.0.13/src/libs/zbxeval/Makefile.am.out-of-tree 2023-02-01 00:19:54.596719303 -0700 ++++ zabbix-6.0.13/src/libs/zbxeval/Makefile.am 2023-02-16 12:12:40.706876257 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxeval.a + + libzbxeval_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxexec/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxexec/Makefile.am +--- zabbix-6.0.13/src/libs/zbxexec/Makefile.am.out-of-tree 2023-01-23 01:33:45.959502505 -0700 ++++ zabbix-6.0.13/src/libs/zbxexec/Makefile.am 2023-02-16 12:12:40.706876257 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxexec.a + + libzbxexec_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxha/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxha/Makefile.am +--- zabbix-6.0.13/src/libs/zbxha/Makefile.am.out-of-tree 2023-02-01 00:19:54.596719303 -0700 ++++ zabbix-6.0.13/src/libs/zbxha/Makefile.am 2023-02-16 12:12:40.707876252 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxha.a + + libzbxha_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxhistory/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxhistory/Makefile.am +--- zabbix-6.0.13/src/libs/zbxhistory/Makefile.am.out-of-tree 2023-01-23 01:33:45.959502505 -0700 ++++ zabbix-6.0.13/src/libs/zbxhistory/Makefile.am 2023-02-16 12:12:40.708876248 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxhistory.a + + libzbxhistory_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxhttp/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxhttp/Makefile.am +--- zabbix-6.0.13/src/libs/zbxhttp/Makefile.am.out-of-tree 2023-01-30 00:22:04.976328534 -0700 ++++ zabbix-6.0.13/src/libs/zbxhttp/Makefile.am 2023-02-16 12:12:40.709876243 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxhttp.a + + libzbxhttp_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxicmpping/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxicmpping/Makefile.am +--- zabbix-6.0.13/src/libs/zbxicmpping/Makefile.am.out-of-tree 2023-01-30 00:22:04.976328534 -0700 ++++ zabbix-6.0.13/src/libs/zbxicmpping/Makefile.am 2023-02-16 12:12:40.710876238 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxicmpping.a + + libzbxicmpping_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxipcservice/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxipcservice/Makefile.am +--- zabbix-6.0.13/src/libs/zbxipcservice/Makefile.am.out-of-tree 2023-01-27 02:18:53.018143449 -0700 ++++ zabbix-6.0.13/src/libs/zbxipcservice/Makefile.am 2023-02-16 12:12:40.711876234 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxipcservice.a + + libzbxipcservice_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxjson/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxjson/Makefile.am +--- zabbix-6.0.13/src/libs/zbxjson/Makefile.am.out-of-tree 2023-02-01 00:19:54.600719342 -0700 ++++ zabbix-6.0.13/src/libs/zbxjson/Makefile.am 2023-02-16 12:12:40.712876229 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxjson.a + + libzbxjson_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxlog/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxlog/Makefile.am +--- zabbix-6.0.13/src/libs/zbxlog/Makefile.am.out-of-tree 2023-01-23 01:33:45.963502558 -0700 ++++ zabbix-6.0.13/src/libs/zbxlog/Makefile.am 2023-02-16 12:12:40.712876229 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxlog.a + + libzbxlog_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxmedia/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxmedia/Makefile.am +--- zabbix-6.0.13/src/libs/zbxmedia/Makefile.am.out-of-tree 2023-01-30 00:22:04.980328562 -0700 ++++ zabbix-6.0.13/src/libs/zbxmedia/Makefile.am 2023-02-16 12:12:40.713876224 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxmedia.a + + libzbxmedia_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxmemory/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxmemory/Makefile.am +--- zabbix-6.0.13/src/libs/zbxmemory/Makefile.am.out-of-tree 2023-01-30 00:22:04.980328562 -0700 ++++ zabbix-6.0.13/src/libs/zbxmemory/Makefile.am 2023-02-16 12:12:40.714876219 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxmemory.a + + libzbxmemory_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxmodules/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxmodules/Makefile.am +--- zabbix-6.0.13/src/libs/zbxmodules/Makefile.am.out-of-tree 2023-01-23 01:33:45.963502558 -0700 ++++ zabbix-6.0.13/src/libs/zbxmodules/Makefile.am 2023-02-16 12:12:40.715876214 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxmodules.a + + libzbxmodules_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxnix/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxnix/Makefile.am +--- zabbix-6.0.13/src/libs/zbxnix/Makefile.am.out-of-tree 2023-01-30 00:22:04.980328562 -0700 ++++ zabbix-6.0.13/src/libs/zbxnix/Makefile.am 2023-02-16 12:12:40.716876210 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxnix.a + + libzbxnix_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxprof/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxprof/Makefile.am +--- zabbix-6.0.13/src/libs/zbxprof/Makefile.am.out-of-tree 2023-02-01 00:19:54.604719380 -0700 ++++ zabbix-6.0.13/src/libs/zbxprof/Makefile.am 2023-02-16 12:15:46.024983315 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxprof.a + + libzbxprof_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxprometheus/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxprometheus/Makefile.am +--- zabbix-6.0.13/src/libs/zbxprometheus/Makefile.am.out-of-tree 2023-01-23 01:33:45.963502558 -0700 ++++ zabbix-6.0.13/src/libs/zbxprometheus/Makefile.am 2023-02-16 12:12:40.717876205 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxprometheus.a + + libzbxprometheus_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxregexp/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxregexp/Makefile.am +--- zabbix-6.0.13/src/libs/zbxregexp/Makefile.am.out-of-tree 2023-01-23 01:33:45.967502610 -0700 ++++ zabbix-6.0.13/src/libs/zbxregexp/Makefile.am 2023-02-16 12:12:40.717876205 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxregexp.a + + libzbxregexp_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxrtc/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxrtc/Makefile.am +--- zabbix-6.0.13/src/libs/zbxrtc/Makefile.am.out-of-tree 2023-02-01 00:19:54.604719380 -0700 ++++ zabbix-6.0.13/src/libs/zbxrtc/Makefile.am 2023-02-16 12:12:40.718876200 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = \ + libzbxrtc.a \ + libzbxrtc_service.a \ +diff -up zabbix-6.0.13/src/libs/zbxself/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxself/Makefile.am +--- zabbix-6.0.13/src/libs/zbxself/Makefile.am.out-of-tree 2023-02-01 00:19:54.604719380 -0700 ++++ zabbix-6.0.13/src/libs/zbxself/Makefile.am 2023-02-16 12:12:40.719876196 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxself.a libzbxself_server.a libzbxself_proxy.a + + libzbxself_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxserver/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxserver/Makefile.am +--- zabbix-6.0.13/src/libs/zbxserver/Makefile.am.out-of-tree 2023-02-01 00:19:54.604719380 -0700 ++++ zabbix-6.0.13/src/libs/zbxserver/Makefile.am 2023-02-16 12:12:40.720876191 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxserver.a libzbxserver_server.a libzbxserver_proxy.a + + libzbxserver_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxservice/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxservice/Makefile.am +--- zabbix-6.0.13/src/libs/zbxservice/Makefile.am.out-of-tree 2023-02-01 00:19:54.608719418 -0700 ++++ zabbix-6.0.13/src/libs/zbxservice/Makefile.am 2023-02-16 12:12:40.721876186 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxservice.a + + libzbxservice_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxsysinfo/agent/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxsysinfo/agent/Makefile.am +--- zabbix-6.0.13/src/libs/zbxsysinfo/agent/Makefile.am.out-of-tree 2023-02-01 00:19:54.608719418 -0700 ++++ zabbix-6.0.13/src/libs/zbxsysinfo/agent/Makefile.am 2023-02-16 12:12:40.722876181 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libagentsysinfo.a + + libagentsysinfo_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxsysinfo/aix/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxsysinfo/aix/Makefile.am +--- zabbix-6.0.13/src/libs/zbxsysinfo/aix/Makefile.am.out-of-tree 2023-01-23 01:33:45.967502610 -0700 ++++ zabbix-6.0.13/src/libs/zbxsysinfo/aix/Makefile.am 2023-02-16 12:12:40.723876176 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libspecsysinfo.a libspechostnamesysinfo.a + + libspecsysinfo_a_CFLAGS = -I$(top_srcdir)/src/zabbix_agent +diff -up zabbix-6.0.13/src/libs/zbxsysinfo/common/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxsysinfo/common/Makefile.am +--- zabbix-6.0.13/src/libs/zbxsysinfo/common/Makefile.am.out-of-tree 2023-02-01 00:19:54.612719455 -0700 ++++ zabbix-6.0.13/src/libs/zbxsysinfo/common/Makefile.am 2023-02-16 12:12:40.723876176 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libcommonsysinfo.a libcommonsysinfo_http.a libcommonsysinfo_httpmetrics.a + + libcommonsysinfo_a_CFLAGS = -I@top_srcdir@/src/zabbix_agent/ +diff -up zabbix-6.0.13/src/libs/zbxsysinfo/freebsd/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxsysinfo/freebsd/Makefile.am +--- zabbix-6.0.13/src/libs/zbxsysinfo/freebsd/Makefile.am.out-of-tree 2023-01-23 01:33:45.971502662 -0700 ++++ zabbix-6.0.13/src/libs/zbxsysinfo/freebsd/Makefile.am 2023-02-16 12:12:40.724876172 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libspecsysinfo.a libspechostnamesysinfo.a + + libspecsysinfo_a_CFLAGS = -I$(top_srcdir)/src/zabbix_agent +diff -up zabbix-6.0.13/src/libs/zbxsysinfo/hpux/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxsysinfo/hpux/Makefile.am +--- zabbix-6.0.13/src/libs/zbxsysinfo/hpux/Makefile.am.out-of-tree 2023-01-23 01:33:45.971502662 -0700 ++++ zabbix-6.0.13/src/libs/zbxsysinfo/hpux/Makefile.am 2023-02-16 12:12:40.725876167 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libspecsysinfo.a libspechostnamesysinfo.a + + libspecsysinfo_a_CFLAGS = -I$(top_srcdir)/src/zabbix_agent +diff -up zabbix-6.0.13/src/libs/zbxsysinfo/linux/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxsysinfo/linux/Makefile.am +--- zabbix-6.0.13/src/libs/zbxsysinfo/linux/Makefile.am.out-of-tree 2023-01-30 00:22:04.992328648 -0700 ++++ zabbix-6.0.13/src/libs/zbxsysinfo/linux/Makefile.am 2023-02-16 12:12:40.726876162 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libspecsysinfo.a libspechostnamesysinfo.a + + libspecsysinfo_a_CFLAGS = -I$(top_srcdir)/src/zabbix_agent +diff -up zabbix-6.0.13/src/libs/zbxsysinfo/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxsysinfo/Makefile.am +--- zabbix-6.0.13/src/libs/zbxsysinfo/Makefile.am.out-of-tree 2023-01-30 00:22:04.988328619 -0700 ++++ zabbix-6.0.13/src/libs/zbxsysinfo/Makefile.am 2023-02-16 12:12:40.727876157 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + DIST_SUBDIRS = \ + agent \ + common \ +diff -up zabbix-6.0.13/src/libs/zbxsysinfo/netbsd/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxsysinfo/netbsd/Makefile.am +--- zabbix-6.0.13/src/libs/zbxsysinfo/netbsd/Makefile.am.out-of-tree 2023-01-23 01:33:45.975502715 -0700 ++++ zabbix-6.0.13/src/libs/zbxsysinfo/netbsd/Makefile.am 2023-02-16 12:12:40.728876152 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libspecsysinfo.a libspechostnamesysinfo.a + + libspecsysinfo_a_CFLAGS = -I$(top_srcdir)/src/zabbix_agent +diff -up zabbix-6.0.13/src/libs/zbxsysinfo/openbsd/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxsysinfo/openbsd/Makefile.am +--- zabbix-6.0.13/src/libs/zbxsysinfo/openbsd/Makefile.am.out-of-tree 2023-01-23 01:33:45.975502715 -0700 ++++ zabbix-6.0.13/src/libs/zbxsysinfo/openbsd/Makefile.am 2023-02-16 12:12:40.728876152 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libspecsysinfo.a libspechostnamesysinfo.a + + libspecsysinfo_a_CFLAGS = -I$(top_srcdir)/src/zabbix_agent +diff -up zabbix-6.0.13/src/libs/zbxsysinfo/osf/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxsysinfo/osf/Makefile.am +--- zabbix-6.0.13/src/libs/zbxsysinfo/osf/Makefile.am.out-of-tree 2023-01-23 01:33:45.975502715 -0700 ++++ zabbix-6.0.13/src/libs/zbxsysinfo/osf/Makefile.am 2023-02-16 12:12:40.729876148 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libspecsysinfo.a libspechostnamesysinfo.a + + libspecsysinfo_a_CFLAGS = -I$(top_srcdir)/src/zabbix_agent +diff -up zabbix-6.0.13/src/libs/zbxsysinfo/osx/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxsysinfo/osx/Makefile.am +--- zabbix-6.0.13/src/libs/zbxsysinfo/osx/Makefile.am.out-of-tree 2023-01-23 01:33:45.975502715 -0700 ++++ zabbix-6.0.13/src/libs/zbxsysinfo/osx/Makefile.am 2023-02-16 12:12:40.733876129 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libspecsysinfo.a libspechostnamesysinfo.a + + libspecsysinfo_a_CFLAGS = -I$(top_srcdir)/src/zabbix_agent +diff -up zabbix-6.0.13/src/libs/zbxsysinfo/simple/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxsysinfo/simple/Makefile.am +--- zabbix-6.0.13/src/libs/zbxsysinfo/simple/Makefile.am.out-of-tree 2023-01-30 00:22:04.992328648 -0700 ++++ zabbix-6.0.13/src/libs/zbxsysinfo/simple/Makefile.am 2023-02-16 12:12:40.734876124 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libsimplesysinfo.a + + libsimplesysinfo_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxsysinfo/solaris/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxsysinfo/solaris/Makefile.am +--- zabbix-6.0.13/src/libs/zbxsysinfo/solaris/Makefile.am.out-of-tree 2023-01-27 02:18:53.042143778 -0700 ++++ zabbix-6.0.13/src/libs/zbxsysinfo/solaris/Makefile.am 2023-02-16 12:12:40.735876119 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libspecsysinfo.a libspechostnamesysinfo.a + + libspecsysinfo_a_CFLAGS = -I$(top_srcdir)/src/zabbix_agent +diff -up zabbix-6.0.13/src/libs/zbxsysinfo/unknown/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxsysinfo/unknown/Makefile.am +--- zabbix-6.0.13/src/libs/zbxsysinfo/unknown/Makefile.am.out-of-tree 2023-01-23 01:33:45.979502768 -0700 ++++ zabbix-6.0.13/src/libs/zbxsysinfo/unknown/Makefile.am 2023-02-16 12:12:40.735876119 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libspecsysinfo.a libspechostnamesysinfo.a + + libspecsysinfo_a_CFLAGS = -I$(top_srcdir)/src/zabbix_agent +diff -up zabbix-6.0.13/src/libs/zbxsys/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxsys/Makefile.am +--- zabbix-6.0.13/src/libs/zbxsys/Makefile.am.out-of-tree 2023-01-30 00:22:04.988328619 -0700 ++++ zabbix-6.0.13/src/libs/zbxsys/Makefile.am 2023-02-16 12:12:40.736876114 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxsys.a + + libzbxsys_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxtasks/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxtasks/Makefile.am +--- zabbix-6.0.13/src/libs/zbxtasks/Makefile.am.out-of-tree 2023-01-23 01:33:45.979502768 -0700 ++++ zabbix-6.0.13/src/libs/zbxtasks/Makefile.am 2023-02-16 12:12:40.737876110 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxtasks.a + + libzbxtasks_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxtrends/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxtrends/Makefile.am +--- zabbix-6.0.13/src/libs/zbxtrends/Makefile.am.out-of-tree 2023-02-01 00:19:54.620719532 -0700 ++++ zabbix-6.0.13/src/libs/zbxtrends/Makefile.am 2023-02-16 12:12:40.738876105 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = \ + libzbxtrends.a \ + libzbxtrends_baseline.a +diff -up zabbix-6.0.13/src/libs/zbxvault/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxvault/Makefile.am +--- zabbix-6.0.13/src/libs/zbxvault/Makefile.am.out-of-tree 2023-02-01 00:19:54.620719532 -0700 ++++ zabbix-6.0.13/src/libs/zbxvault/Makefile.am 2023-02-16 12:12:40.738876105 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxvault.a + + libzbxvault_a_SOURCES = \ +diff -up zabbix-6.0.13/src/libs/zbxxml/Makefile.am.out-of-tree zabbix-6.0.13/src/libs/zbxxml/Makefile.am +--- zabbix-6.0.13/src/libs/zbxxml/Makefile.am.out-of-tree 2023-01-23 01:33:45.979502768 -0700 ++++ zabbix-6.0.13/src/libs/zbxxml/Makefile.am 2023-02-16 12:12:40.739876100 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxxml.a + + libzbxxml_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_agent/logfiles/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_agent/logfiles/Makefile.am +--- zabbix-6.0.13/src/zabbix_agent/logfiles/Makefile.am.out-of-tree 2023-01-27 02:18:53.054143943 -0700 ++++ zabbix-6.0.13/src/zabbix_agent/logfiles/Makefile.am 2023-02-16 12:12:40.740876096 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxlogfiles.a + + libzbxlogfiles_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_agent/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_agent/Makefile.am +--- zabbix-6.0.13/src/zabbix_agent/Makefile.am.out-of-tree 2023-02-01 00:19:54.620719532 -0700 ++++ zabbix-6.0.13/src/zabbix_agent/Makefile.am 2023-02-16 12:12:40.741876091 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + SUBDIRS = \ + logfiles + +@@ -78,4 +80,4 @@ zabbix_agentd_CFLAGS = \ + install-data-hook: + $(MKDIR_P) "$(DESTDIR)$(AGENT_CONFIG_FILE).d" + $(MKDIR_P) "$(DESTDIR)$(LOAD_MODULE_PATH)" +- test -f "$(DESTDIR)$(AGENT_CONFIG_FILE)" || cp "../../conf/zabbix_agentd.conf" "$(DESTDIR)$(AGENT_CONFIG_FILE)" ++ test -f "$(DESTDIR)$(AGENT_CONFIG_FILE)" || cp "$(top_srcdir)/conf/zabbix_agentd.conf" "$(DESTDIR)$(AGENT_CONFIG_FILE)" +diff -up zabbix-6.0.13/src/zabbix_get/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_get/Makefile.am +--- zabbix-6.0.13/src/zabbix_get/Makefile.am.out-of-tree 2023-02-01 00:19:54.624719569 -0700 ++++ zabbix-6.0.13/src/zabbix_get/Makefile.am 2023-02-16 12:12:40.741876091 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + bin_PROGRAMS = zabbix_get + + zabbix_get_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_java/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_java/Makefile.am +--- zabbix-6.0.13/src/zabbix_java/Makefile.am.out-of-tree 2023-02-01 00:19:54.624719569 -0700 ++++ zabbix-6.0.13/src/zabbix_java/Makefile.am 2023-02-16 12:12:40.742876086 -0700 +@@ -9,22 +9,22 @@ EXTRA_DIST = \ + startup.sh + + ZJG = bin/zabbix-java-gateway-$(VERSION).jar +-LIB = lib/android-json-4.3_r3.1.jar:lib/logback-core-1.2.9.jar:lib/logback-classic-1.2.9.jar:lib/slf4j-api-1.7.32.jar +-JUNIT = tests/junit-4.8.2.jar ++LIB = $(srcdir)/lib/android-json-4.3_r3.1.jar:$(srcdir)/lib/logback-core-1.2.3.jar:$(srcdir)/lib/logback-classic-1.2.3.jar:$(srcdir)/lib/slf4j-api-1.7.30.jar ++JUNIT = $(srcdir)/tests/junit-4.8.2.jar + + ZJG_DEST = $(DESTDIR)$(sbindir)/zabbix_java + + all: $(ZJG) + +-$(ZJG): class src/com/zabbix/gateway/*.java +- $(JAVAC) -d class/src -classpath $(LIB) src/com/zabbix/gateway/*.java ++$(ZJG): class $(srcdir)/src/com/zabbix/gateway/*.java ++ $(JAVAC) -d class/src -classpath $(LIB) $(srcdir)/src/com/zabbix/gateway/*.java + $(JAR) cf $(ZJG) -C class/src . + + test: class + echo "badger useruser" > tests/com/zabbix/gateway/jmx_test_beans/jmxremote.password + chmod 600 tests/com/zabbix/gateway/jmx_test_beans/jmxremote.password +- $(JAVAC) tests/com/zabbix/gateway/jmx_test_beans/*.java +- $(JAVAC) -d class/tests -classpath class/src:$(JUNIT) tests/com/zabbix/gateway/*.java ++ $(JAVAC) tests/com/zabbix/gateway/jmx_$(srcdir)/test_beans/*.java ++ $(JAVAC) -d class/tests -classpath class/src:$(JUNIT) $(srcdir)/tests/com/zabbix/gateway/*.java + java -classpath class/tests:$(LIB):$(ZJG):$(JUNIT) com.zabbix.gateway.AllTestRunner + + class: +diff -up zabbix-6.0.13/src/zabbix_js/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_js/Makefile.am +--- zabbix-6.0.13/src/zabbix_js/Makefile.am.out-of-tree 2023-02-01 00:19:54.624719569 -0700 ++++ zabbix-6.0.13/src/zabbix_js/Makefile.am 2023-02-16 12:12:40.743876081 -0700 +@@ -1,26 +1,28 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + bin_PROGRAMS = zabbix_js + + zabbix_js_SOURCES = zabbix_js.c + + zabbix_js_LDADD = \ +- $(top_srcdir)/src/libs/zbxlog/libzbxlog.a \ +- $(top_srcdir)/src/libs/zbxprof/libzbxprof.a \ +- $(top_srcdir)/src/libs/zbxembed/libzbxembed.a \ +- $(top_srcdir)/src/libs/zbxjson/libzbxjson.a \ +- $(top_srcdir)/src/libs/zbxregexp/libzbxregexp.a \ +- $(top_srcdir)/src/libs/zbxalgo/libzbxalgo.a \ +- $(top_srcdir)/src/libs/zbxsys/libzbxsys.a \ +- $(top_srcdir)/src/libs/zbxnix/libzbxnix.a \ +- $(top_srcdir)/src/libs/zbxcommon/libzbxcommon.a \ +- $(top_srcdir)/src/libs/zbxcomms/libzbxcomms.a \ +- $(top_srcdir)/src/libs/zbxconf/libzbxconf.a \ +- $(top_srcdir)/src/libs/zbxcommon/libzbxcommon.a \ +- $(top_srcdir)/src/libs/zbxcrypto/libzbxcrypto.a \ +- $(top_srcdir)/src/libs/zbxcompress/libzbxcompress.a \ +- $(top_srcdir)/src/libs/zbxhttp/libzbxhttp.a \ +- $(top_srcdir)/src/libs/zbxxml/libzbxxml.a ++ $(top_builddir)/src/libs/zbxlog/libzbxlog.a \ ++ $(top_builddir)/src/libs/zbxprof/libzbxprof.a \ ++ $(top_builddir)/src/libs/zbxembed/libzbxembed.a \ ++ $(top_builddir)/src/libs/zbxjson/libzbxjson.a \ ++ $(top_builddir)/src/libs/zbxregexp/libzbxregexp.a \ ++ $(top_builddir)/src/libs/zbxalgo/libzbxalgo.a \ ++ $(top_builddir)/src/libs/zbxsys/libzbxsys.a \ ++ $(top_builddir)/src/libs/zbxnix/libzbxnix.a \ ++ $(top_builddir)/src/libs/zbxcommon/libzbxcommon.a \ ++ $(top_builddir)/src/libs/zbxcomms/libzbxcomms.a \ ++ $(top_builddir)/src/libs/zbxconf/libzbxconf.a \ ++ $(top_builddir)/src/libs/zbxcommon/libzbxcommon.a \ ++ $(top_builddir)/src/libs/zbxcrypto/libzbxcrypto.a \ ++ $(top_builddir)/src/libs/zbxcompress/libzbxcompress.a \ ++ $(top_builddir)/src/libs/zbxhttp/libzbxhttp.a \ ++ $(top_builddir)/src/libs/zbxxml/libzbxxml.a + + zabbix_js_LDADD += @ZBXJS_LIBS@ $(LIBXML2_LIBS) + +diff -up zabbix-6.0.13/src/zabbix_proxy/datasender/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_proxy/datasender/Makefile.am +--- zabbix-6.0.13/src/zabbix_proxy/datasender/Makefile.am.out-of-tree 2023-01-23 01:33:45.991502925 -0700 ++++ zabbix-6.0.13/src/zabbix_proxy/datasender/Makefile.am 2023-02-16 12:12:40.744876076 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxdatasender.a + + libzbxdatasender_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_proxy/heart/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_proxy/heart/Makefile.am +--- zabbix-6.0.13/src/zabbix_proxy/heart/Makefile.am.out-of-tree 2023-01-27 02:18:53.058143998 -0700 ++++ zabbix-6.0.13/src/zabbix_proxy/heart/Makefile.am 2023-02-16 12:12:40.745876072 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxheart.a + + libzbxheart_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_proxy/housekeeper/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_proxy/housekeeper/Makefile.am +--- zabbix-6.0.13/src/zabbix_proxy/housekeeper/Makefile.am.out-of-tree 2023-01-23 01:33:45.991502925 -0700 ++++ zabbix-6.0.13/src/zabbix_proxy/housekeeper/Makefile.am 2023-02-16 12:12:40.746876067 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxhousekeeper.a + + libzbxhousekeeper_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_proxy/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_proxy/Makefile.am +--- zabbix-6.0.13/src/zabbix_proxy/Makefile.am.out-of-tree 2023-02-01 00:19:54.628719606 -0700 ++++ zabbix-6.0.13/src/zabbix_proxy/Makefile.am 2023-02-16 12:12:40.747876062 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + SUBDIRS = \ + heart \ + housekeeper \ +@@ -112,4 +114,4 @@ install-data-hook: + $(MKDIR_P) "$(DESTDIR)$(PROXY_CONFIG_FILE).d" + $(MKDIR_P) "$(DESTDIR)$(EXTERNAL_SCRIPTS_PATH)" + $(MKDIR_P) "$(DESTDIR)$(LOAD_MODULE_PATH)" +- test -f "$(DESTDIR)$(PROXY_CONFIG_FILE)" || cp "../../conf/zabbix_proxy.conf" "$(DESTDIR)$(PROXY_CONFIG_FILE)" ++ test -f "$(DESTDIR)$(PROXY_CONFIG_FILE)" || cp "$(top_srcdir)/conf/zabbix_proxy.conf" "$(DESTDIR)$(PROXY_CONFIG_FILE)" +diff -up zabbix-6.0.13/src/zabbix_proxy/proxyconfig/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_proxy/proxyconfig/Makefile.am +--- zabbix-6.0.13/src/zabbix_proxy/proxyconfig/Makefile.am.out-of-tree 2023-01-27 02:18:53.058143998 -0700 ++++ zabbix-6.0.13/src/zabbix_proxy/proxyconfig/Makefile.am 2023-02-16 12:12:40.747876062 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxproxyconfig.a + + libzbxproxyconfig_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_proxy/taskmanager/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_proxy/taskmanager/Makefile.am +--- zabbix-6.0.13/src/zabbix_proxy/taskmanager/Makefile.am.out-of-tree 2023-01-23 01:33:45.991502925 -0700 ++++ zabbix-6.0.13/src/zabbix_proxy/taskmanager/Makefile.am 2023-02-16 12:12:40.748876057 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxtaskmanager.a + + libzbxtaskmanager_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_sender/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_sender/Makefile.am +--- zabbix-6.0.13/src/zabbix_sender/Makefile.am.out-of-tree 2023-02-01 00:19:54.628719606 -0700 ++++ zabbix-6.0.13/src/zabbix_sender/Makefile.am 2023-02-16 12:12:40.749876052 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + bin_PROGRAMS = zabbix_sender + + zabbix_sender_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/alerter/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/alerter/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/alerter/Makefile.am.out-of-tree 2023-01-30 00:22:05.008328759 -0700 ++++ zabbix-6.0.13/src/zabbix_server/alerter/Makefile.am 2023-02-16 12:12:40.750876048 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxalerter.a + + libzbxalerter_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/availability/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/availability/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/availability/Makefile.am.out-of-tree 2023-02-01 00:19:54.632719646 -0700 ++++ zabbix-6.0.13/src/zabbix_server/availability/Makefile.am 2023-02-16 12:12:40.751876043 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libavailability.a + + libavailability_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/dbconfig/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/dbconfig/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/dbconfig/Makefile.am.out-of-tree 2023-01-27 02:18:53.066144108 -0700 ++++ zabbix-6.0.13/src/zabbix_server/dbconfig/Makefile.am 2023-02-16 12:12:40.751876043 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxdbconfig.a + + libzbxdbconfig_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/dbsyncer/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/dbsyncer/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/dbsyncer/Makefile.am.out-of-tree 2023-01-23 01:33:45.995502978 -0700 ++++ zabbix-6.0.13/src/zabbix_server/dbsyncer/Makefile.am 2023-02-16 12:12:40.752876038 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxdbsyncer.a + + libzbxdbsyncer_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/discoverer/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/discoverer/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/discoverer/Makefile.am.out-of-tree 2023-01-23 01:33:45.995502978 -0700 ++++ zabbix-6.0.13/src/zabbix_server/discoverer/Makefile.am 2023-02-16 12:12:40.753876034 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxdiscoverer.a + + libzbxdiscoverer_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/escalator/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/escalator/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/escalator/Makefile.am.out-of-tree 2023-01-23 01:33:45.995502978 -0700 ++++ zabbix-6.0.13/src/zabbix_server/escalator/Makefile.am 2023-02-16 12:12:40.754876029 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxescalator.a + + libzbxescalator_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/ha/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/ha/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/ha/Makefile.am.out-of-tree 2023-02-01 00:19:54.632719646 -0700 ++++ zabbix-6.0.13/src/zabbix_server/ha/Makefile.am 2023-02-16 12:12:40.754876029 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxha.a + + libzbxha_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/housekeeper/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/housekeeper/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/housekeeper/Makefile.am.out-of-tree 2023-02-01 00:19:54.632719646 -0700 ++++ zabbix-6.0.13/src/zabbix_server/housekeeper/Makefile.am 2023-02-16 12:12:40.755876024 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxhousekeeper.a + + libzbxhousekeeper_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/httppoller/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/httppoller/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/httppoller/Makefile.am.out-of-tree 2023-01-23 01:33:45.995502978 -0700 ++++ zabbix-6.0.13/src/zabbix_server/httppoller/Makefile.am 2023-02-16 12:12:40.756876019 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxhttppoller.a + + libzbxhttppoller_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/ipmi/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/ipmi/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/ipmi/Makefile.am.out-of-tree 2023-01-23 01:33:45.999503030 -0700 ++++ zabbix-6.0.13/src/zabbix_server/ipmi/Makefile.am 2023-02-16 12:12:40.758876010 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libipmi.a + + libipmi_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/lld/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/lld/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/lld/Makefile.am.out-of-tree 2023-01-30 00:22:05.012328788 -0700 ++++ zabbix-6.0.13/src/zabbix_server/lld/Makefile.am 2023-02-16 12:12:40.758876010 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxlld.a + + libzbxlld_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/Makefile.am.out-of-tree 2023-02-01 00:19:54.628719606 -0700 ++++ zabbix-6.0.13/src/zabbix_server/Makefile.am 2023-02-16 12:12:40.759876005 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + SUBDIRS = \ + alerter \ + dbsyncer \ +@@ -151,4 +153,4 @@ install-data-hook: + $(MKDIR_P) "$(DESTDIR)$(EXTERNAL_SCRIPTS_PATH)" + $(MKDIR_P) "$(DESTDIR)$(ALERT_SCRIPTS_PATH)" + $(MKDIR_P) "$(DESTDIR)$(LOAD_MODULE_PATH)" +- test -f "$(DESTDIR)$(SERVER_CONFIG_FILE)" || cp "../../conf/zabbix_server.conf" "$(DESTDIR)$(SERVER_CONFIG_FILE)" ++ test -f "$(DESTDIR)$(SERVER_CONFIG_FILE)" || cp "$(top_srcdir)/conf/zabbix_server.conf" "$(DESTDIR)$(SERVER_CONFIG_FILE)" +diff -up zabbix-6.0.13/src/zabbix_server/odbc/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/odbc/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/odbc/Makefile.am.out-of-tree 2023-01-23 01:33:45.999503030 -0700 ++++ zabbix-6.0.13/src/zabbix_server/odbc/Makefile.am 2023-02-16 12:12:40.760876000 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxodbc.a + + libzbxodbc_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/pinger/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/pinger/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/pinger/Makefile.am.out-of-tree 2023-01-23 01:33:45.999503030 -0700 ++++ zabbix-6.0.13/src/zabbix_server/pinger/Makefile.am 2023-02-16 12:12:40.761875995 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxpinger.a + + libzbxpinger_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/poller/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/poller/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/poller/Makefile.am.out-of-tree 2023-02-01 00:19:54.640719721 -0700 ++++ zabbix-6.0.13/src/zabbix_server/poller/Makefile.am 2023-02-16 12:12:40.761875995 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxpoller.a libzbxpoller_server.a libzbxpoller_proxy.a + + libzbxpoller_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/preprocessor/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/preprocessor/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/preprocessor/Makefile.am.out-of-tree 2023-02-01 00:19:54.644719758 -0700 ++++ zabbix-6.0.13/src/zabbix_server/preprocessor/Makefile.am 2023-02-16 12:12:40.763875986 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libpreprocessor.a + + libpreprocessor_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/proxypoller/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/proxypoller/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/proxypoller/Makefile.am.out-of-tree 2023-01-27 02:18:53.086144382 -0700 ++++ zabbix-6.0.13/src/zabbix_server/proxypoller/Makefile.am 2023-02-16 12:12:40.764875981 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxproxypoller.a + + libzbxproxypoller_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/reporter/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/reporter/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/reporter/Makefile.am.out-of-tree 2023-02-01 00:19:54.648719797 -0700 ++++ zabbix-6.0.13/src/zabbix_server/reporter/Makefile.am 2023-02-16 12:12:40.766875971 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxreporter.a + + libzbxreporter_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/scripts/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/scripts/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/scripts/Makefile.am.out-of-tree 2023-01-23 01:33:46.007503136 -0700 ++++ zabbix-6.0.13/src/zabbix_server/scripts/Makefile.am 2023-02-16 12:12:40.767875967 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxscripts.a + + libzbxscripts_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/selfmon/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/selfmon/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/selfmon/Makefile.am.out-of-tree 2023-01-27 02:18:53.086144382 -0700 ++++ zabbix-6.0.13/src/zabbix_server/selfmon/Makefile.am 2023-02-16 12:12:40.769875957 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxselfmon.a + + libzbxselfmon_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/service/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/service/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/service/Makefile.am.out-of-tree 2023-02-01 00:19:54.648719797 -0700 ++++ zabbix-6.0.13/src/zabbix_server/service/Makefile.am 2023-02-16 12:12:40.770875952 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libservice.a + + libservice_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/snmptrapper/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/snmptrapper/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/snmptrapper/Makefile.am.out-of-tree 2023-01-23 01:33:46.007503136 -0700 ++++ zabbix-6.0.13/src/zabbix_server/snmptrapper/Makefile.am 2023-02-16 12:12:40.772875943 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxsnmptrapper.a + + libzbxsnmptrapper_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/taskmanager/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/taskmanager/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/taskmanager/Makefile.am.out-of-tree 2023-01-23 01:33:46.007503136 -0700 ++++ zabbix-6.0.13/src/zabbix_server/taskmanager/Makefile.am 2023-02-16 12:12:40.773875938 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxtaskmanager.a + + libzbxtaskmanager_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/timer/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/timer/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/timer/Makefile.am.out-of-tree 2023-01-23 01:33:46.007503136 -0700 ++++ zabbix-6.0.13/src/zabbix_server/timer/Makefile.am 2023-02-16 12:12:40.773875938 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxtimer.a + + libzbxtimer_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/trapper/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/trapper/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/trapper/Makefile.am.out-of-tree 2023-02-01 00:19:54.648719797 -0700 ++++ zabbix-6.0.13/src/zabbix_server/trapper/Makefile.am 2023-02-16 12:12:40.774875933 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxtrapper.a libzbxtrapper_server.a libzbxtrapper_proxy.a + + libzbxtrapper_a_SOURCES = \ +diff -up zabbix-6.0.13/src/zabbix_server/vmware/Makefile.am.out-of-tree zabbix-6.0.13/src/zabbix_server/vmware/Makefile.am +--- zabbix-6.0.13/src/zabbix_server/vmware/Makefile.am.out-of-tree 2023-01-30 00:22:05.028328900 -0700 ++++ zabbix-6.0.13/src/zabbix_server/vmware/Makefile.am 2023-02-16 12:12:40.775875929 -0700 +@@ -1,5 +1,7 @@ + ## Process this file with automake to produce Makefile.in + ++AM_CPPFLAGS = -I$(top_srcdir)/include ++ + noinst_LIBRARIES = libzbxvmware.a + + libzbxvmware_a_SOURCES = \ diff --git a/zabbix-php-fpm.conf b/zabbix-php-fpm.conf new file mode 100644 index 0000000..fa38188 --- /dev/null +++ b/zabbix-php-fpm.conf @@ -0,0 +1,24 @@ +[zabbix] +user = apache +group = apache + +listen = /run/php-fpm/zabbix.sock +listen.acl_users = apache,nginx +listen.allowed_clients = 127.0.0.1 + +pm = dynamic +pm.max_children = 50 +pm.start_servers = 5 +pm.min_spare_servers = 5 +pm.max_spare_servers = 35 + +php_value[session.save_handler] = files +php_value[session.save_path] = /var/lib/php/session + +php_value[max_execution_time] = 300 +php_value[memory_limit] = 128M +php_value[post_max_size] = 16M +php_value[upload_max_filesize] = 2M +php_value[max_input_time] = 300 +php_value[max_input_vars] = 10000 +; php_value[date.timezone] = Europe/Riga diff --git a/zabbix-proxy-mysql.service b/zabbix-proxy-mysql.service new file mode 100644 index 0000000..ac9fad0 --- /dev/null +++ b/zabbix-proxy-mysql.service @@ -0,0 +1,11 @@ +[Unit] +Description=Zabbix MySQL Proxy +After=syslog.target network.target mysqld.service + +[Service] +Type=simple +ExecStart=/usr/sbin/zabbix_proxy -f +User=zabbixsrv + +[Install] +WantedBy=multi-user.target diff --git a/zabbix-proxy-pgsql.service b/zabbix-proxy-pgsql.service new file mode 100644 index 0000000..f31cbac --- /dev/null +++ b/zabbix-proxy-pgsql.service @@ -0,0 +1,11 @@ +[Unit] +Description=Zabbix PostgreSQL Proxy +After=syslog.target network.target postgresql.service + +[Service] +Type=simple +ExecStart=/usr/sbin/zabbix_proxy -f +User=zabbixsrv + +[Install] +WantedBy=multi-user.target diff --git a/zabbix-proxy-sqlite3.service b/zabbix-proxy-sqlite3.service new file mode 100644 index 0000000..703d7cd --- /dev/null +++ b/zabbix-proxy-sqlite3.service @@ -0,0 +1,11 @@ +[Unit] +Description=Zabbix SQLite3 Proxy +After=syslog.target network.target + +[Service] +Type=simple +ExecStart=/usr/sbin/zabbix_proxy -f +User=zabbixsrv + +[Install] +WantedBy=multi-user.target diff --git a/zabbix-server-mysql.service b/zabbix-server-mysql.service new file mode 100644 index 0000000..d8d8a5a --- /dev/null +++ b/zabbix-server-mysql.service @@ -0,0 +1,11 @@ +[Unit] +Description=Zabbix Server with MySQL DB +After=syslog.target network.target mysqld.service + +[Service] +Type=simple +ExecStart=/usr/sbin/zabbix_server -f +User=zabbixsrv + +[Install] +WantedBy=multi-user.target diff --git a/zabbix-server-pgsql.service b/zabbix-server-pgsql.service new file mode 100644 index 0000000..182b7e1 --- /dev/null +++ b/zabbix-server-pgsql.service @@ -0,0 +1,11 @@ +[Unit] +Description=Zabbix Server with PostgreSQL DB +After=syslog.target network.target postgresql.service + +[Service] +Type=simple +ExecStart=/usr/sbin/zabbix_server -f +User=zabbixsrv + +[Install] +WantedBy=multi-user.target diff --git a/zabbix-tmpfiles-zabbix.conf b/zabbix-tmpfiles-zabbix.conf new file mode 100644 index 0000000..cce12dd --- /dev/null +++ b/zabbix-tmpfiles-zabbix.conf @@ -0,0 +1 @@ +D /run/zabbix 0755 zabbix zabbix - diff --git a/zabbix-tmpfiles-zabbixsrv.conf b/zabbix-tmpfiles-zabbixsrv.conf new file mode 100644 index 0000000..f3f4b90 --- /dev/null +++ b/zabbix-tmpfiles-zabbixsrv.conf @@ -0,0 +1 @@ +D /run/zabbixsrv 0755 zabbixsrv zabbixsrv - diff --git a/zabbix-web.conf b/zabbix-web.conf new file mode 100644 index 0000000..34c38b4 --- /dev/null +++ b/zabbix-web.conf @@ -0,0 +1,35 @@ +# +# Zabbix monitoring system php web frontend +# + +Alias /zabbix /usr/share/zabbix + +<Directory "/usr/share/zabbix"> + Options FollowSymLinks + AllowOverride None + Require all granted + + <IfModule dir_module> + DirectoryIndex index.php + </IfModule> + + <FilesMatch \.(php|phar)$> + SetHandler "proxy:unix:/run/php-fpm/zabbix.sock|fcgi://localhost" + </FilesMatch> +</Directory> + +<Directory "/usr/share/zabbix/conf"> + Require all denied +</Directory> + +<Directory "/usr/share/zabbix/app"> + Require all denied +</Directory> + +<Directory "/usr/share/zabbix/include"> + Require all denied +</Directory> + +<Directory "/usr/share/zabbix/local"> + Require all denied +</Directory> diff --git a/zabbix.fc b/zabbix.fc new file mode 100644 index 0000000..a1e3556 --- /dev/null +++ b/zabbix.fc @@ -0,0 +1,25 @@ +/etc/rc\.d/init\.d/(zabbix|zabbix-server) -- gen_context(system_u:object_r:zabbix_initrc_exec_t,s0) +/etc/rc\.d/init\.d/zabbix-agentd -- gen_context(system_u:object_r:zabbix_agent_initrc_exec_t,s0) + +/usr/bin/zabbix_server -- gen_context(system_u:object_r:zabbix_exec_t,s0) +/usr/bin/zabbix_agentd -- gen_context(system_u:object_r:zabbix_agent_exec_t,s0) + +/usr/sbin/zabbix_agentd -- gen_context(system_u:object_r:zabbix_agent_exec_t,s0) +/usr/sbin/zabbix_server -- gen_context(system_u:object_r:zabbix_exec_t,s0) +/usr/sbin/zabbix_server_mysql -- gen_context(system_u:object_r:zabbix_exec_t,s0) +/usr/sbin/zabbix_server_pgsql -- gen_context(system_u:object_r:zabbix_exec_t,s0) +/usr/sbin/zabbix_server_sqlite3 -- gen_context(system_u:object_r:zabbix_exec_t,s0) +/usr/sbin/zabbix_proxy -- gen_context(system_u:object_r:zabbix_exec_t,s0) +/usr/sbin/zabbix_proxy_mysql -- gen_context(system_u:object_r:zabbix_exec_t,s0) +/usr/sbin/zabbix_proxy_pgsql -- gen_context(system_u:object_r:zabbix_exec_t,s0) +/usr/sbin/zabbix_proxy_sqlite3 -- gen_context(system_u:object_r:zabbix_exec_t,s0) + +/var/lib/zabbix(/.*)? gen_context(system_u:object_r:zabbix_var_lib_t,s0) + +/var/lib/zabbixsrv(/.*)? gen_context(system_u:object_r:zabbix_var_lib_t,s0) +/var/lib/zabbixsrv/.*scripts(/.*)? gen_context(system_u:object_r:zabbix_script_exec_t,s0) +/var/lib/zabbixsrv/tmp(/.*)? gen_context(system_u:object_r:zabbix_tmp_t,s0) + +/var/log/zabbix.* gen_context(system_u:object_r:zabbix_log_t,s0) + +/var/run/zabbix(/.*)? gen_context(system_u:object_r:zabbix_var_run_t,s0) diff --git a/zabbix.if b/zabbix.if new file mode 100644 index 0000000..7cf8202 --- /dev/null +++ b/zabbix.if @@ -0,0 +1,199 @@ +## <summary>Distributed infrastructure monitoring</summary> + +######################################## +## <summary> +## Execute a domain transition to run zabbix. +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed to transition. +## </summary> +## </param> +# +interface(`zabbix_domtrans',` + gen_require(` + type zabbix_t, zabbix_exec_t; + ') + + domtrans_pattern($1, zabbix_exec_t, zabbix_t) +') + +######################################## +## <summary> +## Execute a domain transition to run zabbix_script. +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed to transition. +## </summary> +## </param> +# +interface(`zabbix_script_domtrans',` + gen_require(` + type zabbix_script_t, zabbix_script_exec_t; + ') + + domtrans_pattern($1, zabbix_script_exec_t, zabbix_script_t) +') + +######################################## +## <summary> +## Allow connectivity to the zabbix server +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +# +interface(`zabbix_tcp_connect',` + gen_require(` + type zabbix_t; + ') + + corenet_sendrecv_zabbix_agent_client_packets($1) + corenet_tcp_connect_zabbix_port($1) + corenet_tcp_recvfrom_labeled($1, zabbix_t) + corenet_tcp_sendrecv_zabbix_port($1) +') + +######################################## +## <summary> +## Allow the specified domain to read zabbix's log files. +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +## <rolecap/> +# +interface(`zabbix_read_log',` + gen_require(` + type zabbix_log_t; + ') + + logging_search_logs($1) + read_files_pattern($1, zabbix_log_t, zabbix_log_t) +') + +######################################## +## <summary> +## Allow the specified domain to read zabbix's tmp files. +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +## <rolecap/> +# +interface(`zabbix_read_tmp',` + gen_require(` + type zabbix_tmp_t; + ') + + files_search_tmp($1) + read_files_pattern($1, zabbix_tmp_t, zabbix_tmp_t) +') + +######################################## +## <summary> +## Allow the specified domain to append +## zabbix log files. +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +# +interface(`zabbix_append_log',` + gen_require(` + type zabbix_log_t; + ') + + logging_search_logs($1) + append_files_pattern($1, zabbix_log_t, zabbix_log_t) +') + +######################################## +## <summary> +## Read zabbix PID files. +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +# +interface(`zabbix_read_pid_files',` + gen_require(` + type zabbix_var_run_t; + ') + + files_search_pids($1) + allow $1 zabbix_var_run_t:file read_file_perms; +') + +######################################## +## <summary> +## Allow connectivity to a zabbix agent +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +# +interface(`zabbix_agent_tcp_connect',` + gen_require(` + type zabbix_t, zabbix_agent_t; + ') + + corenet_sendrecv_zabbix_agent_client_packets($1) + corenet_tcp_connect_zabbix_agent_port($1) + corenet_tcp_recvfrom_labeled($1, zabbix_t) + corenet_tcp_sendrecv_zabbix_agent_port($1) +') + +######################################## +## <summary> +## All of the rules required to administrate +## an zabbix environment +## </summary> +## <param name="domain"> +## <summary> +## Domain allowed access. +## </summary> +## </param> +## <param name="role"> +## <summary> +## The role to be allowed to manage the zabbix domain. +## </summary> +## </param> +## <rolecap/> +# +interface(`zabbix_admin',` + gen_require(` + type zabbix_t, zabbix_log_t, zabbix_var_run_t; + type zabbix_initrc_exec_t; + ') + + allow $1 zabbix_t:process signal_perms; + ps_process_pattern($1, zabbix_t) + tunable_policy(`deny_ptrace',`',` + allow $1 zabbix_t:process ptrace; + ') + + init_labeled_script_domtrans($1, zabbix_initrc_exec_t) + domain_system_change_exemption($1) + role_transition $2 zabbix_initrc_exec_t system_r; + allow $2 system_r; + + logging_list_logs($1) + admin_pattern($1, zabbix_log_t) + + files_list_pids($1) + admin_pattern($1, zabbix_var_run_t) +') diff --git a/zabbix.spec b/zabbix.spec new file mode 100644 index 0000000..50021a3 --- /dev/null +++ b/zabbix.spec @@ -0,0 +1,704 @@ +%global srcname zabbix + +Name: zabbix +Version: 6.0.20 +Release: 1 +Summary: The Enterprise-class open source monitoring solution +License: GPLv2 +URL: http://www.zabbix.com/ +Source0: https://cdn.zabbix.com/zabbix/sources/stable/6.0/zabbix-%{version}.tar.gz +Source1: %{srcname}-web.conf +Source2: %{srcname}-php-fpm.conf +Source5: %{srcname}-logrotate.in +Source9: %{srcname}-tmpfiles-zabbix.conf +# systemd units -- Alternatives switches between them (they state their dependencies) +# https://support.zabbix.com/browse/ZBXNEXT-1593 +Source10: %{srcname}-agent.service +Source11: %{srcname}-proxy-mysql.service +Source12: %{srcname}-proxy-pgsql.service +Source13: %{srcname}-proxy-sqlite3.service +Source14: %{srcname}-server-mysql.service +Source15: %{srcname}-server-pgsql.service +Source17: %{srcname}-tmpfiles-zabbixsrv.conf +Source18: %{srcname}.te +Source19: %{srcname}.if +Source20: %{srcname}.fc + +# This is not a symlink, because we don't want the webserver to possibly ever serve it. +# local rules for config files +Patch0: %{srcname}-config.patch +# Allow out-of-tree builds +# https://support.zabbix.com/browse/ZBXNEXT-6077 +Patch1: %{srcname}-out-of-tree.patch +# Enforce Fedora Crypto Policy +Patch2: %{srcname}-crypto-policy.patch +Patch3: %{srcname}-configure-sscanf.patch + +# Patch1 patches automake files so we need to autoreconf +BuildRequires: libtool +BuildRequires: make +BuildRequires: mysql-devel +BuildRequires: libpq-devel +BuildRequires: sqlite-devel +BuildRequires: net-snmp-devel +BuildRequires: openldap-devel +BuildRequires: openssl-devel +BuildRequires: gnutls-devel +BuildRequires: unixODBC-devel +BuildRequires: curl-devel +BuildRequires: OpenIPMI-devel +BuildRequires: libssh2-devel +BuildRequires: libxml2-devel +BuildRequires: libevent-devel +BuildRequires: pcre2-devel +BuildRequires: gcc + +BuildRequires: systemd +BuildRequires: dejavu-sans-fonts + +Requires: logrotate +Provides: bundled(md5-deutsch) + +%description +Zabbix is software that monitors numerous parameters of a network and the +health and integrity of servers. Zabbix uses a flexible notification mechanism +that allows users to configure e-mail based alerts for virtually any event. +This allows a fast reaction to server problems. Zabbix offers excellent +reporting and data visualization features based on the stored data. +This makes Zabbix ideal for capacity planning. + +Zabbix supports both polling and trapping. All Zabbix reports and statistics, +as well as configuration parameters are accessed through a web-based front end. +A web-based front end ensures that the status of your network and the health of +your servers can be assessed from any location. Properly configured, Zabbix can +play an important role in monitoring IT infrastructure. This is equally true +for small organizations with a few servers and for large companies with a +multitude of servers. + +%package dbfiles-mysql +Summary: Zabbix database schemas, images, data and patches +BuildArch: noarch + +%description dbfiles-mysql +Zabbix database schemas, images, data and patches necessary for creating +and/or updating MySQL databases + +%package dbfiles-pgsql +Summary: Zabbix database schemas, images, data and patches +BuildArch: noarch + +%description dbfiles-pgsql +Zabbix database schemas, images, data and patches necessary for creating +and/or updating PostgreSQL databases + +%package dbfiles-sqlite3 +Summary: Zabbix database schemas and patches +BuildArch: noarch + +%description dbfiles-sqlite3 +Zabbix database schemas and patches necessary for creating +and/or updating SQLite databases + +%package server +Summary: Zabbix server common files +BuildArch: noarch +Requires: %{name} = %{version}-%{release} +Requires: %{name}-server-implementation = %{version}-%{release} +Requires: fping +Requires: traceroute +Requires(pre): shadow-utils +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd + +%description server +Zabbix server common files + +%package server-mysql +Summary: Zabbix server compiled to use MySQL +Requires: %{name} = %{version}-%{release} +Requires: %{name}-dbfiles-mysql +Requires: %{name}-server = %{version}-%{release} +Requires(post): %{_sbindir}/update-alternatives +Requires(preun): %{_sbindir}/alternatives +Requires(postun): %{_sbindir}/update-alternatives +Provides: %{name}-server-implementation = %{version}-%{release} + +%description server-mysql +Zabbix server compiled to use MySQL + +%package server-pgsql +Summary: Zabbix server compiled to use PostgreSQL +Requires: %{name} = %{version}-%{release} +Requires: %{name}-server = %{version}-%{release} +Requires: %{name}-dbfiles-pgsql +Requires(post): %{_sbindir}/update-alternatives +Requires(preun): %{_sbindir}/alternatives +Requires(postun): %{_sbindir}/update-alternatives +Provides: %{name}-server-implementation = %{version}-%{release} + +%description server-pgsql +Zabbix server compiled to use PostgreSQL + +%package agent +Summary: Zabbix agent +Requires: %{name} = %{version}-%{release} +Requires(pre): shadow-utils +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd + +%description agent +Zabbix agent, to be installed on monitored systems + +%package proxy +Summary: Zabbix proxy common files +BuildArch: noarch +Requires: %{name} = %{version}-%{release} +Requires: %{name}-proxy-implementation = %{version}-%{release} +Requires(pre): shadow-utils +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd +Requires: fping + +%description proxy +Zabbix proxy commmon files + +%package proxy-mysql +Summary: Zabbix proxy compiled to use MySQL +Requires: %{name}-proxy = %{version}-%{release} +Requires: %{name}-dbfiles-mysql +Provides: %{name}-proxy-implementation = %{version}-%{release} +Requires(post): %{_sbindir}/update-alternatives +Requires(preun): %{_sbindir}/alternatives +Requires(postun): %{_sbindir}/update-alternatives + +%description proxy-mysql +Zabbix proxy compiled to use MySQL + +%package proxy-pgsql +Summary: Zabbix proxy compiled to use PostgreSQL +Requires: %{name}-proxy = %{version}-%{release} +Requires: %{name}-dbfiles-pgsql +Provides: %{name}-proxy-implementation = %{version}-%{release} +Requires(post): %{_sbindir}/update-alternatives +Requires(preun): %{_sbindir}/alternatives +Requires(postun): %{_sbindir}/update-alternatives + +%description proxy-pgsql +Zabbix proxy compiled to use PostgreSQL + +%package proxy-sqlite3 +Summary: Zabbix proxy compiled to use SQLite +Requires: %{name}-proxy = %{version}-%{release} +Requires: %{name}-dbfiles-sqlite3 +Provides: %{name}-proxy-implementation = %{version}-%{release} +Requires(post): %{_sbindir}/update-alternatives +Requires(preun): %{_sbindir}/alternatives +Requires(postun): %{_sbindir}/update-alternatives + +%description proxy-sqlite3 +Zabbix proxy compiled to use SQLite + +%package web +Summary: Zabbix Web Frontend +BuildArch: noarch +Requires: php-bcmath +Requires: php-fpm +Requires: php-gd +Requires: php-gettext +Requires: php-json +Requires: php-ldap +Requires: php-mbstring +Requires: php-xml +# jquery 3.3.1 and jquery-ui 1.12.1 in the sources +Requires: js-jquery >= 3.6.0 +Provides: bundled(js-jquery-ui) = 1.12.1 +# prototype 1.6.1 in the sources, Fedora package is dead +#Requires: prototype +Requires: dejavu-sans-fonts +Requires: %{name} = %{version}-%{release} +Requires: %{name}-web-database = %{version}-%{release} + +%description web +The php frontend to display the Zabbix web interface. + +%package web-mysql +Summary: Zabbix web frontend for MySQL +BuildArch: noarch +Requires: %{name}-web = %{version}-%{release} +Requires: php-mysqli +Provides: %{name}-web-database = %{version}-%{release} + +%description web-mysql +Zabbix web frontend for MySQL + +%package web-pgsql +Summary: Zabbix web frontend for PostgreSQL +BuildArch: noarch +Requires: %{name}-web = %{version}-%{release} +Requires: php-pgsql +Provides: %{name}-web-database = %{version}-%{release} + +%description web-pgsql +Zabbix web frontend for PostgreSQL + +%prep +%autosetup -p1 + +autoreconf + +# Remove bundled java libs +find -name \*.jar -delete + +# Remove prebuilt Windows binaries +rm -rf bin + +# Override creation of statically named directory for alertscripts and externalscripts +# https://support.zabbix.com/browse/ZBX-6159 +sed -i '/CURL_SSL_.*_LOCATION\|SCRIPTS_PATH/s|\${datadir}/zabbix|/var/lib/zabbixsrv|' \ + configure + +# Kill off .htaccess files, options set in SOURCE1 +find -name .htaccess -delete + +# Fix path to traceroute utility (on all Linux targets) +find database -name 'data.sql' -exec sed -i 's|/usr/bin/traceroute|/bin/traceroute|' {} \; + +# Common +# Settings with hard-coded defaults that are not suitable for Fedora +# are explicitly set, leaving the comment with the default value in place. +# Settings without hard-coded defaults are simply replaced -- be they +# comments or explicit settings! + +# Also replace the datadir placeholder that is not expanded, but effective +sed -i \ + -e '\|^# LogFileSize=.*|a LogFileSize=0' \ + -e 's|^DBUser=root|DBUser=zabbix|' \ + -e 's|^# DBSocket=.*|DBSocket=%{_sharedstatedir}/mysql/mysql.sock|' \ + -e '\|^# ExternalScripts=|a ExternalScripts=%{_sharedstatedir}/zabbixsrv/externalscripts' \ + -e '\|^# AlertScriptsPath=|a AlertScriptsPath=%{_sharedstatedir}/zabbixsrv/alertscripts' \ + -e '\|^# TmpDir=\/tmp|a TmpDir=%{_sharedstatedir}/zabbixsrv/tmp' \ + -e 's|/usr/local||' \ + -e 's|\${datadir}|/usr/share|' \ + conf/zabbix_agentd.conf conf/zabbix_proxy.conf conf/zabbix_server.conf + +# Specific +sed -i \ + -e '\|^# PidFile=.*|a PidFile=%{_rundir}/zabbix/zabbix_agentd.pid' \ + -e 's|^LogFile=.*|LogFile=%{_localstatedir}/log/zabbix/zabbix_agentd.log|' \ + conf/zabbix_agentd.conf + +sed -i \ + -e '\|^# PidFile=.*|a PidFile=%{_rundir}/zabbixsrv/zabbix_proxy.pid' \ + -e 's|^LogFile=.*|LogFile=%{_localstatedir}/log/zabbixsrv/zabbix_proxy.log|' \ + conf/zabbix_proxy.conf + +sed -i \ + -e '\|^# PidFile=.*|a PidFile=%{_rundir}/zabbixsrv/zabbix_server.pid' \ + -e 's|^LogFile=.*|LogFile=%{_localstatedir}/log/zabbixsrv/zabbix_server.log|' \ + conf/zabbix_server.conf + + +%build + +common_flags=" + --enable-dependency-tracking + --enable-proxy + --enable-ipv6 + --with-net-snmp + --with-ldap + --with-libcurl + --with-openipmi + --with-unixodbc + --with-ssh2 + --with-libxml2 + --with-libevent + --with-libpcre2 + --with-openssl +" +# Setup out of tree builds +%global _configure ../configure + +%if %{with java} +export CLASSPATH=$(build-classpath junit slf4j-api logback-core logback-classic android-json) +%endif + +# Frontend doesn't work for SQLite, thus don't build server +mkdir -p build-frontend +cd build-frontend +%configure $common_flags --enable-agent --with-sqlite3 %{?with_go:--enable-agent2} %{?with_java:--enable-java} +%make_build +cd - + +mkdir -p build-server-mysql +cd build-server-mysql +%configure $common_flags --with-mysql --enable-server +%make_build +cd - + +mkdir -p build-server-postgresql +cd build-server-postgresql +%configure $common_flags --with-postgresql --enable-server +%make_build +cd - + +%if 0%{?with_selinux} +# SELinux policy (originally from selinux-policy-contrib) +# this policy module will override the production module +mkdir selinux +cp -p %{SOURCE18} selinux/ +cp -p %{SOURCE19} selinux/ +cp -p %{SOURCE20} selinux/ + +make -f %{_datadir}/selinux/devel/Makefile %{srcname}.pp +bzip2 -9 %{srcname}.pp +%endif + + +%install +# Install binaries +%make_install -C build-frontend +mv $RPM_BUILD_ROOT%{_sbindir}/zabbix_proxy{,_sqlite3} +%make_install -C build-server-mysql +mv $RPM_BUILD_ROOT%{_sbindir}/zabbix_proxy{,_mysql} +mv $RPM_BUILD_ROOT%{_sbindir}/zabbix_server{,_mysql} +%make_install -C build-server-postgresql +mv $RPM_BUILD_ROOT%{_sbindir}/zabbix_proxy{,_pgsql} +mv $RPM_BUILD_ROOT%{_sbindir}/zabbix_server{,_pgsql} + +# Ghosted alternatives +touch $RPM_BUILD_ROOT%{_sbindir}/zabbix_{proxy,server} + +# Home directory for the agent; +# The other home directory is created during installation +mkdir -p $RPM_BUILD_ROOT%{_sharedstatedir}/zabbix + +# Log directories +mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/zabbix +mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/zabbixsrv + +# systemd tmpfiles +mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib/tmpfiles.d +install -m 0644 -p %{SOURCE9} $RPM_BUILD_ROOT%{_prefix}/lib/tmpfiles.d/zabbix.conf +install -m 0644 -p %{SOURCE17} $RPM_BUILD_ROOT%{_prefix}/lib/tmpfiles.d/zabbixsrv.conf +mkdir -p $RPM_BUILD_ROOT%{_rundir} +install -d -m 0755 $RPM_BUILD_ROOT%{_rundir}/zabbix/ +install -d -m 0755 $RPM_BUILD_ROOT%{_rundir}/zabbixsrv/ + +# Install the frontend after removing backup files from patching +find ui -name '*.orig' -delete +mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{srcname} +cp -a ui/* $RPM_BUILD_ROOT%{_datadir}/%{srcname}/ + +# Prepare ghosted config file +mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/%{srcname}/web +touch $RPM_BUILD_ROOT%{_sysconfdir}/%{srcname}/web/zabbix.conf.php + +# Replace bundled font +[ -d %{_fontbasedir}/dejavu ] && + ln -sf ../../../fonts/dejavu/DejaVuSans.ttf $RPM_BUILD_ROOT%{_datadir}/%{srcname}/assets/fonts/ +[ -d %{_fontbasedir}/dejavu-sans-fonts ] && + ln -sf ../../../fonts/dejavu-sans-fonts/DejaVuSans.ttf $RPM_BUILD_ROOT%{_datadir}/%{srcname}/assets/fonts/ + +# Replace JS libraries +# There is no jquery-ui package yet +ln -sf ../../../javascript/jquery/3/jquery.min.js $RPM_BUILD_ROOT%{_datadir}/%{srcname}/js/vendors/jquery.js +#ln -sf ../../../javascript/jquery-ui/1/jquery-ui.min.js $RPM_BUILD_ROOT%{_datadir}/%{srcname}/js/vendors/jquery-ui.js + +# This file is used to switch the frontend to maintenance mode +mv $RPM_BUILD_ROOT%{_datadir}/%{srcname}/conf/maintenance.inc.php $RPM_BUILD_ROOT%{_sysconfdir}/%{srcname}/web/maintenance.inc.php || : + +# Drop Apache config file in place +mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d +install -m 0644 -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/%{srcname}.conf + +# Drop php-fpm config file in place +mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/php-fpm.d +install -m 0644 -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/php-fpm.d/%{srcname}.conf + +# Install log rotation +mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d +sed -e 's|COMPONENT|agentd|g; s|USER|zabbix|g' %{SOURCE5} > \ + $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/zabbix-agent +sed -e 's|COMPONENT|server|g; s|USER|zabbixsrv|g' %{SOURCE5} > \ + $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/zabbix-server +sed -e 's|COMPONENT|proxy|g; s|USER|zabbixsrv|g' %{SOURCE5} > \ + $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/zabbix-proxy + +# Install different systemd units because of the requirements for DBMS daemons +mkdir -p $RPM_BUILD_ROOT%{_unitdir} +install -m 0644 -p %{SOURCE10} $RPM_BUILD_ROOT%{_unitdir}/zabbix-agent.service +install -m 0644 -p %{SOURCE11} $RPM_BUILD_ROOT%{_unitdir}/zabbix-proxy-mysql.service +install -m 0644 -p %{SOURCE12} $RPM_BUILD_ROOT%{_unitdir}/zabbix-proxy-pgsql.service +install -m 0644 -p %{SOURCE13} $RPM_BUILD_ROOT%{_unitdir}/zabbix-proxy-sqlite3.service +install -m 0644 -p %{SOURCE14} $RPM_BUILD_ROOT%{_unitdir}/zabbix-server-mysql.service +install -m 0644 -p %{SOURCE15} $RPM_BUILD_ROOT%{_unitdir}/zabbix-server-pgsql.service + +# Ghosted alternatives +touch $RPM_BUILD_ROOT%{_unitdir}/zabbix-server.service +touch $RPM_BUILD_ROOT%{_unitdir}/zabbix-proxy.service + +# Directory for fping spooling files +mkdir -p $RPM_BUILD_ROOT%{_sharedstatedir}/zabbixsrv/tmp + +# Install sql files +for db in postgresql mysql; do + mkdir $RPM_BUILD_ROOT%{_datadir}/%{srcname}-$db + cp -p database/$db/*.sql $RPM_BUILD_ROOT%{_datadir}/%{srcname}-$db +done + +install -dm 755 $RPM_BUILD_ROOT%{_datadir}/%{srcname}-sqlite3 +cp -p database/sqlite3/schema.sql $RPM_BUILD_ROOT%{_datadir}/%{srcname}-sqlite3 + +%post server +%systemd_post zabbix-server.service + +if [ $1 -gt 1 ] ; then + # Apply permissions also in *.rpmnew upgrades from old permissive ones + chmod 0640 %{_sysconfdir}/zabbix_server.conf + chown root:zabbixsrv %{_sysconfdir}/zabbix_server.conf +fi +: + +%post server-mysql +%{_sbindir}/update-alternatives --install %{_sbindir}/%{srcname}_server \ + %{srcname}-server %{_sbindir}/%{srcname}_server_mysql 10 \ + --slave %{_unitdir}/zabbix-server.service %{srcname}-server-systemd \ + %{_unitdir}/zabbix-server-mysql.service + +%post server-pgsql +%{_sbindir}/update-alternatives --install %{_sbindir}/%{srcname}_server \ + %{srcname}-server %{_sbindir}/%{srcname}_server_pgsql 10 \ + --slave %{_unitdir}/zabbix-server.service %{srcname}-server-systemd \ + %{_unitdir}/zabbix-server-pgsql.service + +%post proxy +%systemd_post zabbix-proxy.service + +if [ $1 -gt 1 ] ; then + # Apply permissions also in *.rpmnew upgrades from old permissive ones + chmod 0640 %{_sysconfdir}/zabbix_proxy.conf + chown root:zabbixsrv %{_sysconfdir}/zabbix_proxy.conf +fi +: + +%post proxy-mysql +%{_sbindir}/update-alternatives --install %{_sbindir}/%{srcname}_proxy \ + %{srcname}-proxy %{_sbindir}/%{srcname}_proxy_mysql 10 \ + --slave %{_unitdir}/zabbix-proxy.service %{srcname}-proxy-systemd \ + %{_unitdir}/zabbix-proxy-mysql.service + +%post proxy-pgsql +%{_sbindir}/update-alternatives --install %{_sbindir}/%{srcname}_proxy \ + %{srcname}-proxy %{_sbindir}/%{srcname}_proxy_pgsql 10 \ + --slave %{_unitdir}/zabbix-proxy.service %{srcname}-proxy-systemd \ + %{_unitdir}/zabbix-proxy-pgsql.service + +%post proxy-sqlite3 +%{_sbindir}/update-alternatives --install %{_sbindir}/%{srcname}_proxy \ + %{srcname}-proxy %{_sbindir}/%{srcname}_proxy_sqlite3 10 \ + --slave %{_unitdir}/zabbix-proxy.service %{srcname}-proxy-systemd \ + %{_unitdir}/zabbix-proxy-sqlite3.service + +%pre agent +getent group zabbix > /dev/null || groupadd -r zabbix +getent passwd zabbix > /dev/null || \ + useradd -r -g zabbix -d %{_sharedstatedir}/zabbix -s /sbin/nologin \ + -c "Zabbix Monitoring System" zabbix +: + +%post agent +%systemd_post zabbix-agent.service + +%pre server +getent group zabbixsrv > /dev/null || groupadd -r zabbixsrv +# The zabbixsrv group is introduced by 2.2 packaging +# The zabbixsrv user was a member of the zabbix group in 2.0 +if getent passwd zabbixsrv > /dev/null; then + if [[ $(id -gn zabbixsrv) == "zabbix" ]]; then + usermod -c "Zabbix Monitoring System -- Proxy or server" -g zabbixsrv zabbixsrv + fi +else + useradd -r -g zabbixsrv -d %{_sharedstatedir}/zabbixsrv -s /sbin/nologin \ + -c "Zabbix Monitoring System -- Proxy or server" zabbixsrv +fi +: + +%preun server + %systemd_preun zabbix-server.service + +%pre proxy +getent group zabbixsrv > /dev/null || groupadd -r zabbixsrv +# The zabbixsrv group is introduced by 2.2 packaging +# The zabbixsrv user was a member of the zabbix group in 2.0 +if getent passwd zabbixsrv > /dev/null; then + if [[ $(id -gn zabbixsrv) == "zabbix" ]]; then + usermod -c "Zabbix Monitoring System -- Proxy or server" -g zabbixsrv zabbixsrv + fi +else + useradd -r -g zabbixsrv -d %{_sharedstatedir}/zabbixsrv -s /sbin/nologin \ + -c "Zabbix Monitoring System -- Proxy or server" zabbixsrv +fi +: + +%preun proxy +%systemd_preun zabbix-proxy.service + +%preun agent +%systemd_preun zabbix-agent.service + +%postun server +%systemd_postun_with_restart zabbix-server.service + +%postun server-mysql +if [ $1 -eq 0 ] ; then + %{_sbindir}/update-alternatives --remove %{srcname}-server %{_sbindir}/%{srcname}_server_mysql +fi + +%postun server-pgsql +if [ $1 -eq 0 ] ; then + %{_sbindir}/update-alternatives --remove %{srcname}-server %{_sbindir}/%{srcname}_server_pgsql +fi + +%postun proxy +%systemd_postun_with_restart zabbix-proxy.service + +%postun proxy-mysql +if [ $1 -eq 0 ] ; then + %{_sbindir}/update-alternatives --remove %{srcname}-proxy %{_sbindir}/%{srcname}_proxy_mysql +fi + +%postun proxy-pgsql +if [ $1 -eq 0 ] ; then + %{_sbindir}/update-alternatives --remove %{srcname}-proxy %{_sbindir}/%{srcname}_proxy_pgsql +fi + +%postun proxy-sqlite3 +if [ $1 -eq 0 ] ; then + %{_sbindir}/update-alternatives --remove %{srcname}-proxy %{_sbindir}/%{srcname}_proxy_sqlite3 +fi + +%postun agent +%systemd_postun_with_restart zabbix-agent.service + +%files +%license COPYING +%doc AUTHORS ChangeLog NEWS README +%dir %{_sysconfdir}/%{srcname} +%config(noreplace) %{_sysconfdir}/zabbix_agentd.conf +%{_bindir}/zabbix_get +%{_bindir}/zabbix_js +%{_bindir}/zabbix_sender +%{_mandir}/man1/zabbix_get.1* +%{_mandir}/man1/zabbix_sender.1* + +%files dbfiles-mysql +%license COPYING +%{_datadir}/%{srcname}-mysql/ + +%files dbfiles-pgsql +%license COPYING +%{_datadir}/%{srcname}-postgresql/ + +%files dbfiles-sqlite3 +%license COPYING +%{_datadir}/%{srcname}-sqlite3/ + +%files server +%doc misc/snmptrap/zabbix_trap_receiver.pl +%attr(0755,zabbixsrv,zabbixsrv) %dir %{_rundir}/zabbixsrv/ +%{_prefix}/lib/tmpfiles.d/zabbixsrv.conf +%attr(0640,root,zabbixsrv) %config(noreplace) %{_sysconfdir}/zabbix_server.conf +%attr(0775,root,zabbixsrv) %dir %{_localstatedir}/log/zabbixsrv +%config(noreplace) %{_sysconfdir}/logrotate.d/zabbix-server +%ghost %{_sbindir}/zabbix_server +%attr(0750,zabbixsrv,zabbixsrv) %dir %{_sharedstatedir}/zabbixsrv +%attr(0750,zabbixsrv,zabbixsrv) %dir %{_sharedstatedir}/zabbixsrv/tmp +%attr(0750,zabbixsrv,zabbixsrv) %dir %{_sharedstatedir}/zabbixsrv/alertscripts +%attr(0750,zabbixsrv,zabbixsrv) %dir %{_sharedstatedir}/zabbixsrv/externalscripts +%ghost %{_unitdir}/zabbix-server.service +%{_mandir}/man8/zabbix_server.8* + +%files server-mysql +%{_sbindir}/zabbix_server_mysql +%{_unitdir}/zabbix-server-mysql.service + +%files server-pgsql +%{_sbindir}/zabbix_server_pgsql +%{_unitdir}/zabbix-server-pgsql.service + +%if 0%{?with_selinux} +%files selinux +%{_datadir}/selinux/packages/%{selinuxtype}/%{name}.pp.* +%{_datadir}/selinux/devel/include/distributed/%{name}.if +%ghost %verify(not md5 size mode mtime) %{_sharedstatedir}/selinux/%{selinuxtype}/active/modules/200/%{name} +%endif + +%files agent +%doc conf/zabbix_agentd/*.conf +%attr(0755,zabbix,zabbix) %dir %{_rundir}/zabbix/ +%{_prefix}/lib/tmpfiles.d/zabbix.conf +%attr(0775,root,zabbix) %dir %{_localstatedir}/log/zabbix +%config(noreplace) %{_sysconfdir}/zabbix_agentd.conf +%config(noreplace) %{_sysconfdir}/logrotate.d/zabbix-agent +%attr(750,zabbix,zabbix) %dir %{_sharedstatedir}/zabbix +%{_unitdir}/zabbix-agent.service +%{_sbindir}/zabbix_agentd +%{_mandir}/man8/zabbix_agentd.8* + +%files proxy +%doc misc/snmptrap/zabbix_trap_receiver.pl +%attr(0755,zabbixsrv,zabbixsrv) %dir %{_rundir}/zabbixsrv/ +%{_prefix}/lib/tmpfiles.d/zabbixsrv.conf +%attr(0640,root,zabbixsrv) %config(noreplace) %{_sysconfdir}/zabbix_proxy.conf +%attr(0775,root,zabbixsrv) %dir %{_localstatedir}/log/zabbixsrv +%config(noreplace) %{_sysconfdir}/logrotate.d/zabbix-proxy +%ghost %{_sbindir}/zabbix_proxy +%attr(0750,zabbixsrv,zabbixsrv) %dir %{_sharedstatedir}/zabbixsrv +%attr(0750,zabbixsrv,zabbixsrv) %dir %{_sharedstatedir}/zabbixsrv/tmp +%attr(0750,zabbixsrv,zabbixsrv) %dir %{_sharedstatedir}/zabbixsrv/alertscripts +%attr(0750,zabbixsrv,zabbixsrv) %dir %{_sharedstatedir}/zabbixsrv/externalscripts +%ghost %{_unitdir}/zabbix-proxy.service +%{_mandir}/man8/zabbix_proxy.8* + +%files proxy-mysql +%{_sbindir}/zabbix_proxy_mysql +%{_unitdir}/zabbix-proxy-mysql.service + +%files proxy-pgsql +%{_sbindir}/zabbix_proxy_pgsql +%{_unitdir}/zabbix-proxy-pgsql.service + +%files proxy-sqlite3 +%{_sbindir}/zabbix_proxy_sqlite3 +%{_unitdir}/zabbix-proxy-sqlite3.service + +%files web +%dir %attr(0750,apache,apache) %{_sysconfdir}/%{srcname}/web +%ghost %attr(0644,apache,apache) %config(noreplace) %{_sysconfdir}/%{srcname}/web/zabbix.conf.php +%attr(0644,apache,apache) %config(noreplace) %{_sysconfdir}/%{srcname}/web/maintenance.inc.php +%config(noreplace) %{_sysconfdir}/httpd/conf.d/zabbix.conf +%config(noreplace) %{_sysconfdir}/php-fpm.d/zabbix.conf +%{_datadir}/%{srcname}/ + +%files web-mysql + +%files web-pgsql + +%changelog +* Tue Aug 22 2023 Funda Wang <fundawang@yeah.net> - 6.0.20-1 +- update to 6.0.20 + +* Mon Aug 15 2022 Zhang Jun <zhangjun@kylinos.cn> - 5.2.6-4 +- update BuildRequire mysql-devel to mysql5-devel + +* Fri Oct 29 2021 Wang Jiangyong <wangjy41@chinatelecom.cn> - 5.2.6-3 +- solve the problem x86 build failed on offline environment + +* Fri May 14 2021 duyiwei <duyiwei@kylinos.cn> - 5.2.6-2 +- solve the problem that missing or redundant if/endif + +* Fri Apr 16 2021 duyiwei <duyiwei@kylinos.cn> - 5.2.6-1 +- init diff --git a/zabbix.te b/zabbix.te new file mode 100644 index 0000000..a456bd5 --- /dev/null +++ b/zabbix.te @@ -0,0 +1,348 @@ +policy_module(zabbix, 1.6.0) + +######################################## +# +# Declarations +# + +## <desc> +## <p> +## Determine whether zabbix can +## connect to all TCP ports +## </p> +## </desc> +gen_tunable(zabbix_can_network, false) + + +## <desc> +## <p> +## Allow Zabbix to run su/sudo. +## </p> +## </desc> +gen_tunable(zabbix_run_sudo, false) + +gen_require(` + class passwd rootok; + class passwd passwd; +') + +attribute zabbix_domain; + +type zabbix_t, zabbix_domain; +type zabbix_exec_t; +init_daemon_domain(zabbix_t, zabbix_exec_t) + +type zabbix_initrc_exec_t; +init_script_file(zabbix_initrc_exec_t) + +type zabbix_agent_t, zabbix_domain; +type zabbix_agent_exec_t; +init_daemon_domain(zabbix_agent_t, zabbix_agent_exec_t) + +type zabbix_agent_initrc_exec_t; +init_script_file(zabbix_agent_initrc_exec_t) + +type zabbixd_var_lib_t; +files_type(zabbixd_var_lib_t) + +type zabbix_log_t; +logging_log_file(zabbix_log_t) + +type zabbix_tmp_t; +files_tmp_file(zabbix_tmp_t) + +type zabbix_tmpfs_t; +files_tmpfs_file(zabbix_tmpfs_t) + +type zabbix_var_lib_t; +files_type(zabbix_var_lib_t) + +type zabbix_var_run_t; +files_pid_file(zabbix_var_run_t) + +type zabbix_script_t; +type zabbix_script_exec_t; +domain_type(zabbix_script_t) +domain_entry_file(zabbix_script_t, zabbix_script_exec_t) +application_executable_file(zabbix_script_exec_t) +role system_r types zabbix_script_t; + +######################################## +# +# zabbix domain local policy +# + +allow zabbix_domain self:capability { setgid setuid }; +allow zabbix_domain self:process { getsched setpgid setsched signal_perms }; +allow zabbix_domain self:fifo_file rw_fifo_file_perms; +allow zabbix_domain self:sem create_sem_perms; +allow zabbix_domain self:shm create_shm_perms; +allow zabbix_domain self:tcp_socket { accept listen }; +allow zabbix_domain self:unix_stream_socket create_stream_socket_perms; + +kernel_read_all_sysctls(zabbix_domain) +kernel_read_network_state(zabbix_domain) + +corenet_tcp_sendrecv_generic_if(zabbix_domain) +corenet_tcp_sendrecv_generic_node(zabbix_domain) +corenet_tcp_bind_generic_node(zabbix_domain) + +corecmd_exec_shell(zabbix_domain) +corecmd_exec_bin(zabbix_domain) + +dev_read_sysfs(zabbix_domain) +dev_read_urand(zabbix_domain) + +######################################## +# +# Local policy +# + +allow zabbix_t self:capability { dac_read_search }; +allow zabbix_t self:process { setrlimit }; +allow zabbix_t self:unix_stream_socket connectto; + +manage_dirs_pattern(zabbix_t, zabbix_var_lib_t, zabbix_var_lib_t) +manage_files_pattern(zabbix_t, zabbix_var_lib_t, zabbix_var_lib_t) +manage_lnk_files_pattern(zabbix_t, zabbix_var_lib_t, zabbix_var_lib_t) +manage_sock_files_pattern(zabbix_t, zabbix_var_lib_t, zabbix_var_lib_t) +files_var_lib_filetrans(zabbix_t, zabbix_var_lib_t, dir, "zabbixsrv") + +manage_dirs_pattern(zabbix_t, zabbix_log_t, zabbix_log_t) +manage_files_pattern(zabbix_t, zabbix_log_t, zabbix_log_t) +manage_lnk_files_pattern(zabbix_t, zabbix_log_t, zabbix_log_t) +logging_log_filetrans(zabbix_t, zabbix_log_t, { dir file }) + +manage_dirs_pattern(zabbix_t, zabbix_tmp_t, zabbix_tmp_t) +manage_files_pattern(zabbix_t, zabbix_tmp_t, zabbix_tmp_t) +manage_sock_files_pattern(zabbix_t, zabbix_tmp_t, zabbix_tmp_t) +files_tmp_filetrans(zabbix_t, zabbix_tmp_t, { dir file sock_file }) + +rw_files_pattern(zabbix_t, zabbix_tmpfs_t, zabbix_tmpfs_t) +fs_tmpfs_filetrans(zabbix_t, zabbix_tmpfs_t, file) + +manage_dirs_pattern(zabbix_t, zabbix_var_run_t, zabbix_var_run_t) +manage_files_pattern(zabbix_t, zabbix_var_run_t, zabbix_var_run_t) +manage_sock_files_pattern(zabbix_t, zabbix_var_run_t, zabbix_var_run_t) +files_pid_filetrans(zabbix_t, zabbix_var_run_t, { dir file sock_file }) + +kernel_read_system_state(zabbix_t) + +corenet_all_recvfrom_unlabeled(zabbix_t) +corenet_all_recvfrom_netlabel(zabbix_t) + +corenet_sendrecv_ftp_client_packets(zabbix_t) +corenet_tcp_connect_ftp_port(zabbix_t) +corenet_tcp_sendrecv_ftp_port(zabbix_t) + +corenet_sendrecv_http_client_packets(zabbix_t) +corenet_tcp_connect_http_port(zabbix_t) +corenet_tcp_sendrecv_http_port(zabbix_t) +corenet_tcp_connect_smtp_port(zabbix_t) + +corenet_sendrecv_zabbix_server_packets(zabbix_t) +corenet_tcp_bind_zabbix_port(zabbix_t) +corenet_tcp_sendrecv_zabbix_port(zabbix_t) + +auth_use_nsswitch(zabbix_t) + +zabbix_agent_tcp_connect(zabbix_t) + +logging_send_syslog_msg(zabbix_t) + +tunable_policy(`zabbix_can_network',` + corenet_sendrecv_all_client_packets(zabbix_t) + corenet_tcp_connect_all_ports(zabbix_t) + corenet_tcp_sendrecv_all_ports(zabbix_t) +') + +tunable_policy(`zabbix_run_sudo',` + allow zabbix_t self:capability { setgid setuid sys_resource }; + allow zabbix_t self:process { setrlimit setsched }; + allow zabbix_t self:key write; + allow zabbix_t self:passwd { passwd rootok }; + + auth_rw_lastlog(zabbix_t) + auth_rw_faillog(zabbix_t) + auth_exec_chkpwd(zabbix_t) + + selinux_compute_access_vector(zabbix_t) + + systemd_write_inherited_logind_sessions_pipes(zabbix_t) + systemd_dbus_chat_logind(zabbix_t) + + xserver_exec_xauth(zabbix_t) +') + +optional_policy(` + tunable_policy(`zabbix_run_sudo',` + sudo_exec(zabbix_t) + su_exec(zabbix_t) + ') +') + +optional_policy(` + mysql_stream_connect(zabbix_t) +') + +optional_policy(` + netutils_domtrans_ping(zabbix_t) +') + +optional_policy(` + postgresql_stream_connect(zabbix_t) + postgresql_tcp_connect(zabbix_t) +') + +optional_policy(` + snmp_read_snmp_var_lib_files(zabbix_t) + snmp_read_snmp_var_lib_dirs(zabbix_t) +') + +######################################## +# +# Agent local policy +# + +allow zabbix_agent_t self:process { setrlimit }; + +manage_files_pattern(zabbix_agent_t, zabbix_log_t, zabbix_log_t) + +rw_files_pattern(zabbix_agent_t, zabbix_tmpfs_t, zabbix_tmpfs_t) +fs_tmpfs_filetrans(zabbix_agent_t, zabbix_tmpfs_t, file) + +manage_files_pattern(zabbix_agent_t, zabbix_var_run_t, zabbix_var_run_t) +files_pid_filetrans(zabbix_agent_t, zabbix_var_run_t, file) + +kernel_read_system_state(zabbix_agent_t) +kernel_read_network_state(zabbix_agent_t) + +corenet_all_recvfrom_unlabeled(zabbix_agent_t) +corenet_all_recvfrom_netlabel(zabbix_agent_t) + +corecmd_read_all_executables(zabbix_agent_t) + +corenet_sendrecv_zabbix_agent_server_packets(zabbix_agent_t) +corenet_tcp_bind_zabbix_agent_port(zabbix_agent_t) +corenet_tcp_sendrecv_zabbix_agent_port(zabbix_agent_t) + +corenet_sendrecv_ssh_client_packets(zabbix_agent_t) +corenet_tcp_connect_ssh_port(zabbix_agent_t) +corenet_tcp_sendrecv_ssh_port(zabbix_agent_t) + +corenet_sendrecv_ftp_client_packets(zabbix_agent_t) +corenet_tcp_connect_ftp_port(zabbix_agent_t) +corenet_tcp_sendrecv_ftp_port(zabbix_agent_t) + +corenet_sendrecv_http_client_packets(zabbix_agent_t) +corenet_tcp_connect_http_port(zabbix_agent_t) +corenet_tcp_sendrecv_http_port(zabbix_agent_t) + +corenet_sendrecv_innd_client_packets(zabbix_agent_t) +corenet_tcp_connect_innd_port(zabbix_agent_t) +corenet_tcp_sendrecv_innd_port(zabbix_agent_t) + +corenet_sendrecv_pop_client_packets(zabbix_agent_t) +corenet_tcp_connect_pop_port(zabbix_agent_t) +corenet_tcp_sendrecv_pop_port(zabbix_agent_t) + +corenet_sendrecv_postgresql_client_packets(zabbix_agent_t) +corenet_tcp_connect_postgresql_port(zabbix_agent_t) +corenet_tcp_sendrecv_postgresql_port(zabbix_agent_t) + +corenet_sendrecv_smtp_client_packets(zabbix_agent_t) +corenet_tcp_connect_smtp_port(zabbix_agent_t) +corenet_tcp_sendrecv_smtp_port(zabbix_agent_t) + +corenet_sendrecv_zabbix_client_packets(zabbix_agent_t) +corenet_tcp_connect_zabbix_port(zabbix_agent_t) +corenet_tcp_sendrecv_zabbix_port(zabbix_agent_t) + +corenet_tcp_connect_redis_port(zabbix_agent_t) +corenet_tcp_sendrecv_redis_port(zabbix_agent_t) + +dev_getattr_all_blk_files(zabbix_agent_t) +dev_getattr_all_chr_files(zabbix_agent_t) + +domain_read_all_domains_state(zabbix_agent_t) + +files_getattr_all_dirs(zabbix_agent_t) +files_getattr_all_files(zabbix_agent_t) +files_read_all_symlinks(zabbix_agent_t) + +fs_getattr_all_fs(zabbix_agent_t) + +auth_use_nsswitch(zabbix_agent_t) + +init_read_utmp(zabbix_agent_t) + +logging_search_logs(zabbix_agent_t) + +sysnet_dns_name_resolve(zabbix_agent_t) + +zabbix_tcp_connect(zabbix_agent_t) + +zabbix_script_domtrans(zabbix_agent_t) + +tunable_policy(`zabbix_run_sudo',` + allow zabbix_agent_t self:capability { setgid setuid sys_resource }; + allow zabbix_agent_t self:process { setrlimit setsched }; + allow zabbix_agent_t self:key write; + allow zabbix_agent_t self:passwd { passwd rootok }; + + auth_rw_lastlog(zabbix_agent_t) + auth_rw_faillog(zabbix_agent_t) + auth_exec_chkpwd(zabbix_agent_t) + + selinux_compute_access_vector(zabbix_agent_t) + + systemd_write_inherited_logind_sessions_pipes(zabbix_agent_t) + systemd_dbus_chat_logind(zabbix_agent_t) + + xserver_exec_xauth(zabbix_agent_t) +') + +optional_policy(` + rpm_exec(zabbix_agent_t) + rpm_read_db(zabbix_agent_t) +') + +optional_policy(` + tunable_policy(`zabbix_run_sudo',` + sudo_exec(zabbix_agent_t) + su_exec(zabbix_agent_t) + ') +') + +optional_policy(` + dmidecode_domtrans(zabbix_agent_t) +') + +optional_policy(` + hostname_exec(zabbix_agent_t) +') + +######################################## +# +# zabbix_script_t local policy +# + +domtrans_pattern(zabbix_t, zabbix_script_exec_t, zabbix_script_t) + +allow zabbix_t zabbix_script_exec_t:dir list_dir_perms; +allow zabbix_t zabbix_script_exec_t:file ioctl; +allow zabbix_t zabbix_script_t:process signal; + +init_domtrans_script(zabbix_script_t) + +optional_policy(` + chronyd_domtrans_chronyc(zabbix_script_t) +') + +optional_policy(` + mta_send_mail(zabbix_script_t) +') + +optional_policy(` + unconfined_domain(zabbix_script_t) +') |