From 107ec0f10f6c898d8bbf5456ab66b799ead07f335b80b4eb0f134ded244b6aac Mon Sep 17 00:00:00 2001 From: Boris Manojlovic Date: Tue, 17 Oct 2023 21:02:55 +0000 Subject: [PATCH] Accepting request 1118375 from home:bmanojlovic:branches:server:monitoring:zabbix - updated to latest upstream release 6.0.22 - this version fixes CVE-2023-32722 and CVE-2023-32722 bsc#1216211 and bsc#1216222 - removed patches zabbix-6.0.12-new-m4-pgsql.patch zabbix-6.0.12-curl-fixes.patch honestly was tired of patching for correct way doing postgresql detection now added postgresql-server-devel which does not make sense but hey upstream does not care OBS-URL: https://build.opensuse.org/request/show/1118375 OBS-URL: https://build.opensuse.org/package/show/server:monitoring:zabbix/zabbix?expand=0&rev=47 --- zabbix-6.0.12-curl-fixes.patch | 127 ------ zabbix-6.0.12-netsnmp-fixes.patch | 12 +- zabbix-6.0.12-new-m4-pgsql.patch | 614 ------------------------------ zabbix-6.0.19.tar.gz | 3 - zabbix-6.0.22.tar.gz | 3 + zabbix.changes | 103 +++++ zabbix.spec | 12 +- 7 files changed, 116 insertions(+), 758 deletions(-) delete mode 100644 zabbix-6.0.12-curl-fixes.patch delete mode 100644 zabbix-6.0.12-new-m4-pgsql.patch delete mode 100644 zabbix-6.0.19.tar.gz create mode 100644 zabbix-6.0.22.tar.gz diff --git a/zabbix-6.0.12-curl-fixes.patch b/zabbix-6.0.12-curl-fixes.patch deleted file mode 100644 index 9b42f60..0000000 --- a/zabbix-6.0.12-curl-fixes.patch +++ /dev/null @@ -1,127 +0,0 @@ -Index: include/sysinc.h -=================================================================== ---- include/sysinc.h.orig 2022-12-05 09:13:13.147213258 +0100 -+++ include/sysinc.h 2023-01-20 19:51:49.817570470 +0100 -@@ -401,7 +401,90 @@ - # else - # define ZBX_CURLOPT_ACCEPT_ENCODING CURLOPT_ENCODING - # endif -+# if 0x073700 <= LIBCURL_VERSION_NUM /* version 7.55.0 */ -+# define ZBX_CURLINFO_SPEED_DOWNLOAD CURLINFO_SPEED_DOWNLOAD_T -+# else -+# define ZBX_CURLINFO_SPEED_DOWNLOAD CURLINFO_SPEED_DOWNLOAD -+# endif - # define ZBX_CURLOPT_MAXREDIRS 10L -+# if defined(NEED_FUNCTION_CURL_EASY_SETOPT_REDEFINE) -+# undef curl_easy_setopt -+# define curl_easy_setopt(handle, option, value) \ -+ __extension__({ \ -+ CURLoption _curl_opt = (option); \ -+ if(__builtin_constant_p(_curl_opt)) { \ -+ CURL_IGNORE_DEPRECATION( \ -+ if(curlcheck_long_option(_curl_opt)) \ -+ if(!curlcheck_long(value)) \ -+ _curl_easy_setopt_err_long(); \ -+ if(curlcheck_off_t_option(_curl_opt)) \ -+ if(!curlcheck_off_t(value)) \ -+ _curl_easy_setopt_err_curl_off_t(); \ -+ if(curlcheck_string_option(_curl_opt)) \ -+ if(!curlcheck_string(value)) \ -+ _curl_easy_setopt_err_string(); \ -+ if(curlcheck_write_cb_option(_curl_opt)) \ -+ if(!curlcheck_write_cb(value)) \ -+ _curl_easy_setopt_err_write_callback(); \ -+ if((_curl_opt) == CURLOPT_RESOLVER_START_FUNCTION) \ -+ if(!curlcheck_resolver_start_callback(value)) \ -+ _curl_easy_setopt_err_resolver_start_callback();\ -+ if((_curl_opt) == CURLOPT_READFUNCTION) \ -+ if(!curlcheck_read_cb(value)) \ -+ _curl_easy_setopt_err_read_cb(); \ -+ if((_curl_opt) == CURLOPT_IOCTLFUNCTION) \ -+ if(!curlcheck_ioctl_cb(value)) \ -+ _curl_easy_setopt_err_ioctl_cb(); \ -+ if((_curl_opt) == CURLOPT_SOCKOPTFUNCTION) \ -+ if(!curlcheck_sockopt_cb(value)) \ -+ _curl_easy_setopt_err_sockopt_cb(); \ -+ if((_curl_opt) == CURLOPT_OPENSOCKETFUNCTION) \ -+ if(!curlcheck_opensocket_cb(value)) \ -+ _curl_easy_setopt_err_opensocket_cb(); \ -+ if((_curl_opt) == CURLOPT_PROGRESSFUNCTION) \ -+ if(!curlcheck_progress_cb(value)) \ -+ _curl_easy_setopt_err_progress_cb(); \ -+ if((_curl_opt) == CURLOPT_DEBUGFUNCTION) \ -+ if(!curlcheck_debug_cb(value)) \ -+ _curl_easy_setopt_err_debug_cb(); \ -+ if((_curl_opt) == CURLOPT_SSL_CTX_FUNCTION) \ -+ if(!curlcheck_ssl_ctx_cb(value)) \ -+ _curl_easy_setopt_err_ssl_ctx_cb(); \ -+ if(curlcheck_conv_cb_option(_curl_opt)) \ -+ if(!curlcheck_conv_cb(value)) \ -+ _curl_easy_setopt_err_conv_cb(); \ -+ if((_curl_opt) == CURLOPT_SEEKFUNCTION) \ -+ if(!curlcheck_seek_cb(value)) \ -+ _curl_easy_setopt_err_seek_cb(); \ -+ if(curlcheck_cb_data_option(_curl_opt)) \ -+ if(!curlcheck_cb_data(value)) \ -+ _curl_easy_setopt_err_cb_data(); \ -+ if((_curl_opt) == CURLOPT_ERRORBUFFER) \ -+ if(!curlcheck_error_buffer(value)) \ -+ _curl_easy_setopt_err_error_buffer(); \ -+ if((_curl_opt) == CURLOPT_STDERR) \ -+ if(!curlcheck_FILE(value)) \ -+ _curl_easy_setopt_err_FILE(); \ -+ if(curlcheck_postfields_option(_curl_opt)) \ -+ if(!curlcheck_postfields(value)) \ -+ _curl_easy_setopt_err_postfields(); \ -+ if((_curl_opt) == CURLOPT_HTTPPOST) \ -+ if(!curlcheck_arr((value), struct curl_httppost)) \ -+ _curl_easy_setopt_err_curl_httpost(); \ -+ if((_curl_opt) == CURLOPT_MIMEPOST) \ -+ if(!curlcheck_ptr((value), curl_mime)) \ -+ _curl_easy_setopt_err_curl_mimepost(); \ -+ if(curlcheck_slist_option(_curl_opt)) \ -+ if(!curlcheck_arr((value), struct curl_slist)) \ -+ _curl_easy_setopt_err_curl_slist(); \ -+ if((_curl_opt) == CURLOPT_SHARE) \ -+ if(!curlcheck_ptr((value), CURLSH)) \ -+ _curl_easy_setopt_err_CURLSH(); \ -+ ) \ -+ } \ -+ curl_easy_setopt(handle, _curl_opt, value); \ -+ }) -+# endif - #endif - - /* Required for advanced sigaction */ -Index: m4/libcurl.m4 -=================================================================== ---- m4/libcurl.m4.orig 2022-12-01 08:47:13.072351692 +0100 -+++ m4/libcurl.m4 2023-01-20 19:20:18.248255772 +0100 -@@ -294,7 +294,27 @@ x=CURLOPT_VERBOSE; - LIBS="${LIBS} ${LIBCURL_LIBS}" - LDFLAGS="${LDFLAGS} ${LIBCURL_LDFLAGS}" - CFLAGS="${CFLAGS} ${LIBCURL_CFLAGS}" -+ # Does this version of curl ship with a broken curl_easy_setopt() wrapper? -+ # If this fails to compile, then yes and request to redefine it -+ AC_MSG_CHECKING([if curl/curl.h defines a broken curl_easy_setopt() wrapper]) -+ AC_COMPILE_IFELSE([ -+ AC_LANG_PROGRAM([[#include ]], [[ -+CURL *easyhandle; -+CURLoption opt; - -+(void)curl_easy_setopt(easyhandle, opt = CURLOPT_NOBODY, 1L);]] -+ ) -+ ], [ -+ AC_MSG_RESULT(no) -+ ], [ -+ AC_MSG_RESULT(yes) -+ AC_DEFINE(NEED_FUNCTION_CURL_EASY_SETOPT_REDEFINE,1, -+ [Define to 1 if 'curl_easy_setopt' is broken and needs redefining.]) -+ ] -+ ) -+ -+ # Does curl_free() exist in this version of libcurl? -+ # If not, fake it with free() - AC_CHECK_FUNC(curl_free,, - AC_DEFINE(curl_free,free, - [Define curl_free() as free() if our version of curl lacks curl_free.])) diff --git a/zabbix-6.0.12-netsnmp-fixes.patch b/zabbix-6.0.12-netsnmp-fixes.patch index a3b3a60..f614dad 100644 --- a/zabbix-6.0.12-netsnmp-fixes.patch +++ b/zabbix-6.0.12-netsnmp-fixes.patch @@ -1,8 +1,8 @@ Index: m4/netsnmp.m4 =================================================================== ---- m4/netsnmp.m4.orig 2022-12-01 08:47:13.072351692 +0100 -+++ m4/netsnmp.m4 2023-01-20 20:29:15.268271638 +0100 -@@ -170,7 +170,22 @@ session.securityAuthProto = usmHMAC384SH +--- m4/netsnmp.m4.orig 2023-09-25 12:26:59.951273749 +0200 ++++ m4/netsnmp.m4 2023-10-17 22:18:29.154010921 +0200 +@@ -169,7 +169,22 @@ session.securityAuthProto = usmHMAC384SH ],[ AC_MSG_RESULT(no) ]) @@ -25,11 +25,11 @@ Index: m4/netsnmp.m4 +################## end monkey patching.... dnl Check for AES192/256 protocol support for privacy AC_MSG_CHECKING(for strong AES privacy protocol support) - AC_TRY_LINK([ + AC_LINK_IFELSE([AC_LANG_PROGRAM([[ Index: src/zabbix_server/poller/checks_snmp.c =================================================================== ---- src/zabbix_server/poller/checks_snmp.c.orig 2022-12-05 09:13:13.223215969 +0100 -+++ src/zabbix_server/poller/checks_snmp.c 2023-01-20 20:27:57.339847563 +0100 +--- src/zabbix_server/poller/checks_snmp.c.orig 2023-09-25 12:27:00.031274243 +0200 ++++ src/zabbix_server/poller/checks_snmp.c 2023-10-17 22:18:29.154010921 +0200 @@ -356,10 +356,12 @@ static int zbx_snmpv3_set_auth_protocol( switch (item->snmpv3_authprotocol) diff --git a/zabbix-6.0.12-new-m4-pgsql.patch b/zabbix-6.0.12-new-m4-pgsql.patch deleted file mode 100644 index 3d713b3..0000000 --- a/zabbix-6.0.12-new-m4-pgsql.patch +++ /dev/null @@ -1,614 +0,0 @@ -Index: configure.ac -=================================================================== ---- configure.ac.orig 2022-12-05 09:13:12.947206126 +0100 -+++ configure.ac 2023-01-20 20:21:30.286134050 +0100 -@@ -1453,25 +1453,15 @@ if test "x$server" = "xyes" || test "x$p - fi - - dnl Checking for PostgreSQL support -- AX_LIB_POSTGRESQL("9.2") -+ AX_LIB_POSTGRESQL([9.2]) - if test "x$want_postgresql" = "xyes"; then - if test "x$have_db" != "xno"; then - AC_MSG_ERROR([You can configure for only one database.]) - fi - - if test "x$found_postgresql" = "xyes"; then -- if test "$postgresql_version_check" != "1"; then -- AC_MSG_ERROR([PostgreSQL version mismatch]) -- fi -- -- have_db="PostgreSQL" -- -- if test "$postgresql_version_number" -ge 8002000; then -- have_multirow_insert="yes" -- fi -- -- else -- AC_MSG_ERROR([PostgreSQL library not found]) -+ have_db="PostgreSQL" -+ have_multirow_insert="yes" # set by default as we are forcing to use min 8.2 postgresql - fi - fi - -@@ -1527,7 +1517,7 @@ if test "x$server" = "xyes" || test "x$p - AC_MSG_RESULT(no) - fi - -- DB_CFLAGS="$MYSQL_CFLAGS $ORACLE_CPPFLAGS $POSTGRESQL_CFLAGS $SQLITE3_CPPFLAGS" -+ DB_CFLAGS="$MYSQL_CFLAGS $ORACLE_CPPFLAGS $POSTGRESQL_CPPFLAGS $SQLITE3_CPPFLAGS" - DB_LDFLAGS="$MYSQL_LDFLAGS $ORACLE_LDFLAGS $POSTGRESQL_LDFLAGS $SQLITE3_LDFLAGS" - DB_LIBS="$MYSQL_LIBS $ORACLE_LIBS $POSTGRESQL_LIBS $SQLITE3_LIBS" - -Index: m4/ax_compare_version.m4 -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ m4/ax_compare_version.m4 2023-01-20 20:20:44.581933215 +0100 -@@ -0,0 +1,177 @@ -+# =========================================================================== -+# https://www.gnu.org/software/autoconf-archive/ax_compare_version.html -+# =========================================================================== -+# -+# SYNOPSIS -+# -+# AX_COMPARE_VERSION(VERSION_A, OP, VERSION_B, [ACTION-IF-TRUE], [ACTION-IF-FALSE]) -+# -+# DESCRIPTION -+# -+# This macro compares two version strings. Due to the various number of -+# minor-version numbers that can exist, and the fact that string -+# comparisons are not compatible with numeric comparisons, this is not -+# necessarily trivial to do in a autoconf script. This macro makes doing -+# these comparisons easy. -+# -+# The six basic comparisons are available, as well as checking equality -+# limited to a certain number of minor-version levels. -+# -+# The operator OP determines what type of comparison to do, and can be one -+# of: -+# -+# eq - equal (test A == B) -+# ne - not equal (test A != B) -+# le - less than or equal (test A <= B) -+# ge - greater than or equal (test A >= B) -+# lt - less than (test A < B) -+# gt - greater than (test A > B) -+# -+# Additionally, the eq and ne operator can have a number after it to limit -+# the test to that number of minor versions. -+# -+# eq0 - equal up to the length of the shorter version -+# ne0 - not equal up to the length of the shorter version -+# eqN - equal up to N sub-version levels -+# neN - not equal up to N sub-version levels -+# -+# When the condition is true, shell commands ACTION-IF-TRUE are run, -+# otherwise shell commands ACTION-IF-FALSE are run. The environment -+# variable 'ax_compare_version' is always set to either 'true' or 'false' -+# as well. -+# -+# Examples: -+# -+# AX_COMPARE_VERSION([3.15.7],[lt],[3.15.8]) -+# AX_COMPARE_VERSION([3.15],[lt],[3.15.8]) -+# -+# would both be true. -+# -+# AX_COMPARE_VERSION([3.15.7],[eq],[3.15.8]) -+# AX_COMPARE_VERSION([3.15],[gt],[3.15.8]) -+# -+# would both be false. -+# -+# AX_COMPARE_VERSION([3.15.7],[eq2],[3.15.8]) -+# -+# would be true because it is only comparing two minor versions. -+# -+# AX_COMPARE_VERSION([3.15.7],[eq0],[3.15]) -+# -+# would be true because it is only comparing the lesser number of minor -+# versions of the two values. -+# -+# Note: The characters that separate the version numbers do not matter. An -+# empty string is the same as version 0. OP is evaluated by autoconf, not -+# configure, so must be a string, not a variable. -+# -+# The author would like to acknowledge Guido Draheim whose advice about -+# the m4_case and m4_ifvaln functions make this macro only include the -+# portions necessary to perform the specific comparison specified by the -+# OP argument in the final configure script. -+# -+# LICENSE -+# -+# Copyright (c) 2008 Tim Toolan -+# -+# Copying and distribution of this file, with or without modification, are -+# permitted in any medium without royalty provided the copyright notice -+# and this notice are preserved. This file is offered as-is, without any -+# warranty. -+ -+#serial 13 -+ -+dnl ######################################################################### -+AC_DEFUN([AX_COMPARE_VERSION], [ -+ AC_REQUIRE([AC_PROG_AWK]) -+ -+ # Used to indicate true or false condition -+ ax_compare_version=false -+ -+ # Convert the two version strings to be compared into a format that -+ # allows a simple string comparison. The end result is that a version -+ # string of the form 1.12.5-r617 will be converted to the form -+ # 0001001200050617. In other words, each number is zero padded to four -+ # digits, and non digits are removed. -+ AS_VAR_PUSHDEF([A],[ax_compare_version_A]) -+ A=`echo "$1" | sed -e 's/\([[0-9]]*\)/Z\1Z/g' \ -+ -e 's/Z\([[0-9]]\)Z/Z0\1Z/g' \ -+ -e 's/Z\([[0-9]][[0-9]]\)Z/Z0\1Z/g' \ -+ -e 's/Z\([[0-9]][[0-9]][[0-9]]\)Z/Z0\1Z/g' \ -+ -e 's/[[^0-9]]//g'` -+ -+ AS_VAR_PUSHDEF([B],[ax_compare_version_B]) -+ B=`echo "$3" | sed -e 's/\([[0-9]]*\)/Z\1Z/g' \ -+ -e 's/Z\([[0-9]]\)Z/Z0\1Z/g' \ -+ -e 's/Z\([[0-9]][[0-9]]\)Z/Z0\1Z/g' \ -+ -e 's/Z\([[0-9]][[0-9]][[0-9]]\)Z/Z0\1Z/g' \ -+ -e 's/[[^0-9]]//g'` -+ -+ dnl # In the case of le, ge, lt, and gt, the strings are sorted as necessary -+ dnl # then the first line is used to determine if the condition is true. -+ dnl # The sed right after the echo is to remove any indented white space. -+ m4_case(m4_tolower($2), -+ [lt],[ -+ ax_compare_version=`echo "x$A -+x$B" | sed 's/^ *//' | sort -r | sed "s/x${A}/false/;s/x${B}/true/;1q"` -+ ], -+ [gt],[ -+ ax_compare_version=`echo "x$A -+x$B" | sed 's/^ *//' | sort | sed "s/x${A}/false/;s/x${B}/true/;1q"` -+ ], -+ [le],[ -+ ax_compare_version=`echo "x$A -+x$B" | sed 's/^ *//' | sort | sed "s/x${A}/true/;s/x${B}/false/;1q"` -+ ], -+ [ge],[ -+ ax_compare_version=`echo "x$A -+x$B" | sed 's/^ *//' | sort -r | sed "s/x${A}/true/;s/x${B}/false/;1q"` -+ ],[ -+ dnl Split the operator from the subversion count if present. -+ m4_bmatch(m4_substr($2,2), -+ [0],[ -+ # A count of zero means use the length of the shorter version. -+ # Determine the number of characters in A and B. -+ ax_compare_version_len_A=`echo "$A" | $AWK '{print(length)}'` -+ ax_compare_version_len_B=`echo "$B" | $AWK '{print(length)}'` -+ -+ # Set A to no more than B's length and B to no more than A's length. -+ A=`echo "$A" | sed "s/\(.\{$ax_compare_version_len_B\}\).*/\1/"` -+ B=`echo "$B" | sed "s/\(.\{$ax_compare_version_len_A\}\).*/\1/"` -+ ], -+ [[0-9]+],[ -+ # A count greater than zero means use only that many subversions -+ A=`echo "$A" | sed "s/\(\([[0-9]]\{4\}\)\{m4_substr($2,2)\}\).*/\1/"` -+ B=`echo "$B" | sed "s/\(\([[0-9]]\{4\}\)\{m4_substr($2,2)\}\).*/\1/"` -+ ], -+ [.+],[ -+ AC_WARNING( -+ [invalid OP numeric parameter: $2]) -+ ],[]) -+ -+ # Pad zeros at end of numbers to make same length. -+ ax_compare_version_tmp_A="$A`echo $B | sed 's/./0/g'`" -+ B="$B`echo $A | sed 's/./0/g'`" -+ A="$ax_compare_version_tmp_A" -+ -+ # Check for equality or inequality as necessary. -+ m4_case(m4_tolower(m4_substr($2,0,2)), -+ [eq],[ -+ test "x$A" = "x$B" && ax_compare_version=true -+ ], -+ [ne],[ -+ test "x$A" != "x$B" && ax_compare_version=true -+ ],[ -+ AC_WARNING([invalid OP parameter: $2]) -+ ]) -+ ]) -+ -+ AS_VAR_POPDEF([A])dnl -+ AS_VAR_POPDEF([B])dnl -+ -+ dnl # Execute ACTION-IF-TRUE / ACTION-IF-FALSE. -+ if test "$ax_compare_version" = "true" ; then -+ m4_ifvaln([$4],[$4],[:])dnl -+ m4_ifvaln([$5],[else $5])dnl -+ fi -+]) dnl AX_COMPARE_VERSION -Index: m4/ax_lib_postgresql.m4 -=================================================================== ---- m4/ax_lib_postgresql.m4.orig 2022-12-01 08:47:13.068351647 +0100 -+++ m4/ax_lib_postgresql.m4 2023-01-20 20:20:44.581933215 +0100 -@@ -1,31 +1,33 @@ --##### http://autoconf-archive.cryp.to/ax_lib_postgresql.html -+# =========================================================================== -+# https://www.gnu.org/software/autoconf-archive/ax_lib_postgresql.html -+# =========================================================================== - # - # SYNOPSIS - # --# AX_LIB_POSTGRESQL([MINIMUM-VERSION]) -+# AX_LIB_POSTGRESQL([MINIMUM-VERSION],[ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND]) - # - # DESCRIPTION - # --# This macro provides tests of availability of PostgreSQL 'libpq' --# library of particular version or newer. -+# This macro provides tests of availability of PostgreSQL 'libpq' library -+# of particular version or newer. - # --# AX_LIB_POSTGRESQL macro takes only one argument which is optional. --# If there is no required version passed, then macro does not run --# version test. -+# AX_LIB_POSTGRESQL macro takes only one argument which is optional. If -+# there is no required version passed, then macro does not run version -+# test. - # - # The --with-postgresql option takes one of three possible values: - # - # no - do not check for PostgreSQL client library - # --# yes - do check for PostgreSQL library in standard locations --# (pg_config should be in the PATH) -+# yes - do check for PostgreSQL library in standard locations (pg_config -+# should be in the PATH) - # --# path - complete path to pg_config utility, use this option if --# pg_config can't be found in the PATH -+# path - complete path to pg_config utility, use this option if pg_config -+# can't be found in the PATH (You could set also PG_CONFIG variable) - # - # This macro calls: - # --# AC_SUBST(POSTGRESQL_CFLAGS) -+# AC_SUBST(POSTGRESQL_CPPFLAGS) - # AC_SUBST(POSTGRESQL_LDFLAGS) - # AC_SUBST(POSTGRESQL_LIBS) - # AC_SUBST(POSTGRESQL_VERSION) -@@ -34,151 +36,212 @@ - # - # HAVE_POSTGRESQL - # --# LAST MODIFICATION -+# It execute if found ACTION-IF-FOUND (empty by default) and -+# ACTION-IF-NOT-FOUND (AC_MSG_FAILURE by default) if not found. - # --# 2017-09-26 modified version detection to detect PostgreSQL 10 (Zabbix) --# 2006-07-16 -+# LICENSE - # --# COPYLEFT --# --# Copyright (c) 2006 Mateusz Loskot --# --# Copying and distribution of this file, with or without --# modification, are permitted in any medium without royalty provided --# the copyright notice and this notice are preserved. -+# Copyright (c) 2008 Mateusz Loskot -+# Copyright (c) 2014 Sree Harsha Totakura -+# Copyright (c) 2018 Bastien Roucaries -+# -+# Copying and distribution of this file, with or without modification, are -+# permitted in any medium without royalty provided the copyright notice -+# and this notice are preserved. This file is offered as-is, without any -+# warranty. -+ -+#serial 22 -+ -+AC_DEFUN([_AX_LIB_POSTGRESQL_OLD],[ -+ found_postgresql="no" -+ _AX_LIB_POSTGRESQL_OLD_fail="no" -+ while true; do -+ AC_CACHE_CHECK([for the pg_config program], [ac_cv_path_PG_CONFIG], -+ [AC_PATH_PROGS_FEATURE_CHECK([PG_CONFIG], [pg_config], -+ [[ac_cv_path_PG_CONFIG="";$ac_path_PG_CONFIG --includedir > /dev/null \ -+ && ac_cv_path_PG_CONFIG=$ac_path_PG_CONFIG ac_path_PG_CONFIG_found=:]], -+ [ac_cv_path_PG_CONFIG=""])]) -+ PG_CONFIG=$ac_cv_path_PG_CONFIG -+ AS_IF([test "X$PG_CONFIG" = "X"],[break]) -+ -+ AC_CACHE_CHECK([for the PostgreSQL libraries CPPFLAGS],[ac_cv_POSTGRESQL_CPPFLAGS], -+ [ac_cv_POSTGRESQL_CPPFLAGS="-I`$PG_CONFIG --includedir`" || _AX_LIB_POSTGRESQL_OLD_fail=yes]) -+ AS_IF([test "X$_AX_LIB_POSTGRESQL_OLD_fail" = "Xyes"],[break]) -+ POSTGRESQL_CPPFLAGS="$ac_cv_POSTGRESQL_CPPFLAGS" -+ -+ AC_CACHE_CHECK([for the PostgreSQL libraries LDFLAGS],[ac_cv_POSTGRESQL_LDFLAGS], -+ [ac_cv_POSTGRESQL_LDFLAGS="-L`$PG_CONFIG --libdir`" || _AX_LIB_POSTGRESQL_OLD_fail=yes]) -+ AS_IF([test "X$_AX_LIB_POSTGRESQL_OLD_fail" = "Xyes"],[break]) -+ POSTGRESQL_LDFLAGS="$ac_cv_POSTGRESQL_LDFLAGS" -+ -+ AC_CACHE_CHECK([for the PostgreSQL libraries LIBS],[ac_cv_POSTGRESQL_LIBS], -+ [ac_cv_POSTGRESQL_LIBS="-lpq"]) -+ POSTGRESQL_LIBS="$ac_cv_POSTGRESQL_LIBS" -+ -+ AC_CACHE_CHECK([for the PostgreSQL version],[ac_cv_POSTGRESQL_VERSION], -+ [ -+ ac_cv_POSTGRESQL_VERSION=`$PG_CONFIG --version | sed "s/^PostgreSQL[[[:space:]]][[[:space:]]]*\([[0-9.]][[0-9.]]*\).*/\1/"` \ -+ || _AX_LIB_POSTGRESQL_OLD_fail=yes -+ ]) -+ AS_IF([test "X$_AX_LIB_POSTGRESQL_OLD_fail" = "Xyes"],[break]) -+ POSTGRESQL_VERSION="$ac_cv_POSTGRESQL_VERSION" -+ -+ -+ dnl -+ dnl Check if required version of PostgreSQL is available -+ dnl -+ AS_IF([test X"$postgresql_version_req" != "X"],[ -+ AC_MSG_CHECKING([if PostgreSQL version $POSTGRESQL_VERSION is >= $postgresql_version_req]) -+ AX_COMPARE_VERSION([$POSTGRESQL_VERSION],[ge],[$postgresql_version_req], -+ [found_postgresql_req_version=yes],[found_postgresql_req_version=no]) -+ AC_MSG_RESULT([$found_postgresql_req_version]) -+ ]) -+ AS_IF([test "Xfound_postgresql_req_version" = "Xno"],[break]) -+ -+ found_postgresql="yes" -+ break -+ done -+]) - --AC_DEFUN([AX_LIB_POSTGRESQL], -+AC_DEFUN([_AX_LIB_POSTGRESQL_PKG_CONFIG], - [ -- PG_CONFIG="no" -- -- AC_ARG_WITH([postgresql], -- AC_HELP_STRING([--with-postgresql@<:@=ARG@:>@], -- [use PostgreSQL library @<:@default=no@:>@, optionally specify path to pg_config] -- ), -- [ -- if test "x$withval" = "xno"; then -- want_postgresql="no" -- elif test "x$withval" = "xyes"; then -- want_postgresql="yes" -- else -- want_postgresql="yes" -- PG_CONFIG="$withval" -- fi -- ], -- [want_postgresql="no"] -- ) -+ AC_REQUIRE([PKG_PROG_PKG_CONFIG]) -+ found_postgresql=no - -- POSTGRESQL_CFLAGS="" -- POSTGRESQL_LDFLAGS="" -- POSTGRESQL_LIBS="" -- POSTGRESQL_VERSION="" -+ while true; do -+ PKG_PROG_PKG_CONFIG -+ AS_IF([test X$PKG_CONFIG = X],[break]) -+ -+ _AX_LIB_POSTGRESQL_PKG_CONFIG_fail=no; -+ AS_IF([test "X$postgresql_version_req" = "X"], -+ [PKG_CHECK_EXISTS([libpq],[found_postgresql_pkg_config=yes],[found_postgresql=no])], -+ [PKG_CHECK_EXISTS([libpq >= "$postgresql_version_req"], -+ [found_postgresql=yes],[found_postgresql=no])]) -+ AS_IF([test "X$found_postgresql" = "no"],[break]) -+ -+ AC_CACHE_CHECK([for the PostgreSQL libraries CPPFLAGS],[ac_cv_POSTGRESQL_CPPFLAGS], -+ [ac_cv_POSTGRESQL_CPPFLAGS="`$PKG_CONFIG libpq --cflags-only-I`" || _AX_LIB_POSTGRESQL_PKG_CONFIG_fail=yes]) -+ AS_IF([test "X$_AX_LIB_POSTGRESQL_PKG_CONFIG_fail" = "Xyes"],[break]) -+ POSTGRESQL_CPPFLAGS="$ac_cv_POSTGRESQL_CPPFLAGS" -+ -+ -+ AC_CACHE_CHECK([for the PostgreSQL libraries LDFLAGS],[ac_cv_POSTGRESQL_LDFLAGS], -+ [ac_cv_POSTGRESQL_LDFLAGS="`$PKG_CONFIG libpq --libs-only-L --libs-only-other`" || _AX_LIB_POSTGRESQL_PKG_CONFIG_fail=yes]) -+ AS_IF([test "X$_AX_LIB_POSTGRESQL_PKG_CONFIG_fail" = "Xyes"],[break]) -+ POSTGRESQL_LDFLAGS="$ac_cv_POSTGRESQL_LDFLAGS" -+ -+ -+ AC_CACHE_CHECK([for the PostgreSQL libraries LIBS],[ac_cv_POSTGRESQL_LIBS], -+ [ac_cv_POSTGRESQL_LIBS="`$PKG_CONFIG libpq --libs-only-l`" || _AX_LIB_POSTGRESQL_PKG_CONFIG_fail=ye]) -+ AS_IF([test "X$_AX_LIB_POSTGRESQL_PKG_CONFIG_fail" = "Xyes"],[break]) -+ POSTGRESQL_LIBS="$ac_cv_POSTGRESQL_LIBS" -+ -+ dnl already checked by exist but need to be recovered -+ AC_CACHE_CHECK([for the PostgreSQL version],[ac_cv_POSTGRESQL_VERSION], -+ [ac_cv_POSTGRESQL_VERSION="`$PKG_CONFIG libpq --modversion`" || _AX_LIB_POSTGRESQL_PKG_CONFIG_fail=yes]) -+ AS_IF([test "X$_AX_LIB_POSTGRESQL_PKG_CONFIG_fail" = "Xyes"],[break]) -+ POSTGRESQL_VERSION="$ac_cv_POSTGRESQL_VERSION" -+ -+ found_postgresql=yes -+ break; -+ done - -- dnl -- dnl Check PostgreSQL libraries (libpq) -- dnl -+]) - -- if test "x$want_postgresql" = "xyes"; then -- AC_PATH_PROG([PG_CONFIG], [pg_config], []) - -- if test -x "$PG_CONFIG"; then -- POSTGRESQL_CFLAGS="`$PG_CONFIG --includedir`" -- if test -n "$POSTGRESQL_CFLAGS"; then -- POSTGRESQL_CFLAGS="-I$POSTGRESQL_CFLAGS"; -- fi -- POSTGRESQL_LDFLAGS="`$PG_CONFIG --libdir`" -- if test -n "$POSTGRESQL_LDFLAGS"; then -- POSTGRESQL_LDFLAGS="-L$POSTGRESQL_LDFLAGS"; -- fi -- POSTGRESQL_LIBS="-lpq" -- -- _save_postgresql_cflags="${CFLAGS}" -- _save_postgresql_ldflags="${LDFLAGS}" -- _save_postgresql_libs="${LIBS}" -- CFLAGS="${CFLAGS} ${POSTGRESQL_CFLAGS}" -- LDFLAGS="${LDFLAGS} ${POSTGRESQL_LDFLAGS}" -- LIBS="${LIBS} ${POSTGRESQL_LIBS}" - -- AC_MSG_CHECKING([for PostgreSQL libraries]) -- AC_TRY_LINK( --[ --#include --], -+AC_DEFUN([AX_LIB_POSTGRESQL], - [ --PGconn *conn; --conn = PQsetdbLogin(NULL, NULL, NULL, NULL, NULL, NULL, NULL); --], -- AC_DEFINE([HAVE_POSTGRESQL], [1], [Define to 1 if PostgreSQL libraries are available]) -- found_postgresql="yes" -- AC_MSG_RESULT(yes), -- AC_MSG_RESULT(no)) -- -- CFLAGS="${_save_postgresql_cflags}" -- LDFLAGS="${_save_postgresql_ldflags}" -- LIBS="${_save_postgresql_libs}" -- unset _save_postgresql_cflags -- unset _save_postgresql_ldflags -- unset _save_postgresql_libs -- -- if test "x$found_postgresql" = "xyes"; then -- POSTGRESQL_VERSION=`$PG_CONFIG --version | cut -d' ' -f2` -- fi -- fi -- fi -+ AC_ARG_WITH([postgresql], -+ AS_HELP_STRING([--with-postgresql=@<:@ARG@:>@], -+ [use PostgreSQL library @<:@default=yes@:>@, optionally specify path to pg_config] -+ ), -+ [ -+ AS_CASE([$withval], -+ [[[nN]][[oO]]],[want_postgresql="no"], -+ [[[yY]][[eE]][[sS]]],[want_postgresql="yes"], -+ [ -+ want_postgresql="yes" -+ PG_CONFIG="$withval" -+ ]) -+ ], -+ [want_postgresql="yes"] -+ ) - -- dnl -- dnl Check if required version of PostgreSQL is available -- dnl -+ AC_ARG_VAR([POSTGRESQL_CPPFLAGS],[cpp flags for PostgreSQL overriding detected flags]) -+ AC_ARG_VAR([POSTGRESQL_LIBFLAGS],[libs for PostgreSQL overriding detected flags]) -+ AC_ARG_VAR([POSTGRESQL_LDFLAGS],[linker flags for PostgreSQL overriding detected flags]) -+ -+ # populate cache -+ AS_IF([test "X$POSTGRESQL_CPPFLAGS" != X],[ac_cv_POSTGRESQL_CPPFLAGS="$POSTGRESQL_CPPFLAGS"]) -+ AS_IF([test "X$POSTGRESQL_LDFLAGS" != X],[ac_cv_POSTGRESQL_LDFLAGS="$POSTGRESQL_LDFLAGS"]) -+ AS_IF([test "X$POSTGRESQL_LIBS" != X],[ac_cv_POSTGRESQL_LIBS="$POSTGRESQL_LIBS"]) - - postgresql_version_req=ifelse([$1], [], [], [$1]) -+ found_postgresql="no" - -- if test "x$found_postgresql" = "xyes" -a -n "$postgresql_version_req"; then -+ POSTGRESQL_VERSION="" -+ -+ dnl -+ dnl Check PostgreSQL libraries (libpq) -+ dnl -+ AS_IF([test X"$want_postgresql" = "Xyes"],[ -+ _AX_LIB_POSTGRESQL_PKG_CONFIG - -- dnl Decompose version string of installed PostgreSQL -- dnl and calculate its number representation -- postgresql_version_major=`expr $POSTGRESQL_VERSION : '\([[0-9]]*\)'` -- postgresql_version_minor=`expr $POSTGRESQL_VERSION : '[[0-9]]*\.\([[0-9]]*\)'` -- postgresql_version_micro=`expr $POSTGRESQL_VERSION : '[[0-9]]*\.[[0-9]]*\.\([[0-9]]*\)'` -- if test "x$postgresql_version_minor" = "x"; then -- postgresql_version_minor="0" -- fi -- if test "x$postgresql_version_micro" = "x"; then -- postgresql_version_micro="0" -- fi -- -- postgresql_version_number=`expr $postgresql_version_major \* 1000000 \ -- \+ $postgresql_version_minor \* 1000 \ -- \+ $postgresql_version_micro` -- -- if test -n "$postgresql_version_req"; then -- -- AC_MSG_CHECKING([if PostgreSQL version is >= $postgresql_version_req]) -- -- dnl Decompose required version string of PostgreSQL -- dnl and calculate its number representation -- postgresql_version_req_major=`expr $postgresql_version_req : '\([[0-9]]*\)'` -- postgresql_version_req_minor=`expr $postgresql_version_req : '[[0-9]]*\.\([[0-9]]*\)'` -- postgresql_version_req_micro=`expr $postgresql_version_req : '[[0-9]]*\.[[0-9]]*\.\([[0-9]]*\)'` -- if test "x$postgresql_version_req_micro" = "x"; then -- postgresql_version_req_micro="0" -- fi -- -- postgresql_version_req_number=`expr $postgresql_version_req_major \* 1000000 \ -- \+ $postgresql_version_req_minor \* 1000 \ -- \+ $postgresql_version_req_micro` -- -- postgresql_version_check=`expr $postgresql_version_number \>\= $postgresql_version_req_number` -- if test "$postgresql_version_check" = "1"; then -- AC_MSG_RESULT([yes]) -- else -- AC_MSG_RESULT([no]) -- fi - -- fi -+ AS_IF([test X"$found_postgresql" = "Xno"], -+ [_AX_LIB_POSTGRESQL_OLD]) - -- fi -+ AS_IF([test X"$found_postgresql" = Xyes],[ -+ _AX_LIB_POSTGRESQL_OLD_CPPFLAGS="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS $POSTGRESQL_CPPFLAGS" -+ _AX_LIB_POSTGRESQL_OLD_LDFLAGS="$LDFLAGS" -+ LDFLAGS="$LDFLAGS $POSTGRESQL_LDFLAGS" -+ _AX_LIB_POSTGRESQL_OLD_LIBS="$LIBS" -+ LIBS="$LIBS $POSTGRESQL_LIBS" -+ while true; do -+ dnl try to compile -+ AC_CHECK_HEADER([libpq-fe.h],[],[found_postgresql=no]) -+ AS_IF([test "X$found_postgresql" = "Xno"],[break]) -+ dnl try now to link -+ AC_CACHE_CHECK([for the PostgreSQL library linking is working],[ac_cv_postgresql_found], -+ [ -+ AC_LINK_IFELSE([ -+ AC_LANG_PROGRAM( -+ [ -+ #include -+ ], -+ [[ -+ char conninfo[]="dbname = postgres"; -+ PGconn *conn; -+ conn = PQconnectdb(conninfo); -+ ]] -+ ) -+ ],[ac_cv_postgresql_found=yes], -+ [ac_cv_postgresql_found=no]) -+ ]) -+ found_postgresql="$ac_cv_postgresql_found" -+ AS_IF([test "X$found_postgresql" = "Xno"],[break]) -+ break -+ done -+ CPPFLAGS="$_AX_LIB_POSTGRESQL_OLD_CPPFLAGS" -+ LDFLAGS="$_AX_LIB_POSTGRESQL_OLD_LDFLAGS" -+ LIBS="$_AX_LIB_POSTGRESQL_OLD_LIBS" -+ ]) -+ -+ -+ AS_IF([test "x$found_postgresql" = "xyes"],[ -+ AC_DEFINE([HAVE_POSTGRESQL], [1], -+ [Define to 1 if PostgreSQL libraries are available])]) -+ ]) - -- AC_SUBST([POSTGRESQL_CFLAGS]) -+ AC_SUBST([POSTGRESQL_VERSION]) -+ AC_SUBST([POSTGRESQL_CPPFLAGS]) - AC_SUBST([POSTGRESQL_LDFLAGS]) - AC_SUBST([POSTGRESQL_LIBS]) -- AC_SUBST([POSTGRESQL_VERSION]) -+ -+ AS_IF([test "x$found_postgresql" = "xyes"], -+ [ifelse([$2], , :, [$2])], -+ [ifelse([$3], , AS_IF([test X"$want_postgresql" = "Xyes"],[AC_MSG_ERROR([Library requirements (PostgreSQL) not met.])],[:]), [$3])]) -+ - ]) diff --git a/zabbix-6.0.19.tar.gz b/zabbix-6.0.19.tar.gz deleted file mode 100644 index 9666377..0000000 --- a/zabbix-6.0.19.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ec0d6e9027d401f28b78ec25084185f48e76d5fd807dc5a7fd5ec65c6500f069 -size 41953882 diff --git a/zabbix-6.0.22.tar.gz b/zabbix-6.0.22.tar.gz new file mode 100644 index 0000000..461e12b --- /dev/null +++ b/zabbix-6.0.22.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33489767573d96d575d8002101270e6d1495d2d8564ea5dc7208013bb6e821a7 +size 42590907 diff --git a/zabbix.changes b/zabbix.changes index 29573e6..f715b03 100644 --- a/zabbix.changes +++ b/zabbix.changes @@ -1,3 +1,106 @@ +------------------------------------------------------------------- +Tue Oct 17 20:03:33 UTC 2023 - Boris Manojlovic + +- updated to latest upstream release 6.0.22 +- this version fixes CVE-2023-32722 and CVE-2023-32722 bsc#1216211 and bsc#1216222 +- removed patches zabbix-6.0.12-new-m4-pgsql.patch zabbix-6.0.12-curl-fixes.patch + honestly was tired of patching for correct way doing postgresql detection + now added postgresql-server-devel which does not make sense but hey + upstream does not care +- New Features and Improvements + + ZBXNEXT-8576 Added template integration with Acronis Cyber Protect Cloud + + ZBXNEXT-6554 Increased remote command execution limits to 16MB + + ZBXNEXT-8610 Added MantisBT template + + ZBXNEXT-8358 Improved items configuration sync on PostgreSQL by selecting using equal condition instead of not equal + + ZBXNEXT-8429 Added HashiCorp Nomad template + + ZBXNEXT-8649 Fixed time period params in JavaScript + + ZBXNEXT-8581 Added support for HTTP proxy in Azure templates + + ZBXNEXT-8558 Added MantisBT webhook + + ZBXNEXT-8589 Updated documentation, unified metric names and descriptions in PostgreSQL templates, + removed unused macros, user parameters and queries in PostgreSQL by Zabbix agent + + ZBXNEXT-8528 Added AWS Cost Explorer template + + ZBXNEXT-8190 Increased MariaDB maximum supported version to 11.0 + + ZBXNEXT-8582 Increased MySQL maximum supported version to 8.1 + + ZBXNEXT-8481 Added PostgreSQL by ODBC template + + ZBXNEXT-8561 Added nodata trigger to remote Zabbix proxy and server health templates + + ZBXNEXT-8482 Added integration with OpenStack Nova + + ZBXNEXT-8451 Disabled spell checking for nondescriptive textareas + + ZBXNEXT-8505 Added Cisco SD-WAN templates + + ZBXNEXT-7944 Excluded edgeupdate service from services discovery in Windows by Zabbix agent templates + + ZBXNEXT-8422 Added AWS ECS templates +- Bug Fixes + + ZBX-23417 Fixed possible memory leak when checking modbus.get[] item + + ZBX-23338 Improved performance of templatedashboard.get method for non super-admin users + + ZBX-23110 Fixed possible crash on Windows 11 by removing concurrent Win API call for update perfCounters list + + ZBX-23284 Prevented deletion of the discovered group as a result of renaming its group prototype + + ZBX-21094 Fixed graphs not displaying values when items do not have trends and trend storage period is overridden in configuration + + ZBX-23162 Fixed variable in JavaScript for Cisco Meraki template + + ZBX-23066 Expanded ui/composer.json to describe the project + + ZBX-23261 Removed kiosk mode button from host inventory form + + ZBX-23253 Added static units support to graph widget legend and hint box + + ZBX-21898 Fixed expression validation, history function parser to accept backslash without escaping + + ZBX-22943 Fixed various memory leaks in Zabbix agent 2 + + ZBX-23244 Added escaping for special characters in HTML mode of Telegram mediatype + + ZBX-22818 Fixed some aggregation functions not working with last_foreach() + + ZBX-21636 Fixed Oracle DB update query error mishandled as success + + ZBX-20442 Fixed Ceph plugin not returning percent_used in Zabbix agent 2 + + ZBX-15210 Added housekeeping and handling in remove action operation of autoreg_host table + + ZBX-22685 Fixed issue of error message details not being expanded by default in various forms + + ZBX-22166 Fixed item value widget not showing decimal places properly with seconds + + ZBX-23035 Fixed disappearing filter group in host, item, trigger, graph, discovery rule, web and template lists + + ZBX-23105 Added missing database indices + + ZBX-22640 Fixed inability to add unique SNMPv3 checks in discovery rules + + ZBX-21952 Fixed and improved documentation for Oracle by ODBC template + + ZBX-22724 Fixed inconsistencies in ordering of objects in template configuration export + + ZBX-22980 Fixed host prototype displaying inherited macros in a non-inherited macro tab + + ZBX-17279 Fixed graph widget loading + + ZBX-21644 Fixed state of "allow manual close" setting of trigger prototype getting lost on template cloning + + ZBX-22060 Added notes about encryption in PostgreSQL templates, renamed database instance URI macro to connection string + in PostgreSQL by Zabbix agent 2 template, updated PostgreSQL by ODBC template to use connection string + + ZBX-23246 Fixed classic graph preview not working if more than 10 items are assigned to it + + ZBX-22758 Fixed Zabbix agent 2 startup error on domain controllers by increasing go-winio version + + ZBX-22451 Fixed resolving of calculated item formula in test popup + + ZBX-22620 Added header in items for Meraki template + + ZBX-23051 Changed content of resolved alerts to be more compatible with Event Orchestration in PagerDuty + + ZBX-23272 Fixed naming for tenant item prototypes in OpenStack Nova by HTTP template + + ZBX-22771 Fixed handling of large unsigned integers in jsonpath + + ZBX-22871 Fixed regular expression crash with invalid utf-8 sequences when pcre2 is used + + ZBX-23141 Fixed crash when maintenance is enabled and unexpected event exists for trigger prototype + + ZBX-21255 Added support of the fmtnum() function for {ITEM.VALUE}, {ITEM.LASTVALUE} and expression macros + + ZBX-21695 Fixed {TIME} macro not being resolved during scheduled report test + + ZBX-23221 Fixed memory leaks when using certificate-based encryption in Zabbix Agent 1 and Agent 2; thanks to Masato Hirahata for the patch + + ZBX-22864 Fixed calculation of max_repetitions sent out to device in SNMP PDUs + + ZBX-21574 Optimized Asterisk by HTTP template + + ZBX-18168 Added regexp runtime error logging for log*[] items + + ZBX-22677 Adjusted font colors for placeholders, disabled and readonly fields + + ZBX-22972 Fixed displaying of dashboard pages when scrolling is enabled + + ZBX-22528 Fixed draggable element position + + ZBX-23067 Enhanced audit logging with reason of switching of HA node to active mode + + ZBX-22613 Fixed script execution with API token as authentication + + ZBX-23060 Removed unused endpoints in JavaScript for Veeam Backup and Replication template + + ZBX-22772 Added trends cleanup for non-numeric value types + + ZBX-22822 Fixed displaying the correct threshold color in "Top hosts" widget when value exceeds maximum + + ZBX-22777 Fixed item test form sending incorrectly resolved macros to server if item uses SNMP interface + + ZBX-23097 Fixed use of uninitialised value when verifying subject and issuer with TLS + + ZBX-23112 Fixed runtime errors in the inheritance of the trigger and trigger prototype dependencies + + ZBX-22539 Fixed SLI calculation for days with daylight-saving-time transitions + + ZBX-22814 Fixed PHP runtime errors in API trigger.get method when using "expandComment" option + + ZBX-23049 Fixed default condition for log item macro resolution + + ZBX-21909 Updated setup section in README for PHP-FPM templates to include configuration example for Apache + + ZBX-21547 Fixed reading of non-UTF-8 encoded files in Zabbix agent 2 + + ZBX-20148 Fixed the issue with housekeeper failing to delete some of the events that required deletion + + ZBX-21970 Fixed console error in "Map navigation tree" widget; disabled add button on a 10th depth level + + ZBX-19393 Fixed undefined index errors in configuration.importcompare + + ZBX-22290 Fixed generation of double page headers when general warning appears + + ZBX-21845 Fixed Zabbix agent 2 systemd plugin failing with newer dbus + + ZBX-22830 Fixed free bytes calculation for temporary tablespace in Oracle Zabbix agent 2 plugin + + ZBX-22912 Fixed not being able to save an event correlation when custom formula was selected but only one condition remained + + ZBX-21571 Updated pod crash loop trigger expressions in Kubernetes nodes and cluster state templates + + ZBX-22369 Fixed suffix interpretation in threshold values for "Top hosts" widget + + ZBX-22825 Fixed Zabbix access to the first page for user with specific page access + + ZBX-22867 Fixed import popup showing circle animation even if PHP code failed + + ZBX-22711 Fixed incorrectly displayed simple graphs with non-numeric items in Host graphs page + ------------------------------------------------------------------- Thu Jul 20 20:54:15 UTC 2023 - Boris Manojlovic diff --git a/zabbix.spec b/zabbix.spec index 9d9dd5c..7091340 100644 --- a/zabbix.spec +++ b/zabbix.spec @@ -23,7 +23,7 @@ %define agent_group zabbix %define SUSEfirewall_services_dir %{_sysconfdir}/sysconfig/SuSEfirewall2.d/services Name: zabbix -Version: 6.0.19 +Version: 6.0.22 Release: 0 Summary: Distributed monitoring system License: GPL-2.0-or-later @@ -45,10 +45,6 @@ Source12: zabbix-agentd.service Source13: zabbix-server.service Source14: zabbix-java-gateway.service Source15: README-SSL.SUSE -# PATCH-FIX-UPSTREAM zabbix-6.0.12-new-m4-pgsql.patch fix for opensuse issue caused/solved by bnc#1120035 -Patch0: zabbix-6.0.12-new-m4-pgsql.patch -# PATCH-FIX-UPSTREAN zabbix-6.0.12-curl-fixes.patch fix for curl specific issue https://git.zabbix.com/projects/ZBX/repos/zabbix/pull-requests/4946/commits/f462538f52a1fba52fdd4010e40fe7281044f6b1?since=52c6b9703eacf3252ec66117a8cff094624b9217#include/common/zbxsysinc.h -Patch2: zabbix-6.0.12-curl-fixes.patch # PATCH-FIX-OPENSUSE zabbix-6.0.12-netsnmp-fixes.patch fix for removed md5 auth protocol Patch3: zabbix-6.0.12-netsnmp-fixes.patch BuildRequires: apache-rpm-macros @@ -64,6 +60,9 @@ BuildRequires: logrotate BuildRequires: net-snmp-devel BuildRequires: openldap2-devel BuildRequires: pkgconfig +%if 0%{?suse_version} >= 1600 || 0%{?sle_version} > 150100 +BuildRequires: postgresql-server-devel +%endif BuildRequires: systemd-rpm-macros BuildRequires: unixODBC-devel BuildRequires: update-alternatives @@ -246,9 +245,6 @@ remotely. %prep %setup -q -n zabbix-%{version} -%patch0 -#%%patch1 -%patch2 %patch3 cp %{SOURCE6} .