diff options
author | Jason Donenfeld <zx2c4@gentoo.org> | 2014-02-10 03:12:28 +0000 |
---|---|---|
committer | Jason Donenfeld <zx2c4@gentoo.org> | 2014-02-10 03:12:28 +0000 |
commit | 638888e28387e02aa69dcbb108e4d7e0c7cad6ec (patch) | |
tree | 69aaab438df5361293a5a580f6681db21e1664e3 /www-servers/nginx | |
parent | Add a comment explaining libusb dep. (diff) | |
download | historical-638888e28387e02aa69dcbb108e4d7e0c7cad6ec.tar.gz historical-638888e28387e02aa69dcbb108e4d7e0c7cad6ec.tar.bz2 historical-638888e28387e02aa69dcbb108e4d7e0c7cad6ec.zip |
Provisonal version bump.
Package-Manager: portage-2.2.8-r1/cvs/Linux x86_64
Manifest-Sign-Key: 0xA5DE03AE
Diffstat (limited to 'www-servers/nginx')
-rw-r--r-- | www-servers/nginx/ChangeLog | 10 | ||||
-rw-r--r-- | www-servers/nginx/Manifest | 31 | ||||
-rw-r--r-- | www-servers/nginx/files/upstream-check-1.5.8.patch | 207 | ||||
-rw-r--r-- | www-servers/nginx/nginx-1.5.10.ebuild | 609 |
4 files changed, 854 insertions, 3 deletions
diff --git a/www-servers/nginx/ChangeLog b/www-servers/nginx/ChangeLog index 18d831b247af..e6195eec1fce 100644 --- a/www-servers/nginx/ChangeLog +++ b/www-servers/nginx/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for www-servers/nginx -# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/ChangeLog,v 1.374 2013/11/21 13:41:17 dev-zero Exp $ +# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/ChangeLog,v 1.375 2014/02/10 03:12:24 zx2c4 Exp $ + +*nginx-1.5.10 (10 Feb 2014) + + 10 Feb 2014; Jason A. Donenfeld <zx2c4@gentoo.org> + +files/upstream-check-1.5.8.patch, +nginx-1.5.10.ebuild: + Provisonal version bump. *nginx-1.5.7-r1 (21 Nov 2013) diff --git a/www-servers/nginx/Manifest b/www-servers/nginx/Manifest index 08c990b550cf..4679b272236a 100644 --- a/www-servers/nginx/Manifest +++ b/www-servers/nginx/Manifest @@ -1,24 +1,34 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + AUX modsecurity-2.7.5-include-paths.patch 1018 SHA256 9a5ea83bf75268c432cf950cc557e99095c7ad8ad5e869f9a0c12693c89ccbff SHA512 99e05345425e4713ba46b8fb3c6af9e78bbf2cf048ddc928289a364fc55090232a07943dfaad5b32054df24051d47c9750efadde6cda66123018f9575bc01187 WHIRLPOOL 9e6a21243feb0b378126f76f39d284fc82b270dfe159c4d10ac88677af3e3e5fd15edf2d17ba69a1eb0b6911a83cd83eceb9e8a0fa57d16c10583f8c14402f4f 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.initd-r2 2005 SHA256 9d5fca09d0161446a5cec30a0694cdc0656469403a008920a52a190051218b36 SHA512 871f5e05d3a5e496708b49863917bc8fa163c7ca974261aaacdf2e9c4aa923582889da92bd23e0129915a1467efdd9befc9a6e50f9eb1d173cd1ec05508c6c1b WHIRLPOOL 4468188d830bd2d1587b3ae857640bb07e48e9d5d2b51b3ce1e6a11da62ccf226025c4e8d78e0b69b253aa9c5a663ea02b95980715a32c464fd4c74dd5656b96 AUX nginx.logrotate 356 SHA256 4d3c038104eaeb4cb012bd8547f9d3eb578df205ccd43884fbf72945accc6bd0 SHA512 c66f8307c24ed98e3135069b3ce6aaf7bbca864747cbf909eae65726ac71fd5f7f56d7ed963a6aedfcdb8a05a91d3988030281f4cad28735de90ae28a85bc245 WHIRLPOOL 95001d0b76a350ce9ce96bfb342a93c8110fbd174484489ac2a64c2f6c496a53d967d303a6cbbefa820ff4e93dcd2d5d968cee5b7d33a83445578b458b5d3c51 AUX nginx.service-r1 327 SHA256 17c404c5130115e3ebadb09e25cff0103b48ae7dbff2284fa690161fda7888ae SHA512 9b6bcf74df2f74ae6a2c255ebf2d826ea92ed9921b9995da6c9a0c5656e2863a2fe5293ef8a656fbd36298602cc88ffc5d7acfbbf143c23a78c9689d61b05df9 WHIRLPOOL 126c56732b8bd9948595727aa8c056c44df05f4c8e708b00c9de715a7260e4e120fd9e076672312b55c889ff4a3ca100ce696165a4eaf93d89e808e1e28653fa +AUX upstream-check-1.5.8.patch 6647 SHA256 94d89406b4343dc7df49ba272b0cf1c59d205bb460cc91c4a3ca8b8aa7087bd2 SHA512 a16033f24299abbafd06af15ea68474de069a5319722ac8af9bfbda5fc3348dc23524af2fbe64c52eb5ba456a27632bc8b5d35a7b286016a87f590fdece446f5 WHIRLPOOL cd27701dc17f017c2b00375eda7f154ba2eb3879cc7220c6e1471f845d61e9a9259ddfc39438f7106448ac9757495a7f47622927c13077d5c79971015a5746ea DIST modsecurity-apache_2.7.5.tar.gz 1045387 SHA256 9e907536278d8da80d3dbb29aeffe9c4ec37ce9b641035b2da64e993135647a2 SHA512 dd6d4b58c5abb7440d2b9a429a548485b5aebecf1859c93427bdcf30cdbc93c975e455f3f843cf82c4efdf2db06f6a43bf4db2bfdd84adabddeb5dabacedc141 WHIRLPOOL 4d71f3ae86ca1dda9d1547b140decde24ee5116733ecf86a0a95797e3ce9bf1e29cf42116a2a69b332132c3ad749fe5f18566bbe7dc6d60f47b378a0ef6d6cbc +DIST modsecurity-apache_2.7.7.tar.gz 1003835 SHA256 11e05cfa6b363c2844c6412a40ff16f0021e302152b38870fd1f2f44b204379b SHA512 859f72580b6acaae5db180f98ee32ad2cb0f3ef24321d0c2df20ddd9fcfbc6c09c98b672012dc4931a6fd14f3c21c38ed31ab8900940382fcb48b37f30005a7d WHIRLPOOL e70f09c6bf640733696e6c544b4e37702ab05b043bdf07266a081316620986e976d2dcf8c1552380e846132473718b3ae7f0cadd18953b08b22bef5de3a5b455 DIST nginx-1.4.4.tar.gz 768217 SHA256 7c989a58e5408c9593da0bebcd0e4ffc3d892d1316ba5042ddb0be5b0b4102b9 SHA512 6007d3a6eea17a49dd3b39f2520a4f00e8dee3feaa86c582d8f0ef81dd4c1e2992cbea3b5be10cdd0ff85a8b24381aa6114ebdbf77d29c91d946639752b5c867 WHIRLPOOL b40a7bd3107a9f5899e162218c2eee2bce83e6042e9d104337a700c1b3950d1eea6126c16870ec9132980fa0e27ae28ec4f93e960e37e85a08abbb63a54c6c19 +DIST nginx-1.5.10.tar.gz 798612 SHA256 1799c3111f71f08db0e1395f4c6f769c863c8e63f763a0b41b192126bc651c9e SHA512 04eeba5fe1e0ecb97c52a5e3d0d86b65794c52eacf712d0314929d31ab6dbb7a807eed234292d7eb4dd2d323ef4dc4b3e404472eba6439fb819675b3880db851 WHIRLPOOL 547292292ddc562760bdbeeb2a9b41c51777058f78b3071904f2e559493338b05367af63cea6284207a4dab7b2e990909578e32373ae1af191653b4275118cf7 DIST nginx-1.5.7.tar.gz 779985 SHA256 96a5ac866323e4fef502e774d098b445dd898e44cdaea6afa68a68ab5de2e7f1 SHA512 e84f24a70c3abe0371e69fd6e80094e774be0943754d61d9535db6a95a5cf9a2372de9b90e43c9990e576debd93d15132214ad6e71a9d1964a2b9c3229d2dc7e WHIRLPOOL 43a32b92b1865a8faeecdef3e237271724d8e28a19d40505aa13769d6b8559dfb5517197ab7d376980fd75996e25a962ea1592ff76058fdd9897157bf2e67092 DIST ngx_devel_kit-0.2.19-r1.tar.gz 65029 SHA256 501f299abdb81b992a980bda182e5de5a4b2b3e275fbf72ee34dd7ae84c4b679 SHA512 915954acf16a27fbd3c93c154012d38e864f1d8dfd51cde401bba26e46eb3e3c778ec4c92f4f8ed83ac001e96cee72765554d0e4da06acf6a4be5184b23b3657 WHIRLPOOL 0ce6bffc0fe2cef28ee74f5862ca6d914ed18fdee18d900608ff2a9983594c707aab3e335957b79dd7e77ae1beed054d8f71965ca0f57fc5f1d41ac06106c5a4 DIST ngx_http_auth_pam-1.3.tar.gz 6363 SHA256 199dff5d11fbb3b6ddf9c8a60cc141970125a3f8e7a06f245e3175e93ca947e3 SHA512 3c86f709397dfd3edbd98f729193cb7b61895777d02244f1cf255ba5e4cd8e7bcb5bf537bf3d1086a513e46f117fdcb7610d7085dead35f5d36f74b5b3864ef8 WHIRLPOOL fc5b42a6a1143e9d3845e1470caa7bd60cf8e5a01e0dd53925fbf76cba072add024d24e4f926d3d0b3e27eccf5faa839b05f2549144beac6ffc43614b7ca5b19 DIST ngx_http_cache_purge-2.1.tar.gz 10535 SHA256 424005af0c04e59ffa65a65e446081d4f95ee76a801a7555e001c67810bcb3b9 SHA512 1b70b2c35601949edd53d55922e81425aef0b2c486b071c2bcf53db7c5278e55966ffd2c9e32f599ee63e147a395e708d442515fe414f39b323d26722324db8b WHIRLPOOL f020841139988ae516969ffcd5bf7b2c264749fef5c20a5c8f0cca70f5eddcd3efcb3676bbe9a4550535de7b53fcd7326294fcae2a14dc6bf66d1ab77205b83f DIST ngx_http_dav_ext-0.0.2.tar.gz 6056 SHA256 603d961c15ba2633ee5ae1f13b80a5455dceee61071d1dab7d2ea91a0981585c SHA512 78178ed0cc8eeb257fd9ef104e99dfb825143acb7becd762f88b2398bab2457c2ea6484be789d4b0e30b72f7661e7490da19495654204248f457666a951e7e41 WHIRLPOOL 6a7182d6dd7296315bf4c02da78f5dfb0e96deee5a686045679ebfdfe3430a26ea110a0a0804dff21024ec57b0ef70b98b8ac13c5ddd9b0b6e72fc6ec56ef83b +DIST ngx_http_dav_ext-0.0.3.tar.gz 6260 SHA256 d428a0236c933779cb40ac8c91afb19d5c25a376dc3caab825bfd543e1ee530d SHA512 4763b1c5e417248d80acfacf20bfc5ba3e06675ff08e37703867daef99a400980b536941e4955c259432905bd11ab998bc2e2489a50350413c7bf37e18eafb74 WHIRLPOOL 5adbcea768fbb179249a03fe69304505ec09a1dafac848dd5e3cde96693c6fbcf6cf6c128ca116d02b36c1be0008807d9e86fee5b411e137b18b15a60291f29b DIST ngx_http_echo-0.48.tar.gz 74860 SHA256 c4b9eeec554f472632054243587ae89bfa79938a346c72cfe223429693354902 SHA512 d8be09d14f0849e569d2d3784de743beee3c7de2409f66a98d2f175e90f69b918221fbf888c0263aca83562b2cda9b6998adb571935be49009bb2a1e018fae43 WHIRLPOOL a1939283a0f626db44a682885f8c7b3269e585e08691a91f8b72d249095b5423cc61085f92ae78b3423a387ac02f5468f35551e1935862d4167f0d2f39153384 DIST ngx_http_echo-0.49.tar.gz 75881 SHA256 d1c95908b801d52bd4183b1feaa86c42b0676532321997316d923da373931fcf SHA512 5e323bfc225ce6d25f2b4ff817111763296fa8bf96ece95a4938f9778dfdcd9f8375cd567bed2e5b650b315f52433532d40ed610a5cd95fdad231ef920241616 WHIRLPOOL f5bb09a8d1eef17d1a12d6b3678b2197a28747fe50d9518f1c0bf0f59158b82571dbd823234d0dec04e39468f9bdc222827d11ae743a7c9532dceb172232b310 +DIST ngx_http_echo-0.51.tar.gz 63460 SHA256 6cb5b42a22681e2b434509382b33ae12a4fbe1524b64880281400a31beb9e4bd SHA512 cb12f8b0c9ff9c7f518b0efda7fc5a451c6ca3f13f1db1e9d6987ed56cb07c925ffd3622718f8100d9727a29093db1cf51798b33e74328f3c8c3c694583fca20 WHIRLPOOL dc6a24bf3a92b3cf87f5171a0bf9b5f4af02987316a1eb0fd973fd76e702fde2eb798e7bce5ec8925c0e691c3df0113b9e78e0f7db5f3bc4b74b34c378134b85 DIST ngx_http_fancyindex-0.3.2.tar.gz 13302 SHA256 c96d782bc77f5ba215abb486220f68cb5aa7451646fcc2d608adda655b21653a SHA512 a372ea6f4208c7b49c3f81f41e9a34bf574d7e7bd6c1452ae2f050c85fdd0d2892f8e41a51bb83947e516641d6ef8fedb554a7e2b60af0a40908dd57f0c9bb3b WHIRLPOOL 3db4decf29bc456b572bcd06782f7b3a20504680598a60f94b54d1db5449942784f027f7d4c7881ac7840cba2ca1799f1355eb8483dc9d19ea1e16e0818ffaec DIST ngx_http_fancyindex-0.3.3.tar.gz 14254 SHA256 664042bdee3027ff651c9d5f5de1853164fe111b3195e46b53734858231991e8 SHA512 25b108ad42f3041294a4629c20b4fba410cb7c7cc6314146cd5d6be908a591cb41081c6d56f53d0dc232221eea78b967a2f3e9cb00ecf9150461500961a35799 WHIRLPOOL bc318e4b110adb5ddd1f1175b57f8b67b23ce023f584c4328304167192a054f9194c0cc6a15863c3727cf72f653eb8373d84e2bf8a183b14bb54aea34549c31f DIST ngx_http_headers_more-0.22-r1.tar.gz 27214 SHA256 b8b70cbca5144f2c2999d12b332917131af6e7b91bc618c67a744f2e899fdf85 SHA512 69fcd232f50fe453cee76a4b0b016f22b32daae08296daa8f301b0dc9d8da9d567cf2d7545fa3d2a9dff397aabf9b7687eaa7a9cf851111ba7389f889566a324 WHIRLPOOL 1b04db389bbc79cd43adbfb6e66ca9a5f8cbc7c9801f74b960267ef15f0f334507bf1d2aaf0de12d82793ef0643fbfd0825979c9b9d36a3edf3cb056f633bbb3 DIST ngx_http_headers_more-0.23-r1.tar.gz 28934 SHA256 63aaa3bc02d48f90c0ce48ddd99ed8c0f07e60b2d60f01f110b2bc748367a291 SHA512 701edf4f0371f3ca6067f244531f22b7bf8085411cb82f61e42a323d7107e11e6587bc91add80f78bbb5698f9c3f0d655817e5c73ef1069bf13ff228c639570d WHIRLPOOL 5f156f7ed7f1d59a2c6608dd4b48d3f0ed3b0d8920bd71a7cbd1d6807943b8ebffcac4ba9d8186c3a0a90d975d10b27debd0fe38166bf037c873ce488589570e +DIST ngx_http_headers_more-0.25-r1.tar.gz 27973 SHA256 1473f96f59dcec9d83ce65d691559993c1f80da8c0a4c0c0a30dae9f969eeabf SHA512 1a03e72ac5847b0eeada0ba1e5d5872399dd636db6aa54d10c9e53d96f4b5be4c785bf9117991d27ed558532fe9ce95d6f6c63f94f5b83350f5ea14a60c03aaf WHIRLPOOL 03a7e21814a05644bd1a459bc7b0b26dee0d4ec6ae81f4677f631fa1e4c52c679b651341d673319c6469adcf0ad8e29db58065f542e5907729a609edb6e633f4 DIST ngx_http_lua-0.9.0.tar.gz 498215 SHA256 11aff39b0252b499308effc5208d8816c9f4248cacb6b31c446c19587667126b SHA512 116d441915cfa67d8d0cc643319dc88a1dc134fcab80705d4e5d1daafc15864289df7b53ee6ff030f04ba7e81cefec1885eaac032d059eb0475126d9b5a20d92 WHIRLPOOL 65bf6502bf4c566cd546cab2f06ae61f9eca95497b9fd7fd562c263c1bc1904e716b84c761ad571e8c737ac8a30cb47dbab18ccaf45ca642270023d6d482175f DIST ngx_http_lua-0.9.2.tar.gz 508264 SHA256 bc63e5eeae9e1375ead43fd9e9999976bf0bb3690142f6f89a3b190784d96b59 SHA512 2457359d218efc3f778688216ccf078a067267d7a294ccb7bbab8f2060ffb690dc4e7fecb589f6ec240ae76a2c2350054dac6a7e92f45b951437328aa02f56dc WHIRLPOOL 272e2cf9866ad1687db515722d0453df5724e341c7fd8f0b1331bd14e484217afc670176bab7875098dc85678cc82261abc38c6be21c29469307eef8fe1bb9d7 +DIST ngx_http_lua-0.9.5rc2.tar.gz 475175 SHA256 299e55837de8ab4169cfb6b6d859260379f80b774da824222783aad5f3567ef3 SHA512 58ee2c787e070b2daab180d813a37694db0cc5b8a3eedaec9ad80684d27f59ce07e34e83a8865784485df5db6b2ea238b5ea4faddd485cabf87e05f6af5465a1 WHIRLPOOL 09b4c0b3aeb18b5d56f5d16028056d385bb17ec92221be49f8fd6311d0e8466e08951ef543ce35676b8235d52152098b9bbf977c2a523f79d6b503cbb521db13 DIST ngx_http_naxsi-0.52-1.tar.gz 162044 SHA256 0f23b0f17f03591775e95294a115d609ad47e2874e5f01c4fed1ebb680ea07bc SHA512 e1d3b4b3284d5b3f44ec5888023e6853c06519f99f3de768d8420d50a8bd50ae4d77c2413e441caa5dedc420f28ab3413d79fe56fc9aee8636a9b20adea7be74 WHIRLPOOL b42c4dc99c2a0b670b4e06ee9b5a0eb1b38b96f670c04c56fa30f13b8d3263836b54ff641dc1effd0e461f0fb3e0b935f945c2467b27c83f80b8407a3b42f739 DIST ngx_http_naxsi-0.53-1.tar.gz 165627 SHA256 cde175f940cd2e8c595b95512642cd3f8ae6f3c4a2ee10c2fda214ffeb808274 SHA512 33e3a92242304f4e5900cb66915651f1c5ba78f40b27f41c1d81353390ef6baef5a6a03042441c200d4e489e70f251d782efe0644b916a2ff34833be8a8fd385 WHIRLPOOL 67c5cb73cc04381bf874222f9aa20d8ec063f074d139b8fa882bc9a84526f5d192f066b621a429086f93b1a55ea235e98623dfcb69952451dd870bcf316bd928 DIST ngx_http_push-0.692.tar.gz 29119 SHA256 64868708071aa21dbc4c7a07d149dd6ec9108fb7eaf2aad5ad069406151f17fe SHA512 79821cacf5db4b1309e3f1c8d6980f83b1093dd3f291db5298bfdeb0d889fc0629625dcf3135d1cf7554b43308ef7172a4f40596928ab3069426801177ed3c1c WHIRLPOOL f1c846a4aa2d4491ee3063266d27b9854d860bbba44ef6e2ea33ebe1f570177e836c593a84cc2c7e22357bd43411f9d5b55852ee96a98dccdc18e7edf6768c95 @@ -30,8 +40,27 @@ DIST ngx_http_upstream_check-0.1.9.tar.gz 116307 SHA256 b3bb240fb236ba9ae3e807de DIST ngx_metrics-0.1.1.tar.gz 2964 SHA256 1c62ebb31e3caafad91720962770b0e7a4287f195520cf12471c262ac19b154e SHA512 d36a8fb0104c83b6b564e03b351aa750cab08650264c74d6f786af357bfb7006b531a93270dd961896ea8dafe27e5db8548ede714c5f52c4742876bc73af4b5e WHIRLPOOL 2796f5a97e76dfcc91133240e8e90ba493f0356f781a173d8cacdd09eba64b75ef531db398c0566fda395124700de8c991b771433e376ca0d5898c2ea6f82868 DIST ngx_rtmp-1.0.5.tar.gz 450227 SHA256 f3b560c0594cb3a600ca4676411105291c898e19f8fc277a74865f4d7e9fa509 SHA512 df351ab8fa26beb5b13e30798abfa6a70a1dd1e0bc8b554d2537970c22d505134f3b3c75acb133825fa2ef8e18aace757a4dbd3cae79dba723ae7f912ca080c5 WHIRLPOOL 74ea7f3bd512f0c9fd7975554ba54c2812e0e8f280c96b99224572ffe84be9ac297aa4fc2548669a6c356adc6f6deffc34f46239e9697acc4c146f459fb76b60 DIST ngx_rtmp-1.0.6.tar.gz 450498 SHA256 73517eb1c6bdd4e25fcf59d061dfe655b9bcd001c10eb2986344775309820408 SHA512 84d5d6a9a9cc4e71d970979bc97eeda034e53cf380edab4d3da8e2368011f5c0d538710c8cd4492224d1e1553c51dbf4b29d9c4d9d570509c7937cc82cddfe26 WHIRLPOOL 6fb7d7b75c5f83fc87e381a5911629ba6676a9e8a487c4723be829fd798163f5bd8a7a2fda64ff8136d268d953d88782c2f6f70ab1fc39bc57b02a509d75ca49 +DIST ngx_rtmp-1.1.2.tar.gz 516500 SHA256 726d294b69db7a09bf537c4ae5b04932dc9551fd8caf13f95936a9f973f106a1 SHA512 80622ece6ef7b2d15efb00e48594a525a5a8a729a7415336e5204a590529ca53c92d998605801d975d73d632596c4d3b633c428715692f145b6a19db5d95cace WHIRLPOOL a0b1ddcab27661888e8c382cc642624a2a6fbc680bc064f240a9e7f62072ca3a25655dec8510820876ab8fdf34ed4c4783118e9a9b7ea0488d397e0660e52633 DIST ngx_syslog-165affd9741f0e30c4c8225da5e487d33832aca3.tar.gz 91535 SHA256 6fbdf03118605464aef0b069a852cf40ef25d225cda379b66c468c4108e18a1e SHA512 f0b526b30cf45e842a9bb4d26d5dcfa7c34c92778ce4c930a87882a65c42d1e8e6c94f65e280a803b39f333eadb74a862b4b4234db6d496385ac16731cc9a02a WHIRLPOOL 69b147effa0914dd3c6f03aec4e9d0c2859b48646a850317ae43956619b19e72bb06ec091ee39e04a68590d3c0747baed7cdd4a6c15aee0adf83f9df65050e4a EBUILD nginx-1.4.4.ebuild 23951 SHA256 974f3b52c70816bca4829cc6f2e31cd59c126e47a0aad977d7586ef206d18436 SHA512 7fe85bde9dcef4ac15b040aade870b1ed07ccd3135064ad7abf1e0a0bfb01eebe5d9d983e252c4db3d7f8a87b45044bb765ac637f6e0ae9c57dff2e5220b636b WHIRLPOOL fa134360a04ed1f2ca81fe404d61eee283e21ea03d798f3266ed5be882cf4f5b77e96fde042f44a5741d2fd53903eeec7270cf5312d02e5cd79a6f116b1f3209 +EBUILD nginx-1.5.10.ebuild 22598 SHA256 156ae868ae5e4ad0e7e113bc9ed569b45b4ce05a2e42255d24617f860cd35966 SHA512 f37874417cbe49c19904dc6232afb7e3125aa10b3d2ab8868dcaf4823c92e637c0b02b22d6d4a6719efdb598f7b27eccb93a907f6c52a9005b16a316ad79e456 WHIRLPOOL 49fb3dce142bbca75ab7449397810831d9106d521b109fd7cbc21b538c5367e428b63997fd3b5ec1ed4a8c192d3a24450168594814fabf48bd32e55fdbc70935 EBUILD nginx-1.5.7-r1.ebuild 22618 SHA256 5cac7d5cc8755df7944f95f4b204852bea3d8ec3f1abc68cdac200667b0dde86 SHA512 d990871f5e1e9e903012892641164a21138b3231be1d80173cf11a2b5edcd897274ed9f2ab90c0a8c6f0f769ad9884a9d87761aeaaba6e3999b10417a19426c8 WHIRLPOOL 54418ba7835ebc95b2d98e54ebf687a4820a160016afe0c344f34b703d2205acea045abcb1eef168f982957e0be68abedb9ae7d613ade6c486eae101c2b2b4a2 -MISC ChangeLog 63081 SHA256 c5b21fa84a28880fdd7af7b10204564028e80be117136c0c9ec4c4abce3fc017 SHA512 4f70c57e9951c83388b57671542dd416968df0df04b139ff8bedbdb4596ccec9bb9d7c5f7cf13e541b0e1b607bf76b270ab066b490a66a42cb997913e67b669c WHIRLPOOL 9b4c28b014ddd19c4b62d2d709db6ef08244bae56bd0949ee6dfe88bc98f6f1172e90afd714f7f7e6d1bd568b7d2a0557284b98fe801c562ed3fc9cbb0d5d1dd +MISC ChangeLog 63247 SHA256 fd8df01890a41ac21c3b15171e07b0e54ee859f76801006e88fe209d72a8afd0 SHA512 5b2ab61a7cab0cdb5d10688049b7c72d6e78bbb24b31de0eac23efbc9311238542458102a3bcf347042d4cb99e8ef6e04915d5b685266ca65e7c908f65db863c WHIRLPOOL f9be8ad4a1e9ede3ec1bb6f76e25df24050270c88dbbe29de20537a92a429670d1cdbca4cfeaa9d04165f928eba48de45b1eadc3d63c25d139634bdfd16f1ac3 MISC metadata.xml 948 SHA256 f9e6f713fdc18c5eb10dabba40a517c5c5b13be6f11c1c9d2df903319c74e9b4 SHA512 12e91fef37ddd2cf63a34d5fe9e3eefcc06bcfb62e511cb84875efea9f0c9da086aab71f64afbbea149c7de96f0c7407aa1db11f37b9f2d8069c3e304b30b1d1 WHIRLPOOL 80626c8c5e0201b173cfe6936ca4d718c283b24f5fb9cb7dc795acf2d56cb1b4c63de82f7803dd1311ed2fb0131b70d1d9b291f34a5a400d352b29ef4d0b1a0f +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2.0.22 (GNU/Linux) + +iQIcBAEBCAAGBQJS+EOfAAoJEEn8cBKl3gOuX/IP/0Nb7+5owLXCf4BldHb++JP0 +9Kkl5pMu2txiKdSLtaGPS/xLvg61rnSCOIe/3NCzvXzXU0Lwkz4yAn9ycyw2GE5L +3f9QKmhYHAkcjODjaUK12AQo0TpUXprCBAvhYksFgRXIWqytKWLGO8V1A53HaEEw +39MhhPWNboVMFjst0cOI1iua3nB5j+KBeGVnHFtYqOMyZLTXt2Kra7Gj4mc2bIV7 +QReB0YZyuGraq3rhECIbEw7kwCenu/CganGZ4yullIRD/5co59d/ht4OTjEixCaw +05fAPX8IQPbVZjxEcRP8dTXZx/dh1umLQNpOpz+LCSqOvoli5O0L4qAyhk552qyo +WEgL3xmHp+sWdgZeQH8HKY0uXn9S1MDgO/9IyiPWGrGIXIZQ0Y4I6ZZHbkVfIm8T +09UattCrpe9jJxf026WDCPRDNZo55fO9QIUEa/lPwDNoWu4dprvRXdN5dWdVL0Ak +3hRygkhRfYjg0AtnCiO3JO4ncIj54ngUVss3C+2RdaY2l/9lgLHWhz/vxU85gY5t +Z0DN/31Pt/LWJ+mvvy0VVg67kAGqQYM1sT6rA49akPG9sF5j4ajjKTj8X/1J1cK1 +d+4Ee3fPDiFUN9Ex02NSHqQN3dWtIdBLXOKLN3JlxnhL4xLmh0eVbvtsqcXDzjUB +GLRET25eTA2k0Nse61UI +=0sSm +-----END PGP SIGNATURE----- diff --git a/www-servers/nginx/files/upstream-check-1.5.8.patch b/www-servers/nginx/files/upstream-check-1.5.8.patch new file mode 100644 index 000000000000..8b9d3ed6007f --- /dev/null +++ b/www-servers/nginx/files/upstream-check-1.5.8.patch @@ -0,0 +1,207 @@ +diff --git a/src/http/modules/ngx_http_upstream_ip_hash_module.c b/src/http/modules/ngx_http_upstream_ip_hash_module.c +index 89ccc2b..a552044 100644 +--- a/src/http/modules/ngx_http_upstream_ip_hash_module.c ++++ b/src/http/modules/ngx_http_upstream_ip_hash_module.c +@@ -9,6 +9,10 @@ + #include <ngx_core.h> + #include <ngx_http.h> + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++#include "ngx_http_upstream_check_handler.h" ++#endif ++ + + typedef struct { + /* the round robin data must be first */ +@@ -208,6 +212,12 @@ ngx_http_upstream_get_ip_hash_peer(ngx_peer_connection_t *pc, void *data) + + if (!peer->down) { + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ ngx_log_debug1(NGX_LOG_DEBUG_HTTP, pc->log, 0, ++ "get ip_hash peer, check_index: %ui", ++ peer->check_index); ++ if (!ngx_http_check_peer_down(peer->check_index)) { ++#endif + if (peer->max_fails == 0 || peer->fails < peer->max_fails) { + break; + } +@@ -216,6 +226,9 @@ ngx_http_upstream_get_ip_hash_peer(ngx_peer_connection_t *pc, void *data) + peer->checked = now; + break; + } ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ } ++#endif + } + + iphp->rrp.tried[n] |= m; +diff --git a/src/http/modules/ngx_http_upstream_least_conn_module.c b/src/http/modules/ngx_http_upstream_least_conn_module.c +index 21156ae..c57393d 100644 +--- a/src/http/modules/ngx_http_upstream_least_conn_module.c ++++ b/src/http/modules/ngx_http_upstream_least_conn_module.c +@@ -9,6 +9,10 @@ + #include <ngx_core.h> + #include <ngx_http.h> + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++#include "ngx_http_upstream_check_handler.h" ++#endif ++ + + typedef struct { + ngx_uint_t *conns; +@@ -203,6 +207,16 @@ ngx_http_upstream_get_least_conn_peer(ngx_peer_connection_t *pc, void *data) + continue; + } + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ ngx_log_debug1(NGX_LOG_DEBUG_HTTP, pc->log, 0, ++ "get least_conn peer, check_index: %ui", ++ peer->check_index); ++ ++ if (ngx_http_check_peer_down(peer->check_index)) { ++ continue; ++ } ++#endif ++ + if (peer->max_fails + && peer->fails >= peer->max_fails + && now - peer->checked <= peer->fail_timeout) +@@ -256,6 +270,16 @@ ngx_http_upstream_get_least_conn_peer(ngx_peer_connection_t *pc, void *data) + continue; + } + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ ngx_log_debug1(NGX_LOG_DEBUG_HTTP, pc->log, 0, ++ "get least_conn peer, check_index: %ui", ++ peer->check_index); ++ ++ if (ngx_http_check_peer_down(peer->check_index)) { ++ continue; ++ } ++#endif ++ + if (lcp->conns[i] * best->weight != lcp->conns[p] * peer->weight) { + continue; + } +diff --git a/src/http/ngx_http_upstream_round_robin.c b/src/http/ngx_http_upstream_round_robin.c +index 4b78cff..f077b46 100644 +--- a/src/http/ngx_http_upstream_round_robin.c ++++ b/src/http/ngx_http_upstream_round_robin.c +@@ -9,6 +9,9 @@ + #include <ngx_core.h> + #include <ngx_http.h> + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++#include "ngx_http_upstream_check_handler.h" ++#endif + + static ngx_http_upstream_rr_peer_t *ngx_http_upstream_get_peer( + ngx_http_upstream_rr_peer_data_t *rrp); +@@ -85,6 +88,16 @@ + peers->peer[n].max_fails = server[i].max_fails; + peers->peer[n].fail_timeout = server[i].fail_timeout; + peers->peer[n].down = server[i].down; ++ ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ if (!server[i].down) { ++ peers->peer[n].check_index = ++ ngx_http_check_add_peer(cf, us, &server[i].addrs[j]); ++ } ++ else { ++ peers->peer[n].check_index = (ngx_uint_t) NGX_ERROR; ++ } ++#endif + n++; + } + } +@@ -139,6 +152,17 @@ + backup->peer[n].max_fails = server[i].max_fails; + backup->peer[n].fail_timeout = server[i].fail_timeout; + backup->peer[n].down = server[i].down; ++ ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ if (!server[i].down) { ++ backup->peer[n].check_index = ++ ngx_http_check_add_peer(cf, us, &server[i].addrs[j]); ++ } ++ else { ++ backup->peer[n].check_index = (ngx_uint_t) NGX_ERROR; ++ } ++#endif ++ + n++; + } + } +@@ -196,6 +220,9 @@ + peers->peer[i].current_weight = 0; + peers->peer[i].max_fails = 1; + peers->peer[i].fail_timeout = 10; ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ peers->peer[i].check_index = (ngx_uint_t) NGX_ERROR; ++#endif + } + + us->peer.data = peers; +@@ -302,6 +329,9 @@ + peers->peer[0].current_weight = 0; + peers->peer[0].max_fails = 1; + peers->peer[0].fail_timeout = 10; ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ peers->peer[0].check_index = (ngx_uint_t) NGX_ERROR; ++#endif + + } else { + +@@ -342,6 +372,9 @@ + peers->peer[i].current_weight = 0; + peers->peer[i].max_fails = 1; + peers->peer[i].fail_timeout = 10; ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ peers->peer[i].check_index = (ngx_uint_t) NGX_ERROR; ++#endif + } + } + +@@ -399,6 +432,12 @@ + goto failed; + } + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ if (ngx_http_check_peer_down(peer->check_index)) { ++ goto failed; ++ } ++#endif ++ + } else { + + /* there are several peers */ +@@ -498,6 +537,12 @@ + continue; + } + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ if (ngx_http_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 a/src/http/ngx_http_upstream_round_robin.h b/src/http/ngx_http_upstream_round_robin.h +index 3f8cbf8..1613168 100644 +--- a/src/http/ngx_http_upstream_round_robin.h ++++ b/src/http/ngx_http_upstream_round_robin.h +@@ -30,6 +30,10 @@ typedef struct { + ngx_uint_t max_fails; + time_t fail_timeout; + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ ngx_uint_t check_index; ++#endif ++ + ngx_uint_t down; /* unsigned down:1; */ + + #if (NGX_HTTP_SSL) diff --git a/www-servers/nginx/nginx-1.5.10.ebuild b/www-servers/nginx/nginx-1.5.10.ebuild new file mode 100644 index 000000000000..08288fca472b --- /dev/null +++ b/www-servers/nginx/nginx-1.5.10.ebuild @@ -0,0 +1,609 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/nginx-1.5.10.ebuild,v 1.1 2014/02/10 03:12:24 zx2c4 Exp $ + +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.0" +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 (http://github.com/agentzh/headers-more-nginx-module, BSD license) +HTTP_HEADERS_MORE_MODULE_PV="0.25" +HTTP_HEADERS_MORE_MODULE_P="ngx_http_headers_more-${HTTP_HEADERS_MORE_MODULE_PV}-r1" +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.1" +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.3" +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/chaoslawful/lua-nginx-module, BSD license) +HTTP_LUA_MODULE_PV="0.9.5rc2" +HTTP_LUA_MODULE_P="ngx_http_lua-${HTTP_LUA_MODULE_PV}" +HTTP_LUA_MODULE_URI="https://github.com/chaoslawful/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.3" +HTTP_AUTH_PAM_MODULE_P="ngx_http_auth_pam-${HTTP_AUTH_PAM_MODULE_PV}" +HTTP_AUTH_PAM_MODULE_URI="http://web.iti.upv.es/~sto/nginx/ngx_http_auth_pam_module-${HTTP_AUTH_PAM_MODULE_PV}.tgz" +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.1.9" +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/madvertise/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-1" +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 (http://github.com/arut/nginx-rtmp-module, BSD license) +RTMP_MODULE_PV="1.1.2" +RTMP_MODULE_P="ngx_rtmp-${RTMP_MODULE_PV}" +RTMP_MODULE_URI="http://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 (http://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="http://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.51" +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.7.7" +HTTP_SECURITY_MODULE_P="modsecurity-apache_${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 (https://github.com/wandenberg/nginx-push-stream-module, GPL-3) +HTTP_PUSH_STREAM_MODULE_PV="0.4.0" +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}" + +inherit eutils ssl-cert toolchain-funcs perl-module flag-o-matic user systemd versionator + +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 )" + +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 ~ppc ~x86 ~amd64-fbsd ~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 xslt" +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" + +IUSE="aio debug +http +http-cache ipv6 libatomic +pcre pcre-jit rtmp selinux ssl +userland_GNU vim-syntax" + +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] ) + selinux? ( sec-policy/selinux-nginx ) + ssl? ( dev-libs/openssl ) + http-cache? ( userland_GNU? ( dev-libs/openssl ) ) + 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 ) ) + nginx_modules_http_spdy? ( >=dev-libs/openssl-1.0.1c ) + nginx_modules_http_xslt? ( dev-libs/libxml2 dev-libs/libxslt ) + nginx_modules_http_lua? ( || ( dev-lang/lua dev-lang/luajit ) ) + 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 )" +RDEPEND="${CDEPEND}" +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 )" + +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 +} + +src_prepare() { + epatch "${FILESDIR}/${PN}-1.4.1-fix-perl-install-path.patch" + + if use nginx_modules_http_upstream_check; then + epatch "${FILESDIR}"/upstream-check-1.5.8.patch + fi + + if use nginx_modules_http_security; then + cd "${HTTP_SECURITY_MODULE_WD}/nginx/modsecurity" + epatch "${FILESDIR}/modsecurity-${HTTP_SECURITY_MODULE_PV}-include-paths.patch" + cd - + 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 + + epatch_user +} + +src_configure() { + 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 + 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 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/lib" \ + --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" + + if use nginx_modules_http_security; then + cd "${HTTP_SECURITY_MODULE_WD}" + ./configure \ + --enable-standalone-module \ + $(use_enable pcre-jit) \ + $(use_with nginx_modules_http_lua lua) || die "configure failed for mod_security" + fi +} + +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 nginx + + if use nginx_modules_http_perl; then + cd "${S}"/objs/src/http/modules/perl/ + einstall DESTDIR="${D}" INSTALLDIRS=vendor + fixlocalpod + 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,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 +} + +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 +} |