diff options
author | Justin Lecher <jlec@gentoo.org> | 2012-10-15 05:22:59 +0000 |
---|---|---|
committer | Justin Lecher <jlec@gentoo.org> | 2012-10-15 05:22:59 +0000 |
commit | b0f7b0dbdff6cfea3df4156a601300a87c73ae41 (patch) | |
tree | 705c6c9b2ce33ff2eaf39217ec95740278152a29 /sys-fs/aufs3 | |
parent | x86 stable wrt #438080 (diff) | |
download | historical-b0f7b0dbdff6cfea3df4156a601300a87c73ae41.tar.gz historical-b0f7b0dbdff6cfea3df4156a601300a87c73ae41.tar.bz2 historical-b0f7b0dbdff6cfea3df4156a601300a87c73ae41.zip |
sys-fs/aufs3: Version Bump
Package-Manager: portage-2.2.0_alpha137/cvs/Linux x86_64
Diffstat (limited to 'sys-fs/aufs3')
-rw-r--r-- | sys-fs/aufs3/ChangeLog | 9 | ||||
-rw-r--r-- | sys-fs/aufs3/Manifest | 16 | ||||
-rw-r--r-- | sys-fs/aufs3/aufs3-3_p20121015.ebuild | 148 | ||||
-rw-r--r-- | sys-fs/aufs3/files/aufs3-base-6.patch | 70 | ||||
-rw-r--r-- | sys-fs/aufs3/files/aufs3-base-x-rcN.patch | 6 | ||||
-rw-r--r-- | sys-fs/aufs3/files/aufs3-standalone-6.patch | 276 | ||||
-rw-r--r-- | sys-fs/aufs3/files/aufs3-standalone-x-rcN.patch | 42 |
7 files changed, 536 insertions, 31 deletions
diff --git a/sys-fs/aufs3/ChangeLog b/sys-fs/aufs3/ChangeLog index 91a32e8a663c..fae8d32d6cac 100644 --- a/sys-fs/aufs3/ChangeLog +++ b/sys-fs/aufs3/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for sys-fs/aufs3 # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-fs/aufs3/ChangeLog,v 1.25 2012/10/08 05:33:15 jlec Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-fs/aufs3/ChangeLog,v 1.26 2012/10/15 05:22:58 jlec Exp $ + +*aufs3-3_p20121015 (15 Oct 2012) + + 15 Oct 2012; Justin Lecher <jlec@gentoo.org> +aufs3-3_p20121015.ebuild, + files/aufs3-standalone-x-rcN.patch, +files/aufs3-base-6.patch, + +files/aufs3-standalone-6.patch, files/aufs3-base-x-rcN.patch: + Version Bump 08 Oct 2012; Justin Lecher <jlec@gentoo.org> aufs3-3_p20120813-r1.ebuild: Fix compilation if USE=-nfs, #432392 diff --git a/sys-fs/aufs3/Manifest b/sys-fs/aufs3/Manifest index d5fb6344b691..b6fca54d5c37 100644 --- a/sys-fs/aufs3/Manifest +++ b/sys-fs/aufs3/Manifest @@ -8,7 +8,8 @@ AUX aufs3-base-2.patch 2734 SHA256 2635ca013f170d4381826ec5b3aba3c15bfabd567df43 AUX aufs3-base-3.patch 2734 SHA256 60f619c05540a42115044ba5bc752c1a5a8be905c55fbad3fd839114578c69c5 SHA512 03e6ac1d39a2379961342e5d69db1bac9bf21f53ab28c84b81c4424f94fd771893c64478f8fd36acff5182eb364b93367b30fa033ae78a831f538550d6ffd1b8 WHIRLPOOL 126f1798e9ba6a7f75634e3e195c4fcd3f5f4331b0b5f22364caeefd1591171604bac25860d865f36324ebfd9f6bf39e45d69977caaa496acdf92b34324ea96a AUX aufs3-base-4.patch 2744 SHA256 874493462520e2323b973cb330e527bd629907bf9cc9ed0f1cea575628b0011e SHA512 d7a0a216f959121dfed9b421f7ed5dd775e5cafb646edc6e25ec14665e7956fbc91fef848839854a2c922dfda5e8112d49a7201dcd94a04c8a4562d39aba4d8c WHIRLPOOL b42bd47f14837b7d10582a2c82eac5dc1c4ecb62b3bf092d33a815cf4fabb121e74c6333149c6efcf5e2757a70051f2efdf1f06bbbda1e4aaf43a931c1c6b0b4 AUX aufs3-base-5.patch 3879 SHA256 e214c467b7540ac5555dd14baa48baf1c6e222a907894a96fb9809d8d438487b SHA512 d0609940762471469fe1165b66e75ac8298e9cd927bbed9f9a4fc40dfd6c9e9e2670a863c34e07bc7a94a40f0567cd1201d8f8bf395b212d053eb94c3d5a8392 WHIRLPOOL c7b1edb6fa9cd4222068ff8e51948e205ccb35bfc88dde9455754ee31ae79bf5987e659be5307ded9e5d7259940af9d23519b2140b5a1a760dff218890f55208 -AUX aufs3-base-x-rcN.patch 2906 SHA256 db6c30af3eb8139a1ef49bf1536bf8ba45d868be854c9ff29829494ab98da4cf SHA512 00d75996606fa896a923c8104f1aa311a1142447a48f9ce50bf6cb273ef9b4980f4c17a18ce7d9dea813cc4d785890e7f2a45db6b8e670bf33380d42c1146621 WHIRLPOOL db36839d5b720593124d1f360b003631d22968f19dff2922966e3edfe182bf7ce7f620da86d0244eba6f4059e18decd9aad45aba8c93c75c9116d1af0cc6cab5 +AUX aufs3-base-6.patch 2902 SHA256 3bdbe6b018ebe9cd6b8ead2e87eac3447a50efdbb5ec286a9b27234903082316 SHA512 73ae5893b412f8bd327450bc3001c5f2ac920c8dec62e797f7e86fcb04e5c75966fd4aabe658b4e805e1874dc5c7d22801bece7a1ce466557bdc07b606bde327 WHIRLPOOL 223ad3617c2d2ba6c34883421e9b66359e2f0e573721e2148c4e53c27ca627e9c9451e6c6a865784d2033f772c5aa5d85c3799d227e3c90743ca1df22b321a24 +AUX aufs3-base-x-rcN.patch 2906 SHA256 985f24bde3414bf3b2359111b6de907f0abbf3c3b1d843cc7fd4910b581fe8ab SHA512 3f08582b2a96f1b9f095747e0070976f3fe10619e3dedcd19b76963bfebf1ef2b09dacd6f42d9126300fad7175d8c0afbbe7f00db6594cfd01dfc1ff821e6909 WHIRLPOOL 67aa15ea7123d5419025402bd82d1985c664be5de44c6e213b10b829162f1d3c9c48790b7b5f2d3c34180b36377619a62cc2a15907ca3bf011b3afeca909bd88 AUX aufs3-fix-export-__devcgroup_inode_permission.patch 231 SHA256 e2e18629401ecc1d8a89cc21f911c11c5e451161570cf36bff942a54ac523053 SHA512 a2b5e91b2721a762fcd5bf13124543398283f4859b075f635d7d6ddf0ca00f1af82bf247d306f988af86d83a0f3eb41261b190aee2f6fc5074c94ce91aa3152e WHIRLPOOL fc37ceca72f43df688c3ce12e18b69d843cb56a18b57fdcc7c7af82a2f24702ad37561919884608f90e75ddf3abd03644ccc45c17cc1babe7a3c0e94587bb213 AUX aufs3-standalone-0.patch 7666 SHA256 53a2613f6da1d418d55e20e5b3f020c3382be0789260a312b7ce97334939f203 SHA512 50c9d1f7e392538c05c13023534621aa51e611d7e27c9bdebaf1df1de4c6208cb2e1decb2c8c9d0c4b866254ca24b2ba13e573f632f90e4112be3c093913d23c WHIRLPOOL 108f0911b1bb656c1419bdaae18b9f77f685ee54d279dd2e4221ac50d6761764d98cea65ccf75c52a94296bdb467c1557fe6bc4f8337ea2ec2fc5aa303595a23 AUX aufs3-standalone-1.patch 7510 SHA256 63b08742aef9f34132fb7cc0caf107a9c7162665d24401573f12f8f96ad1407f SHA512 08b01555895fb5a487058c770a91976751b11d980183153ad459e49f75b167971c450a32d0c0f96a0c7f1292de9cbb4e997ef50ce2ee520d78411ec93ba5b406 WHIRLPOOL c3042e9c3a0ddae4ec1a5e6bd70befc89e1a10c2312e9e7cffe50b33ac3870763942e68c3cc7e11d4c3fbb7a14fb1bffb1894e07e416b2b78fa680480c670f24 @@ -16,7 +17,8 @@ AUX aufs3-standalone-2.patch 7722 SHA256 eb7f414f2a9f07e09c2c0eae9972b21a51ada57 AUX aufs3-standalone-3.patch 7671 SHA256 e450fa66ebf041d10db5a594c87f83e47a39e29f6054310d6e56b44e31ad0971 SHA512 14431367818853979e5cf77cf226438fb3fcd353028b6df8c39eefd6d9e4a4bbd6aba67cc59b72cbedc6ed1fd8bdbcc60022e92d8f35fc0e544c6487d21cda02 WHIRLPOOL 18c52b08d5b498b667c8e1ea1503795bd8601a9bd06397a2917d6d7738101bd6b0eec48e5bdfb16ab4c7a17ac7854110b53eda7b54bb8265e53fd415576afd43 AUX aufs3-standalone-4.patch 7671 SHA256 c9b3a8f32d429eb4ae9749c112e2fede084e64a148660ab146a820b846dcd7cc SHA512 b6a4a705cfbe24192cb70ce41486876c17f4b61f8f124150e3c7be530216cad11f6a677276e6cd5769fd3c150bfc9dd5792f8673776d803ce10a8b85b1b5f58d WHIRLPOOL 024362252c0e48174e107a41562315041b176797cd93934525ad9b8da516e859986e6c1acb68081d533b8b682aaafcfb73a37972631b3afffbc34b983d6437c5 AUX aufs3-standalone-5.patch 8448 SHA256 a7472965292ea881cca3a42319e130778559e7211a758026727e20db3e7f77b4 SHA512 41992935a858f0f211f88f344aecda06b28aba7e389b1e9820689766b13de93a2ab72b0e6683fd473979c349e099db58e113bbb269dedf6c8241852d2d48d2b1 WHIRLPOOL 80844451d158d47f661d1813452c7c1da37b2b0f949e096be09d35e03dde17836786cd4713426658780bd7c10bca5713ce8a7cc7c601a96978d03ab5011c76a4 -AUX aufs3-standalone-x-rcN.patch 8107 SHA256 29123e466605cd1773cad1dfe54b9bf693fc58a7bb0b563f20e78104bc883467 SHA512 5e5ba78a4adc15e24a0b0c4155e3ba1ebc1f39fddd11337aae69633d0db60f2e056addbd3a31b5cbebc5368d9fb8c097cd0bf5b20c433a90eee57cdd75dda149 WHIRLPOOL 9febad977a65e5b32cc50acbedd519dcaa740a8966e7110c4a59398b78eab1a9aca4d24ec2b72f310969e5cdcaf1cd113dd4cd250c2f071601f0da17e61ae67a +AUX aufs3-standalone-6.patch 8103 SHA256 5c03d5444b9bf24bf17a166ecd42ce4d80940367aff3feb23c8f87d39c706980 SHA512 3da35723835be13e4043d55b62021625a352dc33a67966d5cbfa4609d40d636fd36c05d228152ea7667f1682e9fcaae8a52e8dadcdf986f1f365b5d4b4d9598d WHIRLPOOL 49533cf8c38fc2f0cb5a05218461cb1cfac022043801864d0cdef29dc7fed9c9d3e57faf35bec726c6d13c1b931cc3bd78ce65ee6a5642e1b131d03732f8c209 +AUX aufs3-standalone-x-rcN.patch 8254 SHA256 2ed5fcb851e5b77549f5bfacae327059508c0b6fb4248de5dac948e56d3e9e3f SHA512 a2a6dc0e838a4be6255f99846a2af6d109f6edcde043ac112cd00c2508a4f7fe6aad32ca54128c96be110c3e38a082478c907e2a0f68be87ced6e13ad14f2c95 WHIRLPOOL be04a933077fd2826cc3be68a13ecb2f728f48113db1c7938119e20de68e9a58c7419c5f53d50c8e1b34f10badabd7f831a2342b78f57ac8978b6413063a52a1 AUX parallel.patch 725 SHA256 99f93cffb09a0d2ab14fb9cb68fea0f8e87d34d681db642a8a375e045853d8a6 SHA512 c15a3a6319c4545bf5249036aecc0504a1f2ca5ffde5f7a11967089a3b3374c44544fbe801c30684d3edfd9a38c9552a02a8e0d34fed7f38f8bf3cfa8834a686 WHIRLPOOL 11b31499f1df710750328f5ad0c06a92623316e485cd173d47151e1c65545b25c8cc582cab1f98226804ceb9be24ba32d0336dc65325eaa0e81f7ee0c587cdb7 AUX pax.patch 4821 SHA256 c82946d79fd3826803aacf5533aa398c8c7e7516a0c8c88a56aa75e27af3c7ad SHA512 96c9f131da09fb138d60ff8d4c2a0ccb2518f8477b3dd04f81db4b53be006dfa21a487b9ba524ea479a4621b8678ed073467932b6c9ca10c8abb0af5ec9e9330 WHIRLPOOL 99bc6cae56608b8fbc0ff81b1822a76dfa9307b6c18a7ba2708dc5e6771cfad136906821b1cabf584012afe1683f5b74ff6da3d85a08c83226a070b4d192b333 DIST aufs3-3_p20120109.tar.xz 572140 SHA256 7d83bee04871def490193fd9c2e5af1b386caaedd980bee7856c7389db9c8444 SHA512 cfd969a600102106374656d4567f5f0f391a2f1c3bbc448386c14e2850d76a59c0dc2f5c9248695c1f62bac74479b419e193b9ce9cb035b4d706028c94d55bb2 WHIRLPOOL 11ac00df81116bd0d1d040a0ab72e515cd69fdf4ecfa9f3343c4b28a6c5a10237e23a8f08b6e225762d8b872dbc708fa8bc764de9ef8dd88bece569938605d0c @@ -26,6 +28,7 @@ DIST aufs3-3_p20120531.tar.xz 1135072 SHA256 b7c0aa54867451df191ecc9fa497ba99618 DIST aufs3-3_p20120619.tar.xz 1307784 SHA256 8bbcc70da9e3e362c4e9e96f52f8bd9594371c1583d6a22bb04e32f2492effb7 SHA512 85b66bb0ac9645e70d99fb0f4e5592ed57753bf3a7ac2e7fc6f49d92ed9d3232e42bb244d85b68e6e63b163cb43d26c52e1227633b83dc3115e45bab0c95f8b1 WHIRLPOOL 003e01829bde40b6caa87a4f02ed63d090715c14189bafe8a371458948ababc4ec1a05926518a719258c5bc23aa63000e9408d845fb5685da76990bf2df0467c DIST aufs3-3_p20120730.tar.xz 1469500 SHA256 6006405bdf8248adcb69a2a5fd5979053f6ab86c23c169a5f87fd3eec21dd84b SHA512 b4efd244ccac25316f68c121b0f7c292f6fe760f5ab60ddbc3c32191467221331e0a5c5f9fbe7c80f1ebe698815e79270608901a42f1c15eda0ddc19404b62c8 WHIRLPOOL 45fcf21c7ce96fefb60099f464056e0a8363cc52393d0b3c29eef6ec6d58c9ef64f40208eeb5da4cbb17822de30c6db63f57c381a89d936acf907a0c23e6b867 DIST aufs3-3_p20120813.tar.xz 1594656 SHA256 549b496e42b96d05e428a8deb5f1fc6c3dcaa1630c9b9d36d683eebf3546ac4c SHA512 deb6cfa132a2c99a12d36db0d199b3cd2be598392273f543ad80387be8f9669c0bd82dd11fe2e1739a039eac6fce7e3098d50f15450bc6a5ce5b4afa3dd5d95a WHIRLPOOL 0d59b023ccb5baa7c51fc662bf6597aac4160873ff3396a5f1be61d47c5593a5b982321fce1a1afdd92c312425a7d8a0c56961da81c42b18f80c286232030e63 +DIST aufs3-3_p20121015.tar.xz 1630636 SHA256 0fb39ec5cc3f96dabc4d907ecb96f13be7377bbff011d7e4d2d909dad59a3d86 SHA512 4621408a3289c847232c1c5dc0ab72a0f282e387ce2e91a147f1f620aaa9a782be4d27ca7f84e3dd890379062c77d617e9db9af53d3a81f8774c90dc44e7d36e WHIRLPOOL 48105aacd40d9ef113813eb62e18f946df3e0fca7d60d394b260d670ff11576f75ba4fb8033dbc27dc73416f67dfc2c4d59f10261f7e654f1e07c2dd80c1aeda EBUILD aufs3-3_p20120109.ebuild 4617 SHA256 c82fab58ad78eb4c98e7d89ffdcb6fe77885bf1e3368e7dabe4550a962d5a370 SHA512 1148533616920c81617fde1a112405d52d4e1872adc493135768db6ac5d0dd92905e0d78b467ce13b09349c3217a87b80eac0b8d6e462f241d53e9b8f674639d WHIRLPOOL fe150b3dac2f39ca0818a4f1720956b8bfba146c50eb337119039e4bac42ea18d69aae72001a1452f257683d2a39ada8aef7d9b5d3cc3f8a84c734b338cd638d EBUILD aufs3-3_p20120430.ebuild 4522 SHA256 d35ac31316bf6738cf4b69784f555042a225dd1c53c9532839edffaa1c7563b1 SHA512 628ba1ca883f38c5ff5e9102c348271104fe6151ddf381814c45af0027800e4f20d209495bd7d13405a38ccb3e30965e73c86b0985f24907a04cd746b7de4102 WHIRLPOOL 58d17b0021ceea43551f9de81268fa41be0edaf5a881f81b65f5d7a67b17749ba11eb56dedc3db7ee91767dc0b483a328c07da1c14df711557b51e4f25b6d508 EBUILD aufs3-3_p20120523.ebuild 4522 SHA256 f3aa201a2d0074106dbcf63bc09653205a2128635c970e7c7013504fdc013cc1 SHA512 99f7d4150777d197bd7afd5f86770dd6b65357e7dea0eafda031cd1a296557d88fdb742d2575174b00b4b440c8469048652bc4fcf5a630c8a0cf0a00ff3af7c9 WHIRLPOOL af0b1e37155d6ee758013186dc7ed15e339d40ebef322d04299f5c83698ceddd6a82afde3c30bd0f29c8fa58af1c6b8ece14a4faa52ec9f4772f5beb02629103 @@ -34,13 +37,14 @@ EBUILD aufs3-3_p20120619.ebuild 4632 SHA256 1458e837811fbaa6aad77be59353df89e3b4 EBUILD aufs3-3_p20120730.ebuild 4632 SHA256 3866934b24a6228d36c1a94caddc9e80d948a116af3f350436342501c1666855 SHA512 8af0e924679c2feb285b45471f27e9a121456e0a53d6193acf8dc2273b4de251cd1f527020a84799bdbb84989a27591e04444710e73435fb4b40ff4d3151835e WHIRLPOOL b2c251210a553241e14f0015f34e8ba9045860d8073acd4baeb0c8396a3d9c46016f2eaaa90ef8c6e431a6e2508bf40e51adaaf458aba8d62e59fd18b677d44d EBUILD aufs3-3_p20120813-r1.ebuild 4675 SHA256 52f90b55b82c666f1c18a243a62e69780693f54ba2a6154c94f950c46861b6fb SHA512 f15d517d0504b2198c85383fc828991dab9e0e66c3e15dbec5d83aa6d4b688176da32c0f8909b0bf14983e2023ceb6d856f8190f57caa2aaaca4ad03319c5105 WHIRLPOOL 721a1c986a6e2e05e31c19bdde467126452b513c386ee73687a8c8f8ae9e1d0b3eff8787b2a1eba309c02d15a91a6d2d7056967adeaccb0264ad40b24fb3b74e EBUILD aufs3-3_p20120813.ebuild 4682 SHA256 cde51eac99246bcb04cab124cf473f255309be56e692a439336f558756dca14f SHA512 f7380e08cf73f048a20391119f880d8a83d30e06a47a4c5e6fe90b0325205aeedf45906430afaa701e534544356348a9d4967d64b50a770115e807eb90dfd07e WHIRLPOOL 7d1ac2c48b67c1c4eec2a0abb3a54a10a4232e6fcca18eb84844a4c7cc5f7600c9c24173713a485038d2bddc37e4fa8715c33ec0499aa63e0f9c9af383998dd9 -MISC ChangeLog 6054 SHA256 92f987b91f369f94190d425d868193dc34d03ea07f7063b811f20f68eb440b09 SHA512 203e7ff250ee8ac9cef4eb1c02604020496d8bd64192f67a2237af6d3b1f3aff05fb954631fb08aadf4f5f4dd9de6a733b6c6f1755734fef75e68b69a792434a WHIRLPOOL 0f8a31a16ef5e2bc4cec9c22370599c85ef79a8dde30badb338bc63406dd62ac4b7ef55ee34108983a037b11a34ab636e0680984d46ba1f975cb20953523fba0 +EBUILD aufs3-3_p20121015.ebuild 4672 SHA256 4cfb6738cd2a22a6f97e48c13ce0e06767dff967d1e3a457da495e6f07772a4c SHA512 25ad1b97fbf4008200bbc9870cd4f5a262ff0b260fcb3e635658dfaad4659865e25b38b6bef167de6942aa8b649db77597e5bef72991b40dbde9a1d1bff5634b WHIRLPOOL eb465f99407780bfac38eaff1506d04afa1961359758b0c5edb00cfb6d9849aa4442ebc56db35b44ffd78d808bf101398e3c18797f217169349d00d5d8b2c036 +MISC ChangeLog 6308 SHA256 3fac9c982065a7f36a4c2123c824907200b65a7fc62f89bdd1fb66c6e87dbdf9 SHA512 e0ea29d60ddecae336f0eb8f3c913db240b05d3487ff53924cc83ac3499ab4a50ff12d936336edd539baf5d9a154cb023bf754c1cf4595cec480c98538da1f81 WHIRLPOOL 34cd90c4004a56186274cd0c8f900ab94be2e11133cf65f0dbe2257f13062bec44ec47c5857293e9294df12b1899c700a2f82e37197176d7f02522ca8f87f665 MISC metadata.xml 758 SHA256 7107603a0759e5737aa5d9b674155f39b79695c4f582df4976b825be5e7b5536 SHA512 6dcf4ddf5616e78d0b43e54d08dbde64ddaa0ef995af863de3623c34bcab139c9e36329722a1f965821f6a2513a62906ad3a436f07368e25893704ea46dbf566 WHIRLPOOL 32198ee0cfa5cbd5fc12109e5136f84d0b240dabd7515a9fb0ef3617458372b063c51a60930309853526f297646e5a2afc3264f4a2e0e02383d970e5816c305f -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (GNU/Linux) Comment: GPGTools - http://gpgtools.org -iEYEAREIAAYFAlByZYQACgkQgAnW8HDreRY5yACfbu7aG5z3NRm/GXCZV55p8eNA -tOUAoLuY7I70pCASDjPvKErBhwTNVBGf -=tnBn +iEYEAREIAAYFAlB7nbMACgkQgAnW8HDreRbg2ACdFr/FT6biPPBVvGbLZGwkVUu3 ++bgAniC9+PDWv9IDF/ZlPFgohztxq796 +=N1lB -----END PGP SIGNATURE----- diff --git a/sys-fs/aufs3/aufs3-3_p20121015.ebuild b/sys-fs/aufs3/aufs3-3_p20121015.ebuild new file mode 100644 index 000000000000..1e61a27afdeb --- /dev/null +++ b/sys-fs/aufs3/aufs3-3_p20121015.ebuild @@ -0,0 +1,148 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-fs/aufs3/aufs3-3_p20121015.ebuild,v 1.1 2012/10/15 05:22:58 jlec Exp $ + +EAPI=4 + +inherit linux-mod multilib toolchain-funcs eutils + +AUFS_VERSION="${PV%%_p*}" +# highest branch version +PATCH_MAX_VER=6 +# highest supported version +KERN_MAX_VER=7 +# highest util branch version +UTIL_MAX_VER=0 + +DESCRIPTION="An entirely re-designed and re-implemented Unionfs" +HOMEPAGE="http://aufs.sourceforge.net/" +SRC_URI="http://dev.gentoo.org/~jlec/distfiles/${P}.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="debug doc fuse pax_kernel hfs inotify kernel-patch nfs ramfs" + +DEPEND="dev-vcs/git" +RDEPEND=" + !sys-fs/aufs + !sys-fs/aufs2" + +S="${WORKDIR}"/${PN}-standalone + +MODULE_NAMES="aufs(misc:${S})" + +pkg_setup() { + CONFIG_CHECK="${CONFIG_CHECK} ~EXPERIMENTAL" + use inotify && CONFIG_CHECK="${CONFIG_CHECK} ~FSNOTIFY" + use nfs && CONFIG_CHECK="${CONFIG_CHECK} EXPORTFS" + use fuse && CONFIG_CHECK="${CONFIG_CHECK} ~FUSE_FS" + use hfs && CONFIG_CHECK="${CONFIG_CHECK} ~HFSPLUS_FS" + + # this is needed so merging a binpkg ${PN} is possible w/out a kernel unpacked on the system + [ -n "$PKG_SETUP_HAS_BEEN_RAN" ] && return + + get_version + kernel_is lt 3 0 0 && die "kernel too old, Please use sys-fs/aufs2" + kernel_is gt 3 ${KERN_MAX_VER} 99 && die "kernel too new" + + linux-mod_pkg_setup + + if [[ "${KV_MINOR}" -gt "${PATCH_MAX_VER}" ]]; then + PATCH_BRANCH="x-rcN" + else + PATCH_BRANCH="${KV_MINOR}" + fi + + if [[ "${PATCH_BRANCH}" == "x-rcN" ]]; then + UTIL_BRANCH="x-rcN" + elif [[ "${KV_MINOR}" -gt "${UTIL_MAX_VER}" ]]; then + UTIL_BRANCH="${UTIL_MAX_VER}" + else + UTIL_BRANCH="${KV_MINOR}" + fi + + if ! ( patch -p1 --dry-run --force -R -d ${KV_DIR} < "${FILESDIR}"/${PN}-standalone-${PATCH_BRANCH}.patch >/dev/null && \ + patch -p1 --dry-run --force -R -d ${KV_DIR} < "${FILESDIR}"/${PN}-base-${PATCH_BRANCH}.patch >/dev/null ); then + if use kernel-patch; then + cd ${KV_DIR} + ewarn "Patching your kernel..." + patch --no-backup-if-mismatch --force -p1 -R -d ${KV_DIR} < "${FILESDIR}"/${PN}-standalone-${PATCH_BRANCH}.patch >/dev/null + patch --no-backup-if-mismatch --force -p1 -R -d ${KV_DIR} < "${FILESDIR}"/${PN}-base-${PATCH_BRANCH}.patch >/dev/null + epatch "${FILESDIR}"/${PN}-{base,standalone}-${PATCH_BRANCH}.patch + ewarn "You need to compile your kernel with the applied patch" + ewarn "to be able to load and use the aufs kernel module" + else + eerror "You need to apply a patch to your kernel to compile and run the ${PN} module" + eerror "Either enable the kernel-patch useflag to do it with this ebuild" + eerror "or apply ${FILESDIR}/${PN}-base-${PATCH_BRANCH}.patch and" + eerror "${FILESDIR}/${PN}-standalone-${PATCH_BRANCH}.patch by hand" + die "missing kernel patch, please apply it first" + fi + fi + export PKG_SETUP_HAS_BEEN_RAN=1 +} + +set_config() { + for option in $*; do + grep -q "^CONFIG_AUFS_${option} =" config.mk || die "${option} is not a valid config option" + sed "/^CONFIG_AUFS_${option}/s:=:= y:g" -i config.mk || die + done +} + +src_prepare() { + local module_branch=origin/${PN}.${PATCH_BRANCH} + local util_branch=origin/${PN}.${UTIL_BRANCH} + + einfo "Using for module creation branch ${module_branch}" + git checkout -q -b local-gentoo ${module_branch} || die + + # All config options to off + sed "s:= y:=:g" -i config.mk || die + + set_config RDU BRANCH_MAX_127 SBILIST + + use debug && set_config DEBUG + use fuse && set_config BR_FUSE POLL + use hfs && set_config BR_HFSPLUS + use inotify && set_config HNOTIFY HFSNOTIFY + use nfs && set_config EXPORT + use nfs && ( use amd64 || use ppc64 ) && set_config INO_T_64 + use ramfs && set_config BR_RAMFS + + use pax_kernel && epatch "${FILESDIR}"/pax.patch + + sed -i "s:aufs.ko usr/include/linux/aufs_type.h:aufs.ko:g" Makefile || die + sed -i "s:__user::g" include/linux/aufs_type.h || die + + cd "${WORKDIR}"/${PN/3}-util + + einfo "Using for utils building branch ${util_branch}" + git checkout -b local-gentoo ${util_branch} || die + sed -i "/LDFLAGS += -static -s/d" Makefile || die + sed -i -e "s:m 644 -s:m 644:g" -e "s:/usr/lib:/usr/$(get_libdir):g" libau/Makefile || die +} + +src_compile() { + local ARCH=x86 + + emake CC=$(tc-getCC) ARCH=$(tc-arch-kernel) CONFIG_AUFS_FS=m KDIR=${KV_DIR} + + cd "${WORKDIR}"/${PN/3}-util + emake CC=$(tc-getCC) AR=$(tc-getAR) KDIR=${KV_DIR} C_INCLUDE_PATH="${S}"/include +} + +src_install() { + linux-mod_src_install + + insinto /usr/share/doc/${PF} + + use doc && doins -r Documentation + + dodoc Documentation/filesystems/aufs/README + + cd "${WORKDIR}"/${PN/3}-util + emake DESTDIR="${D}" KDIR=${KV_DIR} install + + newdoc README README-utils +} diff --git a/sys-fs/aufs3/files/aufs3-base-6.patch b/sys-fs/aufs3/files/aufs3-base-6.patch new file mode 100644 index 000000000000..adb9ab7ccfdb --- /dev/null +++ b/sys-fs/aufs3/files/aufs3-base-6.patch @@ -0,0 +1,70 @@ +aufs3.6 base patch + +diff --git a/fs/inode.c b/fs/inode.c +index ac8d904..7b2c8fa 100644 +--- a/fs/inode.c ++++ b/fs/inode.c +@@ -1491,7 +1491,7 @@ static int relatime_need_update(struct vfsmount *mnt, struct inode *inode, + * This does the actual work of updating an inodes time or version. Must have + * had called mnt_want_write() before calling this. + */ +-static int update_time(struct inode *inode, struct timespec *time, int flags) ++int update_time(struct inode *inode, struct timespec *time, int flags) + { + if (inode->i_op->update_time) + return inode->i_op->update_time(inode, time, flags); +diff --git a/fs/splice.c b/fs/splice.c +index 41514dd..663b402 100644 +--- a/fs/splice.c ++++ b/fs/splice.c +@@ -1093,8 +1093,8 @@ EXPORT_SYMBOL(generic_splice_sendpage); + /* + * Attempt to initiate a splice from pipe to file. + */ +-static long do_splice_from(struct pipe_inode_info *pipe, struct file *out, +- loff_t *ppos, size_t len, unsigned int flags) ++long do_splice_from(struct pipe_inode_info *pipe, struct file *out, ++ loff_t *ppos, size_t len, unsigned int flags) + { + ssize_t (*splice_write)(struct pipe_inode_info *, struct file *, + loff_t *, size_t, unsigned int); +@@ -1121,9 +1121,9 @@ static long do_splice_from(struct pipe_inode_info *pipe, struct file *out, + /* + * Attempt to initiate a splice from a file to a pipe. + */ +-static long do_splice_to(struct file *in, loff_t *ppos, +- struct pipe_inode_info *pipe, size_t len, +- unsigned int flags) ++long do_splice_to(struct file *in, loff_t *ppos, ++ struct pipe_inode_info *pipe, size_t len, ++ unsigned int flags) + { + ssize_t (*splice_read)(struct file *, loff_t *, + struct pipe_inode_info *, size_t, unsigned int); +diff --git a/include/linux/fs.h b/include/linux/fs.h +index aa11047..9116d2e 100644 +--- a/include/linux/fs.h ++++ b/include/linux/fs.h +@@ -2741,6 +2741,7 @@ extern int inode_change_ok(const struct inode *, struct iattr *); + extern int inode_newsize_ok(const struct inode *, loff_t offset); + extern void setattr_copy(struct inode *inode, const struct iattr *attr); + ++extern int update_time(struct inode *, struct timespec *, int); + extern int file_update_time(struct file *file); + + extern int generic_show_options(struct seq_file *m, struct dentry *root); +diff --git a/include/linux/splice.h b/include/linux/splice.h +index 09a545a..1ac5727 100644 +--- a/include/linux/splice.h ++++ b/include/linux/splice.h +@@ -91,4 +91,10 @@ extern void splice_shrink_spd(struct splice_pipe_desc *); + extern void spd_release_page(struct splice_pipe_desc *, unsigned int); + + extern const struct pipe_buf_operations page_cache_pipe_buf_ops; ++ ++extern long do_splice_from(struct pipe_inode_info *pipe, struct file *out, ++ loff_t *ppos, size_t len, unsigned int flags); ++extern long do_splice_to(struct file *in, loff_t *ppos, ++ struct pipe_inode_info *pipe, size_t len, ++ unsigned int flags); + #endif diff --git a/sys-fs/aufs3/files/aufs3-base-x-rcN.patch b/sys-fs/aufs3/files/aufs3-base-x-rcN.patch index 7fa26200896d..e8bd049b75e1 100644 --- a/sys-fs/aufs3/files/aufs3-base-x-rcN.patch +++ b/sys-fs/aufs3/files/aufs3-base-x-rcN.patch @@ -14,7 +14,7 @@ index ac8d904..7b2c8fa 100644 if (inode->i_op->update_time) return inode->i_op->update_time(inode, time, flags); diff --git a/fs/splice.c b/fs/splice.c -index 41514dd..663b402 100644 +index 13e5b47..f185c6c 100644 --- a/fs/splice.c +++ b/fs/splice.c @@ -1093,8 +1093,8 @@ EXPORT_SYMBOL(generic_splice_sendpage); @@ -42,10 +42,10 @@ index 41514dd..663b402 100644 ssize_t (*splice_read)(struct file *, loff_t *, struct pipe_inode_info *, size_t, unsigned int); diff --git a/include/linux/fs.h b/include/linux/fs.h -index aa11047..9116d2e 100644 +index ca6d8c8..f984f0d 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h -@@ -2741,6 +2741,7 @@ extern int inode_change_ok(const struct inode *, struct iattr *); +@@ -2745,6 +2745,7 @@ extern int inode_change_ok(const struct inode *, struct iattr *); extern int inode_newsize_ok(const struct inode *, loff_t offset); extern void setattr_copy(struct inode *inode, const struct iattr *attr); diff --git a/sys-fs/aufs3/files/aufs3-standalone-6.patch b/sys-fs/aufs3/files/aufs3-standalone-6.patch new file mode 100644 index 000000000000..b5dcadcc3c3d --- /dev/null +++ b/sys-fs/aufs3/files/aufs3-standalone-6.patch @@ -0,0 +1,276 @@ +aufs3.6 standalone patch + +diff --git a/fs/file_table.c b/fs/file_table.c +index 701985e..a9fe741 100644 +--- a/fs/file_table.c ++++ b/fs/file_table.c +@@ -37,6 +37,7 @@ struct files_stat_struct files_stat = { + }; + + DEFINE_LGLOCK(files_lglock); ++EXPORT_SYMBOL(files_lglock); + + /* SLAB cache for file structures */ + static struct kmem_cache *filp_cachep __read_mostly; +@@ -509,6 +510,8 @@ void file_sb_list_del(struct file *file) + } + } + ++EXPORT_SYMBOL(file_sb_list_del); ++ + #ifdef CONFIG_SMP + + /* +diff --git a/fs/inode.c b/fs/inode.c +index 7b2c8fa..0c4318d 100644 +--- a/fs/inode.c ++++ b/fs/inode.c +@@ -56,6 +56,7 @@ static struct hlist_head *inode_hashtable __read_mostly; + static __cacheline_aligned_in_smp DEFINE_SPINLOCK(inode_hash_lock); + + __cacheline_aligned_in_smp DEFINE_SPINLOCK(inode_sb_list_lock); ++EXPORT_SYMBOL(inode_sb_list_lock); + + /* + * Empty aops. Can be used for the cases where the user does not +@@ -1507,6 +1508,7 @@ int update_time(struct inode *inode, struct timespec *time, int flags) + mark_inode_dirty_sync(inode); + return 0; + } ++EXPORT_SYMBOL(update_time); + + /** + * touch_atime - update the access time +diff --git a/fs/namespace.c b/fs/namespace.c +index 7bdf790..5b85c4c 100644 +--- a/fs/namespace.c ++++ b/fs/namespace.c +@@ -50,6 +50,7 @@ EXPORT_SYMBOL_GPL(fs_kobj); + * tree or hash is modified or when a vfsmount structure is modified. + */ + DEFINE_BRLOCK(vfsmount_lock); ++EXPORT_SYMBOL(vfsmount_lock); + + static inline unsigned long hash(struct vfsmount *mnt, struct dentry *dentry) + { +@@ -1401,6 +1402,7 @@ int iterate_mounts(int (*f)(struct vfsmount *, void *), void *arg, + } + return 0; + } ++EXPORT_SYMBOL(iterate_mounts); + + static void cleanup_group_ids(struct mount *mnt, struct mount *end) + { +diff --git a/fs/notify/group.c b/fs/notify/group.c +index 63fc294..6f4adca 100644 +--- a/fs/notify/group.c ++++ b/fs/notify/group.c +@@ -22,6 +22,7 @@ + #include <linux/srcu.h> + #include <linux/rculist.h> + #include <linux/wait.h> ++#include <linux/module.h> + + #include <linux/fsnotify_backend.h> + #include "fsnotify.h" +@@ -70,6 +71,7 @@ void fsnotify_put_group(struct fsnotify_group *group) + if (atomic_dec_and_test(&group->refcnt)) + fsnotify_destroy_group(group); + } ++EXPORT_SYMBOL(fsnotify_put_group); + + /* + * Create a new fsnotify_group and hold a reference for the group returned. +@@ -102,3 +104,4 @@ struct fsnotify_group *fsnotify_alloc_group(const struct fsnotify_ops *ops) + + return group; + } ++EXPORT_SYMBOL(fsnotify_alloc_group); +diff --git a/fs/notify/mark.c b/fs/notify/mark.c +index f104d56..54f36db 100644 +--- a/fs/notify/mark.c ++++ b/fs/notify/mark.c +@@ -112,6 +112,7 @@ void fsnotify_put_mark(struct fsnotify_mark *mark) + if (atomic_dec_and_test(&mark->refcnt)) + mark->free_mark(mark); + } ++EXPORT_SYMBOL(fsnotify_put_mark); + + /* + * Any time a mark is getting freed we end up here. +@@ -191,6 +192,7 @@ void fsnotify_destroy_mark(struct fsnotify_mark *mark) + if (unlikely(atomic_dec_and_test(&group->num_marks))) + fsnotify_final_destroy_group(group); + } ++EXPORT_SYMBOL(fsnotify_destroy_mark); + + void fsnotify_set_mark_mask_locked(struct fsnotify_mark *mark, __u32 mask) + { +@@ -278,6 +280,7 @@ err: + + return ret; + } ++EXPORT_SYMBOL(fsnotify_add_mark); + + /* + * clear any marks in a group in which mark->flags & flags is true +@@ -333,6 +336,7 @@ void fsnotify_init_mark(struct fsnotify_mark *mark, + atomic_set(&mark->refcnt, 1); + mark->free_mark = free_mark; + } ++EXPORT_SYMBOL(fsnotify_init_mark); + + static int fsnotify_mark_destroy(void *ignored) + { +diff --git a/fs/open.c b/fs/open.c +index e1f2cdb..2804cd6 100644 +--- a/fs/open.c ++++ b/fs/open.c +@@ -60,6 +60,7 @@ int do_truncate(struct dentry *dentry, loff_t length, unsigned int time_attrs, + mutex_unlock(&dentry->d_inode->i_mutex); + return ret; + } ++EXPORT_SYMBOL(do_truncate); + + static long do_sys_truncate(const char __user *pathname, loff_t length) + { +diff --git a/fs/splice.c b/fs/splice.c +index 663b402..51e1deb 100644 +--- a/fs/splice.c ++++ b/fs/splice.c +@@ -1117,6 +1117,7 @@ long do_splice_from(struct pipe_inode_info *pipe, struct file *out, + + return splice_write(pipe, out, ppos, len, flags); + } ++EXPORT_SYMBOL(do_splice_from); + + /* + * Attempt to initiate a splice from a file to a pipe. +@@ -1143,6 +1144,7 @@ long do_splice_to(struct file *in, loff_t *ppos, + + return splice_read(in, ppos, pipe, len, flags); + } ++EXPORT_SYMBOL(do_splice_to); + + /** + * splice_direct_to_actor - splices data directly between two non-pipes +diff --git a/security/commoncap.c b/security/commoncap.c +index 6dbae46..9f4f29a 100644 +--- a/security/commoncap.c ++++ b/security/commoncap.c +@@ -979,9 +979,11 @@ int cap_mmap_addr(unsigned long addr) + } + return ret; + } ++EXPORT_SYMBOL(cap_mmap_addr); + + int cap_mmap_file(struct file *file, unsigned long reqprot, + unsigned long prot, unsigned long flags) + { + return 0; + } ++EXPORT_SYMBOL(cap_mmap_file); +diff --git a/security/device_cgroup.c b/security/device_cgroup.c +index 442204c..e644a1c 100644 +--- a/security/device_cgroup.c ++++ b/security/device_cgroup.c +@@ -7,6 +7,7 @@ + #include <linux/device_cgroup.h> + #include <linux/cgroup.h> + #include <linux/ctype.h> ++#include <linux/export.h> + #include <linux/list.h> + #include <linux/uaccess.h> + #include <linux/seq_file.h> +@@ -493,6 +494,7 @@ found: + + return -EPERM; + } ++EXPORT_SYMBOL(__devcgroup_inode_permission); + + int devcgroup_inode_mknod(int mode, dev_t dev) + { +diff --git a/security/security.c b/security/security.c +index 860aeb3..ffb57bf 100644 +--- a/security/security.c ++++ b/security/security.c +@@ -384,6 +384,7 @@ int security_path_rmdir(struct path *dir, struct dentry *dentry) + return 0; + return security_ops->path_rmdir(dir, dentry); + } ++EXPORT_SYMBOL(security_path_rmdir); + + int security_path_unlink(struct path *dir, struct dentry *dentry) + { +@@ -400,6 +401,7 @@ int security_path_symlink(struct path *dir, struct dentry *dentry, + return 0; + return security_ops->path_symlink(dir, dentry, old_name); + } ++EXPORT_SYMBOL(security_path_symlink); + + int security_path_link(struct dentry *old_dentry, struct path *new_dir, + struct dentry *new_dentry) +@@ -408,6 +410,7 @@ int security_path_link(struct dentry *old_dentry, struct path *new_dir, + return 0; + return security_ops->path_link(old_dentry, new_dir, new_dentry); + } ++EXPORT_SYMBOL(security_path_link); + + int security_path_rename(struct path *old_dir, struct dentry *old_dentry, + struct path *new_dir, struct dentry *new_dentry) +@@ -426,6 +429,7 @@ int security_path_truncate(struct path *path) + return 0; + return security_ops->path_truncate(path); + } ++EXPORT_SYMBOL(security_path_truncate); + + int security_path_chmod(struct path *path, umode_t mode) + { +@@ -433,6 +437,7 @@ int security_path_chmod(struct path *path, umode_t mode) + return 0; + return security_ops->path_chmod(path, mode); + } ++EXPORT_SYMBOL(security_path_chmod); + + int security_path_chown(struct path *path, uid_t uid, gid_t gid) + { +@@ -440,6 +445,7 @@ int security_path_chown(struct path *path, uid_t uid, gid_t gid) + return 0; + return security_ops->path_chown(path, uid, gid); + } ++EXPORT_SYMBOL(security_path_chown); + + int security_path_chroot(struct path *path) + { +@@ -516,6 +522,7 @@ int security_inode_readlink(struct dentry *dentry) + return 0; + return security_ops->inode_readlink(dentry); + } ++EXPORT_SYMBOL(security_inode_readlink); + + int security_inode_follow_link(struct dentry *dentry, struct nameidata *nd) + { +@@ -530,6 +537,7 @@ int security_inode_permission(struct inode *inode, int mask) + return 0; + return security_ops->inode_permission(inode, mask); + } ++EXPORT_SYMBOL(security_inode_permission); + + int security_inode_setattr(struct dentry *dentry, struct iattr *attr) + { +@@ -645,6 +653,7 @@ int security_file_permission(struct file *file, int mask) + + return fsnotify_perm(file, mask); + } ++EXPORT_SYMBOL(security_file_permission); + + int security_file_alloc(struct file *file) + { +@@ -705,6 +714,7 @@ int security_mmap_file(struct file *file, unsigned long prot, + return ret; + return ima_file_mmap(file, prot); + } ++EXPORT_SYMBOL(security_mmap_file); + + int security_mmap_addr(unsigned long addr) + { diff --git a/sys-fs/aufs3/files/aufs3-standalone-x-rcN.patch b/sys-fs/aufs3/files/aufs3-standalone-x-rcN.patch index 47edb847d0ab..bc2ca933bf4c 100644 --- a/sys-fs/aufs3/files/aufs3-standalone-x-rcN.patch +++ b/sys-fs/aufs3/files/aufs3-standalone-x-rcN.patch @@ -1,7 +1,7 @@ aufs3.x-rcN standalone patch diff --git a/fs/file_table.c b/fs/file_table.c -index 701985e..a9fe741 100644 +index dac6792..e3f2c15 100644 --- a/fs/file_table.c +++ b/fs/file_table.c @@ -37,6 +37,7 @@ struct files_stat_struct files_stat = { @@ -12,7 +12,7 @@ index 701985e..a9fe741 100644 /* SLAB cache for file structures */ static struct kmem_cache *filp_cachep __read_mostly; -@@ -509,6 +510,8 @@ void file_sb_list_del(struct file *file) +@@ -403,6 +404,8 @@ void file_sb_list_del(struct file *file) } } @@ -42,7 +42,7 @@ index 7b2c8fa..0c4318d 100644 /** * touch_atime - update the access time diff --git a/fs/namespace.c b/fs/namespace.c -index 4d31f73..fe1eca1 100644 +index 7bdf790..5b85c4c 100644 --- a/fs/namespace.c +++ b/fs/namespace.c @@ -50,6 +50,7 @@ EXPORT_SYMBOL_GPL(fs_kobj); @@ -123,7 +123,7 @@ index f104d56..54f36db 100644 static int fsnotify_mark_destroy(void *ignored) { diff --git a/fs/open.c b/fs/open.c -index bc132e1..00c1fac 100644 +index 44da0fe..d4f8157 100644 --- a/fs/open.c +++ b/fs/open.c @@ -60,6 +60,7 @@ int do_truncate(struct dentry *dentry, loff_t length, unsigned int time_attrs, @@ -135,7 +135,7 @@ index bc132e1..00c1fac 100644 static long do_sys_truncate(const char __user *pathname, loff_t length) { diff --git a/fs/splice.c b/fs/splice.c -index 663b402..51e1deb 100644 +index f185c6c..f3d89da 100644 --- a/fs/splice.c +++ b/fs/splice.c @@ -1117,6 +1117,7 @@ long do_splice_from(struct pipe_inode_info *pipe, struct file *out, @@ -171,7 +171,7 @@ index 6dbae46..9f4f29a 100644 } +EXPORT_SYMBOL(cap_mmap_file); diff --git a/security/device_cgroup.c b/security/device_cgroup.c -index 442204c..e644a1c 100644 +index 44dfc41..15b21e0 100644 --- a/security/device_cgroup.c +++ b/security/device_cgroup.c @@ -7,6 +7,7 @@ @@ -182,19 +182,19 @@ index 442204c..e644a1c 100644 #include <linux/list.h> #include <linux/uaccess.h> #include <linux/seq_file.h> -@@ -493,6 +494,7 @@ found: - - return -EPERM; +@@ -573,6 +574,7 @@ int __devcgroup_inode_permission(struct inode *inode, int mask) + return __devcgroup_check_permission(dev_cgroup, type, imajor(inode), + iminor(inode), access); } +EXPORT_SYMBOL(__devcgroup_inode_permission); int devcgroup_inode_mknod(int mode, dev_t dev) { diff --git a/security/security.c b/security/security.c -index 860aeb3..ffb57bf 100644 +index 3724029..5464c76 100644 --- a/security/security.c +++ b/security/security.c -@@ -384,6 +384,7 @@ int security_path_rmdir(struct path *dir, struct dentry *dentry) +@@ -396,6 +396,7 @@ int security_path_rmdir(struct path *dir, struct dentry *dentry) return 0; return security_ops->path_rmdir(dir, dentry); } @@ -202,7 +202,7 @@ index 860aeb3..ffb57bf 100644 int security_path_unlink(struct path *dir, struct dentry *dentry) { -@@ -400,6 +401,7 @@ int security_path_symlink(struct path *dir, struct dentry *dentry, +@@ -412,6 +413,7 @@ int security_path_symlink(struct path *dir, struct dentry *dentry, return 0; return security_ops->path_symlink(dir, dentry, old_name); } @@ -210,7 +210,7 @@ index 860aeb3..ffb57bf 100644 int security_path_link(struct dentry *old_dentry, struct path *new_dir, struct dentry *new_dentry) -@@ -408,6 +410,7 @@ int security_path_link(struct dentry *old_dentry, struct path *new_dir, +@@ -420,6 +422,7 @@ int security_path_link(struct dentry *old_dentry, struct path *new_dir, return 0; return security_ops->path_link(old_dentry, new_dir, new_dentry); } @@ -218,7 +218,7 @@ index 860aeb3..ffb57bf 100644 int security_path_rename(struct path *old_dir, struct dentry *old_dentry, struct path *new_dir, struct dentry *new_dentry) -@@ -426,6 +429,7 @@ int security_path_truncate(struct path *path) +@@ -438,6 +441,7 @@ int security_path_truncate(struct path *path) return 0; return security_ops->path_truncate(path); } @@ -226,15 +226,15 @@ index 860aeb3..ffb57bf 100644 int security_path_chmod(struct path *path, umode_t mode) { -@@ -433,6 +437,7 @@ int security_path_chmod(struct path *path, umode_t mode) +@@ -445,6 +449,7 @@ int security_path_chmod(struct path *path, umode_t mode) return 0; return security_ops->path_chmod(path, mode); } +EXPORT_SYMBOL(security_path_chmod); - int security_path_chown(struct path *path, uid_t uid, gid_t gid) + int security_path_chown(struct path *path, kuid_t uid, kgid_t gid) { -@@ -440,6 +445,7 @@ int security_path_chown(struct path *path, uid_t uid, gid_t gid) +@@ -452,6 +457,7 @@ int security_path_chown(struct path *path, kuid_t uid, kgid_t gid) return 0; return security_ops->path_chown(path, uid, gid); } @@ -242,7 +242,7 @@ index 860aeb3..ffb57bf 100644 int security_path_chroot(struct path *path) { -@@ -516,6 +522,7 @@ int security_inode_readlink(struct dentry *dentry) +@@ -528,6 +534,7 @@ int security_inode_readlink(struct dentry *dentry) return 0; return security_ops->inode_readlink(dentry); } @@ -250,7 +250,7 @@ index 860aeb3..ffb57bf 100644 int security_inode_follow_link(struct dentry *dentry, struct nameidata *nd) { -@@ -530,6 +537,7 @@ int security_inode_permission(struct inode *inode, int mask) +@@ -542,6 +549,7 @@ int security_inode_permission(struct inode *inode, int mask) return 0; return security_ops->inode_permission(inode, mask); } @@ -258,7 +258,7 @@ index 860aeb3..ffb57bf 100644 int security_inode_setattr(struct dentry *dentry, struct iattr *attr) { -@@ -645,6 +653,7 @@ int security_file_permission(struct file *file, int mask) +@@ -663,6 +671,7 @@ int security_file_permission(struct file *file, int mask) return fsnotify_perm(file, mask); } @@ -266,7 +266,7 @@ index 860aeb3..ffb57bf 100644 int security_file_alloc(struct file *file) { -@@ -705,6 +714,7 @@ int security_mmap_file(struct file *file, unsigned long prot, +@@ -723,6 +732,7 @@ int security_mmap_file(struct file *file, unsigned long prot, return ret; return ima_file_mmap(file, prot); } |