summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-analyzer')
-rw-r--r--net-analyzer/zabbix/ChangeLog11
-rw-r--r--net-analyzer/zabbix/Manifest21
-rw-r--r--net-analyzer/zabbix/files/2.0/patches/zbx7479.patch83
-rw-r--r--net-analyzer/zabbix/files/2.2/patches/zbx7479.patch83
-rw-r--r--net-analyzer/zabbix/zabbix-2.0.9-r1.ebuild395
-rw-r--r--net-analyzer/zabbix/zabbix-2.2.0-r4.ebuild (renamed from net-analyzer/zabbix/zabbix-2.2.0-r3.ebuild)4
6 files changed, 585 insertions, 12 deletions
diff --git a/net-analyzer/zabbix/ChangeLog b/net-analyzer/zabbix/ChangeLog
index 328189c54c66..103951eebd9b 100644
--- a/net-analyzer/zabbix/ChangeLog
+++ b/net-analyzer/zabbix/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for net-analyzer/zabbix
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-analyzer/zabbix/ChangeLog,v 1.147 2013/11/27 10:16:53 mattm Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-analyzer/zabbix/ChangeLog,v 1.148 2013/12/03 19:28:19 mattm Exp $
+
+*zabbix-2.0.9-r1 (03 Dec 2013)
+*zabbix-2.2.0-r4 (03 Dec 2013)
+
+ 03 Dec 2013; Matthew Marlowe <mattm@gentoo.org>
+ +files/2.0/patches/zbx7479.patch, +files/2.2/patches/zbx7479.patch,
+ +zabbix-2.0.9-r1.ebuild, +zabbix-2.2.0-r4.ebuild, -zabbix-2.2.0-r3.ebuild:
+ Patching for Zabbix Vulnerability - Possible Shell Code Injection -
+ https://support.zabbix.com/browse/ZBX-7479
27 Nov 2013; Matthew Marlowe <mattm@gentoo.org> zabbix-2.0.9.ebuild:
Zabbix 2.0.9 keyworded ~amd64 and ~x86
diff --git a/net-analyzer/zabbix/Manifest b/net-analyzer/zabbix/Manifest
index e14d6e84327f..8a173bad4485 100644
--- a/net-analyzer/zabbix/Manifest
+++ b/net-analyzer/zabbix/Manifest
@@ -29,10 +29,12 @@ AUX 2.0/init.d/zabbix-proxy 715 SHA256 bde2f3ab765969735114231e43b243303ab7f0885
AUX 2.0/init.d/zabbix-server 727 SHA256 2846405ed120c4ddaa41583ef7141fbb5b0f1ddc4761f4b6ef736943d794cdf4 SHA512 7cd93b3bc3593ffbd67f22989b8bfeef5d0b2a96def769f51c549740229a905daa69d1614ec2f89759803f3fab759a553d8122956be05d70d6182d439e2cf17c WHIRLPOOL 16cf2fcb54db348963d78e45c632f6274b2b2fcd40f8e4969b02028b20aab72638b20ca3da80da47369618b415bda5f44e7c6f7b7a3fad8fde5497ce19c358ea
AUX 2.0/patches/zbx282.patch 5556 SHA256 28334cdc8ee3dc6fc650dc55f2b9394d49c7a0355161ad8ef39c0529b75ad591 SHA512 7288c3ced5bfebe614fbe7d1d8ebe4d8af453b98908b73272fa4f3be7babc598dea2a51e4a26bdda1e665fb83c67b2a2b6bec030b18e3e998f51b1beaec3b7f0 WHIRLPOOL 8c6afb54b906dd4c7d317adf6a8cf602b2bb13344cb1e882636555b22c75854ca6f33cf69e2689b0d8c580e59e7dcf217c00c4bfb601a9b8416d1b4f5e134fe5
AUX 2.0/patches/zbx6097.patch 2383 SHA256 93c882b46431fa4dd78c5e48b2f238bd2e24359e547b513d40e8bb6b808c81bd SHA512 2fd4445821981afd379d86a3cc541c5ba4e1f83497fbe4ee96daeafc17f1489fa731dc8400c3f73375f96180e015752f72daa088d0bc8b5406ba337a49d11be8 WHIRLPOOL 4d9fd7214b8f4d6107b31bb15b48d8f070c1c481ad999cda6836c251d3bf6dfdca397d1d1b25828d3c345d6aa61e7bd85060b37760fc3b54eda8f9bf3d2ae080
+AUX 2.0/patches/zbx7479.patch 2205 SHA256 f35da4e994a1b93885c0292f993a2e88457a712fe47d44282de3ee37b766dfb3 SHA512 1bad5a92528333d763960fba3031b2bda3e5751ff52a2e962837b3d86234a0e6ad812bfe93fc42f15e505f78000fad3f567cfb9469a6a4496b758b2f3a03f537 WHIRLPOOL ae073faae7390e67f78641a63fe4dc07c510a8dbe50779d9fcca9dace1b8090d777f6cd29d2d7dfbbd96c6d8c96985fc9988a03527c99e56838e5484a2869d39
AUX 2.0/zabbix_proxy.conf 9979 SHA256 a1fe3728322abac55d3dc62ce1b3c86daa58c7c8c57da78ae04f7f2f11adfda6 SHA512 b1720c0b03f623ef74c58b9111a3f02d990fe3a04d7a2d58592501933387f908d4c7f856307ec83828b7406922101857eb3617dfb5443618237fc7ea81e8d8ef WHIRLPOOL 19e4aa0f704eee67e678531b0db8186359fd21a984a09c74b1761dcebe5ed6f0703f748cf188c63abb1d3232b7c49d8a4e6c27d6b6fe225bc2899465608ba61f
AUX 2.2/init.d/zabbix-agentd 730 SHA256 f60d80c937ef3a2fa0092a7948dbb644ab968a7d66ab0e44f1849b2e7ac35ed6 SHA512 523053ec80c43e3491a39478e8b4aaf8da17264fdcfb7d9dfecc03007f43266ba9d23c87119214de3d76834f9c664bd6f9c157b14fead040ead1760be30df7e8 WHIRLPOOL 6ac58565de163c5dda1837ecbac160a4ae484d718cd0797eff2a0fbe178ac285cfa4c984baf3fd5074fdd504a85f39a04c4fcfdb7c6202876d47f33eebd7d290
AUX 2.2/init.d/zabbix-proxy 707 SHA256 123cad5312edc8060a8223d2400e77dbf5892762bc73284e4f6c010c3941e747 SHA512 28b4fea607b619357ac98d2a38929d1620d2db546c6024bd0c3f4c27693b83d074d2281128bb9db395c54f4e4bd14249b31683174dab605ee0dbee347691818f WHIRLPOOL 7e8077dbe3313ab4b8d216909f18acf2932e3c9d492b58d9da9340796e250d5052f76655ba59c360feaa2542aa01e0b902dca5f3f091d517cb3a2039ca1228ca
AUX 2.2/init.d/zabbix-server 719 SHA256 2a072cbc510e013dd99d8c428c81e19953765dfc9ba6ab0c6a847bf68ae7b8d5 SHA512 127c0ba1f378ad5dbe5761713bd12dddbe99da9434a0b9e2aa34f1c05b7f556178b359f090bd1f8f888eeaf4d7886d475f30a82c48a6122f26e42aa3dc7b519a WHIRLPOOL ddeb9b038f645da0bf72562a92caec96fe0327ed58268ae0f0388d12c1b773ad0811a1db8effd34f3047f86d4ce837f40fe6ed2597e6571de5f03e41a1f3aa66
+AUX 2.2/patches/zbx7479.patch 2148 SHA256 e19cf42dc6b5cef61240c94bd22938cac20f882214c9d464457a235c1c5213d9 SHA512 1acaddbdb9e2fa0f09703a8274db53fcb23b8ead3cf8b34f81bb2b38e65d576ccf4198a9504c255f3c6f2f900078e74341d9cf331af53aa697b0420ffccdde9a WHIRLPOOL 71b40b70eb806f14db495147498100bb9eddac6b1a76d841ba4251d1c3f8fa197f0a606f595758933de00c9c31a8b14f96a825da97e6e7e6ff0e045297fc2caa
AUX 2.2/zabbix_agent.conf 2138 SHA256 b3bc0b5facf5d55e50722ea109fbd3dd4757130f555ff6ecd4bd18ed8c795739 SHA512 7cfd6c1b1ec29b72a8d82f8d026cce2c6f56cd4c49d0a9f987193f812032dc26c814bd30f7ff115950dba1a8319d4e1bceebbdcc87f221e0fc34feb8c0264e56 WHIRLPOOL 84bf7e3421315157dff172060fc8d934dc05fa32ee393312be6ae10de5190dcd8749aabd724becf0c2d6eb530b385fbf6617b0288b0c141bd7cf446e7d356133
AUX 2.2/zabbix_agentd.conf 7009 SHA256 4826f39a2f1f7a68ad51bd95afd68c6e3e4b0e41828ff1a39f20333b55ed88b9 SHA512 0474e31279c0cd0083468ec4f354176197bdd9ae7138f15dc19454537248b1218993ba6e79b292c4e526df6230104a5a40781fc44d618d4117ff72132424e699 WHIRLPOOL 019c42be344c410707f793bf17841ed01746e547aad9dc513b865b6c8a093f423210b38eacbbbc010e1a8e2f5f1da6ed86444c55f7d404dfab68fea65fa423cc
AUX 2.2/zabbix_proxy.conf 11353 SHA256 65f4a096489c0c5b416d7cceaed3d3e5ec922d0a74d257092806f72c5b368ab2 SHA512 35e278970a8ca2d1c2ba763d6a57eec4d05586c3eec9c2aa80c67d1eff1b78354dcf823161f03b06ade4c3f9616016a2fc653ea2686e7e0ea4ca00e1bab5e29b WHIRLPOOL 271e40754c3ac478a11ca770fd4c5bcff6148591a8aa6bf4ce8f07dbef6df73a5e5c486369264c6269c46868cbff6744dca2d9095385c43412844afb53fe8b5d
@@ -41,20 +43,21 @@ AUX zabbix-1.8.9-as-needed.patch 2737 SHA256 1c9b85c0a9d9161f983a590df387341c516
DIST zabbix-2.0.9.tar.gz 13648392 SHA256 d5ef1ea94f6f09992a7f1f6fb9b58f99c3bca6196c5454ad29fa63c03996ee14 SHA512 60ed4ea76aa60032a70a5870f7db78c0675eab1108043049cc3c2788b21c521f3cf4f87801a905270201120a44af95bf3b653b02b11abafac360553c6a8d6070 WHIRLPOOL e49696c685b96e5d96c1a861d18d401e5d544f1aae0a8ece387635b7963e6b757f756e32d5867d073398c7e4b47577762363592bc881d7301143afab79418e6a
DIST zabbix-2.0.9rc1.tar.gz 13648577 SHA256 474ac3a0fb47a0f2dc43667948ae40fbe895ae754ae71377ff084cb33c716db3 SHA512 2d67f5850066c6c932b42a2ca371def9bbc77a52b29e8f98bb116261a94df5aa13160f45a5d5c18a856c5c61a0cdb18d73178701e1ee80e476ad6eeb36110963 WHIRLPOOL 44edc34c4b8f81899e55c4d4b9f68bf6b604df3acd15c1d1a5468c5ac2cca9394cc9091e37dfbe0ca71278aebb7d1df9e622ef799bd8e84944f391b0ff5b058b
DIST zabbix-2.2.0.tar.gz 14252290 SHA256 f436f660866eaf16f9e360c158170f0e7c7251f7a393f9e14d19541161f3465d SHA512 bbc9aa3b6449076e0575f3514c595b740e9699e266402f32e4776f0b0fdf945748e3bc671b590a9678ff364742607dd5789f1a7f6e4efecce252217a7e45b36e WHIRLPOOL 88e8d86e9bd16657ca9ca799a65d1e9c0e5c4b9b57cfc929e96a20fde8d711f87a0e57960a2583cfbfd8797ef0037c246bfbff72d0897d551ed734d684841ae6
+EBUILD zabbix-2.0.9-r1.ebuild 10609 SHA256 0723c7234084f4a4f8b6b8d4bd97236f3e4c785f991bb01370bf9088baaa5dc6 SHA512 b5cad42558d94ff70c4517be9a05b0d602abedff8f8a533b746af737d0a24a5c77c0baf0a6ffc27e1406ebbc444a063a992a1902a515cafa2ba40b873ec4e8e6 WHIRLPOOL 288b189e95a6cc8ef4a6243866df9654081f2a3ab22c2796a838f6b05e589ede775cdd5267d42443dd31e6818287721a7a900988df0d2e14d81830a865837d30
EBUILD zabbix-2.0.9.ebuild 10558 SHA256 dd62272fb9264814b9f631584ba8885e8881708a81fbed232147a6e8ea29ffaf SHA512 d8d94f1d71712b5419b2f0b7e4bab498fc57008332b53e4e5e7762f6cee1094e59b7f0f76042ca79f510bfc15610b9ad5823c368ab45495b2b441748c8059172 WHIRLPOOL 7c553e38862a05cc5034b1cd0fc956833fb95b54eed464e625dc07d88d9cb128779a178be74560e345f04c44ffafcc941ab6cb5c73a5e31916896f568d8c1818
EBUILD zabbix-2.0.9_rc1-r2.ebuild 10560 SHA256 f2098014c15d357edf50a590d372a9988598808720939337078cc3c4c9b91c73 SHA512 40353c6b0a72840e1ef251c57e80fcee763daf0308ac4f431f28048a61bff480011e92ffadf4d44b5afc0df0bf30f996775b385ed3b33a71d1e47a4a1e7ab7df WHIRLPOOL 509b5de60c5980787cac831c0b271b2fead29eb3a2711bd9f83750f247fd42ab96c33884be19d319119be3b26bf39926047e67e673644bde47174b05b596053f
EBUILD zabbix-2.0.9_rc1-r3.ebuild 10569 SHA256 1aec64e76a53c785d84818b05b04fee9c87e462eae00de58b7768a8f8967677d SHA512 9beb3a2666ccaaee823841ff6ce90d5add23d936f001484a471d42a5e213f238dc7b64fbe7c09f6108670276d0b2483723ee6b60c20682aa380a44710d625764 WHIRLPOOL e42b4d43c4d45c85c7b4664b10d9671463dfaaaab5b6fb812f33821d9abd4f6752933af4dac0b3aced48fda62251bdc177f52e67230cfbff636596de05f0c409
-EBUILD zabbix-2.2.0-r3.ebuild 9634 SHA256 3b0cec273f31cb9260f138af9ee61945874fe27fe46cc0cde88390512be7d3b4 SHA512 9becaed25c35d35db203139f4cab4b7b08bd640ea1dfd5fe997082209de941ecb6500e3a9094f7b0e4e5dd166be17d20facf81dfc65b05bcd9edeb9f25096ed9 WHIRLPOOL f3d1b9970017d703fe0923fc75d2f865df737c71ec730ea17610ed5015f4ae3d7b408dfe295b39f607887727a538ad9f75afbbd076ce6a708826b5a68aba1e2d
-MISC ChangeLog 33804 SHA256 ff996b31f471492f2b5aac5d46f755fd5afa4ad1cd1853ea1df418e12764ff26 SHA512 d3f4297c98eefe11d727f06f148a31e46f9ac4c7867996a9c0a97386dbd1bff545456407a46fb22429512e9c127b2cdafda44b62245f5e1c20722a0225fb123b WHIRLPOOL 010d758a3cdbab814cafdd8278875d752de7dc97c5483467b6392b76dc19407607fd91e83d894ea37dd49bbe6352819f71547fe22066262d5aa30b09bbcfff2c
+EBUILD zabbix-2.2.0-r4.ebuild 9659 SHA256 a9698752f702fd8c5da6f423722bdcbeef5c8fa91e5ced7e67c1fdca2f389b9d SHA512 b13d803b0c72b57fc6aa6a88789452eb13277b5dfce258f6022f277f545e0b77f3001944f45b1a2d9bf7b4ed7d6224890b89002cca87f12562c21d0aefe9c738 WHIRLPOOL a6cb85cd970b8cd6c7baadf8250ca59ee0daadafb96c87b4b4f2ade8cccc51f56b58d64ec4a93e97be0db92638f9787f8f13d5975dff4190ac92ce1d006fbe03
+MISC ChangeLog 34180 SHA256 4afc651acb4d10d4a364fc8c999fb668b0ce00a67e03c3065b945757f0347803 SHA512 d507f9b7602149c0a209bd3b8128c9188784896561fbdace5c69772c44bd9db4375367da26c512bf03cdc0afebd2734bbf510d691d2da2f8c882a3f5047c6ffc WHIRLPOOL 61513090494c2a617176ed3f5e11f0f554e732103784b633b19a617bd0f9bdc3d448d1de91ff93afef201fe2a006888da8693f3dd84161e14460d0ed18c1dfa6
MISC metadata.xml 1221 SHA256 94d1841cf3efb9a709dbc9ee160a29c394a1c0f5af5069fe1466f9f08796c72d SHA512 3d3ed8e75fcd9f521402a9734d5bd19c163a7a5d33cef3b20b6e476416fc352a91a62782ecc0ed032efbafd5f07f6ac08e28a88fb766095a1bba146f8f50b5e5 WHIRLPOOL ae2d69cab99c364721ca2e806fc5e02d1dbe72ad48bea43b4d1a0fd49c00cc2b94ea6ea85f4f5a9ff90522a90ade17fe816fe85ca7a16e755d02239d4426da92
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
-iQEcBAEBCAAGBQJSlcabAAoJEC1LWXx4YDenFogH/3DuEMYkuMoN/4qPft9nvfO2
-iiNP8hejQa0zC9+WIfm0mEWqHURl1BkJuY5nmkYacq5V+pqT8gQH8JoI8FoI/UMX
-VW2UgHMnwvjs+l4S00hhHPNhqQOR7iwQ3gnDRqLO4ChwmNhJ8fm3NMxA7vWIOWJp
-G1xqCU3w/Rq0VpQfE/LshsrlnuaHMqX+VFzTwPN9Hedp1BQid6rDLXk4WpYpE3vs
-byeFE+QGxNSgDoetpgRupzU7yB3A+gnodwzzzLahVaMkeOY4KQP5Z0s8ZjQvy4ih
-4KOSvGYu2+PnE0j95/jRqu4YXnRh9ZzvhlN9Mp+/cWJV900+Wl0Vj0vnWiQrd68=
-=TKLm
+iQEcBAEBCAAGBQJSnjDbAAoJEC1LWXx4YDen+UYIAKaoJPA9TyK6noXrirYiJlEp
+hkHCFTSr8jDefn1qP2IAlZZOEtN1kvgibghr82uDUi/3ZiE2v1zmKGoPIDMjzxNI
+T4YPqqd27cc8mFisK/Bp6RRyxNfDUey1kN8G6KAv8ZihoWKxabX9Qz+PwsHxys07
+PS4jUAuEOfSoGTTr5hHgdNPFdPhFbB4fYZy6CwKi1vWj0fCYYAzIFLli9jLZyTFH
+5E0vLOlW0MX0cfy+jeyMsoSfirLrF41kjwfpd2g/5300rkHTUlLfAWMloVqPxIpI
+3dW8gOFglXBrhtHDGEN5CDp7MEc66FXQWm6GZCR/xpmwbGb4cm89XipLu9HrZ9U=
+=tuil
-----END PGP SIGNATURE-----
diff --git a/net-analyzer/zabbix/files/2.0/patches/zbx7479.patch b/net-analyzer/zabbix/files/2.0/patches/zbx7479.patch
new file mode 100644
index 000000000000..52cabd4750ea
--- /dev/null
+++ b/net-analyzer/zabbix/files/2.0/patches/zbx7479.patch
@@ -0,0 +1,83 @@
+Index: src/libs/zbxsysinfo/sysinfo.c
+===================================================================
+--- src/libs/zbxsysinfo/sysinfo.c (revision 40346)
++++ src/libs/zbxsysinfo/sysinfo.c (working copy)
+@@ -267,13 +267,49 @@
+ test_parameter(commands[i].key, PROCESS_TEST | PROCESS_USE_TEST_PARAM);
+ }
+
++static int zbx_check_user_parameter(const char *param, char *error, int max_error_len)
++{
++ const char suppressed_chars[] = "\\'\"`*?[]{}~$!&;()<>|#@\n", *c;
++ char *buf = NULL;
++ size_t buf_alloc = 128, buf_offset = 0;
++
++ if (0 != CONFIG_UNSAFE_USER_PARAMETERS)
++ return SUCCEED;
++
++ for (c = suppressed_chars; '\0' != *c; c++)
++ {
++ if (NULL == strchr(param, *c))
++ continue;
++
++ buf = zbx_malloc(buf, buf_alloc);
++
++ for (c = suppressed_chars; '\0' != *c; c++)
++ {
++ if (c != suppressed_chars)
++ zbx_strcpy_alloc(&buf, &buf_alloc, &buf_offset, ", ");
++
++ if (0 != isprint(*c))
++ zbx_chrcpy_alloc(&buf, &buf_alloc, &buf_offset, *c);
++ else
++ zbx_snprintf_alloc(&buf, &buf_alloc, &buf_offset, "0x%02x", *c);
++ }
++
++ zbx_snprintf(error, max_error_len, "special characters \"%s\" are not allowed in the parameters", buf);
++
++ zbx_free(buf);
++
++ return FAIL;
++ }
++
++ return SUCCEED;
++}
++
+ static int replace_param(const char *cmd, const char *param, char *out, int outlen, char *error, int max_error_len)
+ {
+ int ret = SUCCEED;
+ char buf[MAX_STRING_LEN];
+ char command[MAX_STRING_LEN];
+ char *pl, *pr;
+- const char suppressed_chars[] = "\\'\"`*?[]{}~$!&;()<>|#@", *c;
+
+ assert(out);
+
+@@ -305,25 +341,10 @@
+ {
+ get_param(param, (int)(pr[1] - '0'), buf, sizeof(buf));
+
+- if (0 == CONFIG_UNSAFE_USER_PARAMETERS)
+- {
+- for (c = suppressed_chars; '\0' != *c; c++)
+- {
+- if (NULL != strchr(buf, *c))
+- {
+- zbx_snprintf(error, max_error_len, "Special characters '%s'"
+- " are not allowed in the parameters",
+- suppressed_chars);
+- ret = FAIL;
+- break;
+- }
+- }
+- }
++ if (SUCCEED != (ret = zbx_check_user_parameter(buf, error, max_error_len)))
++ break;
+ }
+
+- if (FAIL == ret)
+- break;
+-
+ zbx_strlcat(out, buf, outlen);
+ outlen -= MIN((int)strlen(buf), (int)outlen);
+
diff --git a/net-analyzer/zabbix/files/2.2/patches/zbx7479.patch b/net-analyzer/zabbix/files/2.2/patches/zbx7479.patch
new file mode 100644
index 000000000000..79bb92f4bae0
--- /dev/null
+++ b/net-analyzer/zabbix/files/2.2/patches/zbx7479.patch
@@ -0,0 +1,83 @@
+Index: src/libs/zbxsysinfo/sysinfo.c
+===================================================================
+--- src/libs/zbxsysinfo/sysinfo.c (revision 40348)
++++ src/libs/zbxsysinfo/sysinfo.c (working copy)
+@@ -427,13 +427,49 @@
+ test_aliases();
+ }
+
++static int zbx_check_user_parameter(const char *param, char *error, int max_error_len)
++{
++ const char suppressed_chars[] = "\\'\"`*?[]{}~$!&;()<>|#@\n", *c;
++ char *buf = NULL;
++ size_t buf_alloc = 128, buf_offset = 0;
++
++ if (0 != CONFIG_UNSAFE_USER_PARAMETERS)
++ return SUCCEED;
++
++ for (c = suppressed_chars; '\0' != *c; c++)
++ {
++ if (NULL == strchr(param, *c))
++ continue;
++
++ buf = zbx_malloc(buf, buf_alloc);
++
++ for (c = suppressed_chars; '\0' != *c; c++)
++ {
++ if (c != suppressed_chars)
++ zbx_strcpy_alloc(&buf, &buf_alloc, &buf_offset, ", ");
++
++ if (0 != isprint(*c))
++ zbx_chrcpy_alloc(&buf, &buf_alloc, &buf_offset, *c);
++ else
++ zbx_snprintf_alloc(&buf, &buf_alloc, &buf_offset, "0x%02x", *c);
++ }
++
++ zbx_snprintf(error, max_error_len, "special characters \"%s\" are not allowed in the parameters", buf);
++
++ zbx_free(buf);
++
++ return FAIL;
++ }
++
++ return SUCCEED;
++}
++
+ static int replace_param(const char *cmd, const char *param, char *out, int outlen, char *error, int max_error_len)
+ {
+ int ret = SUCCEED;
+ char buf[MAX_STRING_LEN];
+ char command[MAX_STRING_LEN];
+ char *pl, *pr;
+- const char suppressed_chars[] = "\\'\"`*?[]{}~$!&;()<>|#@", *c;
+
+ assert(out);
+
+@@ -465,25 +501,10 @@
+ {
+ get_param(param, (int)(pr[1] - '0'), buf, sizeof(buf));
+
+- if (0 == CONFIG_UNSAFE_USER_PARAMETERS)
+- {
+- for (c = suppressed_chars; '\0' != *c; c++)
+- {
+- if (NULL != strchr(buf, *c))
+- {
+- zbx_snprintf(error, max_error_len, "Special characters '%s'"
+- " are not allowed in the parameters",
+- suppressed_chars);
+- ret = FAIL;
+- break;
+- }
+- }
+- }
++ if (SUCCEED != (ret = zbx_check_user_parameter(buf, error, max_error_len)))
++ break;
+ }
+
+- if (FAIL == ret)
+- break;
+-
+ zbx_strlcat(out, buf, outlen);
+ outlen -= MIN((int)strlen(buf), (int)outlen);
+
diff --git a/net-analyzer/zabbix/zabbix-2.0.9-r1.ebuild b/net-analyzer/zabbix/zabbix-2.0.9-r1.ebuild
new file mode 100644
index 000000000000..257da84816c4
--- /dev/null
+++ b/net-analyzer/zabbix/zabbix-2.0.9-r1.ebuild
@@ -0,0 +1,395 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-analyzer/zabbix/zabbix-2.0.9-r1.ebuild,v 1.1 2013/12/03 19:28:19 mattm Exp $
+
+EAPI="5"
+
+# needed to make webapp-config dep optional
+WEBAPP_OPTIONAL="yes"
+inherit flag-o-matic webapp depend.php autotools java-pkg-opt-2 user toolchain-funcs
+
+DESCRIPTION="ZABBIX is software for monitoring of your applications, network and servers."
+HOMEPAGE="http://www.zabbix.com/"
+MY_P=${P/_/}
+MY_PV=${PV/_/}
+SRC_URI="http://prdownloads.sourceforge.net/zabbix/${MY_P}.tar.gz"
+LICENSE="GPL-2"
+SLOT="0"
+WEBAPP_MANUAL_SLOT="yes"
+KEYWORDS="~amd64 ~x86"
+IUSE="agent java curl frontend ipv6 jabber ldap mysql openipmi oracle postgres proxy server ssh snmp sqlite iodbc odbc static"
+
+COMMON_DEPEND="snmp? ( net-analyzer/net-snmp )
+ ldap? (
+ net-nds/openldap
+ =dev-libs/cyrus-sasl-2*
+ net-libs/gnutls
+ )
+ mysql? ( >=virtual/mysql-5.0 )
+ sqlite? ( >=dev-db/sqlite-3.3.5 )
+ postgres? ( >=dev-db/postgresql-base-8.3.0 )
+ oracle? ( >=dev-db/oracle-instantclient-basic-10.0.0.0 )
+ jabber? ( dev-libs/iksemel )
+ curl? ( net-misc/curl )
+ openipmi? ( sys-libs/openipmi )
+ ssh? ( net-libs/libssh2 )
+ java? ( >=virtual/jdk-1.4 )
+ odbc? (
+ iodbc? ( dev-db/libiodbc )
+ !iodbc? ( dev-db/unixODBC )
+ )"
+
+RDEPEND="${COMMON_DEPEND}
+ proxy? ( <=net-analyzer/fping-2.9 )
+ server? ( <=net-analyzer/fping-2.9
+ app-admin/webapp-config )
+ java? (
+ >=virtual/jre-1.4
+ dev-java/slf4j-api
+ dev-java/json-simple
+ )
+ frontend? (
+ dev-lang/php[bcmath,ctype,sockets,gd,truetype,xml,session,xmlreader,xmlwriter,nls,sysvipc,unicode]
+ || ( dev-lang/php[apache2] dev-lang/php[cgi] dev-lang/php[fpm] )
+ media-libs/gd[png]
+ app-admin/webapp-config )"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig"
+
+S=${WORKDIR}/${MY_P}
+
+ZABBIXJAVA_BASE="opt/zabbix_java"
+
+java_prepare() {
+ cd "${S}/src/zabbix_java/lib"
+ rm -v *.jar || die
+
+ java-pkg_jar-from slf4j-api
+ java-pkg_jar-from json-simple
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/2.0/patches/zbx282.patch"
+ epatch "${FILESDIR}/2.0/patches/zbx7479.patch"
+ eautoreconf
+}
+
+pkg_setup() {
+ if use server || use proxy ; then
+ local dbnum dbtypes="mysql oracle postgres sqlite" dbtype
+ declare -i dbnum=0
+ for dbtype in ${dbtypes}; do
+ use ${dbtype} && let dbnum++
+ done
+ if [ ${dbnum} -gt 1 ]; then
+ eerror
+ eerror "You can't use more than one database type in Zabbix."
+ eerror "Select exactly one database type out of these: ${dbtypes}"
+ eerror
+ die "Multiple database types selected."
+ elif [ ${dbnum} -lt 1 ]; then
+ eerror
+ eerror "Select exactly one database type out of these: ${dbtypes}"
+ eerror
+ die "No database type selected."
+ fi
+ if use oracle; then
+ if [ -z "${ORACLE_HOME}" ]; then
+ eerror
+ eerror "The environment variable ORACLE_HOME must be set"
+ eerror "and point to the correct location."
+ eerror "It looks like you don't have Oracle installed."
+ eerror
+ die "Environment variable ORACLE_HOME is not set"
+ fi
+ if has_version 'dev-db/oracle-instantclient-basic'; then
+ ewarn
+ ewarn "Please ensure you have a full install of the Oracle client."
+ ewarn "dev-db/oracle-instantclient* is NOT sufficient."
+ ewarn
+ fi
+ fi
+ fi
+
+ if use frontend; then
+ webapp_pkg_setup
+ fi
+
+ enewgroup zabbix
+ enewuser zabbix -1 -1 /var/lib/zabbix/home zabbix
+}
+
+pkg_postinst() {
+ if use server || use proxy ; then
+ elog
+ elog "You may need to configure your database for Zabbix,"
+ elog "if you have not already done so. Most minor version"
+ elog "zabbix updates do not require db changes. However, "
+ elog "you should read the release notes to be sure."
+ elog
+ elog "Have a look at /usr/share/zabbix for"
+ elog "database creation and upgrades."
+ elog
+ elog "Execute schema, images, and data sql files in that order."
+ elog
+ elog "For more info read the Zabbix manual at"
+ elog "http://www.zabbix.com/documentation.php"
+ elog
+ elog "New use flags: java, odbc, iodbc"
+ elog
+
+ zabbix_homedir=$(egethome zabbix)
+ if [ -n "${zabbix_homedir}" ] && \
+ [ "${zabbix_homedir}" != "/var/lib/zabbix/home" ]; then
+ ewarn
+ ewarn "The user 'zabbix' should have his homedir changed"
+ ewarn "to /var/lib/zabbix/home if you want to use"
+ ewarn "custom alert scripts."
+ ewarn
+ ewarn "A real homedir might be needed for configfiles"
+ ewarn "for custom alert scripts (e.g. ~/.sendxmpprc when"
+ ewarn "using sendxmpp for Jabber alerts)."
+ ewarn
+ ewarn "To change the homedir use:"
+ ewarn " usermod -d /var/lib/zabbix/home zabbix"
+ ewarn
+ fi
+ fi
+
+ if use server; then
+ elog
+ elog "For distributed monitoring you have to run:"
+ elog
+ elog "zabbix_server -n <nodeid>"
+ elog
+ elog "This will convert database data for use with Node ID"
+ elog "and also adds a local node."
+ elog
+ fi
+
+ elog "--"
+ elog
+ elog "You may need to add these lines to /etc/services:"
+ elog
+ elog "zabbix-agent 10050/tcp Zabbix Agent"
+ elog "zabbix-agent 10050/udp Zabbix Agent"
+ elog "zabbix-trapper 10051/tcp Zabbix Trapper"
+ elog "zabbix-trapper 10051/udp Zabbix Trapper"
+ elog
+
+ elog "Feel free to download or contribute gentoo specific zabbix templates"
+ elog "via https://github.com/deploylinux/gentooZabbixTemplates (WIP)."
+
+ # repeat fowners/fperms functionality from src_install()
+ # here to catch wrong permissions on existing files in
+ # the live filesystem (yeah, that sucks).
+ chown -R zabbix:zabbix \
+ "${ROOT}"/etc/zabbix \
+ "${ROOT}"/var/lib/zabbix \
+ "${ROOT}"/var/lib/zabbix/home \
+ "${ROOT}"/var/lib/zabbix/scripts \
+ "${ROOT}"/var/log/zabbix
+ chmod 0750 \
+ "${ROOT}"/etc/zabbix \
+ "${ROOT}"/var/lib/zabbix \
+ "${ROOT}"/var/lib/zabbix/home \
+ "${ROOT}"/var/lib/zabbix/scripts \
+ "${ROOT}"/var/log/zabbix
+
+ chmod 0640 \
+ "${ROOT}"/etc/zabbix/zabbix_*
+
+ if use server || use proxy ; then
+ # check for fping
+ fping_perms=$(stat -c %a /usr/sbin/fping 2>/dev/null)
+ case "${fping_perms}" in
+ 4[157][157][157])
+ ;;
+ *)
+ ewarn
+ ewarn "If you want to use the checks 'icmpping' and 'icmppingsec',"
+ ewarn "you have to make /usr/sbin/fping setuid root and executable"
+ ewarn "by everyone. Run the following command to fix it:"
+ ewarn
+ ewarn " chmod u=rwsx,g=rx,o=rx /usr/sbin/fping"
+ ewarn
+ ewarn "Please be aware that this might impose a security risk,"
+ ewarn "depending on the code quality of fping."
+ ewarn
+ ;;
+ esac
+ fi
+}
+
+src_configure() {
+
+ local myconf
+
+ if use odbc && use iodbc ; then
+ myconf="${myconf} --with-iodbc --without-unixodbc"
+ elif use odbc && ! use iodbc; then
+ myconf="${myconf} --with-unixodbc --without-iodbc"
+ else
+ myconf="${myconf} --without-unixodbc --without-iodbc"
+ fi
+
+ econf \
+ $myconf \
+ $(use_enable server) \
+ $(use_enable proxy) \
+ $(use_enable agent) \
+ $(use_enable ipv6) \
+ $(use_enable static) \
+ $(use_enable java) \
+ $(use_with ldap) \
+ $(use_with snmp net-snmp) \
+ $(use_with mysql) \
+ $(use_with postgres postgresql) \
+ $(use_with oracle) \
+ $(use_with sqlite sqlite3) \
+ $(use_with jabber) \
+ $(use_with curl libcurl) \
+ $(use_with openipmi openipmi) \
+ $(use_with ssh ssh2) \
+ || die "econf failed"
+}
+
+src_install() {
+ dodir \
+ /etc/zabbix \
+ /var/lib/zabbix \
+ /var/lib/zabbix/home \
+ /var/lib/zabbix/scripts \
+ /var/log/zabbix
+
+ keepdir \
+ /etc/zabbix \
+ /var/lib/zabbix \
+ /var/lib/zabbix/home \
+ /var/lib/zabbix/scripts \
+ /var/log/zabbix
+
+ if use server; then
+ insinto /etc/zabbix
+ doins \
+ "${FILESDIR}/1.6.6"/zabbix_server.conf \
+ "${FILESDIR}/1.6.6"/zabbix_trapper.conf
+ doinitd \
+ "${FILESDIR}/2.0"/init.d/zabbix-server
+ dosbin \
+ src/zabbix_server/zabbix_server
+ dodir \
+ /usr/share/zabbix
+ insinto /usr/share/zabbix
+ doins -r \
+ database \
+ upgrades
+ #remove unneeded files left over from wholesale copy (bug #433708)
+ rm "${ED}"/usr/share/zabbix/{database,upgrades}/Makefile{,.in,.am}
+ fowners zabbix:zabbix \
+ /etc/zabbix/zabbix_server.conf \
+ /etc/zabbix/zabbix_trapper.conf
+ fperms 0640 \
+ /etc/zabbix/zabbix_server.conf \
+ /etc/zabbix/zabbix_trapper.conf
+ fi
+
+ if use proxy; then
+ doinitd \
+ "${FILESDIR}/2.0"/init.d/zabbix-proxy
+ dosbin \
+ src/zabbix_proxy/zabbix_proxy
+ insinto /etc/zabbix
+ doins \
+ "${FILESDIR}/2.0"/zabbix_proxy.conf
+ dodir \
+ /usr/share/zabbix
+ insinto /usr/share/zabbix
+ doins -r \
+ database \
+ upgrades
+ fi
+
+ if use agent; then
+ insinto /etc/zabbix
+ doins \
+ "${FILESDIR}/1.6.6"/zabbix_agent.conf \
+ "${FILESDIR}/1.6.6"/zabbix_agentd.conf
+ doinitd \
+ "${FILESDIR}/2.0"/init.d/zabbix-agentd
+ dosbin \
+ src/zabbix_agent/zabbix_agent \
+ src/zabbix_agent/zabbix_agentd
+ dobin \
+ src/zabbix_sender/zabbix_sender \
+ src/zabbix_get/zabbix_get
+ fowners zabbix:zabbix \
+ /etc/zabbix/zabbix_agent.conf \
+ /etc/zabbix/zabbix_agentd.conf
+ fperms 0640 \
+ /etc/zabbix/zabbix_agent.conf \
+ /etc/zabbix/zabbix_agentd.conf
+ fi
+
+ fowners zabbix:zabbix \
+ /etc/zabbix \
+ /var/lib/zabbix \
+ /var/lib/zabbix/home \
+ /var/lib/zabbix/scripts \
+ /var/log/zabbix
+ fperms 0750 \
+ /etc/zabbix \
+ /var/lib/zabbix \
+ /var/lib/zabbix/home \
+ /var/lib/zabbix/scripts \
+ /var/log/zabbix
+
+ dodoc README INSTALL NEWS ChangeLog \
+ conf/zabbix_agent.conf \
+ conf/zabbix_agentd.conf \
+ conf/zabbix_proxy.conf \
+ conf/zabbix_agentd/userparameter_examples.conf \
+ conf/zabbix_agentd/userparameter_mysql.conf \
+ conf/zabbix_server.conf
+
+ if use frontend; then
+ webapp_src_preinst
+ cp -R frontends/php/* "${D}/${MY_HTDOCSDIR}"
+ webapp_postinst_txt en "${FILESDIR}/"1.6.6/postinstall-en.txt
+ webapp_configfile \
+ "${MY_HTDOCSDIR}"/include/db.inc.php \
+ "${MY_HTDOCSDIR}"/include/config.inc.php
+ webapp_src_install
+ fi
+
+ if use java; then
+ dodir \
+ /${ZABBIXJAVA_BASE} \
+ /${ZABBIXJAVA_BASE}/bin \
+ /${ZABBIXJAVA_BASE}/lib
+ keepdir /${ZABBIXJAVA_BASE}
+ exeinto /${ZABBIXJAVA_BASE}/bin
+ doexe src/zabbix_java/bin/zabbix-java-gateway-${MY_PV}.jar
+ exeinto /${ZABBIXJAVA_BASE}/lib
+ doexe \
+ src/zabbix_java/lib/logback-classic-0.9.27.jar \
+ src/zabbix_java/lib/logback-console.xml \
+ src/zabbix_java/lib/logback-core-0.9.27.jar \
+ src/zabbix_java/lib/logback.xml \
+ src/zabbix_java/lib/org-json-2010-12-28.jar \
+ src/zabbix_java/lib/slf4j-api-1.6.1.jar
+ exeinto /${ZABBIXJAVA_BASE}/
+ doexe \
+ src/zabbix_java/settings.sh \
+ src/zabbix_java/startup.sh \
+ src/zabbix_java/shutdown.sh
+ fowners -R zabbix:zabbix /${ZABBIXJAVA_BASE}
+ fi
+
+}
+
+src_compile() {
+ if [ -f Makefile ] || [ -f GNUmakefile ] || [ -f makefile ]; then
+ emake AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" || die "emake failed"
+ fi
+}
diff --git a/net-analyzer/zabbix/zabbix-2.2.0-r3.ebuild b/net-analyzer/zabbix/zabbix-2.2.0-r4.ebuild
index d08becc31e65..a209b7a34ad9 100644
--- a/net-analyzer/zabbix/zabbix-2.2.0-r3.ebuild
+++ b/net-analyzer/zabbix/zabbix-2.2.0-r4.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-analyzer/zabbix/zabbix-2.2.0-r3.ebuild,v 1.1 2013/11/16 23:07:49 mattm Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-analyzer/zabbix/zabbix-2.2.0-r4.ebuild,v 1.1 2013/12/03 19:28:19 mattm Exp $
EAPI="5"
@@ -67,7 +67,7 @@ java_prepare() {
}
src_prepare() {
-# Add any patches here
+ epatch "${FILESDIR}/2.2/patches/zbx7479.patch"
eautoreconf
}