Gentoo Archives: gentoo-commits

From: Yuta SATOH <nigoro.gentoo@×××××.com>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/gentoo-bsd:master commit in: sys-freebsd/freebsd-sources/files/, sys-freebsd/freebsd-sources/
Date: Thu, 29 Nov 2012 14:07:53
Message-Id: 1354198013.c2024950819c1f42785d7b82410381eb3a61dd8d.yuta_satoh@gentoo
1 commit: c2024950819c1f42785d7b82410381eb3a61dd8d
2 Author: Yuta SATOH <nigoro <AT> gentoo <DOT> gr <DOT> jp>
3 AuthorDate: Thu Nov 29 14:06:53 2012 +0000
4 Commit: Yuta SATOH <nigoro.gentoo <AT> 0x100 <DOT> com>
5 CommitDate: Thu Nov 29 14:06:53 2012 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/gentoo-bsd.git;a=commit;h=c2024950
7
8 added freebsd-sources, fixed security issue CVE-2012-4576 and bug 444918
9
10 ---
11 sys-freebsd/freebsd-sources/Manifest | 41 ++++++
12 .../files/freebsd-sources-6.0-flex-2.5.31.patch | 22 +++
13 .../files/freebsd-sources-6.1-ntfs.patch | 32 +++++
14 .../files/freebsd-sources-7.0-gentoo.patch | 35 +++++
15 .../freebsd-sources-7.0-tmpfs_whiteout_stub.patch | 44 ++++++
16 .../files/freebsd-sources-7.0-werror.patch | 27 ++++
17 .../files/freebsd-sources-7.1-asm.patch | 139 ++++++++++++++++++++
18 .../files/freebsd-sources-7.1-binutils_link.patch | 37 +++++
19 .../files/freebsd-sources-7.1-includes.patch | 13 ++
20 .../freebsd-sources-7.1-subnet-route-pr40133.patch | 21 +++
21 .../files/freebsd-sources-7.1-types.h-fix.patch | 15 ++
22 .../files/freebsd-sources-7.2-debug-O2.patch | 27 ++++
23 .../files/freebsd-sources-7.2-devfs7.patch | 15 ++
24 .../files/freebsd-sources-7.2-ipv6.patch | 25 ++++
25 .../files/freebsd-sources-7.2-null.patch | 47 +++++++
26 .../files/freebsd-sources-7.2-pipe.patch | 18 +++
27 .../files/freebsd-sources-7.2-sparc64.patch | 11 ++
28 .../files/freebsd-sources-7.2-zfs712.patch | 25 ++++
29 .../freebsd-sources-8.0-arpresolve_panic.patch | 18 +++
30 .../files/freebsd-sources-8.0-gentoo.patch | 33 +++++
31 .../files/freebsd-sources-8.0-mf626.patch | 24 ++++
32 .../files/freebsd-sources-8.0-sparc64.patch | 11 ++
33 .../freebsd-sources-8.0-subnet-route-pr40133.patch | 21 +++
34 .../files/freebsd-sources-8.0-werror.patch | 22 +++
35 .../files/freebsd-sources-8.0-zfs.patch | 23 ++++
36 .../files/freebsd-sources-8.2-unix2.patch | 55 ++++++++
37 .../freebsd-sources-9.0-disable-optimization.patch | 32 +++++
38 .../files/freebsd-sources-9.0-gentoo.patch | 33 +++++
39 .../files/freebsd-sources-9.0-ipv6refcount.patch | 128 ++++++++++++++++++
40 .../files/freebsd-sources-9.0-sysctluint.patch | 13 ++
41 .../files/freebsd-sources-9.1-MFC-r239588.patch | 122 +++++++++++++++++
42 .../files/freebsd-sources-9.1-gentoo.patch | 21 +++
43 .../files/freebsd-sources-cve-2012-0217.patch | 26 ++++
44 .../files/freebsd-sources-cve-2012-4576.patch | 16 +++
45 .../freebsd-sources/freebsd-sources-9.0-r5.ebuild | 103 +++++++++++++++
46 .../freebsd-sources-9.1_rc1-r1.ebuild | 101 ++++++++++++++
47 .../freebsd-sources-9.1_rc2-r1.ebuild | 101 ++++++++++++++
48 .../freebsd-sources-9.1_rc3-r1.ebuild | 93 +++++++++++++
49 38 files changed, 1590 insertions(+), 0 deletions(-)
50
51 diff --git a/sys-freebsd/freebsd-sources/Manifest b/sys-freebsd/freebsd-sources/Manifest
52 new file mode 100644
53 index 0000000..aa20473
54 --- /dev/null
55 +++ b/sys-freebsd/freebsd-sources/Manifest
56 @@ -0,0 +1,41 @@
57 +AUX freebsd-sources-6.0-flex-2.5.31.patch 826 SHA256 8aaf240a344106fc5434fd098eb6555a554d16513b71c95f93a93388021c3d99 SHA512 7183b1923019df12849e7d3984c4227d65275077cf95c3b0719b99dc852234eb3813db0e69e9c34bdfca45a59f7340209211d0b7a2a5074c2d1ad8ea0a3a3f64 WHIRLPOOL 620ae55a54333c55e44247aad76be467bdfa491dac646f65dc0e0b6b1a95fe8edf5087e9ed68abeac1ef6db1a91c0e673342bf44f8753b6b8a5dce889137cdcc
58 +AUX freebsd-sources-6.1-ntfs.patch 1043 SHA256 2eb0e22bea267d7ac41c3dec81682d3cc1f1744316ea39342e2aaae1f2dca469 SHA512 5401b50ed93bd9155b8adc3f0d6ec81b6e48431bb950cdf468be2e918553e19cd88a1988cdad49be2a34a1db44419cb9eb7067ff0fb1feb8b3f6373aa3c262ad WHIRLPOOL bf4821beae08e002f290286bc290b2bfeac86db46c1597232f06a23e505d720e34841393d9fb4d7276ff7b98c1c133aae5d58c3ec7b8f12712b51260b981bd14
59 +AUX freebsd-sources-7.0-gentoo.patch 1346 SHA256 c5930673345572ab3466c862ecb2aefa410931e541cf58b1ca4464827bb1646e SHA512 02de295bec462974fe2f629099de5b6bb5bfa3564b1a56501b416c5d0901f70598346770fdee6edf73c88b2ad2afacb4501d79d154ee9bd02f5babe6a57eac9e WHIRLPOOL 5487e4247984872f1689663b26998ef86888454a65100e33eaaccd84e8e49c0508af567ab08d009c64d343ce63c14dfe32c247c5435696a1948e33cd953f3d10
60 +AUX freebsd-sources-7.0-tmpfs_whiteout_stub.patch 1015 SHA256 7857fc90c6d5ed28d848146d50ab5bcd01f79ad3480ad1335929f08e45afbc44 SHA512 9dc96b967869efd7480785977764e879bf50978b5e609867e678574f9ed1476695690832bdb725eaebc8d93e83b4a0b3fe9f23b94e2de072a6540a168b13c4a7 WHIRLPOOL 6841f24f2d3ff569ff0e7bd4d628955c9b61b41aa039bdd1e736fa82f737842101c212d8ae8961d1db335e53ba332cdbec1d021a4c57520e426926981bca4512
61 +AUX freebsd-sources-7.0-werror.patch 948 SHA256 64d576efa55feefda2084ac2254f60318abf9c038db2f9f54df14278eff63d43 SHA512 c6f59ece684e37433df6163ed05b74a50ed7edeba1ab9b94fef61bbd985e2de09a9e60fd6f4263552aba9055ab9d6dd8f0faf9c57e9499cd930326d3cc4fe47f WHIRLPOOL f453aef850e5abb4765b144d1cf8b668c070b5c6b4e285af3c1c210cec51fb3129d4fbbd315d4190fdc14a78dd494569ad729ddf3cf6fca369b342f2f5498856
62 +AUX freebsd-sources-7.1-asm.patch 4185 SHA256 62724ee4426419dd8057c2fd1a3b22f1dc04df0e64f4785907691a75be2138db SHA512 8248967bcc5d0e80abb35b317f129d5ca07da0e61693899370140951045c9f8b53a3f71241264301d841f1d5fff2e651474053bccfd2f433a0fa49d3794a4e74 WHIRLPOOL f63881cfed17810644f61c3bb477015b02ab030cf647e0cc782856dee58f3693331cdde3ffe2c442cc992d1db9f7bd75b8b3ec0e2eced61d8a209dc52c39d952
63 +AUX freebsd-sources-7.1-binutils_link.patch 1297 SHA256 957c03640f3aac6141efa3e775f33fcadd501f920612055d0e00b3f80fcd8f17 SHA512 0e3aa342646d18429ed76e484d7e15d353d858f00bda906dae74b01b4e73f1b4ccfb6404590d79cb206da3a732528a4437813540a26292d697ccc3b964dabfb0 WHIRLPOOL 5108bd5a1bd49f94a7902b5b478528b29f1e15fe1e06f96a80de6fbf047eaf4f925f00fcd5f83085d44e86828dee50cc2efd150ece362bbd3ab24b292d9e7249
64 +AUX freebsd-sources-7.1-includes.patch 318 SHA256 70c73d0939325185430a3a133380f0bc10674cb8fbe5c7ebfe3b07630d023369 SHA512 f73db3fd72bdd2972ae25c3f661e7677bd5877aa623981303a4b0c5e9522fd458e294799a0ebad17ac3c639d588394b10ad5fcab4d88743a6dfcc8a8d60eecd7 WHIRLPOOL 5dca685df773113dff0c8aac16f244882728ad586b62b7c20df948240b097e89d1bb62f16ed181f2535e13835471754d8fdd0f4ef02b73ce5077b9169c958557
65 +AUX freebsd-sources-7.1-subnet-route-pr40133.patch 546 SHA256 e9ccfb24bb05122ec939f6ecbbee0447fe9281c3a7d80387402e058315435673 SHA512 db7e88a035bd1ea6ed7209b7ed2b26725a25578a3be6fb7e46c366ad06a4a2b548ef1010f90cf18bf99e270208584d9995191d1ff00fb0638d185e7d4ecc541a WHIRLPOOL 622cc78602bf8e23b5fee0a831e613c93f41c0e8ddbbab9cc689ee4d54be14f1165eae5ac56084f52a94f48a29bc75dc2f67be1d2ead3d35af0abc634a83985c
66 +AUX freebsd-sources-7.1-types.h-fix.patch 371 SHA256 9e745fcfe046c405a365d8d0db8763867f0a618952f7d6bab4c76a8c82273473 SHA512 133ab13e98c3f2dc5f96cd5e45cd11c4da9757f4ea64831a6e17b309bc4692e4213b48c7ab6dd634f1feb069ca2dfc3a8afe1585d0d1425b5304fd7494cd342f WHIRLPOOL d284dd82244a108e4677be143cfc302c18f18e5b39c39fcaa8915c61053d94bf7171e48028f40d25f8058f8ec910c3e55a3753ccecb46bbabbb0e5ba86e808e3
67 +AUX freebsd-sources-7.2-debug-O2.patch 771 SHA256 ad1fdd8a6dd53186793d70b65e1b37e3d3e7a4e50c32069aa535ae9f8e9aded8 SHA512 a74dacbd24c6130ec4c762a9c2df58a37d5fee2ee6fa4a970245b53837afa5ee3f72318b6e723e0591ddce00a5aa0fd66746a06783174d4edb9814e3a3724201 WHIRLPOOL 598f1e3282f5b8ebacd43835e148e5249737d8d7b240eaa459e5374444e0aeb39a692b01d3da5a8bec6aa44b8fe97879ce3bea739796688d8d6b365baac438b6
68 +AUX freebsd-sources-7.2-devfs7.patch 414 SHA256 9144a5052d09ce2bf3a33ad09e27351dc115c98b055a9b7b735dcdc372632071 SHA512 83a39e6b3d808c4c0afce5efe0d3b4689703167e8804f447227e18000e454be1030d0d26c4936502b97e6f6b96b1653d89bbed1f305b418c888ac68cf29b1e0e WHIRLPOOL 3f0a81f18dbba109094a876b1d3f36de98590864243a44e850e8c58a903af3d2e8d540bcc405d91a61eaf2b0ddeca503b91bf6449a80cf3ed36f36e352637abc
69 +AUX freebsd-sources-7.2-ipv6.patch 858 SHA256 909842ecf21d7a369b0f9445082142920c9021d978ad33858a92a23d33478151 SHA512 f68e530e36b60ab2fdc3ae324aad46f5d80be47322a27fc53dd6ce19e7f9dda703397e0e815e71335586738dbe5043f30c6c0428b87a66762c933ba1a208ddfa WHIRLPOOL 6e71815028e0f943a2ffa04872cfcb76d5c15aa0a95dd38e6dd410c24269202bd8a4568b8073884e92a4e5d8b1ae8dcb257e02d48fa9c08b35b9be18537e0b1c
70 +AUX freebsd-sources-7.2-null.patch 1529 SHA256 e617f280e8f957d6b0e1a09380ed7fc8370418b6b581fb2d49e09b1101f7c6c4 SHA512 2d3509d243c6cd04cad57c682b5c19fea57a86fdf1899e78cdd7f2ac1a03929bd22b16ae86da185dc9922403773dca8fb136981c49332537e15350d0eaebb6e1 WHIRLPOOL e19af844dad15086319bde20e5ae9ff392d8f7c5ca99d2e1a6cd1ed1b8601f0360a05187443f935cb90806a1acc6c2fb00b6274ce39c269bfc1be8042414aded
71 +AUX freebsd-sources-7.2-pipe.patch 771 SHA256 7f8b87ef0d7ba883627823709746cc02fb8590d4a81d1b2dd76803b40aa9190b SHA512 184d88e819fad8739c3618cbf30730c1a3a8883b896947e05000603d0960cfd420e905849795a82f3aeaac63d8c4990d90c57decf216e0f63b544d85600e6df2 WHIRLPOOL 9c342f6a7730f4f291813086f5c7711d837073bf6cb0c4340f0e36549dd15d2afc1c874f39cdb88d46fb94a59bdae3945ffe0f9aa1c3a013189d12d70e0d938d
72 +AUX freebsd-sources-7.2-sparc64.patch 446 SHA256 cc6d10c593c4f0122f9b9f55b80981bfd4fcd009e69606119d2eea62d94afa69 SHA512 6fc412fad0aa9e049436d94007ad3cd9f2c66feb19ab583b64d0f19015c1187cb1c59838482b97ca2e5499225feb109f9db38a5c1ad0465a6282f8cd888e4d66 WHIRLPOOL fca36c0000f85166bfa1b644f27e461a15c6d8b8ed29231f52ff6eb943c01e7bf7bc34fbb0c18cd946bd40adfaebf9d49ec04fc67c7db7ceb168f25807ecd50c
73 +AUX freebsd-sources-7.2-zfs712.patch 883 SHA256 8d69f079942092aa270f3d499aa90aa24af2138797b41cf69eafe770f002b367 SHA512 620c2489157fdb0400713665b99352202c4a7758af8c1621ab0e8a432c0b3a77e12467a3c5230023a124f65ef27445182f790d4a272aa8d7eda373f9ebe90014 WHIRLPOOL 02671dbb1704f63f9bdd67d6f8a6373d706eb14f44159ce0f3990b32a289c42e6a7c1dc509cee4783af38dac24538a79e5b13a6e4c8cbf9f0bd72ebdc6537ce1
74 +AUX freebsd-sources-8.0-arpresolve_panic.patch 603 SHA256 b33eb882b28267cf0826de9430de29c31bacbc0183264dee4c567019a9537fc1 SHA512 84b0790e8419fdd3d71c695b5d6abfdac458136d19cad9615ffcc0bcb116f56e33e9cb8137755010f171471f650348c7e129b9e7d6826bd88d84faf88af7d2bc WHIRLPOOL c0ae7134800825f1e6f7b2770e611c32acb5ef6305810d27dca10ff02a70f3c2c149851fed3664d9ce4eaba10ed556a41a7ff721cc34068cfa15d113e610e472
75 +AUX freebsd-sources-8.0-gentoo.patch 1138 SHA256 0bb6e4cb59bb6f5fd86c88bfd36ce8c9d148d96e8722f1d6a485f98ba892650c SHA512 677adbbbba367bda65f01b604a0a6235ac12d7b307857fa35c7722eb05e0a74d3cd35c03a9dfa56023b7869a865959c9edcfa601d841add92ff21a941d395ddc WHIRLPOOL bcf25d6f650f6435e7fa7c6d5888a1dbded300f0e4c9f595abc1386663b65fd378805efe1b8355c91efc357e0684ce7722526f93beae55a1102e813aaecbd711
76 +AUX freebsd-sources-8.0-mf626.patch 885 SHA256 23a77733b3ec15ce87519d9e7d087809bba69763676ad1ac409561a318de8da3 SHA512 7d2a8e12c0fe238cb833921792a52de648b5258365124f8bd7f14f26b102ba6fc47b546a019c9c710be4e8407635750013b7fe28c32c96ddc0743b8b06629cbd WHIRLPOOL 5d8fc674f08b43c80c19d366913080626a0d303f505957016b2e2a71cd849056e0fc903f4011a4c706b8f4b9e3877aa15093633f801842fceda43e76929a35e8
77 +AUX freebsd-sources-8.0-sparc64.patch 450 SHA256 77f5f26d6ef3502289a334bf3975b0b570ea9a8993050fcd889ef4102d3428fd SHA512 b0b86f423662afda204c90e483ffcf151679c497304d6ca2a241b4e5e1a642dc706d83ff4e4c51d6c8700e08d1fbdb018af14f4060f830e4180625c5a0ea109c WHIRLPOOL 8d4bd3f29ec40807766c19ba124f9181d8fb21edd56ddee5adffe25dcc8a11eab0e3d0f9042fb291a45e9f6743ba2e17e8d0f2575a1947b0d277ee3cdca32333
78 +AUX freebsd-sources-8.0-subnet-route-pr40133.patch 548 SHA256 091764c97f4148d2245c24dcfabebd53ef0b4f3175a140fd5b1132788e718ca1 SHA512 9ae65e2775302b664dd4e5f5cbc58fe1ca7db61b6182db10971660207c72ec74e542181f1c2aefcacd2fd4b54e10d371efc619c3c03a977c35d3cf67b99b7de5 WHIRLPOOL 01e27e011c94641498cf0c04a663e4f8f4844a57bd462aa38a1c23a8b3244e5eec226fb11b5e8e598de7227ac2d3dd33aaa98d16f6e7628329ac59e1e7ce62ae
79 +AUX freebsd-sources-8.0-werror.patch 718 SHA256 a8675081639004d576be3c9f2cdb11d586290dc65db4fc9b0ec4da5fe57392bd SHA512 fe700aef331df88231851fe8fa662bbbb576ff991eaaadeb7dedef96a505039c1e4cc2a34f31ff0665b4cda847dc10a23f15aacb0ef8534b7d5f0b8ceace1a0f WHIRLPOOL 10e9e87e84133074df2243dfce24802cb2d3e9b5274ee5d58a8d2810142492e0a203eb87fcac29af4cb5267c842cfabb674b8a455eede19fdb53be7367ded654
80 +AUX freebsd-sources-8.0-zfs.patch 926 SHA256 d9cf38d074ac26b04f8a36abc4c2a6c8fca52bc16d1cbcd1f87c8c233a0a64f5 SHA512 22dcd701141b8793bc5b12ec22fe8fb2839fb97cd2d713be6e8dca42b8dbb171f360299abcd4a1cce0f9900438c32a7d2614c00828d7abd823bf476217de8b21 WHIRLPOOL 8a2fb04ebc7172a9c947908f339d73003db10db4e1884b876fd29cd72624b0e9abfd77c640a81352dda388b14aa6985b59ecfcca8c5abf7fba90b917654d0b91
81 +AUX freebsd-sources-8.2-unix2.patch 1642 SHA256 6dd35d13a13f5e9333557a84b56c89fc4988d55bc3267cca72e8ca8ca169ce61 SHA512 a7f8166abc9883cab92a4b1ce038cefc3c00a6567fd79ebab96ccebbed7e230459dd8efc0b96ba2029a89b4b5d41305be87d0c40ad85fcfe4c819a4604b4490b WHIRLPOOL 5152dca64e3799cc9b6ffd97019c542f93082631489b9c0e03128a09a3d0c667da4220cfc67039c24d13a2cb527dd325db501029478d528c688c0c35cf2373c7
82 +AUX freebsd-sources-9.0-disable-optimization.patch 927 SHA256 e8ad8d8ed1f729b7b22839a7af93b3dd667f257b05db95f408c48b270003a486 SHA512 0b74874d42eab95994309b922f37ebbf3706d01db6c447c9f062b03e64b77c7f793bc297150b539acdf39530a8afd91f4bf824a87c674dd625a59056656c614b WHIRLPOOL 86f9586a3f07118f95e5fbce1a65fdd3be8dd701ed1bee1379ed2133cef3d9473b437826a13ec2a53c73f7b3e1003256d912a45eb80c86195749a8cd08f9813c
83 +AUX freebsd-sources-9.0-gentoo.patch 1194 SHA256 251178d014e62fbc3f20c26dd0e78401cc6691a848facd3ff2c7418ed7a43f22 SHA512 0c06b2e18ee8e97c8cc17eeaa50bd77a8a4fed0982cdc2f5cf3446b6020436bb91da256e8765a72ba4d384ebcb494f0b14c5302c4b956f540ff7374b6f55eea6 WHIRLPOOL 77a8bb44b6a18927eb21876672ece0bbfb79a57e29ea56df0eb484e5de37780156652330f03acfa7b8311b836d16ace56d52466a975cc036c3143c2994b14986
84 +AUX freebsd-sources-9.0-ipv6refcount.patch 3259 SHA256 18186ef2f9fc020c0da053953b9e8c8629c2302082e0ee172dd7e84a7104bdd5 SHA512 04d89da7ab4c50d3405ff18eea49f94ffff34375c6333a6bb84bc81a63046ba12f384d256e010dc1b64a186650c7ad4702403ed933e6a678d2c5ee4238b56658 WHIRLPOOL c0511b2fec1f2ecc8a6e3aba23808a4c60a4c94f45693b6f21a30cb01386e24969fcc9b655584c78a501524579f7e266993fdd6d565525740f4f8e04f47b55a9
85 +AUX freebsd-sources-9.0-sysctluint.patch 403 SHA256 884fbc5d6d3766ea3d4609946f56072f36f95368dc13ee316c330a46d42f0c9e SHA512 f3a87cb187858bc6fd1bafda3c3bd7bbda52b07239a50a7c1aa201df2c52a58d4809e196b8799b1949c8ca1a556519d454ad1789358540e3a96cd480fc0a504c WHIRLPOOL 1fd9852d59378b3fa8682886085f4f63ccd2a57806161b9a3ccb0cbe0c465be2e5620ed57942a8687656859e1a9df17c7d298ea66ec037514bbe7707783aa9f8
86 +AUX freebsd-sources-9.1-MFC-r239588.patch 3076 SHA256 c23f0f8b66c06e024413db49267d217225464c0f965d3ea4db07854c2e23458e SHA512 a11b6a7e7290a4c63dda13a15972cae57c21c0a23df8d3f7fe4679a2af273ea6b1be01b34e99148b4f61d83395f5453f65ccb3c2ebadfde57df02b9817e58e7b WHIRLPOOL 5ca75d43686d051e2282226ee4a82cc7e855353e409c1b08f98ea6b6a7d01b37b3bfac93483e6d5bf4883783a2608b4bb327cc5629877d77d4e1f2a68f1574e0
87 +AUX freebsd-sources-9.1-gentoo.patch 743 SHA256 f75e451259933aac8028ad0a2b6d9ee43d21bf40f7309e556d139c7a125392bd SHA512 9a7abc263c87134534d6f5a727e08c5f5c34b0272b8b03ddb89daf2ea27e4ec1e46d59202347e4b4154ac617e8c8fa8c29be95d498b54e392680b96fdd10cb6c WHIRLPOOL 237fbd8f3770442cc2692a2b62e83ecc732f54510d267a575a388de778f4b5c22a778d6fd8a69822ff8e782118c936e843e845c6461b0694ab357b261608a86e
88 +AUX freebsd-sources-cve-2012-0217.patch 856 SHA256 9b752e65a29b2b9a4a1412765d69d00310c05508af1cfa6d8d3c16d545bb3ffe SHA512 b1ac18cae23b81fd5ab2fcb44bb9f9808d6eb80f52b8572b81296fdd0b18edee62460520bc753848283d67e13367bf99775a2a5c6cf0272def9cdff6ec6fa4d9 WHIRLPOOL 27e4d0647c5275b77123bef6b866ac841af4b1b547fc663f776da82a7889995eba21b930adeabf2a71b3fbe053d2af5583cbdb6e8fd16a0379d10214d24b9121
89 +AUX freebsd-sources-cve-2012-4576.patch 561 SHA256 c3ad42e10164eaa3d928fd11a68b5ab490981b5d4684315e7e78c582e680d6c2 SHA512 451fb9be983672fa8d85d34bf13b67e70ac4bbda44da0c16ee484349bcf4e9ad795f66c36b5216bbcf022f709727dc19760e9f23b001a5768d9fa15dbad8122a WHIRLPOOL 2f261add2b2d9014782198b564a807f1a61917e0fbe91354ce5b1a685b27e312e699b7dc799f1653c952864633be84dda110e37f74378a3c5f1c5aacacb6811d
90 +DIST freebsd-sys-9.0.tar.bz2 30369960 SHA256 1c5e2181db9e92209933b1de9488109d88f0b2f15d07ee37aa491920e1990a54 SHA512 f9d465b06447535256ea0455274d39b1f2514e6d584b0b567f6f9be3881fbeef18798aecd81fe563526b5fa11c73cc60bd3c4290ceced12accaa80775b4a67c5 WHIRLPOOL ffd1e99b41421e9feb9bad796818812243bb070fdb54bde385a89bb8322effbd78df713b08df8b013732f8ed2e6e7c801942022712a76be1740f15bde8efe102
91 +DIST freebsd-sys-9.1_rc1.tar.bz2 32607060 SHA256 0f375b358f5c407c16308a4884207b97022a7a5466e0291087642685f3c83957 SHA512 7aced802f7dd72cee12bdc7311d10137c73eedc9c661e81524b4a91b27df85b947d2b13f18345fa40325e6f87c759023af2620956353d0753653e230fcbfbd9d WHIRLPOOL a0849c14427c5920140a67bb693f54502bbe0860516b41090fb7f84628e4f55e1d0b26e83efbb013c59d57a9136249d8a0dce5b9ac76f0909c604960f56af45f
92 +DIST freebsd-sys-9.1_rc2.tar.bz2 32602564 SHA256 9b4914b1d5aae492af14c2fb28be5c28d98db43b8642bf397d261b982dbd78ac SHA512 5bf3729849b3d090542ee99995182663c2ccdc004a5ed8ff8792ad01b9db0fdaa9d37bcfed47dd4df25c9aa7121c91bd5acf34fe396e760a6b2ee015d07d69bf WHIRLPOOL 18b61b90e3f978c531bfa3001bc195deb4ac780234e5725b2f4140b0b8e56c00acd9ddfc98e26f50ff6fecb17e3925e7fba4fdda1a337ec34a374994c4ad9caa
93 +DIST freebsd-sys-9.1_rc3.tar.bz2 32605500 SHA256 5194ac93850aff4f10978b739573ab8ee54a95a0b2d4e46f754314ae381b442b SHA512 17cd41ea66bf1d2e10b56001e6e1c80db78e1572aff4ad1ac945bc24d38dfef612e1a4b7eead8bc50b94df798b0bde3dcc13a0596860322569272b3239a30b9b WHIRLPOOL 8628c5a97675b3fe4ebfcb92c4fb6d5aebaa3a11551e4f16004a6ffb23b3d10334b623c70f255762038bf1fc80a7a27abd587f10ac9706ac1bb0b22adda266b8
94 +EBUILD freebsd-sources-9.0-r5.ebuild 3500 SHA256 b4a8c11875d3cc40eddaf160aa6a69dea9e283c1d1f3578dad38fb2462b7e2dc SHA512 b4e7022f6a7780493754c8b38ae9c881808b08f4911a3af2e98c19c7a065f29fc864d173efb9c5336f8631c0a84cd8335fa12d3b73a308871ab28fd28fea56db WHIRLPOOL 15fe9da8c9a3da0d98e708bbd474062a5372e23fa6b0bb244c91456a7ff16afad425445309249ce0a7195b331d97bce9f066703e9e785dfc153684c7f91f1cdd
95 +EBUILD freebsd-sources-9.1_rc1-r1.ebuild 3405 SHA256 7526cda92e47f09341694d97abea7547da5b32cedf5d421988cb33aa4dd08d4a SHA512 66ff107e9bb881f590eaa0e0614b0fbadb9f4e917682d628d57bfc7e009699b15577377d82e16cb50b0cfec63de339470c53a4e659c4a2cf8e17034fd13dcb49 WHIRLPOOL c9f0eaa2e1283da17f096c958d6039ec42bf0a81865a8c15d7243bd1d985d5d4e0f1ac46fc508816664756e705b29d0447ffdc35020dbd000ea8cce318ea974c
96 +EBUILD freebsd-sources-9.1_rc2-r1.ebuild 3405 SHA256 26b0d4f381fb6394be4ea62873193b08d98b40f0268de5ee80bf21e95edb926e SHA512 af9047e05e2f3121a414dd3ea952dbd441ad39fede1642a5b783bf3d07e56b3862e27097bb613ac9d352b7ac5db677302b363a5436c3b8191a44a9e6292005a6 WHIRLPOOL f50e4a56f9478c0f2ecbad7e49402aa5ec440d0c5f421343acfd3d94c52a4303544a962b46a9f7d6d627fd572c937659a31e5bb96e90e5ca07c17230eeb2565d
97 +EBUILD freebsd-sources-9.1_rc3-r1.ebuild 3065 SHA256 772badc11b6c18b04019ab3ce3dbbec2bf72b9ce00a599080ac1fa1413ae1986 SHA512 2e0f1f5556839b65c8f2a7b8231d0bc0e264496e903c083a642382f08ea6653d56613dda9058c1a5ee8cf67952e01d87d062ff39899ae8e109c1bf35e6f8bea6 WHIRLPOOL 0de540be2a35639786fdaf7cd6ea1b111ed516a9b3350636f3c946c22372fa1b63e339151cc6233ee81741972a3dca9f8cde09aef480b8c1b2154a01213b3a2a
98
99 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-6.0-flex-2.5.31.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-6.0-flex-2.5.31.patch
100 new file mode 100644
101 index 0000000..88710cf
102 --- /dev/null
103 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-6.0-flex-2.5.31.patch
104 @@ -0,0 +1,22 @@
105 +Index: fbsd-6/sys/dev/aic7xxx/aicasm/aicasm_scan.l
106 +===================================================================
107 +--- fbsd-6.orig/sys/dev/aic7xxx/aicasm/aicasm_scan.l
108 ++++ fbsd-6/sys/dev/aic7xxx/aicasm/aicasm_scan.l
109 +@@ -528,7 +528,7 @@ expand_macro(struct symbol *macro_symbol
110 +
111 + /* Put back everything up until the replacement. */
112 + while (body_pos > next_match)
113 +- unput(*--body_pos);
114 ++ yyunput(*--body_pos, body_head);
115 +
116 + /* Perform the replacement. */
117 + if (match_marg != NULL) {
118 +@@ -537,7 +537,7 @@ expand_macro(struct symbol *macro_symbol
119 + next_match = match_marg->replacement_text;
120 + strp = next_match + strlen(next_match);
121 + while (strp > next_match)
122 +- unput(*--strp);
123 ++ yyunput(*--strp, next_match);
124 +
125 + /* Skip past the unexpanded macro arg. */
126 + body_pos -= match.rm_eo - match.rm_so;
127
128 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-6.1-ntfs.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-6.1-ntfs.patch
129 new file mode 100644
130 index 0000000..e74fcd3
131 --- /dev/null
132 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-6.1-ntfs.patch
133 @@ -0,0 +1,32 @@
134 +--- sys/fs/ntfs/ntfs_vnops.c.orig 2006-10-17 17:31:36 -0300
135 ++++ sys/fs/ntfs/ntfs_vnops.c 2006-10-17 17:30:24 -0300
136 +@@ -507,8 +507,12 @@
137 +
138 + /* Simulate . in every dir except ROOT */
139 + if( ip->i_number != NTFS_ROOTINO ) {
140 +- struct dirent dot = { NTFS_ROOTINO,
141 +- sizeof(struct dirent), DT_DIR, 1, "." };
142 ++ struct dirent dot;
143 ++ dot.d_fileno = NTFS_ROOTINO;
144 ++ dot.d_reclen = sizeof(struct dirent);
145 ++ dot.d_type = DT_DIR;
146 ++ dot.d_namlen = 1;
147 ++ bcopy(".", dot.d_name, 1);
148 +
149 + if( uio->uio_offset < sizeof(struct dirent) ) {
150 + dot.d_fileno = ip->i_number;
151 +@@ -522,8 +526,12 @@
152 +
153 + /* Simulate .. in every dir including ROOT */
154 + if( uio->uio_offset < 2 * sizeof(struct dirent) ) {
155 +- struct dirent dotdot = { NTFS_ROOTINO,
156 +- sizeof(struct dirent), DT_DIR, 2, ".." };
157 ++ struct dirent dotdot;
158 ++ dotdot.d_fileno = NTFS_ROOTINO;
159 ++ dotdot.d_reclen = sizeof(struct dirent);
160 ++ dotdot.d_type = DT_DIR;
161 ++ dotdot.d_namlen = 2;
162 ++ bcopy("..", dotdot.d_name, 2);
163 +
164 + error = uiomove((char *)&dotdot,sizeof(struct dirent),uio);
165 + if(error)
166
167 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-7.0-gentoo.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.0-gentoo.patch
168 new file mode 100644
169 index 0000000..7da5197
170 --- /dev/null
171 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.0-gentoo.patch
172 @@ -0,0 +1,35 @@
173 +diff -ur ../src.orig/sys/conf/kern.mk ./sys/conf/kern.mk
174 +--- ../src.orig/sys/conf/kern.mk 2007-05-24 23:53:42.000000000 +0200
175 ++++ ./sys/conf/kern.mk 2008-03-14 14:37:47.216420518 +0100
176 +@@ -12,7 +12,7 @@
177 + .else
178 + CWARNFLAGS?= -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes \
179 + -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual \
180 +- ${_wundef} ${_Wno_pointer_sign} -fformat-extensions
181 ++ ${_wundef} ${_Wno_pointer_sign}
182 + .if !defined(WITH_GCC3)
183 + _Wno_pointer_sign=-Wno-pointer-sign
184 + .endif
185 +@@ -36,7 +36,7 @@
186 + # reserved for user applications.
187 + #
188 + .if ${MACHINE_ARCH} == "i386" && ${CC} != "icc"
189 +-CFLAGS+= -mno-align-long-strings -mpreferred-stack-boundary=2 \
190 ++CFLAGS+= -mpreferred-stack-boundary=2 \
191 + -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3
192 + INLINE_LIMIT?= 8000
193 + .endif
194 +Only in ./sys/conf: kern.mk.rej
195 +Only in ./sys/conf: kern.mk~
196 +diff -ur ../src.orig/sys/dev/aic7xxx/aicasm/Makefile ./sys/dev/aic7xxx/aicasm/Makefile
197 +--- ../src.orig/sys/dev/aic7xxx/aicasm/Makefile 2005-11-21 15:41:10.000000000 +0100
198 ++++ ./sys/dev/aic7xxx/aicasm/Makefile 2008-03-14 14:36:35.859698365 +0100
199 +@@ -14,7 +14,7 @@
200 + SRCS= ${GENHDRS} ${CSRCS} ${YSRCS} ${LSRCS}
201 + CLEANFILES+= ${GENHDRS} ${YSRCS:R:C/(.*)/\1.output/g}
202 + DPADD= ${LIBL}
203 +-LDADD= -ll
204 ++LDADD= -lfl
205 +
206 + # Correct path for kernel builds
207 + # Don't rely on the kernel's .depend file
208
209 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-7.0-tmpfs_whiteout_stub.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.0-tmpfs_whiteout_stub.patch
210 new file mode 100644
211 index 0000000..13524ef
212 --- /dev/null
213 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.0-tmpfs_whiteout_stub.patch
214 @@ -0,0 +1,44 @@
215 +diff -ur sys/fs/tmpfs.orig/tmpfs_vnops.c sys/fs/tmpfs/tmpfs_vnops.c
216 +--- sys/fs/tmpfs.orig/tmpfs_vnops.c 2008-06-22 12:17:48 -0300
217 ++++ sys/fs/tmpfs/tmpfs_vnops.c 2008-06-28 12:05:10 -0300
218 +@@ -1459,6 +1459,30 @@
219 + return (0);
220 + }
221 +
222 ++
223 ++/* --------------------------------------------------------------------- */
224 ++/* This does absolutely nothing */
225 ++#ifdef GENTOO_LIVECD
226 ++static int
227 ++tmpfs_whiteout(struct vop_whiteout_args *ap)
228 ++{
229 ++ switch (ap->a_flags) {
230 ++ case LOOKUP:
231 ++ return (0);
232 ++ break;
233 ++ case CREATE:
234 ++ return(EOPNOTSUPP);
235 ++ break;
236 ++ case DELETE:
237 ++ return (0);
238 ++ break;
239 ++ default:
240 ++ return(EOPNOTSUPP);
241 ++ }
242 ++ return(0);
243 ++}
244 ++#endif
245 ++
246 + /* --------------------------------------------------------------------- */
247 +
248 + /*
249 +@@ -1484,6 +1508,9 @@
250 + .vop_mkdir = tmpfs_mkdir,
251 + .vop_rmdir = tmpfs_rmdir,
252 + .vop_symlink = tmpfs_symlink,
253 ++#ifdef GENTOO_LIVECD
254 ++ .vop_whiteout = tmpfs_whiteout,
255 ++#endif
256 + .vop_readdir = tmpfs_readdir,
257 + .vop_readlink = tmpfs_readlink,
258 + .vop_inactive = tmpfs_inactive,
259
260 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-7.0-werror.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.0-werror.patch
261 new file mode 100644
262 index 0000000..3a2be63
263 --- /dev/null
264 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.0-werror.patch
265 @@ -0,0 +1,27 @@
266 +diff -ur ../src.orig/sys/conf/kern.pre.mk ./sys/conf/kern.pre.mk
267 +--- ../src.orig/sys/conf/kern.pre.mk 2007-08-08 21:12:06.000000000 +0200
268 ++++ ./sys/conf/kern.pre.mk 2008-03-14 14:10:03.183569137 +0100
269 +@@ -90,7 +90,7 @@
270 + .if ${MACHINE_ARCH} == "amd64" || ${MACHINE} == "i386" || \
271 + ${MACHINE_ARCH} == "ia64" || ${MACHINE_ARCH} == "powerpc" || \
272 + ${MACHINE_ARCH} == "sparc64"
273 +-WERROR?= -Werror
274 ++WERROR?= -Wno-error
275 + .endif
276 + .endif
277 +
278 +Only in ./sys/conf: kern.pre.mk.rej
279 +Only in ./sys/conf: kern.pre.mk~
280 +diff -ur ../src.orig/sys/conf/kmod.mk ./sys/conf/kmod.mk
281 +--- ../src.orig/sys/conf/kmod.mk 2007-07-11 03:20:37.000000000 +0200
282 ++++ ./sys/conf/kmod.mk 2008-03-14 14:11:21.856366378 +0100
283 +@@ -79,7 +79,6 @@
284 + . if !empty(CFLAGS:M-O[23s]) && empty(CFLAGS:M-fno-strict-aliasing)
285 + CFLAGS+= -fno-strict-aliasing
286 + . endif
287 +-#WERROR?= -Werror
288 + .endif
289 + CFLAGS+= ${WERROR}
290 + CFLAGS+= -D_KERNEL
291 +Only in ./sys/conf: kmod.mk.rej
292 +Only in ./sys/conf: kmod.mk~
293
294 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-7.1-asm.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.1-asm.patch
295 new file mode 100644
296 index 0000000..c0f5d78
297 --- /dev/null
298 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.1-asm.patch
299 @@ -0,0 +1,139 @@
300 +diff -ur ../src.orig/sys/compat/ndis/winx32_wrap.S ./sys/compat/ndis/winx32_wrap.S
301 +--- ../src.orig/sys/compat/ndis/winx32_wrap.S 2006-06-12 22:35:59.000000000 +0200
302 ++++ ./sys/compat/ndis/winx32_wrap.S 2008-03-14 14:00:41.949886084 +0100
303 +@@ -369,7 +369,7 @@
304 + ret
305 +
306 + ENTRY(x86_setfs)
307 +- movl 4(%esp),%fs
308 ++ movw 4(%esp),%fs
309 + ret
310 +
311 + ENTRY(x86_gettid)
312 +diff -ur ../src.orig/sys/i386/i386/locore.s ./sys/i386/i386/locore.s
313 +--- ../src.orig/sys/i386/i386/locore.s 2007-03-24 20:53:22.000000000 +0100
314 ++++ ./sys/i386/i386/locore.s 2008-03-14 14:00:41.946886262 +0100
315 +@@ -358,7 +358,7 @@
316 + pushl %eax
317 + testl $PSL_VM,UC_EFLAGS(%eax)
318 + jne 1f
319 +- movl UC_GS(%eax),%gs /* restore %gs */
320 ++ movw UC_GS(%eax),%gs /* restore %gs */
321 + 1:
322 + movl $SYS_sigreturn,%eax
323 + pushl %eax /* junk to fake return addr. */
324 +@@ -375,7 +375,7 @@
325 + pushl %eax
326 + testl $PSL_VM,UC4_EFLAGS(%eax)
327 + jne 1f
328 +- movl UC4_GS(%eax),%gs /* restore %gs */
329 ++ movw UC4_GS(%eax),%gs /* restore %gs */
330 + 1:
331 + movl $344,%eax /* 4.x SYS_sigreturn */
332 + pushl %eax /* junk to fake return addr. */
333 +@@ -393,7 +393,7 @@
334 + pushl %eax
335 + testl $PSL_VM,SC_PS(%eax)
336 + jne 9f
337 +- movl SC_GS(%eax),%gs /* restore %gs */
338 ++ movw SC_GS(%eax),%gs /* restore %gs */
339 + 9:
340 + movl $103,%eax /* 3.x SYS_sigreturn */
341 + pushl %eax /* junk to fake return addr. */
342 +diff -ur ../src.orig/sys/i386/i386/swtch.s ./sys/i386/i386/swtch.s
343 +--- ../src.orig/sys/i386/i386/swtch.s 2007-08-22 07:06:14.000000000 +0200
344 ++++ ./sys/i386/i386/swtch.s 2008-03-14 14:00:41.948886237 +0100
345 +@@ -130,7 +130,7 @@
346 + movl %ebp,PCB_EBP(%edx)
347 + movl %esi,PCB_ESI(%edx)
348 + movl %edi,PCB_EDI(%edx)
349 +- movl %gs,PCB_GS(%edx)
350 ++ movw %gs,PCB_GS(%edx)
351 + pushfl /* PSL */
352 + popl PCB_PSL(%edx)
353 + /* Test if debug registers should be saved. */
354 +@@ -301,7 +301,7 @@
355 + /* This must be done after loading the user LDT. */
356 + .globl cpu_switch_load_gs
357 + cpu_switch_load_gs:
358 +- movl PCB_GS(%edx),%gs
359 ++ movw PCB_GS(%edx),%gs
360 +
361 + /* Test if debug registers should be restored. */
362 + testl $PCB_DBREGS,PCB_FLAGS(%edx)
363 +@@ -371,7 +371,7 @@
364 + movl %ebp,PCB_EBP(%ecx)
365 + movl %esi,PCB_ESI(%ecx)
366 + movl %edi,PCB_EDI(%ecx)
367 +- movl %gs,PCB_GS(%ecx)
368 ++ movw %gs,PCB_GS(%ecx)
369 + pushfl
370 + popl PCB_PSL(%ecx)
371 +
372 +diff -ur ../src.orig/sys/i386/include/cpufunc.h ./sys/i386/include/cpufunc.h
373 +--- ../src.orig/sys/i386/include/cpufunc.h 2007-08-09 22:14:35.000000000 +0200
374 ++++ ./sys/i386/include/cpufunc.h 2008-03-14 14:03:09.264377451 +0100
375 +@@ -452,7 +452,7 @@
376 + rfs(void)
377 + {
378 + u_int sel;
379 +- __asm __volatile("movl %%fs,%0" : "=rm" (sel));
380 ++ __asm __volatile("movw %%fs,%0" : "=rm" (sel));
381 + return (sel);
382 + }
383 +
384 +@@ -468,7 +468,7 @@
385 + rgs(void)
386 + {
387 + u_int sel;
388 +- __asm __volatile("movl %%gs,%0" : "=rm" (sel));
389 ++ __asm __volatile("movw %%gs,%0" : "=rm" (sel));
390 + return (sel);
391 + }
392 +
393 +@@ -492,7 +492,7 @@
394 + rss(void)
395 + {
396 + u_int sel;
397 +- __asm __volatile("movl %%ss,%0" : "=rm" (sel));
398 ++ __asm __volatile("movw %%ss,%0" : "=rm" (sel));
399 + return (sel);
400 + }
401 +
402 +@@ -507,13 +507,13 @@
403 + static __inline void
404 + load_fs(u_int sel)
405 + {
406 +- __asm __volatile("movl %0,%%fs" : : "rm" (sel));
407 ++ __asm __volatile("movw %0,%%fs" : : "rm" (sel));
408 + }
409 +
410 + static __inline void
411 + load_gs(u_int sel)
412 + {
413 +- __asm __volatile("movl %0,%%gs" : : "rm" (sel));
414 ++ __asm __volatile("movw %0,%%gs" : : "rm" (sel));
415 + }
416 +
417 + static __inline void
418 +diff -ur ../src.orig/sys/i386/linux/linux_locore.s ./sys/i386/linux/linux_locore.s
419 +--- ../src.orig/sys/i386/linux/linux_locore.s 2001-02-25 07:29:01.000000000 +0100
420 ++++ ./sys/i386/linux/linux_locore.s 2008-03-14 14:00:41.949886084 +0100
421 +@@ -8,7 +8,7 @@
422 + NON_GPROF_ENTRY(linux_sigcode)
423 + call *LINUX_SIGF_HANDLER(%esp)
424 + leal LINUX_SIGF_SC(%esp),%ebx /* linux scp */
425 +- movl LINUX_SC_GS(%ebx),%gs
426 ++ movw LINUX_SC_GS(%ebx),%gs
427 + movl %esp, %ebx /* pass sigframe */
428 + push %eax /* fake ret addr */
429 + movl $LINUX_SYS_linux_sigreturn,%eax /* linux_sigreturn() */
430 +@@ -20,7 +20,7 @@
431 + call *LINUX_RT_SIGF_HANDLER(%esp)
432 + leal LINUX_RT_SIGF_UC(%esp),%ebx /* linux ucp */
433 + leal LINUX_RT_SIGF_SC(%ebx),%ecx /* linux sigcontext */
434 +- movl LINUX_SC_GS(%ecx),%gs
435 ++ movw LINUX_SC_GS(%ecx),%gs
436 + push %eax /* fake ret addr */
437 + movl $LINUX_SYS_linux_rt_sigreturn,%eax /* linux_rt_sigreturn() */
438 + int $0x80 /* enter kernel with args */
439
440 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-7.1-binutils_link.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.1-binutils_link.patch
441 new file mode 100644
442 index 0000000..43d01ba
443 --- /dev/null
444 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.1-binutils_link.patch
445 @@ -0,0 +1,37 @@
446 +diff -ruN sys.orig/conf/kern.post.mk sys/conf/kern.post.mk
447 +--- sys.orig/conf/kern.post.mk 2007-03-23 18:55:59 -0300
448 ++++ sys/conf/kern.post.mk 2008-06-18 19:51:13 -0300
449 +@@ -85,7 +85,9 @@
450 + ${FULLKERNEL}: ${SYSTEM_DEP} vers.o
451 + @rm -f ${.TARGET}
452 + @echo linking ${.TARGET}
453 +- ${SYSTEM_LD}
454 ++ ${SYSTEM_LD} -o ${.TARGET}.tmp
455 ++ @sh $S/tools/gen-ld-u-options ${.TARGET}.tmp > ${.TARGET}.lopt
456 ++ ${SYSTEM_LD} "@${.TARGET}.lopt"
457 + .if defined(CTFMERGE)
458 + ${SYSTEM_CTFMERGE}
459 + .endif
460 +diff -ruN sys.orig/conf/kmod.mk sys/conf/kmod.mk
461 +--- sys.orig/conf/kmod.mk 2008-06-18 09:11:53 -0300
462 ++++ sys/conf/kmod.mk 2008-06-18 19:50:01 -0300
463 +@@ -176,7 +176,8 @@
464 +
465 + .if ${MACHINE_ARCH} != amd64
466 + ${FULLPROG}: ${KMOD}.kld
467 +- ${LD} -Bshareable ${LDFLAGS} -o ${.TARGET} ${KMOD}.kld
468 ++ sh ./@/tools/gen-ld-u-options ${KMOD}.kld > ${KMOD}.lopt
469 ++ ${LD} -Bshareable ${LDFLAGS} -o ${.TARGET} ${KMOD}.kld "@${KMOD}.lopt"
470 + .if !defined(DEBUG_FLAGS)
471 + ${OBJCOPY} --strip-debug ${.TARGET}
472 + .endif
473 +diff -ruN sys.orig/tools/gen-ld-u-options sys/tools/gen-ld-u-options
474 +--- sys.orig/tools/gen-ld-u-options 1969-12-31 21:00:00 -0300
475 ++++ sys/tools/gen-ld-u-options 2008-06-18 19:47:56 -0300
476 +@@ -0,0 +1,6 @@
477 ++#!/bin/sh
478 ++
479 ++for i in `objdump -h -w $1 | grep set_ | cut -c5- | cut -f1 -d " "`
480 ++do
481 ++ echo -n " -u __start_$i -u __stop_$i "
482 ++done
483
484 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-7.1-includes.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.1-includes.patch
485 new file mode 100644
486 index 0000000..3db46fa
487 --- /dev/null
488 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.1-includes.patch
489 @@ -0,0 +1,13 @@
490 +Make headers usable alone, include the headers they need.
491 +There are probably much more missing.
492 +
493 +--- sys/net/if.h.old 2009-05-15 10:51:50 +0000
494 ++++ sys/net/if.h 2009-05-15 10:52:05 +0000
495 +@@ -34,6 +34,7 @@
496 + #define _NET_IF_H_
497 +
498 + #include <sys/cdefs.h>
499 ++#include <sys/socket.h>
500 +
501 + #ifdef _KERNEL
502 + #include <sys/queue.h>
503
504 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-7.1-subnet-route-pr40133.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.1-subnet-route-pr40133.patch
505 new file mode 100644
506 index 0000000..1184280
507 --- /dev/null
508 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.1-subnet-route-pr40133.patch
509 @@ -0,0 +1,21 @@
510 +Fixes changing the default subnet route after removing an ip address.
511 +
512 +See: http://www.netbsd.org/cgi-bin/query-pr-single.pl?number=40133
513 +and http://mail-index.netbsd.org/tech-net/2008/12/03/msg000896.html
514 +
515 +Thanks to Roy Marples.
516 +--- sys/netinet/in.c.orig
517 ++++ sys/netinet/in.c
518 +@@ -858,6 +858,12 @@
519 + error = rtinit(&target->ia_ifa, (int)RTM_ADD, flags);
520 + if (!error)
521 + target->ia_flags |= IFA_ROUTE;
522 ++ else if (error == EEXIST) {
523 ++ /*
524 ++ * the fact that the route already exists is not an error.
525 ++ */
526 ++ error = 0;
527 ++ }
528 + return error;
529 + }
530 +
531
532 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-7.1-types.h-fix.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.1-types.h-fix.patch
533 new file mode 100644
534 index 0000000..8de5df2
535 --- /dev/null
536 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.1-types.h-fix.patch
537 @@ -0,0 +1,15 @@
538 +Fixes a compile error if XOPEN_SOURCE 600 is defined.
539 +
540 +See: http://www.mailinglistarchive.com/freebsd-current@×××××××.org/msg15011.html
541 +
542 +--- sys/sys/types.h.orig
543 ++++ sys/sys/types.h
544 +@@ -46,7 +46,7 @@
545 +
546 + #include <sys/_pthreadtypes.h>
547 +
548 +-#if __BSD_VISIBLE
549 ++#ifndef _POSIX_SOURCE
550 + typedef unsigned char u_char;
551 + typedef unsigned short u_short;
552 + typedef unsigned int u_int;
553
554 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-debug-O2.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-debug-O2.patch
555 new file mode 100644
556 index 0000000..4fa3565
557 --- /dev/null
558 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-debug-O2.patch
559 @@ -0,0 +1,27 @@
560 +My UltraSPARC U5 panics on boot about a memory alignment error when compiled
561 +with gcc4 and -O. Compiling with -O2 fixes this, and it should not adversly
562 +affect debugging.
563 +
564 +NOTE: This does not fix the memory alignment panic when loading kernel modules.
565 +
566 +Roy Marples (uberlord@g.o)
567 +
568 +--- sys/conf/kern.pre.mk.old 2009-05-22 10:09:46 +0000
569 ++++ sys/conf/kern.pre.mk 2009-05-22 10:10:27 +0000
570 +@@ -22,15 +22,13 @@
571 + COPTFLAGS?= -O
572 + .else
573 + . if defined(DEBUG)
574 +-_MINUS_O= -O
575 + CTFFLAGS+= -g
576 + . else
577 +-_MINUS_O= -O2
578 + . endif
579 + . if ${MACHINE_ARCH} == "amd64"
580 + COPTFLAGS?=-O2 -frename-registers -pipe
581 + . else
582 +-COPTFLAGS?=${_MINUS_O} -pipe
583 ++COPTFLAGS?=-O2 -pipe
584 + . endif
585 + . if !empty(COPTFLAGS:M-O[23s]) && empty(COPTFLAGS:M-fno-strict-aliasing)
586 + COPTFLAGS+= -fno-strict-aliasing
587
588 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-devfs7.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-devfs7.patch
589 new file mode 100644
590 index 0000000..e1fcefb
591 --- /dev/null
592 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-devfs7.patch
593 @@ -0,0 +1,15 @@
594 +http://security.freebsd.org/advisories/FreeBSD-SA-09:14.devfs.asc
595 +
596 +Index: sys/fs/devfs/devfs_vnops.c
597 +===================================================================
598 +--- sys/fs/devfs/devfs_vnops.c (revision 192300)
599 ++++ sys/fs/devfs/devfs_vnops.c (revision 192301)
600 +@@ -890,6 +890,7 @@
601 + if (fp != NULL) {
602 + FILE_LOCK(fp);
603 + fp->f_data = dev;
604 ++ fp->f_vnode = vp;
605 + FILE_UNLOCK(fp);
606 + }
607 + fpop = td->td_fpop;
608 +
609
610 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-ipv6.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-ipv6.patch
611 new file mode 100644
612 index 0000000..de8e0ac
613 --- /dev/null
614 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-ipv6.patch
615 @@ -0,0 +1,25 @@
616 +http://security.freebsd.org/advisories/FreeBSD-SA-09:10.ipv6.asc
617 +
618 +Index: sys/netinet6/in6.c
619 +===================================================================
620 +RCS file: /home/ncvs/src/sys/netinet6/in6.c,v
621 +retrieving revision 1.109
622 +diff -p -u -I__FBSDID -I$FreeBSD -u -r1.109 in6.c
623 +--- sys/netinet6/in6.c 27 May 2009 14:11:23 -0000 1.109
624 ++++ sys/netinet6/in6.c 8 Jun 2009 18:02:59 -0000
625 +@@ -215,6 +215,7 @@ in6_control(struct socket *so, u_long cm
626 + case SIOCSRTRFLUSH_IN6:
627 + case SIOCSDEFIFACE_IN6:
628 + case SIOCSIFINFO_FLAGS:
629 ++ case SIOCSIFINFO_IN6:
630 + if (td != NULL) {
631 + error = priv_check(td, PRIV_NETINET_ND6);
632 + if (error)
633 +@@ -223,7 +224,6 @@ in6_control(struct socket *so, u_long cm
634 + /* FALLTHROUGH */
635 + case OSIOCGIFINFO_IN6:
636 + case SIOCGIFINFO_IN6:
637 +- case SIOCSIFINFO_IN6:
638 + case SIOCGDRLST_IN6:
639 + case SIOCGPRLST_IN6:
640 + case SIOCGNBRINFO_IN6:
641
642 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-null.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-null.patch
643 new file mode 100644
644 index 0000000..16e5023
645 --- /dev/null
646 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-null.patch
647 @@ -0,0 +1,47 @@
648 +http://security.freebsd.org/advisories/FreeBSD-EN-09:05.null.asc
649 +
650 +Index: sys/kern/kern_exec.c
651 +===================================================================
652 +--- sys/kern/kern_exec.c (revision 197682)
653 ++++ sys/kern/kern_exec.c (working copy)
654 +@@ -122,6 +122,11 @@
655 + SYSCTL_ULONG(_kern, OID_AUTO, ps_arg_cache_limit, CTLFLAG_RW,
656 + &ps_arg_cache_limit, 0, "");
657 +
658 ++static int map_at_zero = 1;
659 ++TUNABLE_INT("security.bsd.map_at_zero", &map_at_zero);
660 ++SYSCTL_INT(_security_bsd, OID_AUTO, map_at_zero, CTLFLAG_RW, &map_at_zero, 0,
661 ++ "Permit processes to map an object at virtual address 0.");
662 ++
663 + static int
664 + sysctl_kern_ps_strings(SYSCTL_HANDLER_ARGS)
665 + {
666 +@@ -939,7 +944,7 @@
667 + int error;
668 + struct proc *p = imgp->proc;
669 + struct vmspace *vmspace = p->p_vmspace;
670 +- vm_offset_t stack_addr;
671 ++ vm_offset_t sv_minuser, stack_addr;
672 + vm_map_t map;
673 + u_long ssiz;
674 +
675 +@@ -955,13 +960,17 @@
676 + * not disrupted
677 + */
678 + map = &vmspace->vm_map;
679 +- if (vmspace->vm_refcnt == 1 && vm_map_min(map) == sv->sv_minuser &&
680 ++ if (map_at_zero)
681 ++ sv_minuser = sv->sv_minuser;
682 ++ else
683 ++ sv_minuser = MAX(sv->sv_minuser, PAGE_SIZE);
684 ++ if (vmspace->vm_refcnt == 1 && vm_map_min(map) == sv_minuser &&
685 + vm_map_max(map) == sv->sv_maxuser) {
686 + shmexit(vmspace);
687 + pmap_remove_pages(vmspace_pmap(vmspace));
688 + vm_map_remove(map, vm_map_min(map), vm_map_max(map));
689 + } else {
690 +- error = vmspace_exec(p, sv->sv_minuser, sv->sv_maxuser);
691 ++ error = vmspace_exec(p, sv_minuser, sv->sv_maxuser);
692 + if (error)
693 + return (error);
694 + vmspace = p->p_vmspace;
695
696 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-pipe.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-pipe.patch
697 new file mode 100644
698 index 0000000..4b7db02
699 --- /dev/null
700 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-pipe.patch
701 @@ -0,0 +1,18 @@
702 +http://security.freebsd.org/advisories/FreeBSD-SA-09:09.pipe.asc
703 +
704 +Index: sys/kern/sys_pipe.c
705 +===================================================================
706 +RCS file: /home/ncvs/src/sys/kern/sys_pipe.c,v
707 +retrieving revision 1.201
708 +diff -p -u -I__FBSDID -I$FreeBSD -r1.201 sys_pipe.c
709 +--- sys/kern/sys_pipe.c 10 Mar 2009 21:28:43 -0000 1.201
710 ++++ sys/kern/sys_pipe.c 5 Jun 2009 07:53:01 -0000
711 +@@ -761,6 +761,8 @@ pipe_build_write_buffer(wpipe, uio)
712 + pmap = vmspace_pmap(curproc->p_vmspace);
713 + endaddr = round_page((vm_offset_t)uio->uio_iov->iov_base + size);
714 + addr = trunc_page((vm_offset_t)uio->uio_iov->iov_base);
715 ++ if (endaddr < addr)
716 ++ return (EFAULT);
717 + for (i = 0; addr < endaddr; addr += PAGE_SIZE, i++) {
718 + /*
719 + * vm_fault_quick() can sleep. Consequently,
720
721 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-sparc64.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-sparc64.patch
722 new file mode 100644
723 index 0000000..b179fd6
724 --- /dev/null
725 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-sparc64.patch
726 @@ -0,0 +1,11 @@
727 +--- sys/conf/ldscript.sparc64.old 2009-05-17 11:04:47 +0000
728 ++++ sys/conf/ldscript.sparc64 2009-05-17 11:05:41 +0000
729 +@@ -1,6 +1,6 @@
730 + /* $FreeBSD: src/sys/conf/ldscript.sparc64,v 1.4.30.1 2009/04/15 03:14:26 kensmith Exp $ */
731 +-OUTPUT_FORMAT("elf64-sparc", "elf64-sparc",
732 +- "elf64-sparc")
733 ++OUTPUT_FORMAT("elf64-sparc-freebsd", "elf64-sparc-freebsd",
734 ++ "elf64-sparc-freebsd")
735 + OUTPUT_ARCH(sparc:v9)
736 + ENTRY(_start)
737 + SEARCH_DIR(/usr/lib);
738
739 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-zfs712.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-zfs712.patch
740 new file mode 100644
741 index 0000000..814ced2
742 --- /dev/null
743 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-7.2-zfs712.patch
744 @@ -0,0 +1,25 @@
745 +http://security.freebsd.org/advisories/FreeBSD-SA-10:03.zfs.asc
746 +
747 +Index: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_replay.c
748 +===================================================================
749 +--- sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_replay.c (revision 200583)
750 ++++ sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_replay.c (working copy)
751 +@@ -60,10 +60,14 @@ zfs_init_vattr(vattr_t *vap, uint64_t mask, uint64
752 + {
753 + VATTR_NULL(vap);
754 + vap->va_mask = (uint_t)mask;
755 +- vap->va_type = IFTOVT(mode);
756 +- vap->va_mode = mode & MODEMASK;
757 +- vap->va_uid = (uid_t)uid;
758 +- vap->va_gid = (gid_t)gid;
759 ++ if (mask & AT_TYPE)
760 ++ vap->va_type = IFTOVT(mode);
761 ++ if (mask & AT_MODE)
762 ++ vap->va_mode = mode & MODEMASK;
763 ++ if (mask & AT_UID)
764 ++ vap->va_uid = (uid_t)uid;
765 ++ if (mask & AT_GID)
766 ++ vap->va_gid = (gid_t)gid;
767 + vap->va_rdev = zfs_cmpldev(rdev);
768 + vap->va_nodeid = nodeid;
769 + }
770
771 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-arpresolve_panic.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-arpresolve_panic.patch
772 new file mode 100644
773 index 0000000..c624532
774 --- /dev/null
775 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-arpresolve_panic.patch
776 @@ -0,0 +1,18 @@
777 +This one (plus a misrule in my pf.conf) made my box crash at random after 6
778 +to 48 hours of uptime. Thanks to an incoming icmp packet.
779 +
780 +Taken from:
781 +http://svn.freebsd.org/viewvc/base/head/sys/netinet/if_ether.c?r1=198418&r2=201416
782 +--- head/sys/netinet/if_ether.c
783 ++++ head/sys/netinet/if_ether.c
784 +@@ -372,8 +372,8 @@
785 + if (la->la_asked < V_arp_maxtries)
786 + error = EWOULDBLOCK; /* First request. */
787 + else
788 +- error =
789 +- (rt0->rt_flags & RTF_GATEWAY) ? EHOSTUNREACH : EHOSTDOWN;
790 ++ error = rt0 != NULL && (rt0->rt_flags & RTF_GATEWAY) ?
791 ++ EHOSTUNREACH : EHOSTDOWN;
792 +
793 + if (renew) {
794 + LLE_ADDREF(la);
795
796 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-gentoo.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-gentoo.patch
797 new file mode 100644
798 index 0000000..0f8d070
799 --- /dev/null
800 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-gentoo.patch
801 @@ -0,0 +1,33 @@
802 +--- sys/conf/kern.mk.old 2007-05-24 23:53:42.000000000 +0200
803 ++++ sys/conf/kern.mk 2008-03-14 14:37:47.216420518 +0100
804 +@@ -12,7 +12,7 @@
805 + .else
806 + CWARNFLAGS?= -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes \
807 + -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual \
808 +- ${_wundef} ${_Wno_pointer_sign} -fformat-extensions
809 ++ ${_wundef} ${_Wno_pointer_sign}
810 + .if !defined(WITH_GCC3)
811 + _Wno_pointer_sign=-Wno-pointer-sign
812 + .endif
813 +@@ -36,7 +36,7 @@
814 + # reserved for user applications.
815 + #
816 + .if ${MACHINE_ARCH} == "i386" && ${CC} != "icc"
817 +-CFLAGS+= -mno-align-long-strings -mpreferred-stack-boundary=2 \
818 ++CFLAGS+= -mpreferred-stack-boundary=2 \
819 + -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3
820 + INLINE_LIMIT?= 8000
821 + .endif
822 +Only in ./sys/conf: kern.mk.rej
823 +Only in ./sys/conf: kern.mk~
824 +--- sys/dev/aic7xxx/aicasm/Makefile.old 2010-03-10 14:01:50 +0100
825 ++++ sys/dev/aic7xxx/aicasm/Makefile 2010-03-10 14:01:56 +0100
826 +@@ -14,7 +14,7 @@
827 + SRCS= ${GENHDRS} ${CSRCS} ${YSRCS} ${LSRCS}
828 + CLEANFILES+= ${GENHDRS} ${YSRCS:R:C/(.*)/\1.output/g}
829 + DPADD= ${LIBL}
830 +-LDADD= -ll
831 ++LDADD= -lfl
832 + WARNS?= 6
833 +
834 + # Correct path for kernel builds
835
836 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-mf626.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-mf626.patch
837 new file mode 100644
838 index 0000000..9121c0a
839 --- /dev/null
840 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-mf626.patch
841 @@ -0,0 +1,24 @@
842 +Backport this 3g modem that I have.
843 +Given it's quite common, should be useful
844 +And I hate when I forget to patch the kernel after a re-emerge.
845 +
846 +--- sys/dev/usb/usbdevs.orig
847 ++++ sys/dev/usb/usbdevs
848 +@@ -2055,6 +2055,7 @@
849 + product QUALCOMM2 CDMA_MSM 0x3196 CDMA Technologies MSM modem
850 + product QUALCOMMINC CDMA_MSM 0x0001 CDMA Technologies MSM modem
851 + product QUALCOMMINC ZTE_STOR 0x2000 USB ZTE Storage
852 ++product QUALCOMMINC MF626 0X0031 3G modem
853 + product QUALCOMMINC AC8700 0xfffe CDMA 1xEVDO USB modem
854 +
855 + /* Qtronix products */
856 +--- sys/dev/usb/serial/u3g.c.orig
857 ++++ sys/dev/usb/serial/u3g.c
858 +@@ -184,6 +184,7 @@
859 + /* OEM: Qualcomm, Inc. */
860 + U3G_DEV(QUALCOMMINC, ZTE_STOR, U3GFL_SCSI_EJECT),
861 + U3G_DEV(QUALCOMMINC, CDMA_MSM, U3GFL_SCSI_EJECT),
862 ++ U3G_DEV(QUALCOMMINC, MF626, 0),
863 + /* OEM: Huawei */
864 + U3G_DEV(HUAWEI, MOBILE, U3GFL_HUAWEI_INIT),
865 + U3G_DEV(HUAWEI, E180V, U3GFL_HUAWEI_INIT),
866
867 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-sparc64.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-sparc64.patch
868 new file mode 100644
869 index 0000000..1729beb
870 --- /dev/null
871 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-sparc64.patch
872 @@ -0,0 +1,11 @@
873 +--- sys/conf/ldscript.sparc64.old 2010-03-10 14:42:03 +0100
874 ++++ sys/conf/ldscript.sparc64 2010-03-10 14:42:30 +0100
875 +@@ -1,6 +1,6 @@
876 + /* $FreeBSD: src/sys/conf/ldscript.sparc64,v 1.4.32.1.2.1 2009/10/25 01:10:29 kensmith Exp $ */
877 +-OUTPUT_FORMAT("elf64-sparc", "elf64-sparc",
878 +- "elf64-sparc")
879 ++OUTPUT_FORMAT("elf64-sparc-freebsd", "elf64-sparc-freebsd",
880 ++ "elf64-sparc-freebsd")
881 + OUTPUT_ARCH(sparc:v9)
882 + ENTRY(_start)
883 + SEARCH_DIR(/usr/lib);
884
885 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-subnet-route-pr40133.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-subnet-route-pr40133.patch
886 new file mode 100644
887 index 0000000..a7335f6
888 --- /dev/null
889 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-subnet-route-pr40133.patch
890 @@ -0,0 +1,21 @@
891 +Fixes changing the default subnet route after removing an ip address.
892 +
893 +See: http://www.netbsd.org/cgi-bin/query-pr-single.pl?number=40133
894 +and http://mail-index.netbsd.org/tech-net/2008/12/03/msg000896.html
895 +
896 +Thanks to Roy Marples.
897 +--- sys/netinet/in.c.orig
898 ++++ sys/netinet/in.c
899 +@@ -858,6 +858,12 @@
900 + error = rtinit(&target->ia_ifa, (int)RTM_ADD, flags);
901 + if (!error)
902 + target->ia_flags |= IFA_ROUTE;
903 ++ else if (error == EEXIST) {
904 ++ /*
905 ++ * the fact that the route already exists is not an error.
906 ++ */
907 ++ error = 0;
908 ++ }
909 + return (error);
910 + }
911 +
912
913 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-werror.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-werror.patch
914 new file mode 100644
915 index 0000000..2d2e028
916 --- /dev/null
917 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-werror.patch
918 @@ -0,0 +1,22 @@
919 +--- sys/conf/kern.pre.mk.old 2010-03-10 14:20:43 +0100
920 ++++ sys/conf/kern.pre.mk 2010-03-10 14:20:56 +0100
921 +@@ -93,7 +93,7 @@
922 + CFLAGS+= -fno-common -finline-limit=${INLINE_LIMIT}
923 + CFLAGS+= --param inline-unit-growth=100
924 + CFLAGS+= --param large-function-growth=1000
925 +-WERROR?= -Werror
926 ++WERROR?= -Wno-error
927 + .endif
928 +
929 + # XXX LOCORE means "don't declare C stuff" not "for locore.s".
930 +--- sys/conf/kmod.mk.old 2010-03-10 14:21:06 +0100
931 ++++ sys/conf/kmod.mk 2010-03-10 14:21:16 +0100
932 +@@ -79,7 +79,7 @@
933 + . if !empty(CFLAGS:M-O[23s]) && empty(CFLAGS:M-fno-strict-aliasing)
934 + CFLAGS+= -fno-strict-aliasing
935 + . endif
936 +-WERROR?= -Werror
937 ++WERROR?= -Wno-error
938 + .endif
939 + CFLAGS+= ${WERROR}
940 + CFLAGS+= -D_KERNEL -D__FreeBSD_cc_version=700004
941
942 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-zfs.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-zfs.patch
943 new file mode 100644
944 index 0000000..f81b2b5
945 --- /dev/null
946 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-8.0-zfs.patch
947 @@ -0,0 +1,23 @@
948 +Index: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_replay.c
949 +===================================================================
950 +--- sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_replay.c (revision 200583)
951 ++++ sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_replay.c (working copy)
952 +@@ -60,10 +60,14 @@ zfs_init_vattr(vattr_t *vap, uint64_t mask, uint64
953 + {
954 + VATTR_NULL(vap);
955 + vap->va_mask = (uint_t)mask;
956 +- vap->va_type = IFTOVT(mode);
957 +- vap->va_mode = mode & MODEMASK;
958 +- vap->va_uid = (uid_t)(IS_EPHEMERAL(uid)) ? -1 : uid;
959 +- vap->va_gid = (gid_t)(IS_EPHEMERAL(gid)) ? -1 : gid;
960 ++ if (mask & AT_TYPE)
961 ++ vap->va_type = IFTOVT(mode);
962 ++ if (mask & AT_MODE)
963 ++ vap->va_mode = mode & MODEMASK;
964 ++ if (mask & AT_UID)
965 ++ vap->va_uid = (uid_t)(IS_EPHEMERAL(uid)) ? -1 : uid;
966 ++ if (mask & AT_GID)
967 ++ vap->va_gid = (gid_t)(IS_EPHEMERAL(gid)) ? -1 : gid;
968 + vap->va_rdev = zfs_cmpldev(rdev);
969 + vap->va_nodeid = nodeid;
970 + }
971
972 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-8.2-unix2.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-8.2-unix2.patch
973 new file mode 100644
974 index 0000000..50dacd0
975 --- /dev/null
976 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-8.2-unix2.patch
977 @@ -0,0 +1,55 @@
978 +Index: sys/kern/uipc_usrreq.c
979 +===================================================================
980 +--- sys/kern/uipc_usrreq.c (revision 225745)
981 ++++ sys/kern/uipc_usrreq.c (working copy)
982 +@@ -462,6 +462,8 @@
983 + unp = sotounpcb(so);
984 + KASSERT(unp != NULL, ("uipc_bind: unp == NULL"));
985 +
986 ++ if (soun->sun_len > sizeof(struct sockaddr_un))
987 ++ return (EINVAL);
988 + namelen = soun->sun_len - offsetof(struct sockaddr_un, sun_path);
989 + if (namelen <= 0)
990 + return (EINVAL);
991 +@@ -1252,6 +1254,8 @@
992 + unp = sotounpcb(so);
993 + KASSERT(unp != NULL, ("unp_connect: unp == NULL"));
994 +
995 ++ if (nam->sa_len > sizeof(struct sockaddr_un))
996 ++ return (EINVAL);
997 + len = nam->sa_len - offsetof(struct sockaddr_un, sun_path);
998 + if (len <= 0)
999 + return (EINVAL);
1000 +Index: sys/compat/linux/linux_socket.c
1001 +===================================================================
1002 +--- sys/compat/linux/linux_socket.c (revision 225919)
1003 ++++ sys/compat/linux/linux_socket.c (working copy)
1004 +@@ -104,6 +104,7 @@
1005 + int oldv6size;
1006 + struct sockaddr_in6 *sin6;
1007 + #endif
1008 ++ int namelen;
1009 +
1010 + if (*osalen < 2 || *osalen > UCHAR_MAX || !osa)
1011 + return (EINVAL);
1012 +@@ -166,6 +167,20 @@
1013 + }
1014 + }
1015 +
1016 ++ if ((bdom == AF_LOCAL) && (*osalen > sizeof(struct sockaddr_un))) {
1017 ++ for (namelen = 0;
1018 ++ namelen < *osalen - offsetof(struct sockaddr_un, sun_path);
1019 ++ namelen++)
1020 ++ if (!((struct sockaddr_un *)kosa)->sun_path[namelen])
1021 ++ break;
1022 ++ if (namelen + offsetof(struct sockaddr_un, sun_path) >
1023 ++ sizeof(struct sockaddr_un)) {
1024 ++ error = EINVAL;
1025 ++ goto out;
1026 ++ }
1027 ++ alloclen = sizeof(struct sockaddr_un);
1028 ++ }
1029 ++
1030 + sa = (struct sockaddr *) kosa;
1031 + sa->sa_family = bdom;
1032 + sa->sa_len = alloclen;
1033
1034 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-9.0-disable-optimization.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-9.0-disable-optimization.patch
1035 new file mode 100644
1036 index 0000000..4824ff6
1037 --- /dev/null
1038 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-9.0-disable-optimization.patch
1039 @@ -0,0 +1,32 @@
1040 +Taken from debian GNU/kFreeBSD.
1041 +
1042 +Regretably, with GCC 4.4 or later this is the only flag combination
1043 +I could find that doesn't cause kernel panics CPU triple-faults or
1044 +other kind of severe breakage. This is Gentoo Bug #410945.
1045 +
1046 +Clang can use -O2, so we do not force -O1 on it
1047 +
1048 +--- a/sys/conf/kern.pre.mk
1049 ++++ b/sys/conf/kern.pre.mk
1050 +@@ -41,6 +41,9 @@
1051 + .if !empty(COPTFLAGS:M-O[23s]) && empty(COPTFLAGS:M-fno-strict-aliasing)
1052 + COPTFLAGS+= -fno-strict-aliasing
1053 + .endif
1054 ++.if ${CC:T:Mclang} != "clang" && !empty(COPTFLAGS:M-O[23s])
1055 ++COPTFLAGS+= -O1
1056 ++.endif
1057 + .if !defined(NO_CPU_COPTFLAGS)
1058 + COPTFLAGS+= ${_CPUCFLAGS}
1059 + .endif
1060 +--- a/sys/conf/kmod.mk
1061 ++++ b/sys/conf/kmod.mk
1062 +@@ -91,6 +91,9 @@
1063 + .if !empty(CFLAGS:M-O[23s]) && empty(CFLAGS:M-fno-strict-aliasing)
1064 + CFLAGS+= -fno-strict-aliasing
1065 + .endif
1066 ++.if ${CC:T:Mclang} != "clang" && !empty(CFLAGS:M-O[23s])
1067 ++CFLAGS+= -O1
1068 ++.endif
1069 + WERROR?= -Werror
1070 + CFLAGS+= ${WERROR}
1071 + CFLAGS+= -D_KERNEL
1072
1073 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-9.0-gentoo.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-9.0-gentoo.patch
1074 new file mode 100644
1075 index 0000000..840af81
1076 --- /dev/null
1077 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-9.0-gentoo.patch
1078 @@ -0,0 +1,33 @@
1079 +diff -uNr sys.old/conf/kern.mk sys/conf/kern.mk
1080 +--- sys.old/conf/kern.mk 2011-11-02 13:02:13.000000000 +0000
1081 ++++ sys/conf/kern.mk 2011-11-02 13:05:53.000000000 +0000
1082 +@@ -5,7 +5,7 @@
1083 + #
1084 + CWARNFLAGS?= -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes \
1085 + -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual \
1086 +- -Wundef -Wno-pointer-sign -fformat-extensions \
1087 ++ -Wundef -Wno-pointer-sign \
1088 + -Wmissing-include-dirs -fdiagnostics-show-option
1089 + #
1090 + # The following flags are next up for working on:
1091 +@@ -32,7 +32,7 @@
1092 + #
1093 + .if ${MACHINE_CPUARCH} == "i386"
1094 + .if ${CC:T:Mclang} != "clang"
1095 +-CFLAGS+= -mno-align-long-strings -mpreferred-stack-boundary=2 -mno-sse
1096 ++CFLAGS+= -mpreferred-stack-boundary=2 -mno-sse
1097 + .else
1098 + CFLAGS+= -mno-aes -mno-avx
1099 + .endif
1100 +diff -uNr sys.old/dev/aic7xxx/aicasm/Makefile sys/dev/aic7xxx/aicasm/Makefile
1101 +--- sys.old/dev/aic7xxx/aicasm/Makefile 2011-11-02 13:02:11.000000000 +0000
1102 ++++ sys/dev/aic7xxx/aicasm/Makefile 2011-11-02 13:06:24.000000000 +0000
1103 +@@ -14,7 +14,7 @@
1104 + SRCS= ${GENHDRS} ${CSRCS} ${YSRCS} ${LSRCS}
1105 + CLEANFILES+= ${GENHDRS} ${YSRCS:R:C/(.*)/\1.output/g}
1106 + DPADD= ${LIBL}
1107 +-LDADD= -ll
1108 ++LDADD= -lfl
1109 + WARNS?= 5
1110 +
1111 + # Correct path for kernel builds
1112
1113 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-9.0-ipv6refcount.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-9.0-ipv6refcount.patch
1114 new file mode 100644
1115 index 0000000..f0984f6
1116 --- /dev/null
1117 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-9.0-ipv6refcount.patch
1118 @@ -0,0 +1,128 @@
1119 +Index: sys/netinet6/in6.c
1120 +===================================================================
1121 +--- sys/netinet6/in6.c.orig
1122 ++++ sys/netinet6/in6.c
1123 +@@ -1369,6 +1369,8 @@ in6_purgeaddr(struct ifaddr *ifa)
1124 + }
1125 +
1126 + cleanup:
1127 ++ if (ifa0 != NULL)
1128 ++ ifa_free(ifa0);
1129 +
1130 + plen = in6_mask2len(&ia->ia_prefixmask.sin6_addr, NULL); /* XXX */
1131 + if ((ia->ia_flags & IFA_ROUTE) && plen == 128) {
1132 +@@ -1393,8 +1395,6 @@ cleanup:
1133 + return;
1134 + ia->ia_flags &= ~IFA_ROUTE;
1135 + }
1136 +- if (ifa0 != NULL)
1137 +- ifa_free(ifa0);
1138 +
1139 + in6_unlink_ifa(ia, ifp);
1140 + }
1141 +@@ -1667,14 +1667,19 @@ in6_lifaddr_ioctl(struct socket *so, u_long cmd, c
1142 + hostid = IFA_IN6(ifa);
1143 +
1144 + /* prefixlen must be <= 64. */
1145 +- if (64 < iflr->prefixlen)
1146 ++ if (64 < iflr->prefixlen) {
1147 ++ if (ifa != NULL)
1148 ++ ifa_free(ifa);
1149 + return EINVAL;
1150 ++ }
1151 + prefixlen = iflr->prefixlen;
1152 +
1153 + /* hostid part must be zero. */
1154 + sin6 = (struct sockaddr_in6 *)&iflr->addr;
1155 + if (sin6->sin6_addr.s6_addr32[2] != 0 ||
1156 + sin6->sin6_addr.s6_addr32[3] != 0) {
1157 ++ if (ifa != NULL)
1158 ++ ifa_free(ifa);
1159 + return EINVAL;
1160 + }
1161 + } else
1162 +@@ -2265,14 +2265,20 @@ in6_ifawithifp(struct ifnet *ifp, struct in6_addr
1163 + IN6_IFADDR_RUNLOCK();
1164 + return (struct in6_ifaddr *)ifa;
1165 + }
1166 +- IN6_IFADDR_RUNLOCK();
1167 +
1168 + /* use the last-resort values, that are, deprecated addresses */
1169 +- if (dep[0])
1170 ++ if (dep[0]) {
1171 ++ ifa_ref((struct ifaddr *)dep[0]);
1172 ++ IN6_IFADDR_RUNLOCK();
1173 + return dep[0];
1174 +- if (dep[1])
1175 ++ }
1176 ++ if (dep[1]) {
1177 ++ ifa_ref((struct ifaddr *)dep[1]);
1178 ++ IN6_IFADDR_RUNLOCK();
1179 + return dep[1];
1180 ++ }
1181 +
1182 ++ IN6_IFADDR_RUNLOCK();
1183 + return NULL;
1184 + }
1185 +
1186 +Index: sys/netinet6/ip6_input.c
1187 +===================================================================
1188 +--- sys/netinet6/ip6_input.c.orig
1189 ++++ sys/netinet6/ip6_input.c
1190 +@@ -879,19 +879,23 @@ passin:
1191 + * as our interface address (e.g. multicast addresses, addresses
1192 + * within FAITH prefixes and such).
1193 + */
1194 +- if (deliverifp && !ip6_getdstifaddr(m)) {
1195 ++ if (deliverifp) {
1196 + struct in6_ifaddr *ia6;
1197 +
1198 +- ia6 = in6_ifawithifp(deliverifp, &ip6->ip6_dst);
1199 +- if (ia6) {
1200 +- if (!ip6_setdstifaddr(m, ia6)) {
1201 +- /*
1202 +- * XXX maybe we should drop the packet here,
1203 +- * as we could not provide enough information
1204 +- * to the upper layers.
1205 +- */
1206 ++ if ((ia6 = ip6_getdstifaddr(m)) != NULL) {
1207 ++ ifa_free(&ia6->ia_ifa);
1208 ++ } else {
1209 ++ ia6 = in6_ifawithifp(deliverifp, &ip6->ip6_dst);
1210 ++ if (ia6) {
1211 ++ if (!ip6_setdstifaddr(m, ia6)) {
1212 ++ /*
1213 ++ * XXX maybe we should drop the packet here,
1214 ++ * as we could not provide enough information
1215 ++ * to the upper layers.
1216 ++ */
1217 ++ }
1218 ++ ifa_free(&ia6->ia_ifa);
1219 + }
1220 +- ifa_free(&ia6->ia_ifa);
1221 + }
1222 + }
1223 +
1224 +Index: sys/netinet/tcp_input.c
1225 +===================================================================
1226 +--- sys/netinet/tcp_input.c.orig
1227 ++++ sys/netinet/tcp_input.c
1228 +@@ -512,6 +512,8 @@ tcp6_input(struct mbuf **mp, int *offp, int proto)
1229 + (caddr_t)&ip6->ip6_dst - (caddr_t)ip6);
1230 + return IPPROTO_DONE;
1231 + }
1232 ++ if (ia6)
1233 ++ ifa_free(&ia6->ia_ifa);
1234 +
1235 + tcp_input(m, *offp);
1236 + return IPPROTO_DONE;
1237 +@@ -1240,7 +1242,8 @@ relocked:
1238 + rstreason = BANDLIM_RST_OPENPORT;
1239 + goto dropwithreset;
1240 + }
1241 +- ifa_free(&ia6->ia_ifa);
1242 ++ if (ia6)
1243 ++ ifa_free(&ia6->ia_ifa);
1244 + }
1245 + #endif /* INET6 */
1246 + /*
1247
1248 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-9.0-sysctluint.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-9.0-sysctluint.patch
1249 new file mode 100644
1250 index 0000000..751a77c
1251 --- /dev/null
1252 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-9.0-sysctluint.patch
1253 @@ -0,0 +1,13 @@
1254 +u_int is defined in sys/types.h
1255 +makes header usable alone.
1256 +
1257 +--- sys/sys/sysctl.h.old 2012-05-25 11:08:53.000000000 -0400
1258 ++++ sys/sys/sysctl.h 2012-05-25 11:09:16.000000000 -0400
1259 +@@ -788,6 +788,7 @@
1260 + struct sysctl_req *);
1261 + #else /* !_KERNEL */
1262 + #include <sys/cdefs.h>
1263 ++#include <sys/types.h> /* for u_int */
1264 +
1265 + __BEGIN_DECLS
1266 + int sysctl(const int *, u_int, void *, size_t *, const void *, size_t);
1267
1268 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-9.1-MFC-r239588.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-9.1-MFC-r239588.patch
1269 new file mode 100644
1270 index 0000000..5390d0e
1271 --- /dev/null
1272 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-9.1-MFC-r239588.patch
1273 @@ -0,0 +1,122 @@
1274 +https://bugs.gentoo.org/444918
1275 +
1276 +Taken from
1277 +http://svnweb.freebsd.org/base/stable/9/sys/kern/vfs_subr.c?r1=237839&r2=239755&view=patch
1278 +
1279 +FYI,
1280 +http://svnweb.freebsd.org/base?view=revision&amp;revision=239588
1281 +
1282 +--- stable/9/sys/kern/vfs_subr.c 2012/06/30 14:17:59 237839
1283 ++++ stable/9/sys/kern/vfs_subr.c 2012/08/27 20:25:26 239755
1284 +@@ -41,6 +41,7 @@
1285 + #include <sys/cdefs.h>
1286 + __FBSDID("$FreeBSD$");
1287 +
1288 ++#include "opt_compat.h"
1289 + #include "opt_ddb.h"
1290 + #include "opt_watchdog.h"
1291 +
1292 +@@ -3110,22 +3111,50 @@
1293 + /*
1294 + * Fill in a struct xvfsconf based on a struct vfsconf.
1295 + */
1296 +-static void
1297 +-vfsconf2x(struct vfsconf *vfsp, struct xvfsconf *xvfsp)
1298 ++static int
1299 ++vfsconf2x(struct sysctl_req *req, struct vfsconf *vfsp)
1300 + {
1301 ++ struct xvfsconf xvfsp;
1302 +
1303 +- strcpy(xvfsp->vfc_name, vfsp->vfc_name);
1304 +- xvfsp->vfc_typenum = vfsp->vfc_typenum;
1305 +- xvfsp->vfc_refcount = vfsp->vfc_refcount;
1306 +- xvfsp->vfc_flags = vfsp->vfc_flags;
1307 ++ bzero(&xvfsp, sizeof(xvfsp));
1308 ++ strcpy(xvfsp.vfc_name, vfsp->vfc_name);
1309 ++ xvfsp.vfc_typenum = vfsp->vfc_typenum;
1310 ++ xvfsp.vfc_refcount = vfsp->vfc_refcount;
1311 ++ xvfsp.vfc_flags = vfsp->vfc_flags;
1312 + /*
1313 + * These are unused in userland, we keep them
1314 + * to not break binary compatibility.
1315 + */
1316 +- xvfsp->vfc_vfsops = NULL;
1317 +- xvfsp->vfc_next = NULL;
1318 ++ xvfsp.vfc_vfsops = NULL;
1319 ++ xvfsp.vfc_next = NULL;
1320 ++ return (SYSCTL_OUT(req, &xvfsp, sizeof(xvfsp)));
1321 + }
1322 +
1323 ++#ifdef COMPAT_FREEBSD32
1324 ++struct xvfsconf32 {
1325 ++ uint32_t vfc_vfsops;
1326 ++ char vfc_name[MFSNAMELEN];
1327 ++ int32_t vfc_typenum;
1328 ++ int32_t vfc_refcount;
1329 ++ int32_t vfc_flags;
1330 ++ uint32_t vfc_next;
1331 ++};
1332 ++
1333 ++static int
1334 ++vfsconf2x32(struct sysctl_req *req, struct vfsconf *vfsp)
1335 ++{
1336 ++ struct xvfsconf32 xvfsp;
1337 ++
1338 ++ strcpy(xvfsp.vfc_name, vfsp->vfc_name);
1339 ++ xvfsp.vfc_typenum = vfsp->vfc_typenum;
1340 ++ xvfsp.vfc_refcount = vfsp->vfc_refcount;
1341 ++ xvfsp.vfc_flags = vfsp->vfc_flags;
1342 ++ xvfsp.vfc_vfsops = 0;
1343 ++ xvfsp.vfc_next = 0;
1344 ++ return (SYSCTL_OUT(req, &xvfsp, sizeof(xvfsp)));
1345 ++}
1346 ++#endif
1347 ++
1348 + /*
1349 + * Top level filesystem related information gathering.
1350 + */
1351 +@@ -3133,14 +3162,16 @@
1352 + sysctl_vfs_conflist(SYSCTL_HANDLER_ARGS)
1353 + {
1354 + struct vfsconf *vfsp;
1355 +- struct xvfsconf xvfsp;
1356 + int error;
1357 +
1358 + error = 0;
1359 + TAILQ_FOREACH(vfsp, &vfsconf, vfc_list) {
1360 +- bzero(&xvfsp, sizeof(xvfsp));
1361 +- vfsconf2x(vfsp, &xvfsp);
1362 +- error = SYSCTL_OUT(req, &xvfsp, sizeof xvfsp);
1363 ++#ifdef COMPAT_FREEBSD32
1364 ++ if (req->flags & SCTL_MASK32)
1365 ++ error = vfsconf2x32(req, vfsp);
1366 ++ else
1367 ++#endif
1368 ++ error = vfsconf2x(req, vfsp);
1369 + if (error)
1370 + break;
1371 + }
1372 +@@ -3160,7 +3191,6 @@
1373 + int *name = (int *)arg1 - 1; /* XXX */
1374 + u_int namelen = arg2 + 1; /* XXX */
1375 + struct vfsconf *vfsp;
1376 +- struct xvfsconf xvfsp;
1377 +
1378 + printf("WARNING: userland calling deprecated sysctl, "
1379 + "please rebuild world\n");
1380 +@@ -3184,9 +3214,12 @@
1381 + break;
1382 + if (vfsp == NULL)
1383 + return (EOPNOTSUPP);
1384 +- bzero(&xvfsp, sizeof(xvfsp));
1385 +- vfsconf2x(vfsp, &xvfsp);
1386 +- return (SYSCTL_OUT(req, &xvfsp, sizeof(xvfsp)));
1387 ++#ifdef COMPAT_FREEBSD32
1388 ++ if (req->flags & SCTL_MASK32)
1389 ++ return (vfsconf2x32(req, vfsp));
1390 ++ else
1391 ++#endif
1392 ++ return (vfsconf2x(req, vfsp));
1393 + }
1394 + return (EOPNOTSUPP);
1395 + }
1396
1397 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-9.1-gentoo.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-9.1-gentoo.patch
1398 new file mode 100644
1399 index 0000000..b02d8b6
1400 --- /dev/null
1401 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-9.1-gentoo.patch
1402 @@ -0,0 +1,21 @@
1403 +diff -Nur sys.orig/conf/kern.mk sys/conf/kern.mk
1404 +--- sys.orig/conf/kern.mk 2012-07-12 13:26:37.000000000 +0900
1405 ++++ sys/conf/kern.mk 2012-07-16 02:32:19.000000000 +0900
1406 +@@ -5,7 +5,7 @@
1407 + #
1408 + CWARNFLAGS?= -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes \
1409 + -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual \
1410 +- -Wundef -Wno-pointer-sign -fformat-extensions \
1411 ++ -Wundef -Wno-pointer-sign \
1412 + -Wmissing-include-dirs -fdiagnostics-show-option \
1413 + ${CWARNEXTRA}
1414 + #
1415 +@@ -52,7 +52,7 @@
1416 + #
1417 + .if ${MACHINE_CPUARCH} == "i386"
1418 + .if ${MK_CLANG_IS_CC} == "no" && ${CC:T:Mclang} != "clang"
1419 +-CFLAGS+= -mno-align-long-strings -mpreferred-stack-boundary=2
1420 ++CFLAGS+= -mpreferred-stack-boundary=2
1421 + .else
1422 + CFLAGS+= -mno-aes -mno-avx
1423 + .endif
1424
1425 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-cve-2012-0217.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-cve-2012-0217.patch
1426 new file mode 100644
1427 index 0000000..0bf1b61
1428 --- /dev/null
1429 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-cve-2012-0217.patch
1430 @@ -0,0 +1,26 @@
1431 +Index: sys/amd64/amd64/trap.c
1432 +===================================================================
1433 +--- sys/amd64/amd64/trap.c.orig
1434 ++++ sys/amd64/amd64/trap.c (working copy)
1435 +@@ -972,4 +972,21 @@
1436 + syscallname(td->td_proc, sa.code)));
1437 +
1438 + syscallret(td, error, &sa);
1439 ++
1440 ++ /*
1441 ++ * If the user-supplied value of %rip is not a canonical
1442 ++ * address, then some CPUs will trigger a ring 0 #GP during
1443 ++ * the sysret instruction. However, the fault handler would
1444 ++ * execute with the user's %gs and %rsp in ring 0 which would
1445 ++ * not be safe. Instead, preemptively kill the thread with a
1446 ++ * SIGBUS.
1447 ++ */
1448 ++ if (td->td_frame->tf_rip >= VM_MAXUSER_ADDRESS) {
1449 ++ ksiginfo_init_trap(&ksi);
1450 ++ ksi.ksi_signo = SIGBUS;
1451 ++ ksi.ksi_code = BUS_OBJERR;
1452 ++ ksi.ksi_trapno = T_PROTFLT;
1453 ++ ksi.ksi_addr = (void *)td->td_frame->tf_rip;
1454 ++ trapsignal(td, &ksi);
1455 ++ }
1456 + }
1457
1458 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-cve-2012-4576.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-cve-2012-4576.patch
1459 new file mode 100644
1460 index 0000000..08110d6
1461 --- /dev/null
1462 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-cve-2012-4576.patch
1463 @@ -0,0 +1,16 @@
1464 +Index: sys/compat/linux/linux_ioctl.c
1465 +===================================================================
1466 +--- sys/compat/linux/linux_ioctl.c (revision 242578)
1467 ++++ sys/compat/linux/linux_ioctl.c (working copy)
1468 +@@ -2260,8 +2260,9 @@ again:
1469 +
1470 + ifc.ifc_len = valid_len;
1471 + sbuf_finish(sb);
1472 +- memcpy(PTRIN(ifc.ifc_buf), sbuf_data(sb), ifc.ifc_len);
1473 +- error = copyout(&ifc, uifc, sizeof(ifc));
1474 ++ error = copyout(sbuf_data(sb), PTRIN(ifc.ifc_buf), ifc.ifc_len);
1475 ++ if (error == 0)
1476 ++ error = copyout(&ifc, uifc, sizeof(ifc));
1477 + sbuf_delete(sb);
1478 + CURVNET_RESTORE();
1479 +
1480
1481 diff --git a/sys-freebsd/freebsd-sources/freebsd-sources-9.0-r5.ebuild b/sys-freebsd/freebsd-sources/freebsd-sources-9.0-r5.ebuild
1482 new file mode 100644
1483 index 0000000..b791358
1484 --- /dev/null
1485 +++ b/sys-freebsd/freebsd-sources/freebsd-sources-9.0-r5.ebuild
1486 @@ -0,0 +1,103 @@
1487 +# Copyright 1999-2012 Gentoo Foundation
1488 +# Distributed under the terms of the GNU General Public License v2
1489 +# $Header: /var/cvsroot/gentoo-x86/sys-freebsd/freebsd-sources/freebsd-sources-9.0-r4.ebuild,v 1.1 2012/06/27 10:29:23 naota Exp $
1490 +
1491 +inherit bsdmk freebsd flag-o-matic
1492 +
1493 +DESCRIPTION="FreeBSD kernel sources"
1494 +SLOT="${PVR}"
1495 +KEYWORDS="~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
1496 +
1497 +IUSE="symlink"
1498 +
1499 +SRC_URI="mirror://gentoo/${SYS}.tar.bz2"
1500 +
1501 +RDEPEND=">=sys-freebsd/freebsd-mk-defs-8.0"
1502 +DEPEND=""
1503 +
1504 +RESTRICT="strip binchecks"
1505 +
1506 +S="${WORKDIR}/sys"
1507 +
1508 +MY_PVR="${PVR}"
1509 +
1510 +[[ ${MY_PVR} == "${RV}" ]] && MY_PVR="${MY_PVR}-r0"
1511 +
1512 +src_unpack() {
1513 + unpack ${A}
1514 + cd "${S}"
1515 +
1516 + # This replaces the gentoover patch, it doesn't need reapply every time.
1517 + sed -i -e 's:^REVISION=.*:REVISION="'${PVR}'":' \
1518 + -e 's:^BRANCH=.*:BRANCH="Gentoo":' \
1519 + -e 's:^VERSION=.*:VERSION="${TYPE} ${BRANCH} ${REVISION}":' \
1520 + "${S}/conf/newvers.sh"
1521 +
1522 + # workaround a kernel panic for amd64-fbsd, bug #408019
1523 + epatch "${FILESDIR}/${PN}-9.0-disable-optimization.patch"
1524 +
1525 + # __FreeBSD_cc_version comes from FreeBSD's gcc.
1526 + # on 9.0-RELEASE it's 900001.
1527 + sed -e "s:-D_KERNEL:-D_KERNEL -D__FreeBSD_cc_version=900001:g" \
1528 + -i "${S}/conf/kern.pre.mk" \
1529 + -i "${S}/conf/kmod.mk" || die "Couldn't set __FreeBSD_cc_version"
1530 +
1531 + # Remove -Werror
1532 + sed -e "s:-Werror:-Wno-error:g" \
1533 + -i "${S}/conf/kern.pre.mk" \
1534 + -i "${S}/conf/kmod.mk" || die
1535 +
1536 + epatch "${FILESDIR}/${PN}-9.0-gentoo.patch"
1537 + epatch "${FILESDIR}/${PN}-6.0-flex-2.5.31.patch"
1538 + sed -e 's/elf64-sparc/elf64-sparc-freebsd/g' -i "${S}/conf/ldscript.sparc64" || die
1539 + epatch "${FILESDIR}/${PN}-6.1-ntfs.patch"
1540 + epatch "${FILESDIR}/${PN}-7.1-types.h-fix.patch"
1541 + epatch "${FILESDIR}/${PN}-8.0-subnet-route-pr40133.patch"
1542 + epatch "${FILESDIR}/${PN}-7.1-includes.patch"
1543 + epatch "${FILESDIR}/${PN}-9.0-sysctluint.patch"
1544 +
1545 + # By adding -DGENTOO_LIVECD to CFLAGS activate this stub
1546 + # vop_whiteout to tmpfs, so it can be used as an overlay
1547 + # unionfs filesystem over the cd9660 readonly filesystem.
1548 + epatch "${FILESDIR}/${PN}-7.0-tmpfs_whiteout_stub.patch"
1549 +
1550 + epatch "${FILESDIR}/${PN}-cve-2012-0217.patch"
1551 + epatch "${FILESDIR}/${PN}-9.0-ipv6refcount.patch"
1552 + epatch "${FILESDIR}/${PN}-cve-2012-4576.patch"
1553 +}
1554 +
1555 +src_compile() {
1556 + einfo "Nothing to compile.."
1557 +}
1558 +
1559 +src_install() {
1560 + insinto "/usr/src/sys-${MY_PVR}"
1561 + doins -r "${S}/"*
1562 +}
1563 +
1564 +pkg_postinst() {
1565 + if [[ ! -L "${ROOT}/usr/src/sys" ]]; then
1566 + einfo "/usr/src/sys symlink doesn't exist; creating symlink to sys-${MY_PVR}..."
1567 + ln -sf "sys-${MY_PVR}" "${ROOT}/usr/src/sys" || \
1568 + eerror "Couldn't create ${ROOT}/usr/src/sys symlink."
1569 + # just in case...
1570 + [[ -L ""${ROOT}/usr/src/sys-${RV}"" ]] && rm "${ROOT}/usr/src/sys-${RV}"
1571 + ln -sf "sys-${MY_PVR}" "${ROOT}/usr/src/sys-${RV}" || \
1572 + eerror "Couldn't create ${ROOT}/usr/src/sys-${RV} symlink."
1573 + elif use symlink; then
1574 + einfo "Updating /usr/src/sys symlink to sys-${MY_PVR}..."
1575 + rm "${ROOT}/usr/src/sys" "${ROOT}/usr/src/sys-${RV}" || \
1576 + eerror "Couldn't remove previous symlinks, please fix manually."
1577 + ln -sf "sys-${MY_PVR}" "${ROOT}/usr/src/sys" || \
1578 + eerror "Couldn't create ${ROOT}/usr/src/sys symlink."
1579 + ln -sf "sys-${MY_PVR}" "${ROOT}/usr/src/sys-${RV}" || \
1580 + eerror "Couldn't create ${ROOT}/usr/src/sys-${RV} symlink."
1581 + fi
1582 +
1583 + if use sparc-fbsd ; then
1584 + ewarn "WARNING: kldload currently causes kernel panics"
1585 + ewarn "on sparc64. This is probably a gcc-4.1 issue, but"
1586 + ewarn "we need gcc-4.1 to compile the kernel correctly :/"
1587 + ewarn "Please compile all modules you need into the kernel"
1588 + fi
1589 +}
1590
1591 diff --git a/sys-freebsd/freebsd-sources/freebsd-sources-9.1_rc1-r1.ebuild b/sys-freebsd/freebsd-sources/freebsd-sources-9.1_rc1-r1.ebuild
1592 new file mode 100644
1593 index 0000000..6842247
1594 --- /dev/null
1595 +++ b/sys-freebsd/freebsd-sources/freebsd-sources-9.1_rc1-r1.ebuild
1596 @@ -0,0 +1,101 @@
1597 +# Copyright 1999-2012 Gentoo Foundation
1598 +# Distributed under the terms of the GNU General Public License v2
1599 +# $Header: /var/cvsroot/gentoo-x86/sys-freebsd/freebsd-sources/freebsd-sources-9.1_rc1.ebuild,v 1.1 2012/09/11 17:29:57 aballier Exp $
1600 +
1601 +inherit bsdmk freebsd flag-o-matic
1602 +
1603 +DESCRIPTION="FreeBSD kernel sources"
1604 +SLOT="${PVR}"
1605 +KEYWORDS="~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
1606 +
1607 +IUSE="symlink"
1608 +
1609 +SRC_URI="mirror://gentoo/${SYS}.tar.bz2"
1610 +
1611 +RDEPEND=">=sys-freebsd/freebsd-mk-defs-8.0"
1612 +DEPEND=""
1613 +
1614 +RESTRICT="strip binchecks"
1615 +
1616 +S="${WORKDIR}/sys"
1617 +
1618 +MY_PVR="${PVR}"
1619 +
1620 +[[ ${MY_PVR} == "${RV}" ]] && MY_PVR="${MY_PVR}-r0"
1621 +
1622 +src_unpack() {
1623 + unpack ${A}
1624 + cd "${S}"
1625 +
1626 + # This replaces the gentoover patch, it doesn't need reapply every time.
1627 + sed -i -e 's:^REVISION=.*:REVISION="'${PVR}'":' \
1628 + -e 's:^BRANCH=.*:BRANCH="Gentoo":' \
1629 + -e 's:^VERSION=.*:VERSION="${TYPE} ${BRANCH} ${REVISION}":' \
1630 + "${S}/conf/newvers.sh"
1631 +
1632 + # workaround a kernel panic for amd64-fbsd, bug #408019
1633 + epatch "${FILESDIR}/${PN}-9.0-disable-optimization.patch"
1634 +
1635 + # __FreeBSD_cc_version comes from FreeBSD's gcc.
1636 + # on 9.0-RELEASE it's 900001.
1637 + sed -e "s:-D_KERNEL:-D_KERNEL -D__FreeBSD_cc_version=900001:g" \
1638 + -i "${S}/conf/kern.pre.mk" \
1639 + -i "${S}/conf/kmod.mk" || die "Couldn't set __FreeBSD_cc_version"
1640 +
1641 + # Remove -Werror
1642 + sed -e "s:-Werror:-Wno-error:g" \
1643 + -i "${S}/conf/kern.pre.mk" \
1644 + -i "${S}/conf/kmod.mk" || die
1645 +
1646 + epatch "${FILESDIR}/${PN}-9.1-gentoo.patch"
1647 + epatch "${FILESDIR}/${PN}-6.0-flex-2.5.31.patch"
1648 + sed -e 's/elf64-sparc/elf64-sparc-freebsd/g' -i "${S}/conf/ldscript.sparc64" || die
1649 + epatch "${FILESDIR}/${PN}-6.1-ntfs.patch"
1650 + epatch "${FILESDIR}/${PN}-7.1-types.h-fix.patch"
1651 + epatch "${FILESDIR}/${PN}-8.0-subnet-route-pr40133.patch"
1652 + epatch "${FILESDIR}/${PN}-7.1-includes.patch"
1653 + epatch "${FILESDIR}/${PN}-9.0-sysctluint.patch"
1654 +
1655 + # By adding -DGENTOO_LIVECD to CFLAGS activate this stub
1656 + # vop_whiteout to tmpfs, so it can be used as an overlay
1657 + # unionfs filesystem over the cd9660 readonly filesystem.
1658 + epatch "${FILESDIR}/${PN}-7.0-tmpfs_whiteout_stub.patch"
1659 +
1660 + epatch "${FILESDIR}/${PN}-cve-2012-4576.patch"
1661 +}
1662 +
1663 +src_compile() {
1664 + einfo "Nothing to compile.."
1665 +}
1666 +
1667 +src_install() {
1668 + insinto "/usr/src/sys-${MY_PVR}"
1669 + doins -r "${S}/"*
1670 +}
1671 +
1672 +pkg_postinst() {
1673 + if [[ ! -L "${ROOT}/usr/src/sys" ]]; then
1674 + einfo "/usr/src/sys symlink doesn't exist; creating symlink to sys-${MY_PVR}..."
1675 + ln -sf "sys-${MY_PVR}" "${ROOT}/usr/src/sys" || \
1676 + eerror "Couldn't create ${ROOT}/usr/src/sys symlink."
1677 + # just in case...
1678 + [[ -L ""${ROOT}/usr/src/sys-${RV}"" ]] && rm "${ROOT}/usr/src/sys-${RV}"
1679 + ln -sf "sys-${MY_PVR}" "${ROOT}/usr/src/sys-${RV}" || \
1680 + eerror "Couldn't create ${ROOT}/usr/src/sys-${RV} symlink."
1681 + elif use symlink; then
1682 + einfo "Updating /usr/src/sys symlink to sys-${MY_PVR}..."
1683 + rm "${ROOT}/usr/src/sys" "${ROOT}/usr/src/sys-${RV}" || \
1684 + eerror "Couldn't remove previous symlinks, please fix manually."
1685 + ln -sf "sys-${MY_PVR}" "${ROOT}/usr/src/sys" || \
1686 + eerror "Couldn't create ${ROOT}/usr/src/sys symlink."
1687 + ln -sf "sys-${MY_PVR}" "${ROOT}/usr/src/sys-${RV}" || \
1688 + eerror "Couldn't create ${ROOT}/usr/src/sys-${RV} symlink."
1689 + fi
1690 +
1691 + if use sparc-fbsd ; then
1692 + ewarn "WARNING: kldload currently causes kernel panics"
1693 + ewarn "on sparc64. This is probably a gcc-4.1 issue, but"
1694 + ewarn "we need gcc-4.1 to compile the kernel correctly :/"
1695 + ewarn "Please compile all modules you need into the kernel"
1696 + fi
1697 +}
1698
1699 diff --git a/sys-freebsd/freebsd-sources/freebsd-sources-9.1_rc2-r1.ebuild b/sys-freebsd/freebsd-sources/freebsd-sources-9.1_rc2-r1.ebuild
1700 new file mode 100644
1701 index 0000000..c4539f0
1702 --- /dev/null
1703 +++ b/sys-freebsd/freebsd-sources/freebsd-sources-9.1_rc2-r1.ebuild
1704 @@ -0,0 +1,101 @@
1705 +# Copyright 1999-2012 Gentoo Foundation
1706 +# Distributed under the terms of the GNU General Public License v2
1707 +# $Header: /var/cvsroot/gentoo-x86/sys-freebsd/freebsd-sources/freebsd-sources-9.1_rc2.ebuild,v 1.1 2012/10/14 15:28:12 aballier Exp $
1708 +
1709 +inherit bsdmk freebsd flag-o-matic
1710 +
1711 +DESCRIPTION="FreeBSD kernel sources"
1712 +SLOT="${PVR}"
1713 +KEYWORDS="~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
1714 +
1715 +IUSE="symlink"
1716 +
1717 +SRC_URI="mirror://gentoo/${SYS}.tar.bz2"
1718 +
1719 +RDEPEND=">=sys-freebsd/freebsd-mk-defs-8.0"
1720 +DEPEND=""
1721 +
1722 +RESTRICT="strip binchecks"
1723 +
1724 +S="${WORKDIR}/sys"
1725 +
1726 +MY_PVR="${PVR}"
1727 +
1728 +[[ ${MY_PVR} == "${RV}" ]] && MY_PVR="${MY_PVR}-r0"
1729 +
1730 +src_unpack() {
1731 + unpack ${A}
1732 + cd "${S}"
1733 +
1734 + # This replaces the gentoover patch, it doesn't need reapply every time.
1735 + sed -i -e 's:^REVISION=.*:REVISION="'${PVR}'":' \
1736 + -e 's:^BRANCH=.*:BRANCH="Gentoo":' \
1737 + -e 's:^VERSION=.*:VERSION="${TYPE} ${BRANCH} ${REVISION}":' \
1738 + "${S}/conf/newvers.sh"
1739 +
1740 + # workaround a kernel panic for amd64-fbsd, bug #408019
1741 + epatch "${FILESDIR}/${PN}-9.0-disable-optimization.patch"
1742 +
1743 + # __FreeBSD_cc_version comes from FreeBSD's gcc.
1744 + # on 9.0-RELEASE it's 900001.
1745 + sed -e "s:-D_KERNEL:-D_KERNEL -D__FreeBSD_cc_version=900001:g" \
1746 + -i "${S}/conf/kern.pre.mk" \
1747 + -i "${S}/conf/kmod.mk" || die "Couldn't set __FreeBSD_cc_version"
1748 +
1749 + # Remove -Werror
1750 + sed -e "s:-Werror:-Wno-error:g" \
1751 + -i "${S}/conf/kern.pre.mk" \
1752 + -i "${S}/conf/kmod.mk" || die
1753 +
1754 + epatch "${FILESDIR}/${PN}-9.1-gentoo.patch"
1755 + epatch "${FILESDIR}/${PN}-6.0-flex-2.5.31.patch"
1756 + sed -e 's/elf64-sparc/elf64-sparc-freebsd/g' -i "${S}/conf/ldscript.sparc64" || die
1757 + epatch "${FILESDIR}/${PN}-6.1-ntfs.patch"
1758 + epatch "${FILESDIR}/${PN}-7.1-types.h-fix.patch"
1759 + epatch "${FILESDIR}/${PN}-8.0-subnet-route-pr40133.patch"
1760 + epatch "${FILESDIR}/${PN}-7.1-includes.patch"
1761 + epatch "${FILESDIR}/${PN}-9.0-sysctluint.patch"
1762 +
1763 + # By adding -DGENTOO_LIVECD to CFLAGS activate this stub
1764 + # vop_whiteout to tmpfs, so it can be used as an overlay
1765 + # unionfs filesystem over the cd9660 readonly filesystem.
1766 + epatch "${FILESDIR}/${PN}-7.0-tmpfs_whiteout_stub.patch"
1767 +
1768 + epatch "${FILESDIR}/${PN}-cve-2012-4576.patch"
1769 +}
1770 +
1771 +src_compile() {
1772 + einfo "Nothing to compile.."
1773 +}
1774 +
1775 +src_install() {
1776 + insinto "/usr/src/sys-${MY_PVR}"
1777 + doins -r "${S}/"*
1778 +}
1779 +
1780 +pkg_postinst() {
1781 + if [[ ! -L "${ROOT}/usr/src/sys" ]]; then
1782 + einfo "/usr/src/sys symlink doesn't exist; creating symlink to sys-${MY_PVR}..."
1783 + ln -sf "sys-${MY_PVR}" "${ROOT}/usr/src/sys" || \
1784 + eerror "Couldn't create ${ROOT}/usr/src/sys symlink."
1785 + # just in case...
1786 + [[ -L ""${ROOT}/usr/src/sys-${RV}"" ]] && rm "${ROOT}/usr/src/sys-${RV}"
1787 + ln -sf "sys-${MY_PVR}" "${ROOT}/usr/src/sys-${RV}" || \
1788 + eerror "Couldn't create ${ROOT}/usr/src/sys-${RV} symlink."
1789 + elif use symlink; then
1790 + einfo "Updating /usr/src/sys symlink to sys-${MY_PVR}..."
1791 + rm "${ROOT}/usr/src/sys" "${ROOT}/usr/src/sys-${RV}" || \
1792 + eerror "Couldn't remove previous symlinks, please fix manually."
1793 + ln -sf "sys-${MY_PVR}" "${ROOT}/usr/src/sys" || \
1794 + eerror "Couldn't create ${ROOT}/usr/src/sys symlink."
1795 + ln -sf "sys-${MY_PVR}" "${ROOT}/usr/src/sys-${RV}" || \
1796 + eerror "Couldn't create ${ROOT}/usr/src/sys-${RV} symlink."
1797 + fi
1798 +
1799 + if use sparc-fbsd ; then
1800 + ewarn "WARNING: kldload currently causes kernel panics"
1801 + ewarn "on sparc64. This is probably a gcc-4.1 issue, but"
1802 + ewarn "we need gcc-4.1 to compile the kernel correctly :/"
1803 + ewarn "Please compile all modules you need into the kernel"
1804 + fi
1805 +}
1806
1807 diff --git a/sys-freebsd/freebsd-sources/freebsd-sources-9.1_rc3-r1.ebuild b/sys-freebsd/freebsd-sources/freebsd-sources-9.1_rc3-r1.ebuild
1808 new file mode 100644
1809 index 0000000..25b4e67
1810 --- /dev/null
1811 +++ b/sys-freebsd/freebsd-sources/freebsd-sources-9.1_rc3-r1.ebuild
1812 @@ -0,0 +1,93 @@
1813 +# Copyright 1999-2012 Gentoo Foundation
1814 +# Distributed under the terms of the GNU General Public License v2
1815 +# $Header: /var/cvsroot/gentoo-x86/sys-freebsd/freebsd-sources/freebsd-sources-9.1_rc3.ebuild,v 1.2 2012/11/24 11:30:56 aballier Exp $
1816 +
1817 +inherit bsdmk freebsd flag-o-matic
1818 +
1819 +DESCRIPTION="FreeBSD kernel sources"
1820 +SLOT="${PVR}"
1821 +KEYWORDS="~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
1822 +
1823 +IUSE="symlink"
1824 +
1825 +SRC_URI="mirror://gentoo/${SYS}.tar.bz2"
1826 +
1827 +RDEPEND=">=sys-freebsd/freebsd-mk-defs-8.0"
1828 +DEPEND=""
1829 +
1830 +RESTRICT="strip binchecks"
1831 +
1832 +S="${WORKDIR}/sys"
1833 +
1834 +MY_PVR="${PVR}"
1835 +
1836 +[[ ${MY_PVR} == "${RV}" ]] && MY_PVR="${MY_PVR}-r0"
1837 +
1838 +PATCHES=( "${FILESDIR}/${PN}-9.0-disable-optimization.patch"
1839 + "${FILESDIR}/${PN}-9.1-gentoo.patch"
1840 + "${FILESDIR}/${PN}-6.0-flex-2.5.31.patch"
1841 + "${FILESDIR}/${PN}-6.1-ntfs.patch"
1842 + "${FILESDIR}/${PN}-7.1-types.h-fix.patch"
1843 + "${FILESDIR}/${PN}-8.0-subnet-route-pr40133.patch"
1844 + "${FILESDIR}/${PN}-7.1-includes.patch"
1845 + "${FILESDIR}/${PN}-9.0-sysctluint.patch"
1846 + "${FILESDIR}/${PN}-9.1-MFC-r239588.patch"
1847 + "${FILESDIR}/${PN}-cve-2012-4576.patch"
1848 + "${FILESDIR}/${PN}-7.0-tmpfs_whiteout_stub.patch" )
1849 +
1850 +src_unpack() {
1851 + freebsd_src_unpack
1852 +
1853 + # This replaces the gentoover patch, it doesn't need reapply every time.
1854 + sed -i -e 's:^REVISION=.*:REVISION="'${PVR}'":' \
1855 + -e 's:^BRANCH=.*:BRANCH="Gentoo":' \
1856 + -e 's:^VERSION=.*:VERSION="${TYPE} ${BRANCH} ${REVISION}":' \
1857 + "${S}/conf/newvers.sh"
1858 +
1859 + # __FreeBSD_cc_version comes from FreeBSD's gcc.
1860 + # on 9.0-RELEASE it's 900001.
1861 + sed -e "s:-D_KERNEL:-D_KERNEL -D__FreeBSD_cc_version=900001:g" \
1862 + -i "${S}/conf/kern.pre.mk" \
1863 + -i "${S}/conf/kmod.mk" || die "Couldn't set __FreeBSD_cc_version"
1864 +
1865 + # Remove -Werror
1866 + sed -e "s:-Werror:-Wno-error:g" \
1867 + -i "${S}/conf/kern.pre.mk" \
1868 + -i "${S}/conf/kmod.mk" || die
1869 +}
1870 +
1871 +src_compile() {
1872 + einfo "Nothing to compile.."
1873 +}
1874 +
1875 +src_install() {
1876 + insinto "/usr/src/sys-${MY_PVR}"
1877 + doins -r "${S}/"*
1878 +}
1879 +
1880 +pkg_postinst() {
1881 + if [[ ! -L "${ROOT}/usr/src/sys" ]]; then
1882 + einfo "/usr/src/sys symlink doesn't exist; creating symlink to sys-${MY_PVR}..."
1883 + ln -sf "sys-${MY_PVR}" "${ROOT}/usr/src/sys" || \
1884 + eerror "Couldn't create ${ROOT}/usr/src/sys symlink."
1885 + # just in case...
1886 + [[ -L ""${ROOT}/usr/src/sys-${RV}"" ]] && rm "${ROOT}/usr/src/sys-${RV}"
1887 + ln -sf "sys-${MY_PVR}" "${ROOT}/usr/src/sys-${RV}" || \
1888 + eerror "Couldn't create ${ROOT}/usr/src/sys-${RV} symlink."
1889 + elif use symlink; then
1890 + einfo "Updating /usr/src/sys symlink to sys-${MY_PVR}..."
1891 + rm "${ROOT}/usr/src/sys" "${ROOT}/usr/src/sys-${RV}" || \
1892 + eerror "Couldn't remove previous symlinks, please fix manually."
1893 + ln -sf "sys-${MY_PVR}" "${ROOT}/usr/src/sys" || \
1894 + eerror "Couldn't create ${ROOT}/usr/src/sys symlink."
1895 + ln -sf "sys-${MY_PVR}" "${ROOT}/usr/src/sys-${RV}" || \
1896 + eerror "Couldn't create ${ROOT}/usr/src/sys-${RV} symlink."
1897 + fi
1898 +
1899 + if use sparc-fbsd ; then
1900 + ewarn "WARNING: kldload currently causes kernel panics"
1901 + ewarn "on sparc64. This is probably a gcc-4.1 issue, but"
1902 + ewarn "we need gcc-4.1 to compile the kernel correctly :/"
1903 + ewarn "Please compile all modules you need into the kernel"
1904 + fi
1905 +}