diff options
-rw-r--r-- | www-servers/nginx/ChangeLog | 10 | ||||
-rw-r--r-- | www-servers/nginx/Manifest | 33 | ||||
-rw-r--r-- | www-servers/nginx/files/check_1.7.2+.patch | 201 | ||||
-rw-r--r-- | www-servers/nginx/files/nginx.logrotate-r1 | 12 | ||||
-rw-r--r-- | www-servers/nginx/nginx-1.7.2.ebuild | 646 |
5 files changed, 900 insertions, 2 deletions
diff --git a/www-servers/nginx/ChangeLog b/www-servers/nginx/ChangeLog index 4c7fe0054171..bfaa6658bb00 100644 --- a/www-servers/nginx/ChangeLog +++ b/www-servers/nginx/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for www-servers/nginx # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/ChangeLog,v 1.381 2014/04/15 06:20:11 dev-zero Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/ChangeLog,v 1.382 2014/06/19 09:52:25 dev-zero Exp $ + +*nginx-1.7.2 (19 Jun 2014) + + 19 Jun 2014; Tiziano Müller <dev-zero@gentoo.org> +files/check_1.7.2+.patch, + +files/nginx.logrotate-r1, +nginx-1.7.2.ebuild: + Version bump (bug #508810), including fixes for bugs #508650 (delaycompress + for logrotate) and #510040 (use /usr/$(get_libdir)). Thanks to jbergstroem for + providing the bump, testing and patching. *nginx-1.5.13 (15 Apr 2014) *nginx-1.4.7-r1 (15 Apr 2014) diff --git a/www-servers/nginx/Manifest b/www-servers/nginx/Manifest index 55455cece4a9..c684ff160d66 100644 --- a/www-servers/nginx/Manifest +++ b/www-servers/nginx/Manifest @@ -1,30 +1,41 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +AUX check_1.7.2+.patch 6822 SHA256 e90d8d25d35c2315e3008c60954c4e57aed48d1eb9cab91466356d4967bc46ae SHA512 2857b3e2ae058601e7a1af9b6e7f41e01d4c47ec442df89c3dc407cf9fb6867ab126081547cf9336ccdc40a2a15ea8ab3ed024376d9fbb628432fa3057064440 WHIRLPOOL a96e88f5ff0e3a22745b662c79ed6c15e42ebe121e74f294f17f767e18f77dbecc6c6c105ea13c47d2a298a504115bbd1c9bed4189de2677485fd0eda5108ec8 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.logrotate-r1 376 SHA256 3de8e7c155202760ce381e4cc08052195a51e267ab7f9563fe20be00fbc3c21a SHA512 24684a94ea5f897079626ea1c60ef518bf04c234cfa7116a0dc0334d3f19fe3ada47661aa1d7bd07216dda3d20413147921c98fa5d9794ba2da6affbbd8c4cbf WHIRLPOOL a31f401e4fb5804332f8a7daf4d50f0dc4a086cb4e75dc0e81fe9a328bb05fa38fef429270e81b256719a0bf7b849a0ccd8a05817e39bad26a40ee5823a0dcfc AUX nginx.service-r1 327 SHA256 17c404c5130115e3ebadb09e25cff0103b48ae7dbff2284fa690161fda7888ae SHA512 9b6bcf74df2f74ae6a2c255ebf2d826ea92ed9921b9995da6c9a0c5656e2863a2fe5293ef8a656fbd36298602cc88ffc5d7acfbbf143c23a78c9689d61b05df9 WHIRLPOOL 126c56732b8bd9948595727aa8c056c44df05f4c8e708b00c9de715a7260e4e120fd9e076672312b55c889ff4a3ca100ce696165a4eaf93d89e808e1e28653fa AUX upstream-check-1.5.13.patch 6799 SHA256 bb05f8962f436dca3e60af2d8bda73fba7fd0f2208fba978ff34e5c8043a9ac2 SHA512 2f1787db6e28951dfeddb09dc33e348ef67bf1b6fd759bd99b6ac861c547b81ab9332e8ca89fcbb8393ae833b37453789c49919345fda7b0fc30405c9af0132f WHIRLPOOL a7a021bba9fc46a9c47d8c0fad5c0c1ee6df3180e34850c23240010c7dc844dd834665f15d4707e955a87bdf03c96f2de9bbec3c2c09c2ef6555c43c3f24c0ab AUX upstream-check-1.5.8.patch 6647 SHA256 94d89406b4343dc7df49ba272b0cf1c59d205bb460cc91c4a3ca8b8aa7087bd2 SHA512 a16033f24299abbafd06af15ea68474de069a5319722ac8af9bfbda5fc3348dc23524af2fbe64c52eb5ba456a27632bc8b5d35a7b286016a87f590fdece446f5 WHIRLPOOL cd27701dc17f017c2b00375eda7f154ba2eb3879cc7220c6e1471f845d61e9a9259ddfc39438f7106448ac9757495a7f47622927c13077d5c79971015a5746ea DIST modsecurity-apache_2.7.7.tar.gz 1003835 SHA256 11e05cfa6b363c2844c6412a40ff16f0021e302152b38870fd1f2f44b204379b SHA512 859f72580b6acaae5db180f98ee32ad2cb0f3ef24321d0c2df20ddd9fcfbc6c09c98b672012dc4931a6fd14f3c21c38ed31ab8900940382fcb48b37f30005a7d WHIRLPOOL e70f09c6bf640733696e6c544b4e37702ab05b043bdf07266a081316620986e976d2dcf8c1552380e846132473718b3ae7f0cadd18953b08b22bef5de3a5b455 +DIST modsecurity-apache_2.8.0.tar.gz 3940435 SHA256 95de6ec30982e5bde7981929ba89be89488e9f237ee8c4236e064b074bbb6f28 SHA512 2620d9ee0c7e40e02b908af5be916d1588f2ba55b8718495b6a3654e868973c45e8f8e794bf28b4677eb8a2d96ba427ead6ae4b26e48014bcd2b2f02013ceeef WHIRLPOOL cd90488ca5a85292bae32685ce44bcb82f46d98194636ba68f47a860c648c6933766bd56a38143f7656725fb3bd359de17f1b5513447c6ee40dbad945559fe4d DIST nginx-1.4.7.tar.gz 769153 SHA256 23b8ff4a76817090678f91b0efbfcef59a93492f6612dc8370c44c1f1ce1b626 SHA512 219c23bb1216f2a65b56a989ea87bed00b50506f7faa726508ede59747d0dd2fb7f7636cc10704c08550fa7da79b3ce1bae8876a6aac97c6e2b4797129887af5 WHIRLPOOL c95b900d613e43ef3ed1ef7d593ec845d00b04469fd4fc68bfeb98e9a1e620a781704b02d757026a4c440d72a2b55cdf3fa89d59d19398af3dda715b3b62776d DIST nginx-1.5.13.tar.gz 802922 SHA256 7f3c66de04bfcee3c9e84ceed2e3d726bd1233d869bf3b7a7e5fb83946fe9baa SHA512 f0eb60474bda62662402a924262eda4eb83809011ce32f0a910675b20a61bfc0eaefef64f76503d4f00d5b85daf8c24a87e6c5baaa4ab5a912a5b60130766071 WHIRLPOOL 54311af05b224200f4a24688cfa4ae6cdaa1dedcc8f3a3395a4bf9f66be07762ba64908357a2805cfb77721773abc572e87c63854febb5a9b00add54eb7f4d18 +DIST nginx-1.7.2.tar.gz 814079 SHA256 693508fcad31c6b64b69edf6839299eb4e4fe44dcb145e75deb90959cd880f75 SHA512 fd14a7354bd4144e0c66dfde39734ce79845927835bf9c32f0173b31d7ff7e55c20e99f2563bcab7cd96b11bf84bd16332dbdac2b3f591d99f9054c30fa37e39 WHIRLPOOL 8014d5cc2367bf497a0d40671c2f4547ec990d05f621292b1e4cac9da1534c468750918f6f39739e2d9d8f83eb027e2ffcc5e651388f3a76d115d643559dae55 DIST nginx_http_sticky_module_ng-1.2.3.tar.bz2 124043 SHA256 133009b012a68156e695f589c4b5f11a9934b3f3bb57750dc7c987c34120b6ed SHA512 338d7d3c2df6b056beafd3b95bb95a9f243e00e4c7c0dbec99ae9ea0bc601d5aa33dca272e65136585b84d3fedeac1414a273d9889cc996619f3ed8188b6e484 WHIRLPOOL b0b05a7a7f125b746489896e41a5a29b7f0d5dad011de4bfd1080593060292d7b5cd69e3fc6e1b9ea57e041399c44ca3330189a22a3747fa3b3e42985179828b +DIST nginx_http_sticky_module_ng-1.2.4.tar.bz2 123890 SHA256 fd6a3e871eb0b852ee6eec7a17dcc5375d97a9180fd679d89e9f14592c561e0d SHA512 3b439fa1fdbfc30f0486e9c243bdf86b7cffbe50c986a0e9eaabf24542587b3bdc7094ccdd7241bbd9b3ccccb67c4100d024391b6d4ac04a1c88a71a6a8dd5fb WHIRLPOOL 99864d089f7322e3f2d1479657a713d5101b331c02d8f2c027bd10574a803936e1fbe2811936a29a54a38f2344bf4241e1454836c73180b45ecf5b14cad63094 DIST ngx_devel_kit-0.2.19-r1.tar.gz 65029 SHA256 501f299abdb81b992a980bda182e5de5a4b2b3e275fbf72ee34dd7ae84c4b679 SHA512 915954acf16a27fbd3c93c154012d38e864f1d8dfd51cde401bba26e46eb3e3c778ec4c92f4f8ed83ac001e96cee72765554d0e4da06acf6a4be5184b23b3657 WHIRLPOOL 0ce6bffc0fe2cef28ee74f5862ca6d914ed18fdee18d900608ff2a9983594c707aab3e335957b79dd7e77ae1beed054d8f71965ca0f57fc5f1d41ac06106c5a4 DIST ngx_http_ajp_module-0.3.0.tar.gz 108832 SHA256 7b3791275ef87dde153679fa459e84784da09b26d35426d61f5477903584b254 SHA512 0934ea3c7dce23e2c55ab5c9210562fcf7b38ef19dc9ca7b80daee3cd983bb5f69743d34a041d35e7089dd6f6aa73363014d0b5f04ce0a5c0d94b4b0bb2dacab WHIRLPOOL 2ebe0db7887f22fb915372ef637214a0a40d7a0b694479b7da066671bd7c64aa152c5a615f368916311f5879840e083fb7a14555d304aea5e059c079aaa9c809 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.3.tar.gz 6260 SHA256 d428a0236c933779cb40ac8c91afb19d5c25a376dc3caab825bfd543e1ee530d SHA512 4763b1c5e417248d80acfacf20bfc5ba3e06675ff08e37703867daef99a400980b536941e4955c259432905bd11ab998bc2e2489a50350413c7bf37e18eafb74 WHIRLPOOL 5adbcea768fbb179249a03fe69304505ec09a1dafac848dd5e3cde96693c6fbcf6cf6c128ca116d02b36c1be0008807d9e86fee5b411e137b18b15a60291f29b DIST ngx_http_echo-0.52.tar.gz 63685 SHA256 ef04d8c2ca52c5e15361c2132ab4edfbdcde0458782639fb2d2e0624ec98db66 SHA512 7d605294be6027ff85682dd503d086f356e4624c84b1805b52a2fd68f92984afe4e5e5fb761596763a33256f7d66ed52ed7344f69d44dd6da53655b3e61c46e6 WHIRLPOOL 439ff870c3024cbea370cb0177cb38d30d8b5d859561585ef0c8e8ecfe65f405c02cf2c7b4ab0d4f45d9b6db2604b88c9b076deee37b5f4268ba03eb5a096ec8 +DIST ngx_http_echo-0.53.tar.gz 63820 SHA256 e43f902851f9bf596f7c134d782036af0b5d11ae2833b9480e53d46787f6daf4 SHA512 9426780e9ec613178bcb94daa105e27f54805b58aae8a8ee6f4eea61065fe8cec6a7712197d56c21403d60292d7ff9d52cccf452368ce2c65836300f9dcb0206 WHIRLPOOL 5001cd53c40ed3b12d43e977468e3a82caa90027b68b5a3f8e9be4e6ea0749216288daf8d30f0ae3e1df086349453d7f056f3c20fb5e6f6664e5b08f09774c87 DIST ngx_http_fancyindex-0.3.3.tar.gz 14254 SHA256 664042bdee3027ff651c9d5f5de1853164fe111b3195e46b53734858231991e8 SHA512 25b108ad42f3041294a4629c20b4fba410cb7c7cc6314146cd5d6be908a591cb41081c6d56f53d0dc232221eea78b967a2f3e9cb00ecf9150461500961a35799 WHIRLPOOL bc318e4b110adb5ddd1f1175b57f8b67b23ce023f584c4328304167192a054f9194c0cc6a15863c3727cf72f653eb8373d84e2bf8a183b14bb54aea34549c31f DIST ngx_http_headers_more-0.25-r1.tar.gz 27973 SHA256 1473f96f59dcec9d83ce65d691559993c1f80da8c0a4c0c0a30dae9f969eeabf SHA512 1a03e72ac5847b0eeada0ba1e5d5872399dd636db6aa54d10c9e53d96f4b5be4c785bf9117991d27ed558532fe9ce95d6f6c63f94f5b83350f5ea14a60c03aaf WHIRLPOOL 03a7e21814a05644bd1a459bc7b0b26dee0d4ec6ae81f4677f631fa1e4c52c679b651341d673319c6469adcf0ad8e29db58065f542e5907729a609edb6e633f4 DIST ngx_http_lua-0.9.6.tar.gz 478147 SHA256 2a7a4ffd30cac58277b78821faf7ad4d4c520759f5a7976b29d4ce918926ff91 SHA512 7161af5c8767f81ab02dbe449377127bb24e4e74bc5a1d01f66913baaff5af435e0a7dcc219837be3508acfa7dfb01ca106b25c70078bbe465c317ec0870eb79 WHIRLPOOL 964a23d40a9793d43b57d90ba645a52930ca1206cd07d50087e1b922d3b73fb0f23072dfbe88d75656de896176f48506bcd0d37ee34424d0c789a7e8a921670f DIST ngx_http_lua-0.9.7.tar.gz 478755 SHA256 c2a3a3240dd55274b00f7efc8f35598d77861663f01a720a28a52131b824b691 SHA512 cd4718d7e8a8bf260d18d6d5aa10d8a07072fea3e6efc04d6775f20681080937fb093dc555e9b9a1560074a19522a099a391149057c365c4cda20532c6219c56 WHIRLPOOL 820d8d4b1476364bffa1aae7a1e17628ba80239b6075e31f1613613bf1675b048ec99a158d390e94bfaf681844e997af178a7a81f940765655a7f23465d8de03 +DIST ngx_http_lua-0.9.8.tar.gz 484219 SHA256 b138ce7e2615f40e68c20dd248e26d88757a6206ca74f0fcdf10d6b06fe01514 SHA512 a0f1dd931156c3c32e63e17db94ff3b040cbf6d472e936c4184420239afdad90c0c1b01742b9f884489c4ddc5a4ac1d91ea4cf92268cb70982f321aa3dc878e9 WHIRLPOOL f569a7115418c3549fb913ff20e85b652e132082c4bdfdb09dceff9ad7c84dbfcea9d2f77414ddf7034217704180365e271e72b2554df7474acf580871eca9cc DIST ngx_http_naxsi-0.53-2.tar.gz 165690 SHA256 3eadff1d91995beae41b92733ade28091c2075a24ae37058f4d6aa90b0f4b660 SHA512 ada592f5e7f80a6d549cc435ee8720df01a788dc88cf27a7d55521bb7e4c66fa11b9ec28216aff7e13c70a5faf12cb745bd398b8a782ed4dea1eecd04b07e24c WHIRLPOOL c5b736dbe9bd66daf7e023f176a08f78225b61990781d7ad5a55d0f35391df7e05bf1b2623a6227e0355cf0204ef9eac1b9fa03aa62b3c0d6eac515f1213f270 DIST ngx_http_push-0.712.tar.gz 39860 SHA256 03eed6c4faf10d4c6226032c5f2632123c8333d9f95364a2a948a31677495719 SHA512 70501a2450e7b9f013255c9e3c074de5db7759221004901e32c2d14f1285ff22e273a51f92b9d1d4287879d375fed46217b58a30362e5efc27186366b184c7dd WHIRLPOOL b923b69e4bb7a191529e9d53d54443a710a7a27e7ae1fad2d42a2ad5989d328e1515f26a2c14ad75bcc5cd9b0de8c410f59b59300044d34c77219d0a806c94e7 DIST ngx_http_push_stream-0.4.0.tar.gz 165341 SHA256 4662cb5680e8dada55ada47b91ef563dd0322f94d775bf1c09e90d83d12c33a6 SHA512 45e68b75f6156df73b2c45d68a9b471560459eb608203b554ecbfcbef6923e4710c92aaefb6a7f8c1d90c7dbf31f4fcc59802d0e8f5c29418be52acad0073c02 WHIRLPOOL 15f2bfa1f9b56005559b8122ce047166e48f0428677401df0b41bcbb52daa6f176c4527b02e145aec9cd3d2fa48c12bb17bc0fce2d04bd7c223b4c5ca91253a0 DIST ngx_http_slowfs_cache-1.10.tar.gz 11809 SHA256 1e81453942e5b0877de1f1f06c56ae82918ea9818255cb935bcb673c95a758a1 SHA512 fbc9609a8d6913aeefe535f206b9e53477503f131934ead2ae5a6169e395af2f5fb54778704824d5eeb22a4ef40a11ebbcde580db62a631f70edcc2cfc06b15d WHIRLPOOL a02ed77422c47d9e476f8746186d19d632ddb953635d8d9dd51ff076225a78044286ee7e114478bc02e4b2a422e4fdc207154fc287629dd2cd7c3f9a634dad18 DIST ngx_http_upload_progress-0.9.0-r1.tar.gz 16990 SHA256 93e29b9b437a2e34713de54c2861ea51151624aca09f73f9f44d1caaff01a6b1 SHA512 a602b797f1a928c72752edf44629e48d5b8ab3c979ea0996645a978ba898b2a11c8b12bf09bd2282c4b1503bb8caaba4e4fbf357d644fbc5744c9e7264d07519 WHIRLPOOL 6b3f9feb1a7d2a4bd2f80dd20748ee5918e187e7b026c53ed9bc189696b90521bb5beabce9e00936c5bbf625cc73ccf131d8a9c219d4f399d8ae2c44ba378ebc +DIST ngx_http_upload_progress-0.9.1-r1.tar.gz 17166 SHA256 99ec072cca35cd7791e77c40a8ded41a7a8c1111e057be26e55fba2fdf105f43 SHA512 6c1e3776402b6e2cda50d9c48c4b578a85feffe15891c075443f6d9c7b9e2414e0614b50a8f417ddda9faf5f719957c77ade519c88b48caec970fc51fe12f0d1 WHIRLPOOL 12970d0f75ee3f0d8a97c4948b97fca2bd707a93e4e578c0e2ac0d18991986e620dd6b15c2ab5680ff726c0490671e3bc5e1ee6109baf81877d8baa6a5357825 DIST ngx_http_upstream_check-0.1.9.tar.gz 116307 SHA256 b3bb240fb236ba9ae3e807de0f69aa0804d100496c1063a523b29a184e438562 SHA512 b50c15aa311e38101d9b4f6178684a43abcfa66d0483dbf62b3dc5b595d85f59b52a4f564a5f35c54966042074598fef0fc59635ea38c064ec0e8921d9c3229d WHIRLPOOL f878e4833d445a75076455aba34f85a23c0377d922d9ff3d542f887379730e127e969fe3108cd476279d7ff1aa396f686e9e7b8594fb38eb2ea36d3d928602e6 DIST ngx_metrics-0.1.1.tar.gz 2964 SHA256 1c62ebb31e3caafad91720962770b0e7a4287f195520cf12471c262ac19b154e SHA512 d36a8fb0104c83b6b564e03b351aa750cab08650264c74d6f786af357bfb7006b531a93270dd961896ea8dafe27e5db8548ede714c5f52c4742876bc73af4b5e WHIRLPOOL 2796f5a97e76dfcc91133240e8e90ba493f0356f781a173d8cacdd09eba64b75ef531db398c0566fda395124700de8c991b771433e376ca0d5898c2ea6f82868 DIST ngx_rtmp-1.1.3.tar.gz 516880 SHA256 196278a629dc3bfd4a281730aeb016ce52cbf9960af10b582ec869fad6142788 SHA512 cd89417cf97f94ede594929089bb6d628fb40fc6393f8e159a0de298ab3d3bbf53dd0329e2e52658ba2c7701d6fd016116c8d825cae06a037f301a98cd08e961 WHIRLPOOL c1137f45f81e3a6855f6b672d05c6456f3ce25534a63a07ffbc91d3fb952c495560986d5cac46af7e1081d027d76b615594ffb001378e9c1579bd7a73595b0eb @@ -33,5 +44,25 @@ DIST ngx_syslog-165affd9741f0e30c4c8225da5e487d33832aca3.tar.gz 91535 SHA256 6fb EBUILD nginx-1.4.7-r1.ebuild 23960 SHA256 e7ae5fcbd110b35e2d1ceff56ce0b447050a95cfbcba8e27aa11d45934a14eb2 SHA512 e8a059e629de8db13c7b0b35719214278434c781d93ddab153bc71f824e884a053deb45be67fd768a41db8dd1a2df0f6b93b576d6e738a571c676a5d8b1a0f87 WHIRLPOOL c583667cb08fe538b6257b81616c4f906e40952569c1f2c95b39a5d61eb253ea04fb5f9c58137f529e623de0d0ec5720397ca3a6bdde0bb8955fb9b4f64a5ce3 EBUILD nginx-1.4.7.ebuild 24022 SHA256 a8f8812ee641a1c826ab8590d1f717d88832e678e1bb4cb447c8615e50dd2ed6 SHA512 58df8cee1a8a74fc14d7fd3064d1a1d901197d5d8cf3580dbf3dd8eec45fd98e5f38b707c08579042bcdf8215d6ab6c25b0083849caacdd66abe020efad5b28d WHIRLPOOL fe430a73d4583b6a0a2886fbce5fc45a6fa0add02b23760ea8c454e5739fb5ebf789ae2e5337d8d28398f1e28e0c3e46cc34eea8eaa646bbfe39413d43182424 EBUILD nginx-1.5.13.ebuild 24110 SHA256 1997c4acf20fbd3704718a6ce140b8deaff916975695cb35905c9a713b8b4712 SHA512 ec8eeed9983165692cecb753877ebcd0407c5bca223808cf56ea0e820ba492004662fb7f2377a705afe7bbba4805e5eb90a7bc4afdb6a646e4c81cdf38abc9cd WHIRLPOOL 8f8309e368da562a17abed95ae455966269635efcff66e2bb107058275660b00eab3e92d7734521ac8d659d9d8f69175877783ae7e856ba1dce88bb84c02fd72 -MISC ChangeLog 64478 SHA256 57a6d8975065e4c421fc21d94c2fdf027dd500b6f89a4429234e8dec66e617a6 SHA512 58b6d2c583e21f17f9f331463bcbdebdc1b32a7fe0a1169568e4869ac377f9ca18685d1ddd76a0520b5253aa76ac854beecb9219c79a5cba2bd5040ecc6afa03 WHIRLPOOL 38782993651ed905dd11b730ba49ef9f64ab208cfeaa098d95b725580fb00da85570ced8d3e0657320bb3b6ea715db0e739e253f80dbf88e9a64ff6ff48656c5 +EBUILD nginx-1.7.2.ebuild 24033 SHA256 9291d9469d6f1650e88e635b7a7d03ec03a7dff9e9bf31bab1138176e2947335 SHA512 08b9faf8e53b3ccaa50e4c059af8350a5633d55ab2ebd29da912d7264b9ebd790432b770d0e21c5c60d7f0861cb766bc175c0d9f14d2ac79930b9bc13754e1aa WHIRLPOOL 7796c22809c98848872eba94b063b9c6098df042e32aa65519b03c4d4d79a23681dc960762c1a9ebd09e03d0bb9beca0e279942d43d54719d0a05de3cde419b2 +MISC ChangeLog 64840 SHA256 5b998adac4eda0d10bd1d0e0144a3e6eb4a868dc34c8e636e9aaf29fbbe2d272 SHA512 253dce263ff7c3fc33c329bd8a14084abf0929617b593bf310786946ce6ca83e84cbe9a10024870a0cec3152326ac2a1582f474f877221d16b8874139dfa36b6 WHIRLPOOL a9a141a0f543eb15f9dc09de1d129772d8dd10bc2b1beeea866982ce4dccb7a962f84fb315a1fcb4c06dcbe2e498fa02920f7b4c52c4699127a3f054866a81f5 MISC metadata.xml 948 SHA256 f9e6f713fdc18c5eb10dabba40a517c5c5b13be6f11c1c9d2df903319c74e9b4 SHA512 12e91fef37ddd2cf63a34d5fe9e3eefcc06bcfb62e511cb84875efea9f0c9da086aab71f64afbbea149c7de96f0c7407aa1db11f37b9f2d8069c3e304b30b1d1 WHIRLPOOL 80626c8c5e0201b173cfe6936ca4d718c283b24f5fb9cb7dc795acf2d56cb1b4c63de82f7803dd1311ed2fb0131b70d1d9b291f34a5a400d352b29ef4d0b1a0f +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2.0.22 (GNU/Linux) + +iQJ8BAEBCABmBQJTorLaXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w +ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXRCMjM3NDkyMkQ0OTFBMUIyMzgzNkZBMkUx +QTVEMDIzOTc1QjA1ODNEAAoJEBpdAjl1sFg9KYYP/RpCafxrvdms/ZDOek43owJN +ldpT2TUBtCY7Xi+rcB0vcsGgNXSh28EUCqAmvIC50eAAHRfRP4VsqxNwipHMcwQf +fsDG/pTqAFvwfkbjCv82vZfcCsgKk0D6IwX1ZEprfuAkP31R90PpfwLQMtufZcS2 +9B5k7M8GBLU7KDrTHRnc3z24E7HoKuNpheJaihopg4wXOol+yyY3i8vCL4Emqc+R +u7OGXPSq0lBW+ShNMf8GO8ZfxAvk2bMOVx54/DScZq+us2sXqljKL1eDvRgMjLBL +0mdZ2Zaxn1E1BrOuH29AqXR1/0bvTIrpl83+VLiHoHP7ZesCds/qkeyGcbUOhxP8 +LsRKrVF6iKnqM7Vf0vMAznW0rCyyMxkIBgnMQayDokpkwaKDiVDiLeax/s2JsPfk +csTqfgSDZ6VPsWQ6rLnbo1xwhhL2Tn/JjckL6RjzIHXTMtuWvEvMbiIRqtJL+9wT +4r3uhbIlW3jG+srYPeJaIdveWcedx7szmdN/iCu9SRLIquFhYSB5h7Nm57Qcu5S+ +QuoSGpwNLyyFR8ojgZKjuJwqCoUM1n2UIjNagJc+9DmSke6ig/Mf+dozCkMmVeC0 +b1oX9NIIJ36HtfMkbSvd46UgLvNOIftC9DMVu1Lcm96JMA/zIq2pap8VJW38jXXR +ReZF7NTbwVT3TVIXF2yH +=KVKu +-----END PGP SIGNATURE----- diff --git a/www-servers/nginx/files/check_1.7.2+.patch b/www-servers/nginx/files/check_1.7.2+.patch new file mode 100644 index 000000000000..50405a5b84ae --- /dev/null +++ b/www-servers/nginx/files/check_1.7.2+.patch @@ -0,0 +1,201 @@ +commit 21116e1c0bba730ca59327ffba9320bc63f11462 +Author: Johan Bergström <bugs@bergstroem.nu> +Date: Thu Jun 19 10:17:22 2014 +1000 + + Add support for upstream_check to nginx 1.7.2 + +diff --git src/http/modules/ngx_http_upstream_ip_hash_module.c src/http/modules/ngx_http_upstream_ip_hash_module.c +index 148d73a..be9e03d 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_UPSTREAM_CHECK_MODULE) ++#include "ngx_http_upstream_check_handler.h" ++#endif + + typedef struct { + /* the round robin data must be first */ +@@ -212,6 +215,15 @@ ngx_http_upstream_get_ip_hash_peer(ngx_peer_connection_t *pc, void *data) + goto next_try; + } + ++#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)) { ++ goto next_try; ++ } ++#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 dbef95d..14e9e40 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_UPSTREAM_CHECK_MODULE) ++#include "ngx_http_upstream_check_handler.h" ++#endif + + typedef struct { + ngx_uint_t *conns; +@@ -203,6 +206,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 +269,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 src/http/ngx_http_upstream_round_robin.c src/http/ngx_http_upstream_round_robin.c +index 37c835c..43ccdcf 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_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); +@@ -88,6 +91,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_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++; + } + } +@@ -144,6 +155,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_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++; + } + } +@@ -203,6 +223,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_UPSTREAM_CHECK_MODULE) ++ peers->peer[i].check_index = (ngx_uint_t) NGX_ERROR; ++#endif + } + + us->peer.data = peers; +@@ -312,7 +335,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_UPSTREAM_CHECK_MODULE) ++ peers->peer[0].check_index = (ngx_uint_t) NGX_ERROR; ++#endif + } else { + + for (i = 0; i < ur->naddrs; i++) { +@@ -352,6 +377,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_UPSTREAM_CHECK_MODULE) ++ peers->peer[i].check_index = (ngx_uint_t) NGX_ERROR; ++#endif + } + } + +@@ -411,6 +439,12 @@ ngx_http_upstream_get_round_robin_peer(ngx_peer_connection_t *pc, void *data) + goto failed; + } + ++#if (NGX_UPSTREAM_CHECK_MODULE) ++ if (ngx_http_check_peer_down(peer->check_index)) { ++ goto failed; ++ } ++#endif ++ + } else { + + /* there are several peers */ +@@ -508,6 +542,12 @@ ngx_http_upstream_get_peer(ngx_http_upstream_rr_peer_data_t *rrp) + 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 src/http/ngx_http_upstream_round_robin.h src/http/ngx_http_upstream_round_robin.h +index 9db82a6..2fedd46 100644 +--- src/http/ngx_http_upstream_round_robin.h ++++ src/http/ngx_http_upstream_round_robin.h +@@ -31,6 +31,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/files/nginx.logrotate-r1 b/www-servers/nginx/files/nginx.logrotate-r1 new file mode 100644 index 000000000000..4304074ce556 --- /dev/null +++ b/www-servers/nginx/files/nginx.logrotate-r1 @@ -0,0 +1,12 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/files/nginx.logrotate-r1,v 1.1 2014/06/19 09:52:24 dev-zero Exp $ + +/var/log/nginx/*_log { + missingok + delaycompress + sharedscripts + postrotate + test -r /run/nginx.pid && kill -USR1 `cat /run/nginx.pid` + endscript +} diff --git a/www-servers/nginx/nginx-1.7.2.ebuild b/www-servers/nginx/nginx-1.7.2.ebuild new file mode 100644 index 000000000000..828bb4aeaef3 --- /dev/null +++ b/www-servers/nginx/nginx-1.7.2.ebuild @@ -0,0 +1,646 @@ +# 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.7.2.ebuild,v 1.1 2014/06/19 09:52:25 dev-zero 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.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 (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.8" +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/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 (http://github.com/arut/nginx-rtmp-module, BSD license) +RTMP_MODULE_PV="1.1.4" +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.53" +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.8.0" +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}" + +# sticky-module (https://bitbucket.org/nginx-goodies/nginx-sticky-module-ng, BSD-2) +HTTP_STICKY_MODULE_PV="1.2.4" +HTTP_STICKY_MODULE_P="nginx_http_sticky_module_ng-${HTTP_STICKY_MODULE_PV}" +HTTP_STICKY_MODULE_URI="mirror://bitbucket/nginx-goodies/nginx-sticky-module-ng/get/${HTTP_STICKY_MODULE_PV}.tar.bz2" +HTTP_STICKY_MODULE_WD="${WORKDIR}/nginx-goodies-nginx-sticky-module-ng-c825ea7c5c91" + +# ajp-module (https://github.com/yaoweibin/nginx_ajp_module, BSD-2) +HTTP_AJP_MODULE_PV="0.3.0" +HTTP_AJP_MODULE_P="ngx_http_ajp_module-${HTTP_AJP_MODULE_PV}" +HTTP_AJP_MODULE_URI="https://github.com/yaoweibin/nginx_ajp_module/archive/v${HTTP_AJP_MODULE_PV}.tar.gz" +HTTP_AJP_MODULE_WD="${WORKDIR}/nginx_ajp_module-${HTTP_AJP_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_ajp? ( ${HTTP_AJP_MODULE_URI} -> ${HTTP_AJP_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 + http_sticky + http_ajp" + +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}"/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" + 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() { + # mod_security needs to generate nginx/modsecurity/config before including it + 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 + + 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 + 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_ajp ; then + http_enabled=1 + myconf+=" --add-module=${HTTP_AJP_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" +} + +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/ + 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 + + 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 + + if use nginx_modules_http_ajp; then + docinto ${HTTP_AJP_MODULE_P} + dodoc "${HTTP_AJP_MODULE_WD}"/README + 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 +} |