diff options
-rw-r--r-- | www-servers/nginx/ChangeLog | 187 | ||||
-rw-r--r-- | www-servers/nginx/Manifest | 49 | ||||
-rw-r--r-- | www-servers/nginx/files/AJP-nginx-1.7.9+.patch | 184 | ||||
-rw-r--r-- | www-servers/nginx/files/check-1.9.2.patch | 242 | ||||
-rw-r--r-- | www-servers/nginx/files/http-sticky-nginx-1.11.2.patch | 64 | ||||
-rw-r--r-- | www-servers/nginx/files/lua-nginx-1.7.6.patch | 39 | ||||
-rw-r--r-- | www-servers/nginx/files/nginx-1.11.3-fix-build-without-stream_ssl_module.patch | 30 | ||||
-rw-r--r-- | www-servers/nginx/files/nginx-httpoxy-mitigation-r1.patch | 54 | ||||
-rw-r--r-- | www-servers/nginx/files/nginx.conf | 72 | ||||
-rw-r--r-- | www-servers/nginx/files/nginx.initd-r2 | 89 | ||||
-rw-r--r-- | www-servers/nginx/files/rtmp-nginx-1.7.6.patch | 89 | ||||
-rw-r--r-- | www-servers/nginx/metadata.xml | 4 | ||||
-rw-r--r-- | www-servers/nginx/nginx-1.10.1-r100.ebuild (renamed from www-servers/nginx/nginx-1.10.0-r100.ebuild) | 42 | ||||
-rw-r--r-- | www-servers/nginx/nginx-1.11.3-r100.ebuild (renamed from www-servers/nginx/nginx-1.9.15-r100.ebuild) | 105 | ||||
-rw-r--r-- | www-servers/nginx/nginx-1.8.1-r100.ebuild | 686 |
15 files changed, 437 insertions, 1499 deletions
diff --git a/www-servers/nginx/ChangeLog b/www-servers/nginx/ChangeLog index f2470c1..f84aa4d 100644 --- a/www-servers/nginx/ChangeLog +++ b/www-servers/nginx/ChangeLog @@ -331,3 +331,190 @@ Package-Manager: portage-2.2.28 + 07 May 2016; Zac Medico <zmedico@gentoo.org> + +files/check-0.3.0-segfault-on-reload.patch, nginx-1.10.0.ebuild: + add segfault fix to 1.10.0 for http_upstream_check (bug 582316) + + Package-Manager: portage-2.2.28 + + 07 May 2016; Patrice Clement <monsieurp@gentoo.org> nginx-1.10.0.ebuild: + Fix typo for using stream upstream module + + Closes: https://github.com/gentoo/gentoo/pull/1421 + + Signed-off-by: Patrice Clement <monsieurp@gentoo.org> + + 14 May 2016; Zac Medico <zmedico@gentoo.org> + -files/check-0.3.0-segfault-on-reload.patch, nginx-1.10.0.ebuild: + fix upstream check module segfault for bug 582992 + + * update module snapshot to fix upstream issue 49, a segfault which + occurs in the ngx_http_upstream_check_find_shm_peer function + + * remove check-0.3.0-segfault-on-reload.patch which is included in + the new snapshot + + Package-Manager: portage-2.2.28 + + 18 May 2016; Austin English <wizardedit@gentoo.org> files/nginx.initd-r2: + use #!/sbin/openrc-run instead of #!/sbin/runscript + +*nginx-1.11.1 (11 Jun 2016) +*nginx-1.10.1 (11 Jun 2016) + + 11 Jun 2016; Kristian Fiskerstrand <k_f@gentoo.org> +nginx-1.10.1.ebuild, + +nginx-1.11.1.ebuild: + Version bump + + Gentoo-Bug: 584212 + Gentoo-Bug: 584744 + + Package-Manager: portage-2.3.0_rc1 + + 11 Jun 2016; Kristian Fiskerstrand <k_f@gentoo.org> -nginx-1.9.15.ebuild, + -nginx-1.10.0.ebuild: + Security cleanup + + Gentoo-Bug: 584744 + + Package-Manager: portage-2.3.0_rc1 + + 13 Jun 2016; Agostino Sarubbo <ago@gentoo.org> nginx-1.10.1.ebuild: + amd64 stable wrt bug #584744 + + Package-Manager: portage-2.2.28 + RepoMan-Options: --include-arches="amd64" + Signed-off-by: Agostino Sarubbo <ago@gentoo.org> + + 13 Jun 2016; Agostino Sarubbo <ago@gentoo.org> nginx-1.10.1.ebuild: + x86 stable wrt bug #584744 + + Package-Manager: portage-2.2.28 + RepoMan-Options: --include-arches="x86" + Signed-off-by: Agostino Sarubbo <ago@gentoo.org> + + 13 Jun 2016; Kristian Fiskerstrand <k_f@gentoo.org> + -files/AJP-nginx-1.7.9+.patch, -files/check-1.9.2.patch, + -files/lua-nginx-1.7.6.patch, -files/rtmp-nginx-1.7.6.patch, + -nginx-1.8.1.ebuild: + Security cleanup + + Dropping nginx-1.8.1 which is vulnerable to CVE-2016-4450 and was replaced + by nginx-1.10.1 via commit 9d8b4adb72f5912b8c121bdda6ffee72e08926d7. + + Gentoo-Bug: 584744 + + Package-Manager: portage-2.3.0_rc1 + + 16 Jun 2016; Patrice Clement <monsieurp@gentoo.org> + +files/rtmp-nginx-1.11.0.patch, nginx-1.10.1.ebuild, nginx-1.11.1.ebuild: + Patch for rtmp module. Fixes bug 585804. + + Proposed patch for upstream bug 820 added to fix building of + nginx's 3rd party module "rtmp" against nginx-1.11.0+. + + Bug: https://github.com/arut/nginx-rtmp-module/issues/820 + Gentoo-Bug: https://bugs.gentoo.org/585804 + + Package-Manager: portage-2.3.0_rc1 + Closes: https://github.com/gentoo/gentoo/pull/1669 + + Signed-off-by: Patrice Clement <monsieurp@gentoo.org> + +*nginx-1.11.2 (26 Jul 2016) + + 26 Jul 2016; Lars Wendler <polynomial-c@gentoo.org> + +files/http-sticky-nginx-1.11.2.patch, +nginx-1.11.2.ebuild: + Bump to v1.11.2 (bug #588816) + + Bug: https://bugs.gentoo.org/588816 + Package-Manager: portage-2.3.0 + Signed-off-by: Lars Wendler <polynomial-c@gentoo.org> + + 26 Jul 2016; Lars Wendler <polynomial-c@gentoo.org> -files/nginx.conf, + -files/nginx.initd-r2, -files/rtmp-nginx-1.11.0.patch, -nginx-1.11.1.ebuild: + Cleanup + + Package-Manager: portage-2.3.0 + Signed-off-by: Lars Wendler <polynomial-c@gentoo.org> + +*nginx-1.10.1-r1 (26 Jul 2016) + + 26 Jul 2016; Lars Wendler <polynomial-c@gentoo.org> + +files/nginx-httpoxy-mitigation.patch, +nginx-1.10.1-r1.ebuild, + nginx-1.11.2.ebuild: + HTTPoxy mitigation added + + Package-Manager: portage-2.3.0 + Signed-off-by: Lars Wendler <polynomial-c@gentoo.org> + + 26 Jul 2016; Lars Wendler <polynomial-c@gentoo.org> nginx-1.10.1-r1.ebuild, + nginx-1.11.2.ebuild: + Fix user/group configure argument (bug #588000) + + Bug: https://bugs.gentoo.org/588000 + + Package-Manager: portage-2.3.0 + Signed-off-by: Lars Wendler <polynomial-c@gentoo.org> + + 26 Jul 2016; Lars Wendler <polynomial-c@gentoo.org> nginx-1.10.1-r1.ebuild, + nginx-1.11.2.ebuild: + Drop AJP HTTP module leftovers + + Bug: https://bugs.gentoo.org/587844 + + Package-Manager: portage-2.3.0 + Signed-off-by: Lars Wendler <polynomial-c@gentoo.org> + +*nginx-1.11.3 (09 Aug 2016) + + 09 Aug 2016; Patrice Clement <monsieurp@gentoo.org> + +files/nginx-1.11.3-fix-build-without-stream_ssl_module.patch, + +nginx-1.11.3.ebuild: + version bump to v1.11.3. + + * Upstream added 3 new STREAM modules: + - geo + - geoip + - split_clients + + * Each HTTP/STREAM upstream module can now be enabled/disabled using a + dedicated USE flag + + Package-Manager: portage-2.3.0 + Closes: https://github.com/gentoo/gentoo/pull/1999 + + Signed-off-by: Patrice Clement <monsieurp@gentoo.org> + + 10 Aug 2016; Thomas Deutschmann <whissi@gentoo.org> metadata.xml: + Add myself as maintainer + + Package-Manager: portage-2.3.0 + +*nginx-1.11.3-r1 (10 Aug 2016) +*nginx-1.10.1-r2 (10 Aug 2016) + + 10 Aug 2016; Thomas Deutschmann <whissi@gentoo.org> + +files/nginx-httpoxy-mitigation-r1.patch, +nginx-1.10.1-r2.ebuild, + +nginx-1.11.3-r1.ebuild: + Revision bump to update HTTPoxy mitigation + + Commit c4b897dc39a9 ("www-servers/nginx: HTTPoxy mitigation added") only + added HTTPoxy mitigation for fastcgi protocol. + + This commit will add mitigation for similar protocols like scgi and uwsgi + as well. + + Reported-by: Valentin V. Bartenev <vbart@nginx.com> + + Package-Manager: portage-2.3.0 + + 10 Aug 2016; Thomas Deutschmann <whissi@gentoo.org> + -files/nginx-httpoxy-mitigation.patch, -nginx-1.10.1-r1.ebuild, + -nginx-1.11.2.ebuild, -nginx-1.11.3.ebuild: + Cleanup + + Removing previous ebuilds with incomplete HTTPoxy mitigation. + + Package-Manager: portage-2.3.0 + diff --git a/www-servers/nginx/Manifest b/www-servers/nginx/Manifest index eb7f378..15bd5c5 100644 --- a/www-servers/nginx/Manifest +++ b/www-servers/nginx/Manifest @@ -1,52 +1,37 @@ -AUX AJP-nginx-1.7.9+.patch 5674 SHA256 b4e01204056ed43d03c06e7955564ecd7f9b581cc238e93a14a64fc898cc3a66 SHA512 8b7cae860c6637b4cffa9c60cc624d8d22702030183d261efef77fc3ec964fb4c23360f4c9868a41a3de4584aed3e2e288c3dd173e0a4a727bba3da00e3979a5 WHIRLPOOL 4da8d0865319d2673ee032fec3ef9e8f0c6161bbc77a2cab959af50bf5aea35812ac80d66f19202b2deac56d4d47d84ce06b356495a1de60c8343eef5c9d252c -AUX check-1.9.2.patch 8509 SHA256 49be9b3241d0956b1101488cd632eb5f7acd32da7a9677ce09ee700d5e7b35b0 SHA512 63be2c2819ec753031393481ab87910b186909ddc4df85fa3acca9d0d176c5126e24d9c066cb77b6f601acce295de1136b9faad7bbcc01121aae68c99d938ca2 WHIRLPOOL bc6db9dd0eb96f91119cd9a1a072728d6895eae37959d3b53c05c81d2ab7e17cb072a8a53045c3e698621248c5addacbe8055329b6788632f3772e2d0933b105 -AUX lua-nginx-1.7.6.patch 1362 SHA256 02e8eca7895831ef34690286338509f652d4376ef0d7b93bcf2e794e2e20de48 SHA512 ebe40dbc7ad6983d91243e30bda5b87e2b947ff5c94db2287ee75c281cc95f567f3140abd6099cbfd2f0454e1eb71423e464ff8c4931148379812512aaa168d5 WHIRLPOOL 5e07e50bddaaeb4213104ff89b95a1a07096daeed910edb8e729783daa650b591ca963c79b1a88007f216c51c8b44fc6e52a70877aa3d1beeff36682e327e293 +AUX http-sticky-nginx-1.11.2.patch 2317 SHA256 d4e36a3c5aab20883fadf72e2e7b58a5f18bfb4cf84d550b7d345e74c41d79f8 SHA512 c62584debfaf6df4b2ace0373394e893cb97a8f940927fb86c0cd61512b47b660d90fe17f936490602624346ade46708cd6a6fe6bdbe5a46cd2a428314ac8f6e WHIRLPOOL e739bd36ffa6d5ff9c7f0e4dfd26aea0c4e8c4ee1a2903e3bbb199de7e16189973819409954b9eda3443dada3aa656ac73ac31731cec3e54e347a97bdf272987 +AUX nginx-1.11.3-fix-build-without-stream_ssl_module.patch 873 SHA256 ca4fd3498613cef8440b98e27dc2709a6db9ddc3ba7263087f7955b599c11110 SHA512 bcbaf3773ee269757da942e21209017feab6316fd32aefbdfa8d606e9dc434366d88816e0e939df88f18771bcd44347d369833c3e48e9b9019635487f63ea031 WHIRLPOOL 1bec1886815bf2491e81d25920a3946ae5145088d893926dc6fb74c241c638954399be3175daeef551278ec7cd432fc624d250d6b8eb18c03de983bcc75c5565 AUX nginx-1.4.1-fix-perl-install-path.patch 403 SHA256 0f10cf594208d99942cd07b13799bdd62ad9dc62479b302c0390de381c7fdf28 SHA512 b8f6876831e1149b1421fff4919f8d4893e5fc46aad8a91d4cf2e0b21767b59820b8e227e3b722b80060832844ef191f30aa5dc056daeb49e55a05702d72858f WHIRLPOOL a29dc1b707695ad29b5e967c545b6059120ce9d1a95b828062f6507d8ccd730c95fc82843564baa51d644e138d40fc93b0a84c916a4d77a51c1495625a103809 -AUX nginx.conf 1358 SHA256 6ff6c9301ea2a4d74a335b9119d7f9dba87d4e83793cf22d837d49f061763096 SHA512 1873c9e54ea5020160c86da3f300e3eac589c0d30cdbe3446476b5b3f5bd388da95224cfb1a020b41720c9ce55ab6bb945dcc41612d5850da0e2ae0ceeeaa587 WHIRLPOOL 7672245bd11d6ed987e13d6bfe4dbc2140cc3d2e22616c49ab7ed5f42135c96b5779e4dfd16ba9e2d82aa59d98cd56a4872d18c3774e357ef79385fc874387d2 +AUX nginx-httpoxy-mitigation-r1.patch 2023 SHA256 f2e1365bc16f2e038e33631b1c6b9823f73b8e57c20a1ec5d29aedd1007158c5 SHA512 bfc480c34cea525b0eb3753622eb371198e2252aba3299fca4f1c7b29848da162b93757b05eb11a3839618ed895f7b73534dcd7861f4b924997ec422939222a3 WHIRLPOOL 7a97d8a0d25c97708cd2bf35db26d01f43676ffda58fcb0f94162e692af1bbb6c46cadab09ae974f498087914bf6a3e8ce04c115fbf509877d849400e9279415 AUX nginx.conf-r2 1292 SHA256 5386dfa5a9d3ecd724f59b77f5bf67aa195cb9ea2c16b71f97ce54c19e336577 SHA512 de9ffb84d7de468fa7aebfb205529edb1c372f3ff6990b0cac9d1f3012be9ced65db4d260fd852c91cc033805c023a02790770cca43c6ad6335fb58a9c694c95 WHIRLPOOL 70dacd19de8c56f1072f254185b97620fa7928815a94058468fb822e2696f0cd9ee9032af046b281f0ac3d52ed5f00fcb25da6b11b31c0b80001591bfb961f94 -AUX nginx.initd-r2 1897 SHA256 be2b1b26637d4d1963e1b1f1da25c4fdefdb30d9ed31cf26f0fa63ff8a084c07 SHA512 52dc259cbabdbfe7943b952f4555fef253b97d151362a89601c8b8673f245d836265b78b2d5dbbe6bc479ca046c27c73f36d26986934b8b9fba4a798377f2e85 WHIRLPOOL 528872f8c4f73b25b9c3abc10c87a955cd46b87e270b04f823ec9dae8a165e2737d7a3eb389b05328440dcde57664cb7337d35030cfc641be70fcc8857875c0a AUX nginx.initd-r3 1898 SHA256 e3c43e96291e7479497670465df7f6b85ce4fbaec999694bb23eacde9002713e SHA512 df69ddc6f7e42d7c8254d71b0c97cc6dcdca1c44d56b17680101714b5f61514de04246381c5bde8b562e5d8f4af512f0cba7d7f88e7e281d03284ebfd0204725 WHIRLPOOL a97a3bb48a02f3cec40da7e8c26061dce5175c62190829874a90d4f936c1b4d87d52e0ce5ab70aec0cf6ba78e87e2f27b51e818b172a665500a2401f3ed784f8 AUX nginx.logrotate-r1 264 SHA256 6db8b0bb0df76766e713ff3cfeb186647c19db89d07ebeefc899f4d8e74f563b SHA512 833b4b14756970cf7902d5ef239ff212cccf54a88f95bc2d50b83d08afaa9bbc5fe538d64fa87e440077d289d12894bd053a37bba8d8ded4bec5a994d4c81550 WHIRLPOOL ed3d4389a973433715ca7e00c9eae4f1747ba8b3e6f8f2744c82f6aed8c799713beaa1ad83edef96256954ba412e59199ef84eee6181a3bfa6bb4f3bc05bcf4d AUX nginx.service-r1 327 SHA256 17c404c5130115e3ebadb09e25cff0103b48ae7dbff2284fa690161fda7888ae SHA512 9b6bcf74df2f74ae6a2c255ebf2d826ea92ed9921b9995da6c9a0c5656e2863a2fe5293ef8a656fbd36298602cc88ffc5d7acfbbf143c23a78c9689d61b05df9 WHIRLPOOL 126c56732b8bd9948595727aa8c056c44df05f4c8e708b00c9de715a7260e4e120fd9e076672312b55c889ff4a3ca100ce696165a4eaf93d89e808e1e28653fa -AUX rtmp-nginx-1.7.6.patch 2507 SHA256 c5b6a884e7f097bcb405fdc2011e39ea699f50f8e51a2c3daab2e40dd86fe524 SHA512 ee3c3e91ad88aa245d7563fea537585a493718c1e770c23919118bfb6306a076b82356406af512e79a162aab09fc72fd73af1e2918b9fd9cb06c47df5a798aa8 WHIRLPOOL 0c655c186d4832426628277c99869715d46e2f0909e7ea74a000cd36fcb398e7571afb81287540d1e0fe544f09197f71c0ae143f9ca169329f936b8359bc645a -DIST modsecurity-2.9.0.tar.gz 4246467 SHA256 e2bbf789966c1f80094d88d9085a81bde082b2054f8e38e0db571ca49208f434 SHA512 1af04f29bf23c51d03cdd3795c530f88b523a645aa02d776a6b23dcbc31decec7cd574919e5c7c7cf82684df2774062de5e465bddbbaf4c01a442c6d49401d3d WHIRLPOOL 1167ba6048a3ca05dcdabf03c67ae12720cca0cec74547fc223ee92ff76b6d5131785fa77b5f16da180e56590c851c192eaf02817b798e4d6f41fa6bfb2735a6 DIST modsecurity-2.9.1.tar.gz 4261212 SHA256 958cc5a7a7430f93fac0fd6f8b9aa92fc1801efce0cda797d6029d44080a9b24 SHA512 374733cbfc26e53d95b78c8f268a4e465d838163e9893fc24e33a9d272b114f1b287147bab6d0289575074cbbd94f48983e23fa59832cbcb32950046cea59269 WHIRLPOOL 5f41bebf032f8a269412d104b7632a06af4d4c495658c9cd1ebf69b82c10ce1bbcb34b9dd159a7b00e57348714a5e93ad3db19701dda51479accd3a9dc79a9cb -DIST nginx-1.10.0.tar.gz 908954 SHA256 8ed647c3dd65bc4ced03b0e0f6bf9e633eff6b01bac772bcf97077d58bc2be4d SHA512 495da729ce6de935399c2bf7fc0c2cd112197d9dba6d8604f639d5815cbb8bb3ff70e994f942785481e064cc1df97211f886297ee72519b332a7197999d9f14e WHIRLPOOL 889e723f635909d1b562663ed46b27edac83b63143c10c2c53e70dc6dccf3a378f8fef3f2f19641879dc9f812880b4f51ef0d438d80ede395ffda38987b13dd3 -DIST nginx-1.8.1.tar.gz 833473 SHA256 8f4b3c630966c044ec72715754334d1fdf741caa1d5795fb4646c27d09f797b7 SHA512 546eba1749af0034cb8b924d2432be2f0e82a75c545aa929391ef7234103c3f29376235a2ef1363b120e1825cda15aeb085a05f9ce3596c88466e112e82aa882 WHIRLPOOL cd399083fb14bdb3498f1cd91a1cb59a73d37f323ce7c2a32500c9443f654cb5449137708cf149a0126aedb77abec9d1eb3dce3121f0b378d7d70e8eb18062af -DIST nginx-1.9.15.tar.gz 908984 SHA256 cc89b277cc03f403c0b746d60aa5943cdecf59ae48278f8cb7e2df0cbdb6dac3 SHA512 563cec7828d1e398ded83579c3c4afcd83fd809662e64a0212e25a34ce1b599135558e9fd8cee3e07ba028ee4b308e40ce9910a5071a3d8e3b7ec9f9bdef95f0 WHIRLPOOL b87dd96b1fa34824fb6ca16da39d72cf6036f6276766ef420c3be8ceac8e8639ff74e842c1ffd5f8f2dd03d7c411197a05049c1673dc70862cee662b494da88f -DIST nginx-auth-ldap-8517bb05ecc896b54429ca5e95137b0a386bd41a.tar.gz 16950 SHA256 2f0b1a65847ea1da801a99b654f132e1c814d2fa49a43a324d8fc4ce6327935f SHA512 65b0aec3a4b28625ef93d166f659d63b9ef7d971dea78b09987eaa02f632bf5b8f6c9afdb6ef444afa466dba7ff67180cad27e138e6818c2ba80bc804f140ca6 WHIRLPOOL 9ef896fa3501415e2c7022448783626af256c6c3878fcca5d6cc042a9789937147eb4c3743f92002ab8d09e4ce828532b9ae321dc284ef2560801da98153d146 +DIST nginx-1.10.1.tar.gz 909077 SHA256 1fd35846566485e03c0e318989561c135c598323ff349c503a6c14826487a801 SHA512 fa1329d40e83340380332dd5e2ed66f08dd59cc7f7582dd0e0193c493353ba550e80dc80e5165c225d70532d4197abc49cc8c760e8ab72e48f630cb57c2803e1 WHIRLPOOL 6942f70c3279a28bd8d664d085dee68bf0d0526c8dcb636f3258c9de598268efc984af72e527efd86889bd13911b38b0bdb2de1e92eef69cabd02f7080f64eb6 +DIST nginx-1.11.3.tar.gz 938045 SHA256 4a667f40f9f3917069db1dea1f2d5baa612f1fa19378aadf71502e846a424610 SHA512 b983aca61335facf5778675b80fc28341ec9cfee2190319ed130b9c5d5ceff8133677f4609ecafd5a782daa5962e41bb6cb6a857380bbbe9cee67cd0ab2026d4 WHIRLPOOL f197bc4f5e1ed234b26d625db5bf665a24c09da316e3cae3c0f394f0b4db116acad5db15add7fd92b5fe1428f95449538584f57272f8bad89b912fb38fbb2c7d DIST nginx-auth-ldap-dbcef31bebb2d54b6120422d0b178bbf78bc48f7.tar.gz 16998 SHA256 35c8f29581823be0f8bdbcf237d7fa5518c45eabe0ab9a695b131d32c8f1c264 SHA512 f47a9a6c5f93daa9260825261d2069bca5fc528221f94fc8ec98462f61774a36bce0238d931f8d0690544fd0144a83f942b6673c8376fe03f7834f8da9666671 WHIRLPOOL 26a2f67e715d13f785932f00e642c0864b5b7059d120f7fe7458017dbe02203f4873d1cfc4f0dd262834465438ad2b00ef4b49295e18a8e246abda6f7694ac70 -DIST nginx_http_sticky_module_ng-1.2.5.tar.bz2 124072 SHA256 f975c033eb3c342f7247f6524774bbb727aaf630ed984576dbafe5de7a790c58 SHA512 d6ae723f739efb2f0548461931b1c395801684759962beda08067111426b1c9787ceaede91b0e984c023108fd17864c53c53925506f7e8e25ec8d2fc065585f6 WHIRLPOOL 1013c6a51f5989c8131392b3d9704d42c99f9727a673f6205878d0b7dfd265bb6042c1d30089603c9b38e339d48302e6873e77fe380b7e8edba25b71e9e84ba6 DIST nginx_http_sticky_module_ng-1.2.6.tar.bz2 124089 SHA256 e47b9fd435d7a5a3200f945a9745aaa7b9446495bda76df48f211129f88d6b26 SHA512 2632b04c94f523aa7c9726db182cba11d83e642c2db5798274e67fbef30de95d02e4e95cbfb98bc429d4244d630b5d9617405b43f728ae0117a5c134940c0ded WHIRLPOOL 1b754c02f834c6b4d4930e9c46b8c5accb6c9663718fb9296c92d79bc33206e66e49e4234ca4db9a5afcd42fa23273bdf0e675aa7b38927c4e46a85318c189eb -DIST ngx_devel_kit-0.2.19-r1.tar.gz 65029 SHA256 501f299abdb81b992a980bda182e5de5a4b2b3e275fbf72ee34dd7ae84c4b679 SHA512 915954acf16a27fbd3c93c154012d38e864f1d8dfd51cde401bba26e46eb3e3c778ec4c92f4f8ed83ac001e96cee72765554d0e4da06acf6a4be5184b23b3657 WHIRLPOOL 0ce6bffc0fe2cef28ee74f5862ca6d914ed18fdee18d900608ff2a9983594c707aab3e335957b79dd7e77ae1beed054d8f71965ca0f57fc5f1d41ac06106c5a4 -DIST ngx_http_auth_pam-1.4.tar.gz 6502 SHA256 095742c5bcb86f2431e215db785bdeb238d594f085a0ac00d16125876a157409 SHA512 8d60347c666736ef39161b287ad32820ad6be4695f1c0f27a000d46bfc7e26c95233247d39cf37296518a6329ba73f06756d0b0b68157b0e5f67796f73264db3 WHIRLPOOL 2f0e60366cf43727c9b3aa07d2cb803a997cb9a4f48ba28e575f470bbb7c28115f41d390e306219ad130501a62e204d403bbca5ee784628fbca35b407f51702c +DIST ngx_devel_kit-0.3.0-r1.tar.gz 66455 SHA256 88e05a99a8a7419066f5ae75966fb1efc409bad4522d14986da074554ae61619 SHA512 558764c9be913a4f61d0e277d07bf3c272e1ce086b3fadb85b693a7e92805cd9fca4da7a8d29c96e53fc0d23b331327d3b2561ff61f19d2330e7d5d35ac7d614 WHIRLPOOL 5f6ed4e6850d2ce7e8c65e0570a7e2c74a1fe360e167644ed405fff682ab178b09c722c99c1df9af552fb816219b9fc04dcdf638b3e4af68c688434cdb33aa59 DIST ngx_http_auth_pam-1.5.1.tar.gz 6863 SHA256 77676842919134af88a7b4bfca4470223e3a00d287d17c0dbdc9a114a685b6e7 SHA512 973b94874d8a58c0df0ac2d31571eafc1e80b11179cba33ec88421a826207fbf7e99b0387e135a1ca48d82daacb78f19a4c21d3a27b49b16dc86b4748bb72261 WHIRLPOOL 4fcaadee859f325c734aa16763702ee40284d1debcfbf5df1cb9aadf2bfc72c1e8d0e5b9d1495f34fc719f4d7fa3e653797fa7917f8fd0437fa2023a1930f667 DIST ngx_http_cache_purge-2.3.tar.gz 12248 SHA256 279e0d8a46d3b1521fd43b3f78bc1c08b263899142a7cc5058c1c0361a92c89c SHA512 50a31dbf2216a6fae74a186af56dec4600cf55777e76a10ac0075f609e7737135aab063a64f2590dddcd0369ebebd4a523027f3d9ebcca74f7b4355be1c5dcc0 WHIRLPOOL 5451ef3e33044210453995ea916acec679599c0ded5471d464db5003a07e7a06e9690812091148c2af7b50384e52b32e49136eac02e0330724ba2408d893f96c DIST ngx_http_dav_ext-0.0.3.tar.gz 6260 SHA256 d428a0236c933779cb40ac8c91afb19d5c25a376dc3caab825bfd543e1ee530d SHA512 4763b1c5e417248d80acfacf20bfc5ba3e06675ff08e37703867daef99a400980b536941e4955c259432905bd11ab998bc2e2489a50350413c7bf37e18eafb74 WHIRLPOOL 5adbcea768fbb179249a03fe69304505ec09a1dafac848dd5e3cde96693c6fbcf6cf6c128ca116d02b36c1be0008807d9e86fee5b411e137b18b15a60291f29b -DIST ngx_http_echo-0.57.tar.gz 65073 SHA256 8467237ca0fae74ca7a32fbd34fc6044df307098415d48068214c9c235695a07 SHA512 c89780eca9267c9984a022a4dbd9ebf603dbd5c323bfea5ea7898ca9fc0a744388ce7520e7a9799aeabd6573f8e71ee595fe9998fa54e5d5c412b21031edd31d WHIRLPOOL e481b6f57a6ff48706fa7e281f31f15a5522c29b98620559cebe8412207d5595497cdce9156e7762cceff6369e9f678d5a81bf3c83fb2e8c5d8786622f1c27b8 -DIST ngx_http_echo-0.58.tar.gz 64779 SHA256 190fe3977dd1910e82059f30f9baae3da2ee6e6fb50f18c9bc2605a19dbb9626 SHA512 03bca117b2a7f9fa78450d24b2a25fcf19528a37d842dbd740e9ccf0f3ad6652d9927757f1317441438ec1e474211e2b4c84829015a51c5e25ca9f2dbd3809a0 WHIRLPOOL 0c3623f881cd127d1f3450f6e46456d98501d9d21f5292ec6bae877fa3020adbaae2dbb83f105c8c7eb0273fedd927753238d2399385721167680200c8b51a15 -DIST ngx_http_fancyindex-0.3.5.tar.gz 14837 SHA256 e0998e83be58bc5787fa9243a76a9d21de3cd01088d3cf63177ba88a562634a1 SHA512 ddb4ab3e8e47e1c49680db3e9f648f7cd582c07f963204105118e61432fa1e80c3f1bce69ed689db383011a9c155184bcc7e931eeae20bbd7cbdb5d4eb35a0a8 WHIRLPOOL a45db854d75f05a59c6f5e67c652850b5410162e7852abda20bb6720d29cc716f25ce7ea93ef52f9ff3f11d6d3a744c1fa4c7a6270fc1bd6d42f6743accb8e73 -DIST ngx_http_fancyindex-0.3.6.tar.gz 17252 SHA256 e73f1f0444f8c53601b51da8684b174c5ffd3b4ed6eb7956dd57f8b95485b68f SHA512 ca2de16eef7d5e94104f44f180ebd98674c5799409d70d95fd6359512861efaa95d5242a9eb661363bcc5110032965f326e735a2b8fcfaaf29381023fd11a76e WHIRLPOOL 68c089a11a39685e3cb934c12daf12bd4c7176da6d17a26d4ec18f5bb44c480695e622c732925255c10af4bf819aa52da0dcf457ca40bffdc8a6673a10440823 -DIST ngx_http_headers_more-0.26.tar.gz 28028 SHA256 d6bdc51f9e778a3b23e41a51cae542c1467a1e5e55c1329a7ffc454be084fb6f SHA512 842927de67d28f3cff596607f209d1004b6d49f1d45b861758405ed6fe6f7aab76ad63530ccdfff1c1947db1190dd65dee0a29f50026bfa7a39a9a051561cf88 WHIRLPOOL 0dc37c36717be40a07112388d913d20bc99d76f90604da618d5547f24d93c636c14c2cca18191ff5916b40ec0113da648cfc07e1c00b1853f2b15ce056d5f3d7 -DIST ngx_http_headers_more-0.29.tar.gz 27144 SHA256 0a5f3003b5851373b03c542723eb5e7da44a01bf4c4c5f20b4de53f355a28d33 SHA512 50a45922f8d2d54fca345bf47df71035362a6868b86872528f2414386c15cdcdb5466ea2c0b7c7303dc85084f94ee05e7411da8836cde3cd549c576431c7ef14 WHIRLPOOL bfc3261b6b0a4add707069383ae1241b2bad02099c86985b87cdc595a49eb3eea0c5295d912f536c01110f7954f6738870ad72f1230a202824b5bc00293c7ddd -DIST ngx_http_lua-0.10.2.tar.gz 575525 SHA256 155feeff08a0b2efaf980705b9ef83d0b341e6d011adad8e2679ea4105668134 SHA512 33ad538f0f63aae91b691ceda593899881b3ac0ea48da6814724d9bfe3d74b323ac5f3b8bc2fa03116c5cd1045e2a12db4e9bf96c8172a96ec1c6cd0b30199fa WHIRLPOOL 6450f144fcae55756b1c2f879cf68a1d2369475ece910951c54e10cd7c4ef266ead56397cef5c4d6c4963f5c11124af635daa415af05524703ff96b9ff5edcfb -DIST ngx_http_lua-0.9.15.tar.gz 520190 SHA256 659fe4c201f4a4ae1007fa029cef472aaa837bf0904babb6158f83b86536c5b7 SHA512 1d809f873ced8e50422298bb4b730b8e7aaf442c11570cbe892fd73a414ff4f6d6eca7be8b2d2dbf57a136136b17d80596ee2f2f195dcb59776e78df5a94ae92 WHIRLPOOL caf128254f99d674eb370779c6e41c0b459be1c5a2baac7df1ff3498a38349bd2c140594eea3eb29c468a366e265421f90363886be73db0b3484cc6f386cb563 -DIST ngx_http_naxsi-0.53-2.tar.gz 165690 SHA256 3eadff1d91995beae41b92733ade28091c2075a24ae37058f4d6aa90b0f4b660 SHA512 ada592f5e7f80a6d549cc435ee8720df01a788dc88cf27a7d55521bb7e4c66fa11b9ec28216aff7e13c70a5faf12cb745bd398b8a782ed4dea1eecd04b07e24c WHIRLPOOL c5b736dbe9bd66daf7e023f176a08f78225b61990781d7ad5a55d0f35391df7e05bf1b2623a6227e0355cf0204ef9eac1b9fa03aa62b3c0d6eac515f1213f270 +DIST ngx_http_echo-0.59.tar.gz 52703 SHA256 9b319ad7836202883128d2b9c24ed818082541df57ef7f2065b7557085c603cd SHA512 803c431da00160f62ee98e126d244fb97b2d9dca08137daabf55504f012598f8e2c689841c2e8bfced5f07ce24c46933c49b3feffc09ca0b5f07dc10e34546ee WHIRLPOOL a709ded0dd1af2b6c1c5da6f065834ab7715eb736f36018acf06c2c10389bf896dc4459acbbb479340b9da6f287143cd25fca7df503acea457cf0933ba67e9a1 +DIST ngx_http_fancyindex-0.4.0.tar.gz 18419 SHA256 152cc2cf082c23cbc7b0fc76f14af4015d3988783016dc9145edebec17c7e230 SHA512 47fd9f405475f96958eb255f9051a9bde1ad8b515356bbaff8f8034ee34ecc17e3574c1d104496c5069c8986e047ca0de386f1b7d2f7317f15be98d69e74b624 WHIRLPOOL 4972eea9f6b8373b4bbcf73c66fe3dc635bc6326f264febc9a5a0fc620d44f1a3d1f98c91c1d2acb6779729a1e188c1f4a8750972266d1e463658529d37fa596 +DIST ngx_http_headers_more-0.30.tar.gz 27793 SHA256 2aad309a9313c21c7c06ee4e71a39c99d4d829e31c8b3e7d76f8c964ea8047f5 SHA512 378f2c4b4fbf580e59c8ad3ef5fcb617e4669b7b506a0ae87e4e0bc920d34e16fe55565e48dd57e7b6c37ae8b407646ca64f5d84a2fbbe2d41d719c7643c1a82 WHIRLPOOL f50bb5c2e23fb63d98904163a873edf947f65e57dc0f73489024243c1d5b04e0677015a075d315585e535e226b8dad659bada563778b8ddf4d060e918fc37ace +DIST ngx_http_lua-0.10.5.tar.gz 579793 SHA256 4f0292c37ab3d7cb980c994825040be1bda2c769cbd800e79c43eb37458347d4 SHA512 a02b8614fdcd063b1087a3114f05402c707343ff3bceabaca1fb98531ba30edea1a525fc45e2f5a49ff155de8d6f9e1155e8870e463476da5703acfd5f8fc3fc WHIRLPOOL 9c72353bc58a98fd3bae68bd9b13228d202167422a429aa4b455f7e280cb617b5c083131e4f372708e602342b24b150437ed8ebae9647a397bae8a88a13b385c DIST ngx_http_naxsi-0.54.tar.gz 163809 SHA256 9cc2c09405bc71f78ef26a8b6d70afcea3fccbe8125df70cb0cfc480133daba5 SHA512 91934bfd41495715269cc6e549d17f6da66f2bdd0c9a6821fa9096b694dd3927109c4aad2f8b327620ae7c34f76a0839ac16669cd8c65081bc01fa7f829c1d43 WHIRLPOOL ef68cfecc9849086527c3590744d3c0d73cec830c6cf1ebca63566a7444438757a85d0c79fa552c4763e0416a615f4cf8d99622e2f36d3713b7072138a82f5a8 -DIST ngx_http_push_stream-0.4.1.tar.gz 166928 SHA256 553584f557a3faec73702550e7e1417cbc0021f4f98468cc83e61e9d94def5cc SHA512 3b2289cc3abe6df0ee39360816675a39de1669a284e23770aa04b29e1e5dc73f5d99f3db6c7e8e4895a4abad0602aa64024ec19a2e741e138a70191501f038be WHIRLPOOL 9d203d4a78a3bd189527ebeaf1ff98613ee6a3150ae433efa17ed45dd9f6cb263b2a4c329a6fc2d04c6583ac2beaf24e87e3263d71a910f720b80038c9bc09c2 -DIST ngx_http_push_stream-0.5.1.tar.gz 175263 SHA256 a95f31e80120fd7324795b92a0d94c0b43e1265df7fd0f1eba11a337c1e0a626 SHA512 b996c6fe48b97540d1ee9879f37aca1a4c8262ad7577d607d402a00d79f5d32676f010da303f89db18e6f90351b8bb5cf0265338cc5df8154e94d5f332a227c8 WHIRLPOOL aacf93841af0384b2be1d4075ceb23e67b89a4cac0a06fe40e2efd5f0334309ccc83e29014c9746dda9e6b59df0866f0a796c0a9dc9d14e2625a11c019c8e79d DIST ngx_http_push_stream-0.5.2.tar.gz 182008 SHA256 1d07f38acdb8194bd49344b0ba21de101070de9b8731d27a8d22e928850bc199 SHA512 ee8bf9ece652da6aa5a39879298bba70d1842696545259f3f5e302cc61397b35f016364805805f9ab1914fc39ed2f07c015e042155789073e3d1fdc02a0783de WHIRLPOOL d309cecbb1bb5b6c4f64712d44889e3ecca59140d845a31a3f605dc3cc2aa01622b0deadb8f6852baea3c211bebbe6ed7d7868399447ac1249c1b1b740fa3c27 DIST ngx_http_slowfs_cache-1.10.tar.gz 11809 SHA256 1e81453942e5b0877de1f1f06c56ae82918ea9818255cb935bcb673c95a758a1 SHA512 fbc9609a8d6913aeefe535f206b9e53477503f131934ead2ae5a6169e395af2f5fb54778704824d5eeb22a4ef40a11ebbcde580db62a631f70edcc2cfc06b15d WHIRLPOOL a02ed77422c47d9e476f8746186d19d632ddb953635d8d9dd51ff076225a78044286ee7e114478bc02e4b2a422e4fdc207154fc287629dd2cd7c3f9a634dad18 DIST ngx_http_upload_progress-0.9.1-r1.tar.gz 17166 SHA256 99ec072cca35cd7791e77c40a8ded41a7a8c1111e057be26e55fba2fdf105f43 SHA512 6c1e3776402b6e2cda50d9c48c4b578a85feffe15891c075443f6d9c7b9e2414e0614b50a8f417ddda9faf5f719957c77ade519c88b48caec970fc51fe12f0d1 WHIRLPOOL 12970d0f75ee3f0d8a97c4948b97fca2bd707a93e4e578c0e2ac0d18991986e620dd6b15c2ab5680ff726c0490671e3bc5e1ee6109baf81877d8baa6a5357825 -DIST ngx_http_upstream_check-0.3.0.tar.gz 136542 SHA256 c543bf427b38643c10dcd1a0c701392bc666708313e7b63f9272396a6cc9a461 SHA512 ca19e8bcae218c639ff59e8f743bd2fb78de2c1f33dfb0de7b7b5ce82ae7ef04488255715e3e0311ebbc8c9741726573ac532cb269052925b0935f349414e959 WHIRLPOOL acee2ea955f87844a724815fc78d0296f23e9d6726551febd6bbff563625e8eadd04213394b6029c45b6036138c4f8957b2621f1b033a6177410fa7778176749 -DIST ngx_memc_module-0.16.tar.gz 38560 SHA256 24f3c3270831aed2d157c01ef74cb26eab26b832971fe7b9f42a03dbfac10ce4 SHA512 e48a864ac9ae627e840b189f33157aa3a1c0966d2bcffd1f93030b0e6f5962355c004737cae0a5a00f2a1cbcb201369c37053f0823bb601618d18ef87561e353 WHIRLPOOL c53decff852790758b3b92ca1d207a5b99b592e708271411699d70dd9683d7f551b469e057f480f66adfdffa1cb1b91b9c7e031835311ac0b6bfab0f444852f9 +DIST ngx_http_upstream_check-0.3.0-10-g10782ea.tar.gz 128297 SHA256 a5003e86908086f8607e76cfc01a56d56654982ab02cec918278c261ff1e8363 SHA512 2407d4375d8b94a808eb9e423615af700537b28fc88d37e790fb2a5ecdb02da94e7d1e271a6a81e8a55f8ce11e7db80fdd6de7feca08469dfaa26d717a1075a3 WHIRLPOOL 6b428940a07a7c18ba19cba07f43f1661484905a025f80fcb44908aeaeab9c8e854d3e104fe0339087a2e9029ad4722366c7d0a0fca7c73d92ece6ff2e494206 +DIST ngx_memc_module-0.17.tar.gz 36369 SHA256 25cbe3ff4931283a681260607bc91ae4a922075345d5770b293c6cd7f1e3bdcc SHA512 e6fdecb4bb629f0882868b78f4b3a2549fce4471efcc4f2c6fdc414435799be6ce41cf056a3170952f8a1f401ee1ca372c97f2d7f79fba79239599755ade8949 WHIRLPOOL 766d84e7a2dfb2a6f069fd846e19d635f4dbd36f78014e97bbd159312d0b38d671b4db989584ca2b5b449046483b5b90d09edbe1c4531b266d8592ad7bad3c3a DIST ngx_metrics-0.1.1.tar.gz 2964 SHA256 1c62ebb31e3caafad91720962770b0e7a4287f195520cf12471c262ac19b154e SHA512 d36a8fb0104c83b6b564e03b351aa750cab08650264c74d6f786af357bfb7006b531a93270dd961896ea8dafe27e5db8548ede714c5f52c4742876bc73af4b5e WHIRLPOOL 2796f5a97e76dfcc91133240e8e90ba493f0356f781a173d8cacdd09eba64b75ef531db398c0566fda395124700de8c991b771433e376ca0d5898c2ea6f82868 DIST ngx_mogilefs_module-1.0.4.tar.gz 11208 SHA256 7ac230d30907f013dff8d435a118619ea6168aa3714dba62c6962d350c6295ae SHA512 b8cb7eaf6274f4e2247dbcb39db05072d2b2d4361256a325fafab5533d7ce0c4ae9e2905b954dfcfa4789c9cab5cccf2ac1c3a1f02f6a327ed95b562d7773ed1 WHIRLPOOL 64c9b11ad938e6dbe5ba31298f1cd46f6e6bb4ba039c96b1e43bd85919d1606326f74b677f789ecabe0b0f4e0f08ac5aaf8148bf820de65aaa1e9966a28b9f61 DIST ngx_rtmp-1.1.7.tar.gz 519735 SHA256 7922b0e3d5f3d9c4b275e4908cfb8f5fb1bfb3ac2df77f4c262cda56df21aab3 SHA512 9883462a04683f1e7af175da04b86d259ff6d677864667588fb073143f7130969eb2a5a5a48ddceda7a555b908580f179bdcacb7f0111413d51db5bfe43b396e WHIRLPOOL e9c1fc9c3c965ae7047657f76e0997d5da107aff7dd9e5cf3ddb5a2d8f388efd8439b82923e199dc36def449567b8529e06c80f69c36f42128236ac0be5719d5 +DIST ngx_rtmp-1.1.8.tar.gz 519647 SHA256 de5866111a5b18c9dfb1c10f3a0e84b56af77f7005a41807368f7769b8a50965 SHA512 554249b1b8bb70952a0585dcc5c55c70daa63f2eba5ef35f8b1a4932fdfd6c95b0a48739857ba8dcab08ff1e91d048f3dc43bf65250890fd7a679cdabfed880a WHIRLPOOL a8cd4361419fbae97f199d788078c62ffc442158d0338aa677e5d6d21fb27a336da85e901ee6463ff6b33201092575237d5b6f20a1d80d924ac6591cbb75c9d7 DIST ngx_xsltproc-0.16.tar.gz 535696 SHA256 9003d5aa7bff157577d1f8fb5ee070ee52544fc53c48bb9aa0bdd092e5f39bcf SHA512 6f3c83f69ffa356d9fd32130e6a49b5948047de15c11272223bbdd4eaeb8404422e1e02bf688c86a19fd8f8bb6e3727f8247ec697fa54c364395daa64ed0f971 WHIRLPOOL 4f93fcd7cb89531ba186258e6a93d655d064334c3b9956a15d72fdb8ab360bb967ad1353597f966529ec0ea66a3da0575d13fab2cca7f3d468c5f54fcea17a60 -EBUILD nginx-1.10.0-r100.ebuild 28773 SHA256 261e9a51122d2d7d82027bc7abb21d003e2889e1dfe623618e7232a7a0e5039e SHA512 2914103c0dc2687f10b9e78128740aabe1986e58856e841f530422c5459a56cb510677418ee3c57c540d7a7199a5c73480f319de72293cb56b453d69bd52d68e WHIRLPOOL 9a922d16de94facae4456ed85fa3a642bbcca26d1f03d3c2ee67c9d2f5798b14877ce76846d67ae270028f42d8e387a2bbc8d7c6ed4425f47a594a6e0068db2c -EBUILD nginx-1.8.1-r100.ebuild 25717 SHA256 d871b91c48f8b3b0969b0b26af0b166321b9aab10d401e2e44869a6b4765d879 SHA512 91a90e21ecfd992d148b37632491328a1236cb03c3374ceb8428a4fea41365f61ccddcd35476d3621ab32a8fd014b556f0220142028d29441c0b4c852efd3478 WHIRLPOOL fc67e3989e037e0227c0bcdf80e9f1b73f2d670eac322a71d3b4f225b86a023680cc1eaa0de10d6e0f85815fc3665889dc1ceed14967e485643768e099ff9778 -EBUILD nginx-1.9.15-r100.ebuild 28773 SHA256 bc8d03318e5d36db3ff5b18dc417f41c09a35e8b094268e63706080df840fd21 SHA512 159664b5d221a2305b724db6648590b66dcff47e27e4a01ed8e1460b887c57624d6d121a858b4b5c017ffa0d036a6c4e0e5416d1dc0498a3cd935f6270657cd4 WHIRLPOOL 18795671c47134b04013ce48df06a8869990a6e46b639e7d6b68e894646d0d438b51cf70a51b5edf4a9de78069865abe134e6e47d279536bddbdf146f387eab2 -MISC ChangeLog 9548 SHA256 3bb511f009677ff4d8a2062f694909bebf6e5423b93160ad4ab762e14f2fe1c2 SHA512 6bb9bd6bce48e6fff778ad7fc1b5651e9dec94b17ac553a6df82e3f55e64962455e7cc14c5481d40d2689df444b045d3453fd02d135a92ebb9d01d3fcebfb5b3 WHIRLPOOL 622c5ade7fccb93eaa0757df229fa614490880a27a02db23eaf357e8f2898fcc318778264cb0310d0c8d4159d9d25eaab0d5c19d894d74282093b91b08ac38aa +EBUILD nginx-1.10.1-r100.ebuild 28555 SHA256 9530a05be61e4fb652be29019d42c2d479d333a0bbe1e01dbb81e10a203563b7 SHA512 dabc890d9f94fa7acc4de35e23bc679ec43efde5b6a84215c7cd276b034f44846d7f22ccaa81006c5a50d6f50e692a277e12c1ddb106a8bff701689f41b7739a WHIRLPOOL 5d3dcf7969297bceacfc42f354db31e749756bf9092ee1a77212328ad0703e674e7203837d55f7eeb30bf24be74bbb1b72852c982dc11a55fa32f29d55549ba5 +EBUILD nginx-1.11.3-r100.ebuild 29655 SHA256 21a5d4cb110eedd0e18ddd09d292ee5fe1b42ddb3bccd3a9a40f1cf39302be50 SHA512 4d597e7e36d0d03be536bb5d439d2454fe7711d18d41ed140a2cfe107af120c5dbf5b191b7c7fa4eabded5a56ff7d717f918707b256ca63e1dfc767ffc281440 WHIRLPOOL e6f3ea61e6d3e9c97ef7d4a91e61e7bdff3a0f716cb232b96fec7a600c9c3c8b48d9e5b987802aaf10ca596f7e5d3602de70fd684637feb75bfab55290a1b2c5 +MISC ChangeLog 15315 SHA256 56144c672e39c2df92980d5940ebf9b0ba7080dce6d924567084579ddcef4b74 SHA512 3aca8e5f529edd65179fd90c3c7c94c94a24922948428816820dcc7576d69a6a9bc5fcc39bac1ae0a1df7db1163d6bfd8ab2891668ac26784fd734baf80708e5 WHIRLPOOL 5964e7b62ac959f8b4718876901c47e9c6d3f776d13059108fc8f2ccb4b1bf7316589825e4b14280ca5b6e110d3a33e4d2d2d78443d76a09701941b85d0e9dec MISC ChangeLog-2015 69680 SHA256 10720899590f9065076fca43d949a1fc45b04562b93ca1b47f8bce211bc26a50 SHA512 2c149e4a9a2d37127b9520aa09fe789216a1498d73351b0563c45d8838abdc7788ad3d34ccddfd8b27d7eb386a1344e1726f2ee93a29c886e018057d0ade5546 WHIRLPOOL fcb612cb6854cd2644344220c0fabd8cffeb548008327920eb535986af33c7ad3ae4c31ac57497d9f35bfeabb10cbca1e9897d42009dcfd8a8a7b1dfc0fb9d30 -MISC metadata.xml 1489 SHA256 b3219224633a318ea08cfcd5c07885c65d0e25815641a87387aa9dd57bf47110 SHA512 2f9ba33e607ef7aeb67319579107cba6d3534aa1db4bff37b2c79246cfdc79b5481b17288a67b68724fcaa3d1c83dd1284c7e3fc6cea536f3a8e27fe6e0f197e WHIRLPOOL c9f01b67541a462dcc21ffd510dc6d6151c7cfb4107d48e061a6aad800a2e7ac0a661e4d3e5df8fe77f1a81ca9840da22dbf09af0d0b82dc9f758e9c315123d4 +MISC metadata.xml 1607 SHA256 656ff824cd142f5ffd6786504f7dcff6c44d40414768e1030b3d180b195d80b5 SHA512 490c6b107add44e3ee959e82ff023e85b1aef667441abe3725a94b9b269d26bd85fcc7476e62512ff721164346d87ccf2d48be390045c9fc35106a6f940c68f1 WHIRLPOOL b7c2c728ba0b344ec6eaec8db1ae8c517d028bc4b3cad93a37a807f9661cc0f8052f7511ae1be9131dda1d72ce21f60817a70ee56e9c23736ceb1c8c71426796 diff --git a/www-servers/nginx/files/AJP-nginx-1.7.9+.patch b/www-servers/nginx/files/AJP-nginx-1.7.9+.patch deleted file mode 100644 index 35460fc..0000000 --- a/www-servers/nginx/files/AJP-nginx-1.7.9+.patch +++ /dev/null @@ -1,184 +0,0 @@ -From bf6cd93f2098b59260de8d494f0f4b1f11a84627 Mon Sep 17 00:00:00 2001 -From: Weibin Yao <yaoweibin@gmail.com> -Date: Fri, 27 Feb 2015 23:13:30 +0800 -Subject: [PATCH] fixed the compatible problem with nginx-1.7.9+ - ---- - ngx_http_ajp.h | 1 + - ngx_http_ajp_module.c | 85 +++++++++++++++++++++++++++++++++++++++++++++++++++ - 2 files changed, 86 insertions(+) - -diff --git a/ngx_http_ajp.h b/ngx_http_ajp.h -index 72502ad..b3c7051 100644 ---- a/ngx_http_ajp.h -+++ b/ngx_http_ajp.h -@@ -5,6 +5,7 @@ - #include <ngx_config.h> - #include <ngx_core.h> - #include <ngx_http.h> -+#include <nginx.h> - #include "ngx_http_ajp_module.h" - - #define AJP13_DEF_HOST "127.0.0.1" -diff --git a/ngx_http_ajp_module.c b/ngx_http_ajp_module.c -index e4d5b00..be32459 100644 ---- a/ngx_http_ajp_module.c -+++ b/ngx_http_ajp_module.c -@@ -464,8 +464,12 @@ ngx_http_ajp_store(ngx_conf_t *cf, ngx_command_t *cmd, void *conf) - - #if (NGX_HTTP_CACHE) - -+#if (nginx_version >= 1007009) -+ if (alcf->upstream.cache > 0) -+#else - if (alcf->upstream.cache != NGX_CONF_UNSET_PTR - && alcf->upstream.cache != NULL) -+#endif - { - return "is incompatible with \"ajp_cache\""; - } -@@ -534,15 +538,27 @@ ngx_http_ajp_cache(ngx_conf_t *cf, ngx_command_t *cmd, void *conf) - ngx_http_ajp_loc_conf_t *alcf = conf; - - ngx_str_t *value; -+#if (nginx_version >= 1007009) -+ ngx_http_complex_value_t cv; -+ ngx_http_compile_complex_value_t ccv; -+#endif - - value = cf->args->elts; - -+#if (nginx_version >= 1007009) -+ if (alcf->upstream.cache != NGX_CONF_UNSET) { -+#else - if (alcf->upstream.cache != NGX_CONF_UNSET_PTR) { -+#endif - return "is duplicate"; - } - - if (ngx_strcmp(value[1].data, "off") == 0) { -+#if (nginx_version >= 1007009) -+ alcf->upstream.cache = 0; -+#else - alcf->upstream.cache = NULL; -+#endif - return NGX_CONF_OK; - } - -@@ -550,11 +566,44 @@ ngx_http_ajp_cache(ngx_conf_t *cf, ngx_command_t *cmd, void *conf) - return "is incompatible with \"ajp_store\""; - } - -+#if (nginx_version >= 1007009) -+ alcf->upstream.cache = 1; -+ -+ ngx_memzero(&ccv, sizeof(ngx_http_compile_complex_value_t)); -+ -+ ccv.cf = cf; -+ ccv.value = &value[1]; -+ ccv.complex_value = &cv; -+ -+ if (ngx_http_compile_complex_value(&ccv) != NGX_OK) { -+ return NGX_CONF_ERROR; -+ } -+ -+ if (cv.lengths != NULL) { -+ -+ alcf->upstream.cache_value = ngx_palloc(cf->pool, -+ sizeof(ngx_http_complex_value_t)); -+ if (alcf->upstream.cache_value == NULL) { -+ return NGX_CONF_ERROR; -+ } -+ -+ *alcf->upstream.cache_value = cv; -+ -+ return NGX_CONF_OK; -+ } -+ -+ alcf->upstream.cache_zone = ngx_shared_memory_add(cf, &value[1], 0, -+ &ngx_http_ajp_module); -+ if (alcf->upstream.cache_zone == NULL) { -+ return NGX_CONF_ERROR; -+ } -+#else - alcf->upstream.cache = ngx_shared_memory_add(cf, &value[1], 0, - &ngx_http_ajp_module); - if (alcf->upstream.cache == NULL) { - return NGX_CONF_ERROR; - } -+#endif - - return NGX_CONF_OK; - } -@@ -666,7 +715,11 @@ ngx_http_ajp_create_loc_conf(ngx_conf_t *cf) - conf->upstream.pass_request_body = NGX_CONF_UNSET; - - #if (NGX_HTTP_CACHE) -+#if (nginx_version >= 1007009) -+ conf->upstream.cache = NGX_CONF_UNSET; -+#else - conf->upstream.cache = NGX_CONF_UNSET_PTR; -+#endif - conf->upstream.cache_min_uses = NGX_CONF_UNSET_UINT; - conf->upstream.cache_valid = NGX_CONF_UNSET_PTR; - conf->upstream.cache_lock = NGX_CONF_UNSET; -@@ -699,6 +752,18 @@ ngx_http_ajp_merge_loc_conf(ngx_conf_t *cf, void *parent, void *child) - ngx_str_t *h; - ngx_hash_init_t hash; - -+#if (NGX_HTTP_CACHE) && (nginx_version >= 1007009) -+ -+ if (conf->upstream.store > 0) { -+ conf->upstream.cache = 0; -+ } -+ -+ if (conf->upstream.cache > 0) { -+ conf->upstream.store = 0; -+ } -+ -+#endif -+ - if (conf->upstream.store != 0) { - ngx_conf_merge_value(conf->upstream.store, - prev->upstream.store, 0); -@@ -864,6 +929,20 @@ ngx_http_ajp_merge_loc_conf(ngx_conf_t *cf, void *parent, void *child) - - #if (NGX_HTTP_CACHE) - -+#if (nginx_version >= 1007009) -+ if (conf->upstream.cache == NGX_CONF_UNSET) { -+ ngx_conf_merge_value(conf->upstream.cache, -+ prev->upstream.cache, 0); -+ -+ conf->upstream.cache_zone = prev->upstream.cache_zone; -+ conf->upstream.cache_value = prev->upstream.cache_value; -+ } -+ -+ if (conf->upstream.cache_zone && conf->upstream.cache_zone->data == NULL) { -+ ngx_shm_zone_t *shm_zone; -+ -+ shm_zone = conf->upstream.cache_zone; -+#else - ngx_conf_merge_ptr_value(conf->upstream.cache, - prev->upstream.cache, NULL); - -@@ -871,6 +950,7 @@ ngx_http_ajp_merge_loc_conf(ngx_conf_t *cf, void *parent, void *child) - ngx_shm_zone_t *shm_zone; - - shm_zone = conf->upstream.cache; -+#endif - - ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, - "\"ajp_cache\" zone \"%V\" is unknown, " -@@ -910,6 +990,11 @@ ngx_http_ajp_merge_loc_conf(ngx_conf_t *cf, void *parent, void *child) - conf->cache_key = prev->cache_key; - } - -+ if (conf->upstream.cache && conf->cache_key.value.data == NULL) { -+ ngx_conf_log_error(NGX_LOG_WARN, cf, 0, -+ "no \"fastcgi_cache_key\" for \"fastcgi_cache\""); -+ } -+ - ngx_conf_merge_value(conf->upstream.cache_lock, - prev->upstream.cache_lock, 0); - diff --git a/www-servers/nginx/files/check-1.9.2.patch b/www-servers/nginx/files/check-1.9.2.patch deleted file mode 100644 index 35cb8a7..0000000 --- a/www-servers/nginx/files/check-1.9.2.patch +++ /dev/null @@ -1,242 +0,0 @@ -diff --git src/http/modules/ngx_http_upstream_hash_module.c src/http/modules/ngx_http_upstream_hash_module.c -index 1e2e05c..44a72e2 100644 ---- src/http/modules/ngx_http_upstream_hash_module.c -+++ src/http/modules/ngx_http_upstream_hash_module.c -@@ -9,6 +9,9 @@ - #include <ngx_core.h> - #include <ngx_http.h> - -+#if (NGX_HTTP_UPSTREAM_CHECK) -+#include "ngx_http_upstream_check_module.h" -+#endif - - typedef struct { - uint32_t hash; -@@ -235,6 +238,15 @@ ngx_http_upstream_get_hash_peer(ngx_peer_connection_t *pc, void *data) - goto next; - } - -+#if (NGX_HTTP_UPSTREAM_CHECK) -+ ngx_log_debug1(NGX_LOG_DEBUG_HTTP, pc->log, 0, -+ "get hash peer, check_index: %ui", -+ peer->check_index); -+ if (ngx_http_upstream_check_peer_down(peer->check_index)) { -+ goto next; -+ } -+#endif -+ - if (peer->max_fails - && peer->fails >= peer->max_fails - && now - peer->checked <= peer->fail_timeout) -@@ -535,6 +547,15 @@ ngx_http_upstream_get_chash_peer(ngx_peer_connection_t *pc, void *data) - continue; - } - -+#if (NGX_HTTP_UPSTREAM_CHECK) -+ ngx_log_debug1(NGX_LOG_DEBUG_HTTP, pc->log, 0, -+ "get consistent_hash peer, check_index: %ui", -+ peer->check_index); -+ if (ngx_http_upstream_check_peer_down(peer->check_index)) { -+ continue; -+ } -+#endif -+ - if (peer->server.len != server->len - || ngx_strncmp(peer->server.data, server->data, server->len) - != 0) -diff --git src/http/modules/ngx_http_upstream_ip_hash_module.c src/http/modules/ngx_http_upstream_ip_hash_module.c -index 401b58e..ba656bd 100644 ---- src/http/modules/ngx_http_upstream_ip_hash_module.c -+++ src/http/modules/ngx_http_upstream_ip_hash_module.c -@@ -9,6 +9,9 @@ - #include <ngx_core.h> - #include <ngx_http.h> - -+#if (NGX_HTTP_UPSTREAM_CHECK) -+#include "ngx_http_upstream_check_module.h" -+#endif - - typedef struct { - /* the round robin data must be first */ -@@ -205,6 +208,15 @@ ngx_http_upstream_get_ip_hash_peer(ngx_peer_connection_t *pc, void *data) - goto next; - } - -+#if (NGX_HTTP_UPSTREAM_CHECK) -+ ngx_log_debug1(NGX_LOG_DEBUG_HTTP, pc->log, 0, -+ "get ip_hash peer, check_index: %ui", -+ peer->check_index); -+ if (ngx_http_upstream_check_peer_down(peer->check_index)) { -+ goto next; -+ } -+#endif -+ - if (peer->max_fails - && peer->fails >= peer->max_fails - && now - peer->checked <= peer->fail_timeout) -diff --git src/http/modules/ngx_http_upstream_least_conn_module.c src/http/modules/ngx_http_upstream_least_conn_module.c -index 92951bd..48aca2c 100644 ---- src/http/modules/ngx_http_upstream_least_conn_module.c -+++ src/http/modules/ngx_http_upstream_least_conn_module.c -@@ -9,6 +9,9 @@ - #include <ngx_core.h> - #include <ngx_http.h> - -+#if (NGX_HTTP_UPSTREAM_CHECK) -+#include "ngx_http_upstream_check_module.h" -+#endif - - static ngx_int_t ngx_http_upstream_init_least_conn_peer(ngx_http_request_t *r, - ngx_http_upstream_srv_conf_t *us); -@@ -148,6 +151,16 @@ ngx_http_upstream_get_least_conn_peer(ngx_peer_connection_t *pc, void *data) - continue; - } - -+#if (NGX_HTTP_UPSTREAM_CHECK) -+ ngx_log_debug1(NGX_LOG_DEBUG_HTTP, pc->log, 0, -+ "get least_conn peer, check_index: %ui", -+ peer->check_index); -+ -+ if (ngx_http_upstream_check_peer_down(peer->check_index)) { -+ continue; -+ } -+#endif -+ - if (peer->max_fails - && peer->fails >= peer->max_fails - && now - peer->checked <= peer->fail_timeout) -@@ -199,6 +212,16 @@ ngx_http_upstream_get_least_conn_peer(ngx_peer_connection_t *pc, void *data) - continue; - } - -+#if (NGX_HTTP_UPSTREAM_CHECK) -+ ngx_log_debug1(NGX_LOG_DEBUG_HTTP, pc->log, 0, -+ "get least_conn peer, check_index: %ui", -+ peer->check_index); -+ -+ if (ngx_http_upstream_check_peer_down(peer->check_index)) { -+ continue; -+ } -+#endif -+ - if (peer->conns * best->weight != best->conns * peer->weight) { - continue; - } -diff --git src/http/ngx_http_upstream_round_robin.c src/http/ngx_http_upstream_round_robin.c -index d6ae33b..416572a 100644 ---- src/http/ngx_http_upstream_round_robin.c -+++ src/http/ngx_http_upstream_round_robin.c -@@ -9,6 +9,9 @@ - #include <ngx_core.h> - #include <ngx_http.h> - -+#if (NGX_HTTP_UPSTREAM_CHECK) -+#include "ngx_http_upstream_check_module.h" -+#endif - - #define ngx_http_upstream_tries(p) ((p)->number \ - + ((p)->next ? (p)->next->number : 0)) -@@ -96,7 +99,14 @@ ngx_http_upstream_init_round_robin(ngx_conf_t *cf, - peer[n].fail_timeout = server[i].fail_timeout; - peer[n].down = server[i].down; - peer[n].server = server[i].name; -- -+#if (NGX_HTTP_UPSTREAM_CHECK) -+ if (!server[i].down) { -+ peer[n].check_index = -+ ngx_http_upstream_check_add_peer(cf, us, &server[i].addrs[j]); -+ } else { -+ peer[n].check_index = (ngx_uint_t) NGX_ERROR; -+ } -+#endif - *peerp = &peer[n]; - peerp = &peer[n].next; - n++; -@@ -159,7 +169,15 @@ ngx_http_upstream_init_round_robin(ngx_conf_t *cf, - peer[n].fail_timeout = server[i].fail_timeout; - peer[n].down = server[i].down; - peer[n].server = server[i].name; -- -+#if (NGX_HTTP_UPSTREAM_CHECK) -+ if (!server[i].down) { -+ peer[n].check_index = -+ ngx_http_upstream_check_add_peer(cf, us, &server[i].addrs[j]); -+ } -+ else { -+ peer[n].check_index = (ngx_uint_t) NGX_ERROR; -+ } -+#endif - *peerp = &peer[n]; - peerp = &peer[n].next; - n++; -@@ -225,6 +243,9 @@ ngx_http_upstream_init_round_robin(ngx_conf_t *cf, - peer[i].current_weight = 0; - peer[i].max_fails = 1; - peer[i].fail_timeout = 10; -+#if (NGX_HTTP_UPSTREAM_CHECK) -+ peer[i].check_index = (ngx_uint_t) NGX_ERROR; -+#endif - *peerp = &peer[i]; - peerp = &peer[i].next; - } -@@ -339,6 +360,9 @@ ngx_http_upstream_create_round_robin_peer(ngx_http_request_t *r, - peer[0].current_weight = 0; - peer[0].max_fails = 1; - peer[0].fail_timeout = 10; -+#if (NGX_HTTP_UPSTREAM_CHECK) -+ peer[0].check_index = (ngx_uint_t) NGX_ERROR; -+#endif - peers->peer = peer; - - } else { -@@ -381,6 +405,9 @@ ngx_http_upstream_create_round_robin_peer(ngx_http_request_t *r, - peer[i].current_weight = 0; - peer[i].max_fails = 1; - peer[i].fail_timeout = 10; -+#if (NGX_HTTP_UPSTREAM_CHECK) -+ peer[i].check_index = (ngx_uint_t) NGX_ERROR; -+#endif - *peerp = &peer[i]; - peerp = &peer[i].next; - } -@@ -441,6 +468,12 @@ ngx_http_upstream_get_round_robin_peer(ngx_peer_connection_t *pc, void *data) - goto failed; - } - -+#if (NGX_HTTP_UPSTREAM_CHECK) -+ if (ngx_http_upstream_check_peer_down(peer->check_index)) { -+ goto failed; -+ } -+#endif -+ - rrp->current = peer; - - } else { -@@ -542,6 +575,12 @@ ngx_http_upstream_get_peer(ngx_http_upstream_rr_peer_data_t *rrp) - continue; - } - -+#if (NGX_HTTP_UPSTREAM_CHECK) -+ if (ngx_http_upstream_check_peer_down(peer->check_index)) { -+ continue; -+ } -+#endif -+ - if (peer->max_fails - && peer->fails >= peer->max_fails - && now - peer->checked <= peer->fail_timeout) -diff --git src/http/ngx_http_upstream_round_robin.h src/http/ngx_http_upstream_round_robin.h -index f2c573f..75e0ed6 100644 ---- src/http/ngx_http_upstream_round_robin.h -+++ src/http/ngx_http_upstream_round_robin.h -@@ -35,6 +35,10 @@ struct ngx_http_upstream_rr_peer_s { - ngx_uint_t max_fails; - time_t fail_timeout; - -+#if (NGX_HTTP_UPSTREAM_CHECK) -+ ngx_uint_t check_index; -+#endif -+ - ngx_uint_t down; /* unsigned down:1; */ - - #if (NGX_HTTP_SSL) diff --git a/www-servers/nginx/files/http-sticky-nginx-1.11.2.patch b/www-servers/nginx/files/http-sticky-nginx-1.11.2.patch new file mode 100644 index 0000000..498bf22 --- /dev/null +++ b/www-servers/nginx/files/http-sticky-nginx-1.11.2.patch @@ -0,0 +1,64 @@ +Fix compilation issue with nginx-1.11.2 + +https://bitbucket.org/nginx-goodies/nginx-sticky-module-ng/issues/26/not-compile-nginx-1112 + +diff --git a/ngx_http_sticky_misc.c b/ngx_http_sticky_misc.c +index 4aadd4b..0a3548c 100644 +--- a/ngx_http_sticky_misc.c ++++ b/ngx_http_sticky_misc.c +@@ -16,10 +16,15 @@ + #define ngx_str_set(str, text) (str)->len = sizeof(text) - 1; (str)->data = (u_char *) text + #endif + ++/* - fix for 1.11.2 removes include <openssl/md5.h> in ngx_md5.h */ ++#define MD5_CBLOCK 64 ++#define MD5_LBLOCK (MD5_CBLOCK/4) ++#define MD5_DIGEST_LENGTH 16 ++ + // /* - bugfix for compiling on sles11 - needs gcc4.6 or later*/ +-// #pragma GCC diagnostic ignored "-Wuninitialized" ++// #pragma GCC diagnostic ignored "-Wuninitialized" + +-static ngx_int_t cookie_expires(char *str, size_t size, time_t t) ++static ngx_int_t cookie_expires(char *str, size_t size, time_t t) + { + char *months[] = {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; + char *wdays[] = {"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"}; +@@ -75,7 +80,7 @@ ngx_int_t ngx_http_sticky_misc_set_cookie(ngx_http_request_t *r, ngx_str_t *name + len += sizeof("; HttpOnly") - 1; + } + +- cookie = ngx_pnalloc(r->pool, len); ++ cookie = ngx_pnalloc(r->pool, len); + if (cookie == NULL) { + return NGX_ERROR; + } +@@ -85,7 +90,7 @@ ngx_int_t ngx_http_sticky_misc_set_cookie(ngx_http_request_t *r, ngx_str_t *name + p = ngx_copy(p, value->data, value->len); + + if (domain->len > 0) { +- p = ngx_copy(p, "; Domain=", sizeof("; Domain=") - 1); ++ p = ngx_copy(p, "; Domain=", sizeof("; Domain=") - 1); + p = ngx_copy(p, domain->data, domain->len); + } + +@@ -95,16 +100,16 @@ ngx_int_t ngx_http_sticky_misc_set_cookie(ngx_http_request_t *r, ngx_str_t *name + } + + if (path->len > 0) { +- p = ngx_copy(p, "; Path=", sizeof("; Path=") - 1); ++ p = ngx_copy(p, "; Path=", sizeof("; Path=") - 1); + p = ngx_copy(p, path->data, path->len); + } + + if (secure) { +- p = ngx_copy(p, "; Secure", sizeof("; Secure") - 1); ++ p = ngx_copy(p, "; Secure", sizeof("; Secure") - 1); + } + + if (httponly) { +- p = ngx_copy(p, "; HttpOnly", sizeof("; HttpOnly") - 1); ++ p = ngx_copy(p, "; HttpOnly", sizeof("; HttpOnly") - 1); + } + + part = &r->headers_out.headers.part; diff --git a/www-servers/nginx/files/lua-nginx-1.7.6.patch b/www-servers/nginx/files/lua-nginx-1.7.6.patch deleted file mode 100644 index 3cce343..0000000 --- a/www-servers/nginx/files/lua-nginx-1.7.6.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 0c4528e50dc45de322a6ae86b1fff544d777e722 Mon Sep 17 00:00:00 2001 -From: "Yichun Zhang (agentzh)" <agentzh@gmail.com> -Date: Wed, 17 Sep 2014 13:18:42 -0700 -Subject: [PATCH] bugfix: fixed compilation error with nginx 1.7.5+ because - nginx 1.7.5+ changes the API in the events subsystem. thanks Charles R. - Portwood II and Mathieu Le Marec for the report in #422. - ---- - src/ngx_http_lua_socket_tcp.c | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/src/ngx_http_lua_socket_tcp.c b/src/ngx_http_lua_socket_tcp.c -index 52cc89d..3743548 100644 ---- a/src/ngx_http_lua_socket_tcp.c -+++ b/src/ngx_http_lua_socket_tcp.c -@@ -3212,7 +3212,11 @@ ngx_http_lua_socket_tcp_finalize_read_part(ngx_http_request_t *r, - ngx_del_event(c->read, NGX_READ_EVENT, NGX_CLOSE_EVENT); - } - -+#if defined(nginx_version) && nginx_version >= 1007005 -+ if (c->read->posted) { -+#else - if (c->read->prev) { -+#endif - ngx_delete_posted_event(c->read); - } - -@@ -3261,7 +3265,11 @@ ngx_http_lua_socket_tcp_finalize_write_part(ngx_http_request_t *r, - ngx_del_event(c->write, NGX_WRITE_EVENT, NGX_CLOSE_EVENT); - } - -+#if defined(nginx_version) && nginx_version >= 1007005 -+ if (c->write->posted) { -+#else - if (c->write->prev) { -+#endif - ngx_delete_posted_event(c->write); - } - diff --git a/www-servers/nginx/files/nginx-1.11.3-fix-build-without-stream_ssl_module.patch b/www-servers/nginx/files/nginx-1.11.3-fix-build-without-stream_ssl_module.patch new file mode 100644 index 0000000..6163730 --- /dev/null +++ b/www-servers/nginx/files/nginx-1.11.3-fix-build-without-stream_ssl_module.patch @@ -0,0 +1,30 @@ + +# HG changeset patch +# User Vladimir Homutov <vl@nginx.com> +# Date 1469550852 -10800 +# Node ID d43ee392e825186545d81e683b88cc58ef8479bc +# Parent 0b4249f975eba48c17b69c5e225fd12b470c0184 +Stream: fixed build without stream_ssl_module (ticket #1032). + +diff -r 0b4249f975eb -r d43ee392e825 src/stream/ngx_stream_proxy_module.c +--- a/src/stream/ngx_stream_proxy_module.c Tue Jul 26 19:07:18 2016 +0300 ++++ b/src/stream/ngx_stream_proxy_module.c Tue Jul 26 19:34:12 2016 +0300 +@@ -538,7 +538,7 @@ + return; + } + +-#if (NGX_HTTP_SSL) ++#if (NGX_STREAM_SSL) + u->ssl_name = uscf->host; + #endif + +@@ -1157,7 +1157,7 @@ + u = s->upstream; + ur = u->resolved; + +- ngx_log_debug0(NGX_LOG_DEBUG_HTTP, s->connection->log, 0, ++ ngx_log_debug0(NGX_LOG_DEBUG_STREAM, s->connection->log, 0, + "stream upstream resolve"); + + if (ctx->state) { + diff --git a/www-servers/nginx/files/nginx-httpoxy-mitigation-r1.patch b/www-servers/nginx/files/nginx-httpoxy-mitigation-r1.patch new file mode 100644 index 0000000..4a6372a --- /dev/null +++ b/www-servers/nginx/files/nginx-httpoxy-mitigation-r1.patch @@ -0,0 +1,54 @@ +httpoxy mitigation + +See https://httpoxy.org/ and https://www.nginx.com/blog/?p=41962 for details. +--- + conf/fastcgi.conf | 3 +++ + conf/fastcgi_params | 3 +++ + conf/scgi_params | 3 +++ + conf/uwsgi_params | 3 +++ + 4 files changed, 12 insertions(+) + +diff --git a/conf/fastcgi.conf b/conf/fastcgi.conf +index 091738c..9f7e192 100644 +--- a/conf/fastcgi.conf ++++ b/conf/fastcgi.conf +@@ -24,3 +24,6 @@ fastcgi_param SERVER_NAME $server_name; + + # PHP only, required if PHP was built with --enable-force-cgi-redirect + fastcgi_param REDIRECT_STATUS 200; ++ ++# httpoxy mitigation (https://httpoxy.org/ https://www.nginx.com/blog/?p=41962) ++fastcgi_param HTTP_PROXY ""; +diff --git a/conf/fastcgi_params b/conf/fastcgi_params +index 28decb9..3be3a95 100644 +--- a/conf/fastcgi_params ++++ b/conf/fastcgi_params +@@ -23,3 +23,6 @@ fastcgi_param SERVER_NAME $server_name; + + # PHP only, required if PHP was built with --enable-force-cgi-redirect + fastcgi_param REDIRECT_STATUS 200; ++ ++# httpoxy mitigation (https://httpoxy.org/ https://www.nginx.com/blog/?p=41962) ++fastcgi_param HTTP_PROXY ""; +diff --git a/conf/scgi_params b/conf/scgi_params +index 6d4ce4f..a9da34f 100644 +--- a/conf/scgi_params ++++ b/conf/scgi_params +@@ -15,3 +15,6 @@ scgi_param REMOTE_ADDR $remote_addr; + scgi_param REMOTE_PORT $remote_port; + scgi_param SERVER_PORT $server_port; + scgi_param SERVER_NAME $server_name; ++ ++# httpoxy mitigation (https://httpoxy.org/ https://www.nginx.com/blog/?p=41962) ++scgi_param HTTP_PROXY ""; +diff --git a/conf/uwsgi_params b/conf/uwsgi_params +index 09c732c..9d67d3d 100644 +--- a/conf/uwsgi_params ++++ b/conf/uwsgi_params +@@ -15,3 +15,6 @@ uwsgi_param REMOTE_ADDR $remote_addr; + uwsgi_param REMOTE_PORT $remote_port; + uwsgi_param SERVER_PORT $server_port; + uwsgi_param SERVER_NAME $server_name; ++ ++# httpoxy mitigation (https://httpoxy.org/ https://www.nginx.com/blog/?p=41962) ++uwsgi_param HTTP_PROXY ""; diff --git a/www-servers/nginx/files/nginx.conf b/www-servers/nginx/files/nginx.conf deleted file mode 100644 index 74c015f..0000000 --- a/www-servers/nginx/files/nginx.conf +++ /dev/null @@ -1,72 +0,0 @@ -user nginx nginx; -worker_processes 1; - -error_log /var/log/nginx/error_log info; - -events { - worker_connections 1024; - use epoll; -} - -http { - include /etc/nginx/mime.types; - default_type application/octet-stream; - - log_format main - '$remote_addr - $remote_user [$time_local] ' - '"$request" $status $bytes_sent ' - '"$http_referer" "$http_user_agent" ' - '"$gzip_ratio"'; - - client_header_timeout 10m; - client_body_timeout 10m; - send_timeout 10m; - - connection_pool_size 256; - client_header_buffer_size 1k; - large_client_header_buffers 4 2k; - request_pool_size 4k; - - gzip on; - gzip_min_length 1100; - gzip_buffers 4 8k; - gzip_types text/plain; - - output_buffers 1 32k; - postpone_output 1460; - - sendfile on; - tcp_nopush on; - tcp_nodelay on; - - keepalive_timeout 75 20; - - ignore_invalid_headers on; - - index index.html; - - server { - listen 127.0.0.1; - server_name localhost; - - access_log /var/log/nginx/localhost.access_log main; - error_log /var/log/nginx/localhost.error_log info; - - root /var/www/localhost/htdocs; - } - - # SSL example - #server { - # listen 127.0.0.1:443; - # server_name localhost; - - # ssl on; - # ssl_certificate /etc/ssl/nginx/nginx.pem; - # ssl_certificate_key /etc/ssl/nginx/nginx.key; - - # access_log /var/log/nginx/localhost.ssl_access_log main; - # error_log /var/log/nginx/localhost.ssl_error_log info; - - # root /var/www/localhost/htdocs; - #} -} diff --git a/www-servers/nginx/files/nginx.initd-r2 b/www-servers/nginx/files/nginx.initd-r2 deleted file mode 100644 index 54605c4..0000000 --- a/www-servers/nginx/files/nginx.initd-r2 +++ /dev/null @@ -1,89 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -extra_commands="configtest" -extra_started_commands="upgrade reload" - -description="Robust, small and high performance http and reverse proxy server" -description_configtest="Run nginx' internal config check." -description_upgrade="Upgrade the nginx binary without losing connections." -description_reload="Reload the nginx configuration without losing connections." - -nginx_config=${nginx_config:-/etc/nginx/nginx.conf} - -command="/usr/sbin/nginx" -command_args="-c ${nginx_config}" -pidfile=${pidfile:-/run/nginx.pid} -user=${user:-nginx} -group=${group:-nginx} - -depend() { - need net - use dns logger netmount -} - -start_pre() { - if [ "${RC_CMD}" != "restart" ]; then - configtest || return 1 - fi -} - -stop_pre() { - if [ "${RC_CMD}" = "restart" ]; then - configtest || return 1 - fi -} - -stop_post() { - rm -f ${pidfile} -} - -reload() { - configtest || return 1 - ebegin "Refreshing nginx' configuration" - kill -HUP `cat ${pidfile}` &>/dev/null - eend $? "Failed to reload nginx" -} - -upgrade() { - configtest || return 1 - ebegin "Upgrading nginx" - - einfo "Sending USR2 to old binary" - kill -USR2 `cat ${pidfile}` &>/dev/null - - einfo "Sleeping 3 seconds before pid-files checking" - sleep 3 - - if [ ! -f ${pidfile}.oldbin ]; then - eerror "File with old pid not found" - return 1 - fi - - if [ ! -f ${pidfile} ]; then - eerror "New binary failed to start" - return 1 - fi - - einfo "Sleeping 3 seconds before WINCH" - sleep 3 ; kill -WINCH `cat ${pidfile}.oldbin` - - einfo "Sending QUIT to old binary" - kill -QUIT `cat ${pidfile}.oldbin` - - einfo "Upgrade completed" - eend $? "Upgrade failed" -} - -configtest() { - ebegin "Checking nginx' configuration" - ${command} -c ${nginx_config} -t -q - - if [ $? -ne 0 ]; then - ${command} -c ${nginx_config} -t - fi - - eend $? "failed, please correct errors above" -} diff --git a/www-servers/nginx/files/rtmp-nginx-1.7.6.patch b/www-servers/nginx/files/rtmp-nginx-1.7.6.patch deleted file mode 100644 index ae8ccce..0000000 --- a/www-servers/nginx/files/rtmp-nginx-1.7.6.patch +++ /dev/null @@ -1,89 +0,0 @@ -From dd5f2aa117c617e1f0fde26f8fd58903be2d85e8 Mon Sep 17 00:00:00 2001 -From: Roman Arutyunyan <arut@qip.ru> -Date: Wed, 17 Sep 2014 07:10:38 +0400 -Subject: [PATCH] fixed compilation - ---- - ngx_rtmp.c | 4 ++++ - ngx_rtmp.h | 9 +++++++++ - ngx_rtmp_play_module.c | 8 +++++++- - 3 files changed, 20 insertions(+), 1 deletion(-) - -diff --git a/ngx_rtmp.c b/ngx_rtmp.c -index c079c90..e525a93 100644 ---- a/ngx_rtmp.c -+++ b/ngx_rtmp.c -@@ -31,7 +31,11 @@ static char * ngx_rtmp_merge_applications(ngx_conf_t *cf, - ngx_uint_t ctx_index); - - -+#if (nginx_version >= 1007005) -+ngx_thread_volatile ngx_queue_t ngx_rtmp_init_queue; -+#else - ngx_thread_volatile ngx_event_t *ngx_rtmp_init_queue; -+#endif - - - ngx_uint_t ngx_rtmp_max_module; -diff --git a/ngx_rtmp.h b/ngx_rtmp.h -index d3648f7..b87e99e 100644 ---- a/ngx_rtmp.h -+++ b/ngx_rtmp.h -@@ -12,6 +12,7 @@ - #include <ngx_core.h> - #include <ngx_event.h> - #include <ngx_event_connect.h> -+#include <nginx.h> - - #include "ngx_rtmp_amf.h" - #include "ngx_rtmp_bandwidth.h" -@@ -198,7 +199,11 @@ typedef struct { - ngx_str_t *addr_text; - int connected; - -+#if (nginx_version >= 1007005) -+ ngx_queue_t posted_dry_events; -+#else - ngx_event_t *posted_dry_events; -+#endif - - /* client buffer time in msec */ - uint32_t buflen; -@@ -602,7 +607,11 @@ extern ngx_rtmp_bandwidth_t ngx_rtmp_bw_in; - - - extern ngx_uint_t ngx_rtmp_naccepted; -+#if (nginx_version >= 1007005) -+extern ngx_thread_volatile ngx_queue_t ngx_rtmp_init_queue; -+#else - extern ngx_thread_volatile ngx_event_t *ngx_rtmp_init_queue; -+#endif - - extern ngx_uint_t ngx_rtmp_max_module; - extern ngx_module_t ngx_rtmp_core_module; -diff --git a/ngx_rtmp_play_module.c b/ngx_rtmp_play_module.c -index acaa46c..f6ea6c3 100644 ---- a/ngx_rtmp_play_module.c -+++ b/ngx_rtmp_play_module.c -@@ -6,6 +6,7 @@ - - #include <ngx_config.h> - #include <ngx_core.h> -+#include <nginx.h> - #include "ngx_rtmp_play_module.h" - #include "ngx_rtmp_cmd_module.h" - #include "ngx_rtmp_netcall_module.h" -@@ -430,7 +431,12 @@ ngx_rtmp_play_do_stop(ngx_rtmp_session_t *s) - ngx_del_timer(&ctx->send_evt); - } - -- if (ctx->send_evt.prev) { -+#if (nginx_version >= 1007005) -+ if (ctx->send_evt.posted) -+#else -+ if (ctx->send_evt.prev) -+#endif -+ { - ngx_delete_posted_event((&ctx->send_evt)); - } - diff --git a/www-servers/nginx/metadata.xml b/www-servers/nginx/metadata.xml index 6ba5f0f..150cf04 100644 --- a/www-servers/nginx/metadata.xml +++ b/www-servers/nginx/metadata.xml @@ -6,6 +6,10 @@ <name>Tiziano Müller</name> </maintainer> <maintainer type="person"> + <email>whissi@gentoo.org</email> + <name>Thomas Deutschmann</name> + </maintainer> + <maintainer type="person"> <email>bugs@bergstroem.nu</email> <name>Johan Bergström</name> <description>Co-maintainer, CC on bugs.</description> diff --git a/www-servers/nginx/nginx-1.10.0-r100.ebuild b/www-servers/nginx/nginx-1.10.1-r100.ebuild index 2a9b4c9..c990f8a 100644 --- a/www-servers/nginx/nginx-1.10.0-r100.ebuild +++ b/www-servers/nginx/nginx-1.10.1-r100.ebuild @@ -18,7 +18,7 @@ EAPI=6 GENTOO_DEPEND_ON_PERL="no" # devel_kit (https://github.com/simpl/ngx_devel_kit, BSD license) -DEVEL_KIT_MODULE_PV="0.2.19" +DEVEL_KIT_MODULE_PV="0.3.0" DEVEL_KIT_MODULE_P="ngx_devel_kit-${DEVEL_KIT_MODULE_PV}-r1" DEVEL_KIT_MODULE_URI="https://github.com/simpl/ngx_devel_kit/archive/v${DEVEL_KIT_MODULE_PV}.tar.gz" DEVEL_KIT_MODULE_WD="${WORKDIR}/ngx_devel_kit-${DEVEL_KIT_MODULE_PV}" @@ -30,7 +30,7 @@ HTTP_UPLOAD_PROGRESS_MODULE_URI="https://github.com/masterzen/nginx-upload-progr HTTP_UPLOAD_PROGRESS_MODULE_WD="${WORKDIR}/nginx-upload-progress-module-${HTTP_UPLOAD_PROGRESS_MODULE_PV}" # http_headers_more (https://github.com/agentzh/headers-more-nginx-module, BSD license) -HTTP_HEADERS_MORE_MODULE_PV="0.29" +HTTP_HEADERS_MORE_MODULE_PV="0.30" HTTP_HEADERS_MORE_MODULE_P="ngx_http_headers_more-${HTTP_HEADERS_MORE_MODULE_PV}" HTTP_HEADERS_MORE_MODULE_URI="https://github.com/agentzh/headers-more-nginx-module/archive/v${HTTP_HEADERS_MORE_MODULE_PV}.tar.gz" HTTP_HEADERS_MORE_MODULE_WD="${WORKDIR}/headers-more-nginx-module-${HTTP_HEADERS_MORE_MODULE_PV}" @@ -48,13 +48,13 @@ HTTP_SLOWFS_CACHE_MODULE_URI="http://labs.frickle.com/files/ngx_slowfs_cache-${H HTTP_SLOWFS_CACHE_MODULE_WD="${WORKDIR}/ngx_slowfs_cache-${HTTP_SLOWFS_CACHE_MODULE_PV}" # http_fancyindex (https://github.com/aperezdc/ngx-fancyindex, BSD license) -HTTP_FANCYINDEX_MODULE_PV="0.3.6" +HTTP_FANCYINDEX_MODULE_PV="0.4.0" HTTP_FANCYINDEX_MODULE_P="ngx_http_fancyindex-${HTTP_FANCYINDEX_MODULE_PV}" HTTP_FANCYINDEX_MODULE_URI="https://github.com/aperezdc/ngx-fancyindex/archive/v${HTTP_FANCYINDEX_MODULE_PV}.tar.gz" HTTP_FANCYINDEX_MODULE_WD="${WORKDIR}/ngx-fancyindex-${HTTP_FANCYINDEX_MODULE_PV}" # http_lua (https://github.com/openresty/lua-nginx-module, BSD license) -HTTP_LUA_MODULE_PV="0.10.2" +HTTP_LUA_MODULE_PV="0.10.5" HTTP_LUA_MODULE_P="ngx_http_lua-${HTTP_LUA_MODULE_PV}" HTTP_LUA_MODULE_URI="https://github.com/openresty/lua-nginx-module/archive/v${HTTP_LUA_MODULE_PV}.tar.gz" HTTP_LUA_MODULE_WD="${WORKDIR}/lua-nginx-module-${HTTP_LUA_MODULE_PV}" @@ -66,10 +66,10 @@ HTTP_AUTH_PAM_MODULE_URI="https://github.com/stogh/ngx_http_auth_pam_module/arch HTTP_AUTH_PAM_MODULE_WD="${WORKDIR}/ngx_http_auth_pam_module-${HTTP_AUTH_PAM_MODULE_PV}" # http_upstream_check (https://github.com/yaoweibin/nginx_upstream_check_module, BSD license) -HTTP_UPSTREAM_CHECK_MODULE_PV="0.3.0" +HTTP_UPSTREAM_CHECK_MODULE_PV="0.3.0-10-g10782ea" HTTP_UPSTREAM_CHECK_MODULE_P="ngx_http_upstream_check-${HTTP_UPSTREAM_CHECK_MODULE_PV}" HTTP_UPSTREAM_CHECK_MODULE_URI="https://github.com/yaoweibin/nginx_upstream_check_module/archive/v${HTTP_UPSTREAM_CHECK_MODULE_PV}.tar.gz" -HTTP_UPSTREAM_CHECK_MODULE_WD="${WORKDIR}/nginx_upstream_check_module-${HTTP_UPSTREAM_CHECK_MODULE_PV}" +HTTP_UPSTREAM_CHECK_MODULE_WD="${WORKDIR}/nginx_upstream_check_module-10782eaff51872a8f44e65eed89bbe286004bcb1" # http_metrics (https://github.com/zenops/ngx_metrics, BSD license) HTTP_METRICS_MODULE_PV="0.1.1" @@ -95,10 +95,10 @@ HTTP_DAV_EXT_MODULE_P="ngx_http_dav_ext-${HTTP_DAV_EXT_MODULE_PV}" HTTP_DAV_EXT_MODULE_URI="https://github.com/arut/nginx-dav-ext-module/archive/v${HTTP_DAV_EXT_MODULE_PV}.tar.gz" HTTP_DAV_EXT_MODULE_WD="${WORKDIR}/nginx-dav-ext-module-${HTTP_DAV_EXT_MODULE_PV}" -# echo-nginx-module (https://github.com/agentzh/echo-nginx-module, BSD license) -HTTP_ECHO_MODULE_PV="0.58" +# echo-nginx-module (https://github.com/openresty/echo-nginx-module, BSD license) +HTTP_ECHO_MODULE_PV="0.59" HTTP_ECHO_MODULE_P="ngx_http_echo-${HTTP_ECHO_MODULE_PV}" -HTTP_ECHO_MODULE_URI="https://github.com/agentzh/echo-nginx-module/archive/v${HTTP_ECHO_MODULE_PV}.tar.gz" +HTTP_ECHO_MODULE_URI="https://github.com/openresty/echo-nginx-module/archive/v${HTTP_ECHO_MODULE_PV}.tar.gz" HTTP_ECHO_MODULE_WD="${WORKDIR}/echo-nginx-module-${HTTP_ECHO_MODULE_PV}" # mod_security for nginx (https://modsecurity.org/, Apache-2.0) @@ -127,7 +127,7 @@ HTTP_MOGILEFS_MODULE_URI="https://github.com/vkholodkov/nginx-mogilefs-module/ar HTTP_MOGILEFS_MODULE_WD="${WORKDIR}/nginx_mogilefs_module-${HTTP_MOGILEFS_MODULE_PV}" # memc-module (https://github.com/openresty/memc-nginx-module, BSD-2) -HTTP_MEMC_MODULE_PV="0.16" +HTTP_MEMC_MODULE_PV="0.17" HTTP_MEMC_MODULE_P="ngx_memc_module-${HTTP_MEMC_MODULE_PV}" HTTP_MEMC_MODULE_URI="https://github.com/openresty/memc-nginx-module/archive/v${HTTP_MEMC_MODULE_PV}.tar.gz" HTTP_MEMC_MODULE_WD="${WORKDIR}/memc-nginx-module-${HTTP_MEMC_MODULE_PV}" @@ -178,7 +178,7 @@ LICENSE="BSD-2 BSD SSLeay MIT GPL-2 GPL-2+ nginx_modules_http_push_stream? ( GPL-3 )" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux" +KEYWORDS="amd64 ~arm ~arm64 ~ppc x86 ~x86-fbsd ~amd64-linux ~x86-linux" NGINX_MODULES_STD="access auth_basic autoindex browser charset empty_gif fastcgi geo gzip limit_req limit_conn map memcached proxy referer @@ -319,13 +319,6 @@ pkg_setup() { ewarn "all nginx http modules." fi - if use nginx_modules_http_ajp; then - eerror "The AJP module currently doesn't build for nginx >1.8." - eerror "It will be reintroduced with the 1.9 series when proven stable." - eerror "Either disable it or stick with nginx 1.7.x." - die "AJP module not supported" - fi - if use nginx_modules_http_mogilefs && use threads; then eerror "mogilefs won't compile with threads support." eerror "Please disable either flag and try again." @@ -337,7 +330,7 @@ src_prepare() { eapply "${FILESDIR}/${PN}-1.4.1-fix-perl-install-path.patch" if use nginx_modules_http_upstream_check; then - eapply -p0 "${FILESDIR}/check-1.9.2".patch + eapply -p0 "${HTTP_UPSTREAM_CHECK_MODULE_WD}/check_1.9.2+".patch fi if use nginx_modules_http_lua; then @@ -368,7 +361,7 @@ src_prepare() { src_configure() { # mod_security needs to generate nginx/modsecurity/config before including it if use nginx_modules_http_security; then - cd "${HTTP_SECURITY_MODULE_WD}" + cd "${HTTP_SECURITY_MODULE_WD}" || die if use luajit ; then sed -i \ -e 's|^\(LUA_PKGNAMES\)=.*|\1="luajit"|' \ @@ -380,7 +373,7 @@ src_configure() { $(use_with nginx_modules_http_lua lua) || die "configure failed for mod_security" fi - cd "${S}" + cd "${S}" || die local myconf=() http_enabled= mail_enabled= stream_enabled= @@ -544,7 +537,7 @@ src_configure() { myconf+=( --without-stream_upstream_least_conn_module ) myconf+=( --without-stream_upstream_zone_module ) else - myconf+=( --without-stream_${stream}_module ) + myconf+=( --without-stream_${mod}_module ) fi fi done @@ -649,9 +642,10 @@ src_install() { newins "${FILESDIR}"/nginx.logrotate-r1 nginx if use nginx_modules_http_perl; then - cd "${S}"/objs/src/http/modules/perl/ + cd "${S}"/objs/src/http/modules/perl/ || die emake DESTDIR="${D}" INSTALLDIRS=vendor perl_delete_localpod + cd "${S}" || die fi if use nginx_modules_http_cache_purge; then @@ -701,7 +695,7 @@ src_install() { if use nginx_modules_http_echo; then docinto ${HTTP_ECHO_MODULE_P} - dodoc "${HTTP_ECHO_MODULE_WD}"/{README.markdown,doc/HttpEchoModule.wiki} + dodoc "${HTTP_ECHO_MODULE_WD}"/README.markdown fi if use nginx_modules_http_security; then diff --git a/www-servers/nginx/nginx-1.9.15-r100.ebuild b/www-servers/nginx/nginx-1.11.3-r100.ebuild index e967cc9..351a943 100644 --- a/www-servers/nginx/nginx-1.9.15-r100.ebuild +++ b/www-servers/nginx/nginx-1.11.3-r100.ebuild @@ -18,7 +18,7 @@ EAPI=6 GENTOO_DEPEND_ON_PERL="no" # devel_kit (https://github.com/simpl/ngx_devel_kit, BSD license) -DEVEL_KIT_MODULE_PV="0.2.19" +DEVEL_KIT_MODULE_PV="0.3.0" DEVEL_KIT_MODULE_P="ngx_devel_kit-${DEVEL_KIT_MODULE_PV}-r1" DEVEL_KIT_MODULE_URI="https://github.com/simpl/ngx_devel_kit/archive/v${DEVEL_KIT_MODULE_PV}.tar.gz" DEVEL_KIT_MODULE_WD="${WORKDIR}/ngx_devel_kit-${DEVEL_KIT_MODULE_PV}" @@ -30,7 +30,7 @@ HTTP_UPLOAD_PROGRESS_MODULE_URI="https://github.com/masterzen/nginx-upload-progr HTTP_UPLOAD_PROGRESS_MODULE_WD="${WORKDIR}/nginx-upload-progress-module-${HTTP_UPLOAD_PROGRESS_MODULE_PV}" # http_headers_more (https://github.com/agentzh/headers-more-nginx-module, BSD license) -HTTP_HEADERS_MORE_MODULE_PV="0.29" +HTTP_HEADERS_MORE_MODULE_PV="0.30" HTTP_HEADERS_MORE_MODULE_P="ngx_http_headers_more-${HTTP_HEADERS_MORE_MODULE_PV}" HTTP_HEADERS_MORE_MODULE_URI="https://github.com/agentzh/headers-more-nginx-module/archive/v${HTTP_HEADERS_MORE_MODULE_PV}.tar.gz" HTTP_HEADERS_MORE_MODULE_WD="${WORKDIR}/headers-more-nginx-module-${HTTP_HEADERS_MORE_MODULE_PV}" @@ -48,13 +48,13 @@ HTTP_SLOWFS_CACHE_MODULE_URI="http://labs.frickle.com/files/ngx_slowfs_cache-${H HTTP_SLOWFS_CACHE_MODULE_WD="${WORKDIR}/ngx_slowfs_cache-${HTTP_SLOWFS_CACHE_MODULE_PV}" # http_fancyindex (https://github.com/aperezdc/ngx-fancyindex, BSD license) -HTTP_FANCYINDEX_MODULE_PV="0.3.6" +HTTP_FANCYINDEX_MODULE_PV="0.4.0" HTTP_FANCYINDEX_MODULE_P="ngx_http_fancyindex-${HTTP_FANCYINDEX_MODULE_PV}" HTTP_FANCYINDEX_MODULE_URI="https://github.com/aperezdc/ngx-fancyindex/archive/v${HTTP_FANCYINDEX_MODULE_PV}.tar.gz" HTTP_FANCYINDEX_MODULE_WD="${WORKDIR}/ngx-fancyindex-${HTTP_FANCYINDEX_MODULE_PV}" # http_lua (https://github.com/openresty/lua-nginx-module, BSD license) -HTTP_LUA_MODULE_PV="0.10.2" +HTTP_LUA_MODULE_PV="0.10.5" HTTP_LUA_MODULE_P="ngx_http_lua-${HTTP_LUA_MODULE_PV}" HTTP_LUA_MODULE_URI="https://github.com/openresty/lua-nginx-module/archive/v${HTTP_LUA_MODULE_PV}.tar.gz" HTTP_LUA_MODULE_WD="${WORKDIR}/lua-nginx-module-${HTTP_LUA_MODULE_PV}" @@ -66,10 +66,10 @@ HTTP_AUTH_PAM_MODULE_URI="https://github.com/stogh/ngx_http_auth_pam_module/arch HTTP_AUTH_PAM_MODULE_WD="${WORKDIR}/ngx_http_auth_pam_module-${HTTP_AUTH_PAM_MODULE_PV}" # http_upstream_check (https://github.com/yaoweibin/nginx_upstream_check_module, BSD license) -HTTP_UPSTREAM_CHECK_MODULE_PV="0.3.0" +HTTP_UPSTREAM_CHECK_MODULE_PV="0.3.0-10-g10782ea" HTTP_UPSTREAM_CHECK_MODULE_P="ngx_http_upstream_check-${HTTP_UPSTREAM_CHECK_MODULE_PV}" HTTP_UPSTREAM_CHECK_MODULE_URI="https://github.com/yaoweibin/nginx_upstream_check_module/archive/v${HTTP_UPSTREAM_CHECK_MODULE_PV}.tar.gz" -HTTP_UPSTREAM_CHECK_MODULE_WD="${WORKDIR}/nginx_upstream_check_module-${HTTP_UPSTREAM_CHECK_MODULE_PV}" +HTTP_UPSTREAM_CHECK_MODULE_WD="${WORKDIR}/nginx_upstream_check_module-10782eaff51872a8f44e65eed89bbe286004bcb1" # http_metrics (https://github.com/zenops/ngx_metrics, BSD license) HTTP_METRICS_MODULE_PV="0.1.1" @@ -84,7 +84,7 @@ HTTP_NAXSI_MODULE_URI="https://github.com/nbs-system/naxsi/archive/${HTTP_NAXSI_ HTTP_NAXSI_MODULE_WD="${WORKDIR}/naxsi-${HTTP_NAXSI_MODULE_PV}/naxsi_src" # nginx-rtmp-module (https://github.com/arut/nginx-rtmp-module, BSD license) -RTMP_MODULE_PV="1.1.7" +RTMP_MODULE_PV="1.1.8" RTMP_MODULE_P="ngx_rtmp-${RTMP_MODULE_PV}" RTMP_MODULE_URI="https://github.com/arut/nginx-rtmp-module/archive/v${RTMP_MODULE_PV}.tar.gz" RTMP_MODULE_WD="${WORKDIR}/nginx-rtmp-module-${RTMP_MODULE_PV}" @@ -95,10 +95,10 @@ HTTP_DAV_EXT_MODULE_P="ngx_http_dav_ext-${HTTP_DAV_EXT_MODULE_PV}" HTTP_DAV_EXT_MODULE_URI="https://github.com/arut/nginx-dav-ext-module/archive/v${HTTP_DAV_EXT_MODULE_PV}.tar.gz" HTTP_DAV_EXT_MODULE_WD="${WORKDIR}/nginx-dav-ext-module-${HTTP_DAV_EXT_MODULE_PV}" -# echo-nginx-module (https://github.com/agentzh/echo-nginx-module, BSD license) -HTTP_ECHO_MODULE_PV="0.58" +# echo-nginx-module (https://github.com/openresty/echo-nginx-module, BSD license) +HTTP_ECHO_MODULE_PV="0.59" HTTP_ECHO_MODULE_P="ngx_http_echo-${HTTP_ECHO_MODULE_PV}" -HTTP_ECHO_MODULE_URI="https://github.com/agentzh/echo-nginx-module/archive/v${HTTP_ECHO_MODULE_PV}.tar.gz" +HTTP_ECHO_MODULE_URI="https://github.com/openresty/echo-nginx-module/archive/v${HTTP_ECHO_MODULE_PV}.tar.gz" HTTP_ECHO_MODULE_WD="${WORKDIR}/echo-nginx-module-${HTTP_ECHO_MODULE_PV}" # mod_security for nginx (https://modsecurity.org/, Apache-2.0) @@ -109,7 +109,7 @@ HTTP_SECURITY_MODULE_URI="https://www.modsecurity.org/tarball/${HTTP_SECURITY_MO HTTP_SECURITY_MODULE_WD="${WORKDIR}/${HTTP_SECURITY_MODULE_P}" # push-stream-module (http://www.nginxpushstream.com, https://github.com/wandenberg/nginx-push-stream-module, GPL-3) -HTTP_PUSH_STREAM_MODULE_PV="0.5.1" +HTTP_PUSH_STREAM_MODULE_PV="0.5.2" HTTP_PUSH_STREAM_MODULE_P="ngx_http_push_stream-${HTTP_PUSH_STREAM_MODULE_PV}" HTTP_PUSH_STREAM_MODULE_URI="https://github.com/wandenberg/nginx-push-stream-module/archive/${HTTP_PUSH_STREAM_MODULE_PV}.tar.gz" HTTP_PUSH_STREAM_MODULE_WD="${WORKDIR}/nginx-push-stream-module-${HTTP_PUSH_STREAM_MODULE_PV}" @@ -127,13 +127,13 @@ HTTP_MOGILEFS_MODULE_URI="https://github.com/vkholodkov/nginx-mogilefs-module/ar HTTP_MOGILEFS_MODULE_WD="${WORKDIR}/nginx_mogilefs_module-${HTTP_MOGILEFS_MODULE_PV}" # memc-module (https://github.com/openresty/memc-nginx-module, BSD-2) -HTTP_MEMC_MODULE_PV="0.16" +HTTP_MEMC_MODULE_PV="0.17" HTTP_MEMC_MODULE_P="ngx_memc_module-${HTTP_MEMC_MODULE_PV}" HTTP_MEMC_MODULE_URI="https://github.com/openresty/memc-nginx-module/archive/v${HTTP_MEMC_MODULE_PV}.tar.gz" HTTP_MEMC_MODULE_WD="${WORKDIR}/memc-nginx-module-${HTTP_MEMC_MODULE_PV}" # nginx-ldap-auth-module (https://github.com/kvspb/nginx-auth-ldap, BSD-2) -HTTP_LDAP_MODULE_PV="8517bb05ecc896b54429ca5e95137b0a386bd41a" +HTTP_LDAP_MODULE_PV="dbcef31bebb2d54b6120422d0b178bbf78bc48f7" HTTP_LDAP_MODULE_P="nginx-auth-ldap-${HTTP_LDAP_MODULE_PV}" HTTP_LDAP_MODULE_URI="https://github.com/kvspb/nginx-auth-ldap/archive/${HTTP_LDAP_MODULE_PV}.tar.gz" HTTP_LDAP_MODULE_WD="${WORKDIR}/nginx-auth-ldap-${HTTP_LDAP_MODULE_PV}" @@ -182,11 +182,14 @@ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux" NGINX_MODULES_STD="access auth_basic autoindex browser charset empty_gif fastcgi geo gzip limit_req limit_conn map memcached proxy referer - rewrite scgi ssi split_clients upstream_ip_hash userid uwsgi" + rewrite scgi ssi split_clients upstream_hash upstream_ip_hash + upstream_keepalive upstream_least_conn upstream_zone userid uwsgi" NGINX_MODULES_OPT="addition auth_request dav degradation flv geoip gunzip gzip_static image_filter mp4 perl random_index realip secure_link slice stub_status sub" -NGINX_MODULES_STREAM="access limit_conn upstream" +NGINX_MODULES_STREAM_STD="access geo limit_conn map return split_clients + upstream_hash upstream_least_conn upstream_zone" +NGINX_MODULES_STREAM_OPT="geoip" NGINX_MODULES_MAIL="imap pop3 smtp" NGINX_MODULES_3RD=" http_upload_progress @@ -204,7 +207,6 @@ NGINX_MODULES_3RD=" http_security http_push_stream http_sticky - http_ajp http_mogilefs http_memc http_auth_ldap @@ -221,7 +223,11 @@ for mod in $NGINX_MODULES_OPT; do IUSE="${IUSE} nginx_modules_http_${mod}" done -for mod in $NGINX_MODULES_STREAM; do +for mod in $NGINX_MODULES_STREAM_STD; do + IUSE="${IUSE} nginx_modules_stream_${mod}" +done + +for mod in $NGINX_MODULES_STREAM_OPT; do IUSE="${IUSE} nginx_modules_stream_${mod}" done @@ -319,13 +325,6 @@ pkg_setup() { ewarn "all nginx http modules." fi - if use nginx_modules_http_ajp; then - eerror "The AJP module currently doesn't build for nginx >1.8." - eerror "It will be reintroduced with the 1.9 series when proven stable." - eerror "Either disable it or stick with nginx 1.7.x." - die "AJP module not supported" - fi - if use nginx_modules_http_mogilefs && use threads; then eerror "mogilefs won't compile with threads support." eerror "Please disable either flag and try again." @@ -335,9 +334,17 @@ pkg_setup() { src_prepare() { eapply "${FILESDIR}/${PN}-1.4.1-fix-perl-install-path.patch" + eapply "${FILESDIR}/${PN}-httpoxy-mitigation-r1.patch" + eapply "${FILESDIR}/${PN}-1.11.3-fix-build-without-stream_ssl_module.patch" + + if use nginx_modules_http_sticky; then + cd "${HTTP_STICKY_MODULE_WD}" || die + eapply "${FILESDIR}"/http-sticky-nginx-1.11.2.patch + cd "${S}" || die + fi if use nginx_modules_http_upstream_check; then - eapply -p0 "${FILESDIR}/check-1.9.2".patch + eapply -p0 "${HTTP_UPSTREAM_CHECK_MODULE_WD}/check_1.9.2+".patch fi if use nginx_modules_http_lua; then @@ -368,7 +375,7 @@ src_prepare() { src_configure() { # mod_security needs to generate nginx/modsecurity/config before including it if use nginx_modules_http_security; then - cd "${HTTP_SECURITY_MODULE_WD}" + cd "${HTTP_SECURITY_MODULE_WD}" || die if use luajit ; then sed -i \ -e 's|^\(LUA_PKGNAMES\)=.*|\1="luajit"|' \ @@ -380,7 +387,7 @@ src_configure() { $(use_with nginx_modules_http_lua lua) || die "configure failed for mod_security" fi - cd "${S}" + cd "${S}" || die local myconf=() http_enabled= mail_enabled= stream_enabled= @@ -534,18 +541,18 @@ src_configure() { fi # Stream modules - for mod in $NGINX_MODULES_STREAM; do + for mod in $NGINX_MODULES_STREAM_STD; do if use nginx_modules_stream_${mod}; then stream_enabled=1 else - # Treat stream upstream slightly differently - if ! use nginx_modules_stream_upstream; then - myconf+=( --without-stream_upstream_hash_module ) - myconf+=( --without-stream_upstream_least_conn_module ) - myconf+=( --without-stream_upstream_zone_module ) - else - myconf+=( --without-stream_${stream}_module ) - fi + myconf+=( --without-stream_${mod}_module ) + fi + done + + for mod in $NGINX_MODULES_STREAM_OPT; do + if use nginx_modules_stream_${mod}; then + stream_enabled=1 + myconf+=( --with-stream_${mod}_module ) fi done @@ -578,7 +585,8 @@ src_configure() { tc-export CC if ! use prefix; then - myconf+=( --user=${PN}" "--group=${PN} ) + myconf+=( --user=${PN} ) + myconf+=( --group=${PN} ) fi ./configure \ @@ -616,7 +624,7 @@ src_install() { cp "${FILESDIR}"/nginx.conf-r2 "${ED}"etc/nginx/nginx.conf || die - newinitd "${FILESDIR}"/nginx.initd-r2 nginx + newinitd "${FILESDIR}"/nginx.initd-r3 nginx systemd_newunit "${FILESDIR}"/nginx.service-r1 nginx.service @@ -649,9 +657,10 @@ src_install() { newins "${FILESDIR}"/nginx.logrotate-r1 nginx if use nginx_modules_http_perl; then - cd "${S}"/objs/src/http/modules/perl/ + cd "${S}"/objs/src/http/modules/perl/ || die emake DESTDIR="${D}" INSTALLDIRS=vendor perl_delete_localpod + cd "${S}" || die fi if use nginx_modules_http_cache_purge; then @@ -701,7 +710,7 @@ src_install() { if use nginx_modules_http_echo; then docinto ${HTTP_ECHO_MODULE_P} - dodoc "${HTTP_ECHO_MODULE_WD}"/{README.markdown,doc/HttpEchoModule.wiki} + dodoc "${HTTP_ECHO_MODULE_WD}"/README.markdown fi if use nginx_modules_http_security; then @@ -732,7 +741,7 @@ src_install() { pkg_postinst() { if use ssl; then - if [ ! -f "${EROOT}"etc/ssl/${PN}/${PN}.key ]; then + if [[ ! -f "${EROOT}"etc/ssl/${PN}/${PN}.key ]]; then install_cert /etc/ssl/${PN}/${PN} use prefix || chown ${PN}:${PN} "${EROOT}"etc/ssl/${PN}/${PN}.{crt,csr,key,pem} fi @@ -752,7 +761,7 @@ pkg_postinst() { # existing installations local fix_perms=0 - for rv in ${REPLACING_VERSIONS} ; do + for rv in ${REPLACING_VERSIONS}; do version_compare ${rv} 1.4.1-r2 [[ $? -eq 1 ]] && fix_perms=1 done @@ -776,4 +785,16 @@ pkg_postinst() { ewarn "'rx' permissions on /var/log/nginx (default on a fresh install)" ewarn "Otherwise you end up with empty log files after a logrotate." fi + + # HTTPoxy mitigation + ewarn "" + ewarn "This nginx installation comes with a mitigation for the HTTPoxy" + ewarn "vulnerability for FastCGI applications by setting the HTTP_PROXY FastCGI" + ewarn "parameter to an empty string per default when you are sourcing the default" + ewarn "'fastcgi_params' or 'fastcgi.conf' in your server block(s)." + ewarn "" + ewarn "If this is causing any problems for you make sure that you are sourcing the" + ewarn "default parameters _before_ you set your own values." + ewarn "If you are relying on user-supplied proxy values you have to remove the" + ewarn "correlating lines from 'fastcgi_params' and or 'fastcgi.conf'." } diff --git a/www-servers/nginx/nginx-1.8.1-r100.ebuild b/www-servers/nginx/nginx-1.8.1-r100.ebuild deleted file mode 100644 index cd65b81..0000000 --- a/www-servers/nginx/nginx-1.8.1-r100.ebuild +++ /dev/null @@ -1,686 +0,0 @@ -# Copyright 1999-2016 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -EAPI=5 - -# Maintainer notes: -# - http_rewrite-independent pcre-support makes sense for matching locations without an actual rewrite -# - any http-module activates the main http-functionality and overrides USE=-http -# - keep the following requirements in mind before adding external modules: -# * alive upstream -# * sane packaging -# * builds cleanly -# * does not need a patch for nginx core -# - TODO: test the google-perftools module (included in vanilla tarball) - -# prevent perl-module from adding automagic perl DEPENDs -GENTOO_DEPEND_ON_PERL="no" - -# devel_kit (https://github.com/simpl/ngx_devel_kit, BSD license) -DEVEL_KIT_MODULE_PV="0.2.19" -DEVEL_KIT_MODULE_P="ngx_devel_kit-${DEVEL_KIT_MODULE_PV}-r1" -DEVEL_KIT_MODULE_URI="https://github.com/simpl/ngx_devel_kit/archive/v${DEVEL_KIT_MODULE_PV}.tar.gz" -DEVEL_KIT_MODULE_WD="${WORKDIR}/ngx_devel_kit-${DEVEL_KIT_MODULE_PV}" - -# http_uploadprogress (https://github.com/masterzen/nginx-upload-progress-module, BSD-2 license) -HTTP_UPLOAD_PROGRESS_MODULE_PV="0.9.1" -HTTP_UPLOAD_PROGRESS_MODULE_P="ngx_http_upload_progress-${HTTP_UPLOAD_PROGRESS_MODULE_PV}-r1" -HTTP_UPLOAD_PROGRESS_MODULE_URI="https://github.com/masterzen/nginx-upload-progress-module/archive/v${HTTP_UPLOAD_PROGRESS_MODULE_PV}.tar.gz" -HTTP_UPLOAD_PROGRESS_MODULE_WD="${WORKDIR}/nginx-upload-progress-module-${HTTP_UPLOAD_PROGRESS_MODULE_PV}" - -# http_headers_more (https://github.com/agentzh/headers-more-nginx-module, BSD license) -HTTP_HEADERS_MORE_MODULE_PV="0.26" -HTTP_HEADERS_MORE_MODULE_P="ngx_http_headers_more-${HTTP_HEADERS_MORE_MODULE_PV}" -HTTP_HEADERS_MORE_MODULE_URI="https://github.com/agentzh/headers-more-nginx-module/archive/v${HTTP_HEADERS_MORE_MODULE_PV}.tar.gz" -HTTP_HEADERS_MORE_MODULE_WD="${WORKDIR}/headers-more-nginx-module-${HTTP_HEADERS_MORE_MODULE_PV}" - -# http_cache_purge (http://labs.frickle.com/nginx_ngx_cache_purge/, BSD-2 license) -HTTP_CACHE_PURGE_MODULE_PV="2.3" -HTTP_CACHE_PURGE_MODULE_P="ngx_http_cache_purge-${HTTP_CACHE_PURGE_MODULE_PV}" -HTTP_CACHE_PURGE_MODULE_URI="http://labs.frickle.com/files/ngx_cache_purge-${HTTP_CACHE_PURGE_MODULE_PV}.tar.gz" -HTTP_CACHE_PURGE_MODULE_WD="${WORKDIR}/ngx_cache_purge-${HTTP_CACHE_PURGE_MODULE_PV}" - -# http_slowfs_cache (http://labs.frickle.com/nginx_ngx_slowfs_cache/, BSD-2 license) -HTTP_SLOWFS_CACHE_MODULE_PV="1.10" -HTTP_SLOWFS_CACHE_MODULE_P="ngx_http_slowfs_cache-${HTTP_SLOWFS_CACHE_MODULE_PV}" -HTTP_SLOWFS_CACHE_MODULE_URI="http://labs.frickle.com/files/ngx_slowfs_cache-${HTTP_SLOWFS_CACHE_MODULE_PV}.tar.gz" -HTTP_SLOWFS_CACHE_MODULE_WD="${WORKDIR}/ngx_slowfs_cache-${HTTP_SLOWFS_CACHE_MODULE_PV}" - -# http_fancyindex (https://github.com/aperezdc/ngx-fancyindex, BSD license) -HTTP_FANCYINDEX_MODULE_PV="0.3.5" -HTTP_FANCYINDEX_MODULE_P="ngx_http_fancyindex-${HTTP_FANCYINDEX_MODULE_PV}" -HTTP_FANCYINDEX_MODULE_URI="https://github.com/aperezdc/ngx-fancyindex/archive/v${HTTP_FANCYINDEX_MODULE_PV}.tar.gz" -HTTP_FANCYINDEX_MODULE_WD="${WORKDIR}/ngx-fancyindex-${HTTP_FANCYINDEX_MODULE_PV}" - -# http_lua (https://github.com/openresty/lua-nginx-module, BSD license) -HTTP_LUA_MODULE_PV="0.9.15" -HTTP_LUA_MODULE_P="ngx_http_lua-${HTTP_LUA_MODULE_PV}" -HTTP_LUA_MODULE_URI="https://github.com/openresty/lua-nginx-module/archive/v${HTTP_LUA_MODULE_PV}.tar.gz" -HTTP_LUA_MODULE_WD="${WORKDIR}/lua-nginx-module-${HTTP_LUA_MODULE_PV}" - -# http_auth_pam (http://web.iti.upv.es/~sto/nginx/, BSD-2 license) -HTTP_AUTH_PAM_MODULE_PV="1.4" -HTTP_AUTH_PAM_MODULE_P="ngx_http_auth_pam-${HTTP_AUTH_PAM_MODULE_PV}" -HTTP_AUTH_PAM_MODULE_URI="https://github.com/stogh/ngx_http_auth_pam_module/archive/v${HTTP_AUTH_PAM_MODULE_PV}.tar.gz" -HTTP_AUTH_PAM_MODULE_WD="${WORKDIR}/ngx_http_auth_pam_module-${HTTP_AUTH_PAM_MODULE_PV}" - -# http_upstream_check (https://github.com/yaoweibin/nginx_upstream_check_module, BSD license) -HTTP_UPSTREAM_CHECK_MODULE_PV="0.3.0" -HTTP_UPSTREAM_CHECK_MODULE_P="ngx_http_upstream_check-${HTTP_UPSTREAM_CHECK_MODULE_PV}" -HTTP_UPSTREAM_CHECK_MODULE_URI="https://github.com/yaoweibin/nginx_upstream_check_module/archive/v${HTTP_UPSTREAM_CHECK_MODULE_PV}.tar.gz" -HTTP_UPSTREAM_CHECK_MODULE_WD="${WORKDIR}/nginx_upstream_check_module-${HTTP_UPSTREAM_CHECK_MODULE_PV}" - -# http_metrics (https://github.com/zenops/ngx_metrics, BSD license) -HTTP_METRICS_MODULE_PV="0.1.1" -HTTP_METRICS_MODULE_P="ngx_metrics-${HTTP_METRICS_MODULE_PV}" -HTTP_METRICS_MODULE_URI="https://github.com/madvertise/ngx_metrics/archive/v${HTTP_METRICS_MODULE_PV}.tar.gz" -HTTP_METRICS_MODULE_WD="${WORKDIR}/ngx_metrics-${HTTP_METRICS_MODULE_PV}" - -# naxsi-core (https://github.com/nbs-system/naxsi, GPLv2+) -HTTP_NAXSI_MODULE_PV="0.53-2" -HTTP_NAXSI_MODULE_P="ngx_http_naxsi-${HTTP_NAXSI_MODULE_PV}" -HTTP_NAXSI_MODULE_URI="https://github.com/nbs-system/naxsi/archive/${HTTP_NAXSI_MODULE_PV}.tar.gz" -HTTP_NAXSI_MODULE_WD="${WORKDIR}/naxsi-${HTTP_NAXSI_MODULE_PV}/naxsi_src" - -# nginx-rtmp-module (https://github.com/arut/nginx-rtmp-module, BSD license) -RTMP_MODULE_PV="1.1.7" -RTMP_MODULE_P="ngx_rtmp-${RTMP_MODULE_PV}" -RTMP_MODULE_URI="https://github.com/arut/nginx-rtmp-module/archive/v${RTMP_MODULE_PV}.tar.gz" -RTMP_MODULE_WD="${WORKDIR}/nginx-rtmp-module-${RTMP_MODULE_PV}" - -# nginx-dav-ext-module (https://github.com/arut/nginx-dav-ext-module, BSD license) -HTTP_DAV_EXT_MODULE_PV="0.0.3" -HTTP_DAV_EXT_MODULE_P="ngx_http_dav_ext-${HTTP_DAV_EXT_MODULE_PV}" -HTTP_DAV_EXT_MODULE_URI="https://github.com/arut/nginx-dav-ext-module/archive/v${HTTP_DAV_EXT_MODULE_PV}.tar.gz" -HTTP_DAV_EXT_MODULE_WD="${WORKDIR}/nginx-dav-ext-module-${HTTP_DAV_EXT_MODULE_PV}" - -# echo-nginx-module (https://github.com/agentzh/echo-nginx-module, BSD license) -HTTP_ECHO_MODULE_PV="0.57" -HTTP_ECHO_MODULE_P="ngx_http_echo-${HTTP_ECHO_MODULE_PV}" -HTTP_ECHO_MODULE_URI="https://github.com/agentzh/echo-nginx-module/archive/v${HTTP_ECHO_MODULE_PV}.tar.gz" -HTTP_ECHO_MODULE_WD="${WORKDIR}/echo-nginx-module-${HTTP_ECHO_MODULE_PV}" - -# mod_security for nginx (https://modsecurity.org/, Apache-2.0) -# keep the MODULE_P here consistent with upstream to avoid tarball duplication -HTTP_SECURITY_MODULE_PV="2.9.0" -HTTP_SECURITY_MODULE_P="modsecurity-${HTTP_SECURITY_MODULE_PV}" -HTTP_SECURITY_MODULE_URI="https://www.modsecurity.org/tarball/${HTTP_SECURITY_MODULE_PV}/${HTTP_SECURITY_MODULE_P}.tar.gz" -HTTP_SECURITY_MODULE_WD="${WORKDIR}/${HTTP_SECURITY_MODULE_P}" - -# push-stream-module (http://www.nginxpushstream.com, https://github.com/wandenberg/nginx-push-stream-module, GPL-3) -HTTP_PUSH_STREAM_MODULE_PV="0.4.1" -HTTP_PUSH_STREAM_MODULE_P="ngx_http_push_stream-${HTTP_PUSH_STREAM_MODULE_PV}" -HTTP_PUSH_STREAM_MODULE_URI="https://github.com/wandenberg/nginx-push-stream-module/archive/${HTTP_PUSH_STREAM_MODULE_PV}.tar.gz" -HTTP_PUSH_STREAM_MODULE_WD="${WORKDIR}/nginx-push-stream-module-${HTTP_PUSH_STREAM_MODULE_PV}" - -# sticky-module (https://bitbucket.org/nginx-goodies/nginx-sticky-module-ng, BSD-2) -HTTP_STICKY_MODULE_PV="1.2.5" -HTTP_STICKY_MODULE_P="nginx_http_sticky_module_ng-${HTTP_STICKY_MODULE_PV}" -HTTP_STICKY_MODULE_URI="https://bitbucket.org/nginx-goodies/nginx-sticky-module-ng/get/${HTTP_STICKY_MODULE_PV}.tar.bz2" -HTTP_STICKY_MODULE_WD="${WORKDIR}/nginx-goodies-nginx-sticky-module-ng-bd312d586752" - -# mogilefs-module (http://www.grid.net.ru/nginx/mogilefs.en.html, BSD-2) -HTTP_MOGILEFS_MODULE_PV="1.0.4" -HTTP_MOGILEFS_MODULE_P="ngx_mogilefs_module-${HTTP_MOGILEFS_MODULE_PV}" -HTTP_MOGILEFS_MODULE_URI="http://www.grid.net.ru/nginx/download/nginx_mogilefs_module-${HTTP_MOGILEFS_MODULE_PV}.tar.gz" -HTTP_MOGILEFS_MODULE_WD="${WORKDIR}/nginx_mogilefs_module-${HTTP_MOGILEFS_MODULE_PV}" - -HTTP_XSLTPROC_MODULE_PV="0.16" -HTTP_XSLTPROC_MODULE_P="ngx_xsltproc-${HTTP_XSLTPROC_MODULE_PV}" -HTTP_XSLTPROC_MODULE_URI="https://github.com/yoreek/nginx-xsltproc-module/archive/v${HTTP_XSLTPROC_MODULE_PV}.tar.gz" -HTTP_XSLTPROC_MODULE_WD="${WORKDIR}/nginx-xsltproc-module-${HTTP_XSLTPROC_MODULE_PV}" - -inherit eutils ssl-cert toolchain-funcs perl-module flag-o-matic user systemd versionator multilib - -DESCRIPTION="Robust, small and high performance http and reverse proxy server" -HOMEPAGE="http://nginx.org" -SRC_URI="http://nginx.org/download/${P}.tar.gz - ${DEVEL_KIT_MODULE_URI} -> ${DEVEL_KIT_MODULE_P}.tar.gz - nginx_modules_http_upload_progress? ( ${HTTP_UPLOAD_PROGRESS_MODULE_URI} -> ${HTTP_UPLOAD_PROGRESS_MODULE_P}.tar.gz ) - nginx_modules_http_headers_more? ( ${HTTP_HEADERS_MORE_MODULE_URI} -> ${HTTP_HEADERS_MORE_MODULE_P}.tar.gz ) - nginx_modules_http_cache_purge? ( ${HTTP_CACHE_PURGE_MODULE_URI} -> ${HTTP_CACHE_PURGE_MODULE_P}.tar.gz ) - nginx_modules_http_slowfs_cache? ( ${HTTP_SLOWFS_CACHE_MODULE_URI} -> ${HTTP_SLOWFS_CACHE_MODULE_P}.tar.gz ) - nginx_modules_http_fancyindex? ( ${HTTP_FANCYINDEX_MODULE_URI} -> ${HTTP_FANCYINDEX_MODULE_P}.tar.gz ) - nginx_modules_http_lua? ( ${HTTP_LUA_MODULE_URI} -> ${HTTP_LUA_MODULE_P}.tar.gz ) - nginx_modules_http_auth_pam? ( ${HTTP_AUTH_PAM_MODULE_URI} -> ${HTTP_AUTH_PAM_MODULE_P}.tar.gz ) - nginx_modules_http_upstream_check? ( ${HTTP_UPSTREAM_CHECK_MODULE_URI} -> ${HTTP_UPSTREAM_CHECK_MODULE_P}.tar.gz ) - nginx_modules_http_metrics? ( ${HTTP_METRICS_MODULE_URI} -> ${HTTP_METRICS_MODULE_P}.tar.gz ) - nginx_modules_http_naxsi? ( ${HTTP_NAXSI_MODULE_URI} -> ${HTTP_NAXSI_MODULE_P}.tar.gz ) - rtmp? ( ${RTMP_MODULE_URI} -> ${RTMP_MODULE_P}.tar.gz ) - nginx_modules_http_dav_ext? ( ${HTTP_DAV_EXT_MODULE_URI} -> ${HTTP_DAV_EXT_MODULE_P}.tar.gz ) - nginx_modules_http_echo? ( ${HTTP_ECHO_MODULE_URI} -> ${HTTP_ECHO_MODULE_P}.tar.gz ) - nginx_modules_http_security? ( ${HTTP_SECURITY_MODULE_URI} -> ${HTTP_SECURITY_MODULE_P}.tar.gz ) - nginx_modules_http_push_stream? ( ${HTTP_PUSH_STREAM_MODULE_URI} -> ${HTTP_PUSH_STREAM_MODULE_P}.tar.gz ) - nginx_modules_http_sticky? ( ${HTTP_STICKY_MODULE_URI} -> ${HTTP_STICKY_MODULE_P}.tar.bz2 ) - nginx_modules_http_mogilefs? ( ${HTTP_MOGILEFS_MODULE_URI} -> ${HTTP_MOGILEFS_MODULE_P}.tar.gz ) - nginx_modules_http_xsltproc? ( ${HTTP_XSLTPROC_MODULE_URI} -> ${HTTP_XSLTPROC_MODULE_P}.tar.gz )" - -LICENSE="BSD-2 BSD SSLeay MIT GPL-2 GPL-2+ - nginx_modules_http_security? ( Apache-2.0 ) - nginx_modules_http_push_stream? ( GPL-3 )" - -SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 ~ppc x86 ~x86-fbsd ~amd64-linux ~x86-linux" - -NGINX_MODULES_STD="access auth_basic autoindex browser charset empty_gif fastcgi -geo gzip limit_req limit_conn map memcached proxy referer rewrite scgi ssi -split_clients upstream_ip_hash userid uwsgi" -NGINX_MODULES_OPT="addition auth_request dav degradation flv geoip gunzip gzip_static -image_filter mp4 perl random_index realip secure_link spdy stub_status sub" -NGINX_MODULES_MAIL="imap pop3 smtp" -NGINX_MODULES_3RD=" - http_upload_progress - http_headers_more - http_cache_purge - http_slowfs_cache - http_fancyindex - http_lua - http_auth_pam - http_upstream_check - http_metrics - http_naxsi - http_dav_ext - http_echo - http_security - http_push_stream - http_sticky - http_ajp - http_mogilefs - http_xsltproc" - -IUSE="aio debug +http +http-cache ipv6 libatomic luajit +pcre pcre-jit rtmp -selinux ssl userland_GNU vim-syntax +nginx_modules_http_xsltproc xsltproc-memcached" - -for mod in $NGINX_MODULES_STD; do - IUSE="${IUSE} +nginx_modules_http_${mod}" -done - -for mod in $NGINX_MODULES_OPT; do - IUSE="${IUSE} nginx_modules_http_${mod}" -done - -for mod in $NGINX_MODULES_MAIL; do - IUSE="${IUSE} nginx_modules_mail_${mod}" -done - -for mod in $NGINX_MODULES_3RD; do - IUSE="${IUSE} nginx_modules_${mod}" -done - -CDEPEND=" - pcre? ( >=dev-libs/libpcre-4.2 ) - pcre-jit? ( >=dev-libs/libpcre-8.20[jit] ) - ssl? ( dev-libs/openssl:0= ) - http-cache? ( userland_GNU? ( dev-libs/openssl:0= ) ) - nginx_modules_http_geoip? ( dev-libs/geoip ) - nginx_modules_http_gunzip? ( sys-libs/zlib ) - nginx_modules_http_gzip? ( sys-libs/zlib ) - nginx_modules_http_gzip_static? ( sys-libs/zlib ) - nginx_modules_http_image_filter? ( media-libs/gd[jpeg,png] ) - nginx_modules_http_perl? ( >=dev-lang/perl-5.8 ) - nginx_modules_http_rewrite? ( >=dev-libs/libpcre-4.2 ) - nginx_modules_http_secure_link? ( userland_GNU? ( dev-libs/openssl:0= ) ) - nginx_modules_http_spdy? ( >=dev-libs/openssl-1.0.1c:0= ) - nginx_modules_http_lua? ( !luajit? ( dev-lang/lua:0= ) luajit? ( dev-lang/luajit:2= ) ) - nginx_modules_http_auth_pam? ( virtual/pam ) - nginx_modules_http_metrics? ( dev-libs/yajl ) - nginx_modules_http_dav_ext? ( dev-libs/expat ) - nginx_modules_http_security? ( >=dev-libs/libxml2-2.7.8 dev-libs/apr-util www-servers/apache ) - nginx_modules_http_xsltproc? ( dev-libs/libxml2 dev-libs/libxslt dev-libs/icu ) - xsltproc-memcached? ( dev-libs/libmemcached )" - -RDEPEND="${CDEPEND} - selinux? ( sec-policy/selinux-nginx ) -" -DEPEND="${CDEPEND} - arm? ( dev-libs/libatomic_ops ) - libatomic? ( dev-libs/libatomic_ops )" -PDEPEND="vim-syntax? ( app-vim/nginx-syntax )" - -REQUIRED_USE="pcre-jit? ( pcre ) - nginx_modules_http_lua? ( nginx_modules_http_rewrite ) - nginx_modules_http_naxsi? ( pcre ) - nginx_modules_http_dav_ext? ( nginx_modules_http_dav ) - nginx_modules_http_metrics? ( nginx_modules_http_stub_status ) - nginx_modules_http_security? ( pcre ) - nginx_modules_http_push_stream? ( ssl ) - xsltproc-memcached? ( nginx_modules_http_xsltproc )" - -pkg_setup() { - NGINX_HOME="/var/lib/nginx" - NGINX_HOME_TMP="${NGINX_HOME}/tmp" - - ebegin "Creating nginx user and group" - enewgroup ${PN} - enewuser ${PN} -1 -1 "${NGINX_HOME}" ${PN} - eend $? - - if use libatomic; then - ewarn "GCC 4.1+ features built-in atomic operations." - ewarn "Using libatomic_ops is only needed if using" - ewarn "a different compiler or a GCC prior to 4.1" - fi - - if [[ -n $NGINX_ADD_MODULES ]]; then - ewarn "You are building custom modules via \$NGINX_ADD_MODULES!" - ewarn "This nginx installation is not supported!" - ewarn "Make sure you can reproduce the bug without those modules" - ewarn "_before_ reporting bugs." - fi - - if use !http; then - ewarn "To actually disable all http-functionality you also have to disable" - ewarn "all nginx http modules." - fi - - if use nginx_modules_http_ajp; then - eerror "The AJP module currently doesn't build for nginx >1.8." - eerror "It will be reintroduced with the 1.9 series when proven stable." - eerror "Either disable it or stick with nginx 1.7.x." - die "AJP module not supported" - fi -} - -src_prepare() { - epatch "${FILESDIR}/${PN}-1.4.1-fix-perl-install-path.patch" - - if use nginx_modules_http_upstream_check; then - epatch "${FILESDIR}"/check_1.7.2+.patch - fi - - if use nginx_modules_http_lua; then - sed -i -e 's/-llua5.1/-llua/' "${HTTP_LUA_MODULE_WD}/config" || die - fi - - find auto/ -type f -print0 | xargs -0 sed -i 's:\&\& make:\&\& \\$(MAKE):' || die - # We have config protection, don't rename etc files - sed -i 's:.default::' auto/install || die - # remove useless files - sed -i -e '/koi-/d' -e '/win-/d' auto/install || die - - # don't install to /etc/nginx/ if not in use - local module - for module in fastcgi scgi uwsgi ; do - if ! use nginx_modules_http_${module}; then - sed -i -e "/${module}/d" auto/install || die - fi - done - - if use xsltproc-memcached; then - sed -i -e 's/LIBMEMCACHED_ENABLED=no/LIBMEMCACHED_ENABLED=yes/' "${HTTP_XSLTPROC_MODULE_WD}/config" || die - fi - - epatch_user -} - -src_configure() { - # mod_security needs to generate nginx/modsecurity/config before including it - if use nginx_modules_http_security; then - cd "${HTTP_SECURITY_MODULE_WD}" - if use luajit ; then - sed -i \ - -e 's|^\(LUA_PKGNAMES\)=.*|\1="luajit"|' \ - configure || die - fi - ./configure \ - --enable-standalone-module \ - $(use_enable pcre-jit) \ - $(use_with nginx_modules_http_lua lua) || die "configure failed for mod_security" - fi - - cd "${S}" - - local myconf= http_enabled= mail_enabled= - - use aio && myconf+=" --with-file-aio --with-aio_module" - use debug && myconf+=" --with-debug" - use ipv6 && myconf+=" --with-ipv6" - use libatomic && myconf+=" --with-libatomic" - use pcre && myconf+=" --with-pcre" - use pcre-jit && myconf+=" --with-pcre-jit" - - # HTTP modules - for mod in $NGINX_MODULES_STD; do - if use nginx_modules_http_${mod}; then - http_enabled=1 - else - myconf+=" --without-http_${mod}_module" - fi - done - - for mod in $NGINX_MODULES_OPT; do - if use nginx_modules_http_${mod}; then - http_enabled=1 - myconf+=" --with-http_${mod}_module" - fi - done - - if use nginx_modules_http_fastcgi; then - myconf+=" --with-http_realip_module" - fi - - # third-party modules - if use nginx_modules_http_upload_progress; then - http_enabled=1 - myconf+=" --add-module=${HTTP_UPLOAD_PROGRESS_MODULE_WD}" - fi - - if use nginx_modules_http_headers_more; then - http_enabled=1 - myconf+=" --add-module=${HTTP_HEADERS_MORE_MODULE_WD}" - fi - - if use nginx_modules_http_cache_purge; then - http_enabled=1 - myconf+=" --add-module=${HTTP_CACHE_PURGE_MODULE_WD}" - fi - - if use nginx_modules_http_slowfs_cache; then - http_enabled=1 - myconf+=" --add-module=${HTTP_SLOWFS_CACHE_MODULE_WD}" - fi - - if use nginx_modules_http_fancyindex; then - http_enabled=1 - myconf+=" --add-module=${HTTP_FANCYINDEX_MODULE_WD}" - fi - - if use nginx_modules_http_lua; then - http_enabled=1 - if use luajit; then - export LUAJIT_LIB=$(pkg-config --variable libdir luajit) - export LUAJIT_INC=$(pkg-config --variable includedir luajit) - else - export LUA_LIB=$(pkg-config --variable libdir lua) - export LUA_INC=$(pkg-config --variable includedir lua) - fi - myconf+=" --add-module=${DEVEL_KIT_MODULE_WD}" - myconf+=" --add-module=${HTTP_LUA_MODULE_WD}" - fi - - if use nginx_modules_http_auth_pam; then - http_enabled=1 - myconf+=" --add-module=${HTTP_AUTH_PAM_MODULE_WD}" - fi - - if use nginx_modules_http_upstream_check; then - http_enabled=1 - myconf+=" --add-module=${HTTP_UPSTREAM_CHECK_MODULE_WD}" - fi - - if use nginx_modules_http_metrics; then - http_enabled=1 - myconf+=" --add-module=${HTTP_METRICS_MODULE_WD}" - fi - - if use nginx_modules_http_naxsi ; then - http_enabled=1 - myconf+=" --add-module=${HTTP_NAXSI_MODULE_WD}" - fi - - if use rtmp ; then - http_enabled=1 - myconf+=" --add-module=${RTMP_MODULE_WD}" - fi - - if use nginx_modules_http_dav_ext ; then - http_enabled=1 - myconf+=" --add-module=${HTTP_DAV_EXT_MODULE_WD}" - fi - - if use nginx_modules_http_echo ; then - http_enabled=1 - myconf+=" --add-module=${HTTP_ECHO_MODULE_WD}" - fi - - if use nginx_modules_http_security ; then - http_enabled=1 - myconf+=" --add-module=${HTTP_SECURITY_MODULE_WD}/nginx/modsecurity" - fi - - if use nginx_modules_http_push_stream ; then - http_enabled=1 - myconf+=" --add-module=${HTTP_PUSH_STREAM_MODULE_WD}" - fi - - if use nginx_modules_http_sticky ; then - http_enabled=1 - myconf+=" --add-module=${HTTP_STICKY_MODULE_WD}" - fi - - if use nginx_modules_http_mogilefs ; then - http_enabled=1 - myconf+=" --add-module=${HTTP_MOGILEFS_MODULE_WD}" - fi - - if use nginx_modules_http_xsltproc; then - http_enabled=1 - myconf+=" --add-module=${HTTP_XSLTPROC_MODULE_WD}" - fi - - if use http || use http-cache; then - http_enabled=1 - fi - - if [ $http_enabled ]; then - use http-cache || myconf+=" --without-http-cache" - use ssl && myconf+=" --with-http_ssl_module" - else - myconf+=" --without-http --without-http-cache" - fi - - # MAIL modules - for mod in $NGINX_MODULES_MAIL; do - if use nginx_modules_mail_${mod}; then - mail_enabled=1 - else - myconf+=" --without-mail_${mod}_module" - fi - done - - if [ $mail_enabled ]; then - myconf+=" --with-mail" - use ssl && myconf+=" --with-mail_ssl_module" - fi - - # custom modules - for mod in $NGINX_ADD_MODULES; do - myconf+=" --add-module=${mod}" - done - - # https://bugs.gentoo.org/286772 - export LANG=C LC_ALL=C - tc-export CC - - if ! use prefix; then - myconf+=" --user=${PN} --group=${PN}" - fi - - ./configure \ - --prefix="${EPREFIX}"/usr \ - --conf-path="${EPREFIX}"/etc/${PN}/${PN}.conf \ - --error-log-path="${EPREFIX}"/var/log/${PN}/error_log \ - --pid-path="${EPREFIX}"/run/${PN}.pid \ - --lock-path="${EPREFIX}"/run/lock/${PN}.lock \ - --with-cc-opt="-I${EROOT}usr/include" \ - --with-ld-opt="-L${EROOT}usr/$(get_libdir)" \ - --http-log-path="${EPREFIX}"/var/log/${PN}/access_log \ - --http-client-body-temp-path="${EPREFIX}${NGINX_HOME_TMP}"/client \ - --http-proxy-temp-path="${EPREFIX}${NGINX_HOME_TMP}"/proxy \ - --http-fastcgi-temp-path="${EPREFIX}${NGINX_HOME_TMP}"/fastcgi \ - --http-scgi-temp-path="${EPREFIX}${NGINX_HOME_TMP}"/scgi \ - --http-uwsgi-temp-path="${EPREFIX}${NGINX_HOME_TMP}"/uwsgi \ - ${myconf} || die "configure failed" - - # A purely cosmetic change that makes nginx -V more readable. This can be - # good if people outside the gentoo community would troubleshoot and - # question the users setup. - sed -i -e "s|${WORKDIR}|external_module|g" objs/ngx_auto_config.h || die -} - -src_compile() { - use nginx_modules_http_security && emake -C "${HTTP_SECURITY_MODULE_WD}" - - # https://bugs.gentoo.org/286772 - export LANG=C LC_ALL=C - emake LINK="${CC} ${LDFLAGS}" OTHERLDFLAGS="${LDFLAGS}" -} - -src_install() { - emake DESTDIR="${D%/}" install - - cp "${FILESDIR}"/nginx.conf "${ED}"etc/nginx/nginx.conf || die - - newinitd "${FILESDIR}"/nginx.initd-r2 nginx - - systemd_newunit "${FILESDIR}"/nginx.service-r1 nginx.service - - doman man/nginx.8 - dodoc CHANGES* README - - # just keepdir. do not copy the default htdocs files (bug #449136) - keepdir /var/www/localhost - rm -rf "${D}"usr/html || die - - # set up a list of directories to keep - local keepdir_list="${NGINX_HOME_TMP}"/client - local module - for module in proxy fastcgi scgi uwsgi; do - use nginx_modules_http_${module} && keepdir_list+=" ${NGINX_HOME_TMP}/${module}" - done - - keepdir /var/log/nginx ${keepdir_list} - - # this solves a problem with SELinux where nginx doesn't see the directories - # as root and tries to create them as nginx - fperms 0750 "${NGINX_HOME_TMP}" - fowners ${PN}:0 "${NGINX_HOME_TMP}" - - fperms 0700 /var/log/nginx ${keepdir_list} - fowners ${PN}:${PN} /var/log/nginx ${keepdir_list} - - # logrotate - insinto /etc/logrotate.d - newins "${FILESDIR}"/nginx.logrotate-r1 nginx - - if use nginx_modules_http_perl; then - cd "${S}"/objs/src/http/modules/perl/ - emake DESTDIR="${D}" INSTALLDIRS=vendor - perl_delete_localpod - fi - - if use nginx_modules_http_cache_purge; then - docinto ${HTTP_CACHE_PURGE_MODULE_P} - dodoc "${HTTP_CACHE_PURGE_MODULE_WD}"/{CHANGES,README.md,TODO.md} - fi - - if use nginx_modules_http_slowfs_cache; then - docinto ${HTTP_SLOWFS_CACHE_MODULE_P} - dodoc "${HTTP_SLOWFS_CACHE_MODULE_WD}"/{CHANGES,README.md} - fi - - if use nginx_modules_http_fancyindex; then - docinto ${HTTP_FANCYINDEX_MODULE_P} - dodoc "${HTTP_FANCYINDEX_MODULE_WD}"/README.rst - fi - - if use nginx_modules_http_lua; then - docinto ${HTTP_LUA_MODULE_P} - dodoc "${HTTP_LUA_MODULE_WD}"/{Changes,README.markdown} - fi - - if use nginx_modules_http_auth_pam; then - docinto ${HTTP_AUTH_PAM_MODULE_P} - dodoc "${HTTP_AUTH_PAM_MODULE_WD}"/{README.md,ChangeLog} - fi - - if use nginx_modules_http_upstream_check; then - docinto ${HTTP_UPSTREAM_CHECK_MODULE_P} - dodoc "${HTTP_UPSTREAM_CHECK_MODULE_WD}"/{README,CHANGES} - fi - -# README.md is still empty -# if use nginx_modules_http_metrics; then -# docinto ${HTTP_METRICS_MODULE_P} -# dodoc "${HTTP_METRICS_MODULE_WD}"/README.md -# fi - - if use nginx_modules_http_naxsi; then - insinto /etc/nginx - doins "${HTTP_NAXSI_MODULE_WD}"/../naxsi_config/naxsi_core.rules - fi - - if use rtmp; then - docinto ${RTMP_MODULE_P} - dodoc "${RTMP_MODULE_WD}"/{AUTHORS,README.md,stat.xsl} - fi - - if use nginx_modules_http_dav_ext; then - docinto ${HTTP_DAV_EXT_MODULE_P} - dodoc "${HTTP_DAV_EXT_MODULE_WD}"/README - fi - - if use nginx_modules_http_echo; then - docinto ${HTTP_ECHO_MODULE_P} - dodoc "${HTTP_ECHO_MODULE_WD}"/{README.markdown,doc/HttpEchoModule.wiki} - fi - - if use nginx_modules_http_security; then - docinto ${HTTP_SECURITY_MODULE_P} - dodoc "${HTTP_SECURITY_MODULE_WD}"/{CHANGES,README.TXT,authors.txt} - fi - - if use nginx_modules_http_push_stream; then - docinto ${HTTP_PUSH_STREAM_MODULE_P} - dodoc "${HTTP_PUSH_STREAM_MODULE_WD}"/{AUTHORS,CHANGELOG.textile,README.textile} - fi - - if use nginx_modules_http_sticky; then - docinto ${HTTP_STICKY_MODULE_P} - dodoc "${HTTP_STICKY_MODULE_WD}"/{README.md,Changelog.txt,docs/sticky.pdf} - fi -} - -pkg_postinst() { - if use ssl; then - if [ ! -f "${EROOT}"etc/ssl/${PN}/${PN}.key ]; then - install_cert /etc/ssl/${PN}/${PN} - use prefix || chown ${PN}:${PN} "${EROOT}"etc/ssl/${PN}/${PN}.{crt,csr,key,pem} - fi - fi - - if use nginx_modules_http_lua && use nginx_modules_http_spdy; then - ewarn "Lua 3rd party module author warns against using ${P} with" - ewarn "NGINX_MODULES_HTTP=\"lua spdy\". For more info, see http://git.io/OldLsg" - fi - - # This is the proper fix for bug #458726/#469094, resp. CVE-2013-0337 for - # existing installations - local fix_perms=0 - - for rv in ${REPLACING_VERSIONS} ; do - version_compare ${rv} 1.4.1-r2 - [[ $? -eq 1 ]] && fix_perms=1 - done - - if [[ $fix_perms -eq 1 ]] ; then - ewarn "To fix a security bug (CVE-2013-0337, bug #458726) had the following" - ewarn "directories the world-readable bit removed (if set):" - ewarn " ${EPREFIX}/var/log/nginx" - ewarn " ${EPREFIX}${NGINX_HOME_TMP}/{,client,proxy,fastcgi,scgi,uwsgi}" - ewarn "Check if this is correct for your setup before restarting nginx!" - ewarn "This is a one-time change and will not happen on subsequent updates." - ewarn "Furthermore nginx' temp directories got moved to ${NGINX_HOME_TMP}" - chmod -f o-rwx "${EPREFIX}"/var/log/nginx "${EPREFIX}${NGINX_HOME_TMP}"/{,client,proxy,fastcgi,scgi,uwsgi} - fi - - # If the nginx user can't change into or read the dir, display a warning. - # If su is not available we display the warning nevertheless since we can't check properly - su -s /bin/sh -c 'cd /var/log/nginx/ && ls' nginx >&/dev/null - if [ $? -ne 0 ] ; then - ewarn "Please make sure that the nginx user or group has at least" - ewarn "'rx' permissions on /var/log/nginx (default on a fresh install)" - ewarn "Otherwise you end up with empty log files after a logrotate." - fi -} |