summaryrefslogtreecommitdiff
path: root/net-fs
diff options
context:
space:
mode:
authorJoshua Kinard <kumba@gentoo.org>2014-08-13 05:47:41 +0000
committerJoshua Kinard <kumba@gentoo.org>2014-08-13 05:47:41 +0000
commitf1bd411c8ee5c0cdf12258d6ab971ddf2819772c (patch)
tree59045ab8ba73097d0df2f127ea0fe50e5adaf76b /net-fs
parentVersion bump. (diff)
downloadhistorical-f1bd411c8ee5c0cdf12258d6ab971ddf2819772c.tar.gz
historical-f1bd411c8ee5c0cdf12258d6ab971ddf2819772c.tar.bz2
historical-f1bd411c8ee5c0cdf12258d6ab971ddf2819772c.zip
Added 2.2.6-r3 that contains patches from Mageia and Debian that address several issues, including bugs #371477, #497278, & #446696.
Package-Manager: portage-2.2.12/cvs/Linux x86_64 Manifest-Sign-Key: 0xD25D95E3
Diffstat (limited to 'net-fs')
-rw-r--r--net-fs/ncpfs/ChangeLog21
-rw-r--r--net-fs/ncpfs/Manifest37
-rw-r--r--net-fs/ncpfs/files/ncpfs-2.2.6-align-fix.patch12
-rw-r--r--net-fs/ncpfs/files/ncpfs-2.2.6-cve-2011-1679-1680.patch54
-rw-r--r--net-fs/ncpfs/files/ncpfs-2.2.6-drop-kernel-check.patch31
-rw-r--r--net-fs/ncpfs/files/ncpfs-2.2.6-drop-mtab-support.patch286
-rw-r--r--net-fs/ncpfs/files/ncpfs-2.2.6-getuid-fix.patch124
-rw-r--r--net-fs/ncpfs/files/ncpfs-2.2.6-ldflags-support.patch153
-rw-r--r--net-fs/ncpfs/files/ncpfs-2.2.6-makefile-fix-soname-link.patch15
-rw-r--r--net-fs/ncpfs/files/ncpfs-2.2.6-no-suid-root.patch16
-rw-r--r--net-fs/ncpfs/files/ncpfs-2.2.6-pam_ncp_auth-fix.patch12
-rw-r--r--net-fs/ncpfs/files/ncpfs-2.2.6-pie-fix.patch31
-rw-r--r--net-fs/ncpfs/files/ncpfs-2.2.6-remove-libncp_atomic-header.patch15
-rw-r--r--net-fs/ncpfs/files/ncpfs-2.2.6-servername-array-fix.patch15
-rw-r--r--net-fs/ncpfs/ncpfs-2.2.6-r3.ebuild91
15 files changed, 909 insertions, 4 deletions
diff --git a/net-fs/ncpfs/ChangeLog b/net-fs/ncpfs/ChangeLog
index fee6a40fe38e..0f3ad6963263 100644
--- a/net-fs/ncpfs/ChangeLog
+++ b/net-fs/ncpfs/ChangeLog
@@ -1,6 +1,23 @@
# ChangeLog for net-fs/ncpfs
-# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-fs/ncpfs/ChangeLog,v 1.32 2012/12/04 10:21:15 ago Exp $
+# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/net-fs/ncpfs/ChangeLog,v 1.33 2014/08/13 05:47:27 kumba Exp $
+
+*ncpfs-2.2.6-r3 (13 Aug 2014)
+
+ 13 Aug 2014; Joshua Kinard <kumba@gentoo.org> +ncpfs-2.2.6-r3.ebuild,
+ +files/ncpfs-2.2.6-align-fix.patch,
+ +files/ncpfs-2.2.6-cve-2011-1679-1680.patch,
+ +files/ncpfs-2.2.6-drop-kernel-check.patch,
+ +files/ncpfs-2.2.6-drop-mtab-support.patch,
+ +files/ncpfs-2.2.6-getuid-fix.patch,
+ +files/ncpfs-2.2.6-ldflags-support.patch,
+ +files/ncpfs-2.2.6-makefile-fix-soname-link.patch,
+ +files/ncpfs-2.2.6-no-suid-root.patch,
+ +files/ncpfs-2.2.6-pam_ncp_auth-fix.patch, +files/ncpfs-2.2.6-pie-fix.patch,
+ +files/ncpfs-2.2.6-remove-libncp_atomic-header.patch,
+ +files/ncpfs-2.2.6-servername-array-fix.patch:
+ Added 2.2.6-r3 that contains patches from Mageia and Debian that address
+ several issues, including bugs #371477, #497278, & #446696.
04 Dec 2012; <ago@gentoo.org> ncpfs-2.2.6-r2.ebuild:
stable for x86, wrt to bug #418227
diff --git a/net-fs/ncpfs/Manifest b/net-fs/ncpfs/Manifest
index fad64beb3325..019f87ee2908 100644
--- a/net-fs/ncpfs/Manifest
+++ b/net-fs/ncpfs/Manifest
@@ -1,11 +1,44 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
AUX ipx.confd 706 SHA256 abfefd5c3f9df2232e5d35f743ff8ce2876e887d39bd823789b54e3a8bd69a0e SHA512 7c15f4aca1dbce2450f2e04741bce5f9d73150607c0f74fabe917f41a4041eaed8bf26262652dccf7660f1634932082c02e889a90b05c679485df718fff970eb WHIRLPOOL b85ae8141a1403fc47e94bab8149e8530cb0a4a8d047fe1dc5ddf77d08ff5693190d359226304141a3586d6953020f9ad56565f8d059cbda0b43c511bbbf1e60
AUX ipx.init 972 SHA256 2b01a7a68110658f20c883e5045dd854389b37866e97c5f0e978034dc49dc395 SHA512 ce07fe5aa1d8f8f4b0f46454ce3461076bcb938b4f41187c4c214ee7895189995507cd9209551b1a3e4bbaf7f237228ec528d89b1dd91102fd21fb28253084f0 WHIRLPOOL bf5ac8aed0fd62bf30df495bf6d7073f9623848c35620f348d5afa28e9f7ec626bec4983045ab628626392f3391234f6a2e4a31680001a2bbafe4a14876a1595
AUX ncpfs-2.2.5-php.patch 555 SHA256 ea32f4f6a9ac7c1d43af654982410680ca535a313f2a94efd3ddb295949d864b SHA512 2768cfe218c1fcd9e8458e28af51985a50d60d2538c61cb13f2c8db77fd111abbe8d81b040c82d51bd18fdecfacbc78e488ca7d17f8fd08af62a8b5690b37c19 WHIRLPOOL e19c931b0f440b93c8135f9b995f74852b152642778fd86eff89f081378c8b9ce99773bcedc08cfd54280d9d894d1b2e675f78f78a01bd47f9fcb1e1f9318d4c
+AUX ncpfs-2.2.6-align-fix.patch 441 SHA256 32cec9978e42326390189ec5ea936aba635afd2ea588d599b24ed0cef4e28ddb SHA512 7318f911c4f649c3320219f1ebbf9a06a287289c236235f3294f88ed95d5f09dd6d3b1b212ee4760c61407cb4bb314eafc757e8d24e8499d820dc5ff09a3d863 WHIRLPOOL b842b16fa682abc39809669a8ede8956b530da681eb43bb11b165bdabedcc72382c0ed57babdfa45ac493a1018f1c634d769d2173f273748eda878210074b2af
+AUX ncpfs-2.2.6-cve-2011-1679-1680.patch 1624 SHA256 36dbc7e43d9e1cadf21cd98b0d1fcd78d1e8fdc91c23dda7dea2ec675ccfefe5 SHA512 2e4d4830c0b9f81215f5921ac5b483b3b92d4741e6c2f9dc6030d1323cb262b5fdc7ce36383b3b16b2acd1e31b4c039f0a4f732cda70e4d81030335e0e88cc27 WHIRLPOOL 7c3a9c0b547514af9a9c35b681a83159de16bb9ad66753dcb8b5ba4905e3e99aeaed678da5eeea1f134bf19842ec6886f257d21ced4c02d027892e4a6d095a57
+AUX ncpfs-2.2.6-drop-kernel-check.patch 748 SHA256 3d62c8380c43f6ed850ce695405422d44e45aedcc48430b2fd00a323d8cb21bb SHA512 6769d1e02f0166a2f613f79da0de9aec4f25975b5951f954daed272ef8af4add151d8608c1bf8325fa771a402c2f1d9376a1ce3353b1087f35f2902da807ab1f WHIRLPOOL e052029789609ac1c397340726424efcb66458518a4014162ccf61749cff6b527cc763f1b0a721c66958ac416eb032ec1884f43c8cd39eaba40da9890d0309b6
+AUX ncpfs-2.2.6-drop-mtab-support.patch 7674 SHA256 c67a9825ea9ab885a3a68a83adfa70a2c5918f1b3bcbba654dfc9df19755ea32 SHA512 4020172319c7a13232111b67f1c6c00ade36efff712592739d255d93c20b90c545f17b2cced941d9d491f3ca07ea2d41aa6eba9f45c0e8d22e41700b189e15e4 WHIRLPOOL e870636d3380aca819018984ddc48068e5807981719f3d9db57f6ff7cb71ed38d06d342b91d37824c0fb2a0cff927cc11805a76f9701dc5e60b6e62bb2852106
AUX ncpfs-2.2.6-gcc4.patch 1291 SHA256 8fbb8621b178aa8fb38da30639cc32afce0254445fe59c0f56c543da62d6921e SHA512 2bdce56008c2f7819c402ff00643d6602bab89922d01fefd3d42a15720cb569e6920c1ca8feaf8e927b0391ca44466df1fc91de21bcc76f53cbe7cc102e88992 WHIRLPOOL f68ece683be5e085e987891289e7605243bb37d81b357102463a3289a2a57e799ffb022fbf4470d8390540524002a478866b2809abb40aac900e00cc9cd20b9a
+AUX ncpfs-2.2.6-getuid-fix.patch 5141 SHA256 20ba3b63792af58348d18a20e80358350b189882f7ef9c9ae79ac80f7e70b461 SHA512 af6f8af66fe3bc6f9cb6188106e03307bd202fc3ca576041b8e029946a17d9d260178b38c8c81400cbd993a20b16072d3ed6241411e1f718d2148fe7b73935b6 WHIRLPOOL a57d7cfb4f36a27b9e825a66108d640d242c70615c42818c2af0dee3318318397db28ba9cb9a0773921d2d40e6e254c982f57c937e8bc289155cdc7a08cdd47f
+AUX ncpfs-2.2.6-ldflags-support.patch 5994 SHA256 0e5519d1a025d78ef08d03095acc0791bd1113f5e8c897c9e3797b7c569a9d2b SHA512 fa116074a64ca8f54f5293de5d460ddd8136bd57a222261e0469cf1464798438a9ab3bd5c9f419b9b2fe4c541e0ad8426b6812e2153d68e6405b8ce46821a013 WHIRLPOOL 80bbf8fb37e009a5cccf22120a9a81bdbb6f0b62d4c7d05548d013b15fff9b8f83429dc8600433b85f3a758da2026aaf33792d97c120b22a21b6f9384781f4fa
+AUX ncpfs-2.2.6-makefile-fix-soname-link.patch 791 SHA256 e8b464110a1bd36493c13d3859ce11df0dfa8f77e45aa2dfa2a2f91689bca597 SHA512 0892b16af76012b26291f2644b48db46d8c2fffb17dbf95701fe3240d5276487ab6e348ea0d9fb0c79c60c720c918ca45edfc6bd621c43f9e8ab88cc73a33b81 WHIRLPOOL 6d17b2dac92c2a9631c42c550b12460bb3c27a8ac012874fdde13c2d2799413f73aeb966ac351abf4f2eba04025b7ef1bc965d2788afe38d5b848fe579836a83
AUX ncpfs-2.2.6-missing-includes.patch 779 SHA256 b724c68cd8e1b8e5ed91dc3f7c24948e76107bda6314c954918adfc058a24911 SHA512 3f51978a009b8c9e20c14500bafb4bf3ecf3b288b43f42aeb11e81ff621014c0c5774bd8d53be06706b2a78d94dae62ee663a3f710fc908d433ba2755788abcb WHIRLPOOL 875e62439a004b98b1bd227c4ad6e305e0e126f8bbc7ab687264813ddfe62102f1a5c41fc608634e3a78e96202bd5bf74ecb2973caf5c7ad6bc67a1b08487fa4
AUX ncpfs-2.2.6-multiple-vulns.patch 14158 SHA256 50d42cda962cbc5c3e7ad6048ed2ebb465645e640a32552ffa44c7229d8d2a77 SHA512 486bae42500d0712b7023768f0cf60d0b550a11cb554b2733f09ee92a49df031dec2f938b2a355c123e50b71340cbd94dfb38b7a1b455e680ece7efe6aa13925 WHIRLPOOL 1aed769a1dd3d9e3aa6cbc0f9a34eba42c7f99947870ca8b7c655568c93404a3b4fdac4e1e50ea920032118dcc63b64090f8c12e7713c6b56ac8686d01205db0
+AUX ncpfs-2.2.6-no-suid-root.patch 544 SHA256 d743c2266f528ea592dade37279f0e2856948ddda1c839c8eff99faba9dda47c SHA512 697d577aab12c94cbdb36c2f9f2cd51b82e3ab5efb4a9e8246a7c93b7004d004e7d4fdb1ec003585daf1a11f9f559fd65ea86fe8933f2a7d89b0ce810f21c975 WHIRLPOOL b02ebf2006fc16b53eed6091be67692ccb80ac120d79e576114050afdfdeea72ead4ea396c4a092d42b9e1ed6c38bb055474fc5aa14169128b89f9394f6ba7ea
+AUX ncpfs-2.2.6-pam_ncp_auth-fix.patch 556 SHA256 9cbf947dad700787e084c74d00a9a68ac0bddeb89568c6546816560c7255e93e SHA512 3c20c36bb2b8c72440e359bb3f66d5a91bc91132accc518bae8db0fbc77aaf966e676f494c8add959178e315513aaddc9f627a05b9e0c376cf7ece5bba0b0dde WHIRLPOOL 6cddf88d0b0aac79d8855a77fe7d2ffe36a6b18c17585927e84b2d084a234868e8eb4b86fbafa2521ccd0c19a6431fb909cfc860af4a5465f518dcf1efd46fe6
+AUX ncpfs-2.2.6-pie-fix.patch 1528 SHA256 9c6a81bbd69b8534f31f930996925a5c4d734b97a1aa660a63f31bbfbbb5660c SHA512 e05f88cbb638a7145c744029b5ab69e5c1fb997a7499c392235ab14293b8ab4f4a34f0aafee2afddfe04d7583276dee33fb31b33e235d74fe662e7aee8ce0372 WHIRLPOOL afff315a2697f7baddcb499f2e7e7fb2123fee0d5da92c0cd2beda911f77833a136974431ae22c5b596186dc56bace623c68c53eaddf4b6bc90854624ef96d70
+AUX ncpfs-2.2.6-remove-libncp_atomic-header.patch 572 SHA256 881a5c6ebe5bed2563a69bec90c2bf19c4fbc14a7e0fb972ce44917610d5d946 SHA512 07689c979e8e6a40aca410ac8211c6af9fa640679c34ab3431e70c849e9f3c42d26b204310a697ef1494f33b5296e642b977dfc56453f680527ee54d697abe1c WHIRLPOOL 1cd8e5a1eddddbf4a370f1864b5a4294268dc609035ff6ab6451247d1c20287a2e2afbc4ad11c7d225b98cb30d7688f1a3c2e59d5b802ed79de6bb79806fbd83
AUX ncpfs-2.2.6-remove-packed-attrib.patch 10312 SHA256 f1c587b329224f34f351e08b32333e854539223d337e6bb2fdadf28c2130673b SHA512 efd11c2cf08f3b7b1458b836ee863f31e3ae470986a02a3d2db0ec6fbb7a984e2d33643765d7223b797732d80187412a907a9ca971233eb0f95ed4744ef6f44a WHIRLPOOL 187d2c71547de0de2007f872a53a7c4545a2ace4d258fc93802283278202eb0db7fbef70c7a6f7210e8f037e65399c76fa57def0fe73591d8d24967432be9a4c
-DIST ncpfs-2.2.6.tar.gz 2100545 SHA256 2837046046bcdb46d77a80c1d17dbfd15e878700e879edab4cda9f080e0337f9
+AUX ncpfs-2.2.6-servername-array-fix.patch 523 SHA256 8dd6be08b94259051c9cb8158a8375c4a7e35c5fc32301073ec174399458812c SHA512 10c8a0b7c6d715018acf77ea3bcca2e50add48d479cc0ee07035f3f8fb910069c2c508a25ab3de945ef19c78add6d8192f0cb484e756d9a15ceb3afcd8195a69 WHIRLPOOL ae9799b79681c8eadb5e5dc6c4c0f4e7fd4c5040fbaa84a166bf09d24e1e1fb6cdb0842acafefa3b6a9f0f6cb3e2ed1593898beb79fcee329b6a5e8f266b5d6c
+DIST ncpfs-2.2.6.tar.gz 2100545 SHA256 2837046046bcdb46d77a80c1d17dbfd15e878700e879edab4cda9f080e0337f9 SHA512 51f85eaae85deb66cea2ff434974699f6aa45ed1ed75217ef6176ac0b7d0f9f1c4fb186afc64c1b495474d5bad9ac7614033128c0bec39c05de723a9b29c8602 WHIRLPOOL c0d4cca71fb3921e39fc6def9932d5a2500a65c7ca60f15ee09eef25637f7653df489c1947b9880f5c4eb3fab11cba663b8604fad8989170b3a74994cd4eb847
EBUILD ncpfs-2.2.6-r2.ebuild 1953 SHA256 87189dbf1a8aff59d015f5a1f69bb1b09cdf98460211c1f314f4e6e558d912df SHA512 87457ae2c185aee7194fcec8d34d46632f7557ab10c7064b93ae696e81de75d028e9c3dacf35fbbfd57437fad6f013efb3bb09ea9b8d01353400ddbcca634a7b WHIRLPOOL 5b425c50791d4977706485db5a2dca90bc4c5d19c842b8a622b8d3c6084710f1e7c4039a233fc3595b17982ef29eec9bc20e4d7d6c4e79ca63cac736cb6bac84
-MISC ChangeLog 4863 SHA256 9acec6d6e4a8625283723a840e0569992ee1762bc4debbcf9051e2a7a44e65e1 SHA512 2604a90119ec79fee26fdd731fba2dfb6804b375e6e80c7cdf75965f2bf54bbe3da02b9f63b35fcae0e9900a03d362bf93be21f8995c07d8875d7ef24669255f WHIRLPOOL d7e26b283d4b71f9bcfad903198e5aacb675e6259134f3bfc7e8684c4919cdf443d826f5d5e77733e1af9d004904bf1b5675e3697dcd9f72e4071bfbb4d7d0eb
+EBUILD ncpfs-2.2.6-r3.ebuild 2718 SHA256 8a58bf775d67fadbd53762406196cc6e39057d1f014429b5d5d4302e1387bed4 SHA512 30d515e867fc3c416cb0e7b0e5dd914c62650682dba924f6b39d84a727855f7eab085b40910ea670aa18bd8dc39dd5705559bf71fc23ccf8739c92cbaa80f751 WHIRLPOOL 1e37d530ecc7d28aee9e0125c0fbc4829437b4161c1d0d981304ebbc3ae7a6f81c8e0fc07e7f0394f8a8906092204f9ccb83331f504f62acb331cbf4c2e46e65
+MISC ChangeLog 5644 SHA256 6002d0dafa17fbe852b45364a3024199909026fb4bef1fbec01b9a03475348d6 SHA512 f0a8abaa965b22b1e849903477b8fc9187b4c2c67411aafb4886e97ab010038024bb957394ade92ed95af0b75f0cbfb39969d1ace3ba99bdfb35c1e0bfda982f WHIRLPOOL f7134fe22494130205a2cb1695873df34b264f86eb9c514d7bd41f1e352f70989594553b098bb8848ee9c45ad4175ef56e6fa79a7e884b7e304bdd4fbc9cf99c
MISC metadata.xml 290 SHA256 bc04d955fed7a177f63051b016c7f24451c30200e8608b70f8e63e25176a0348 SHA512 52de55e9486be04762f7ddc2dfe231e3c409ec63d3ec39dcf252540add9165a14c968fa90e281575982229791bf4a070f2285d857ca589c63e499e66e1c58d64 WHIRLPOOL a67855c335e629d78f0d54430450565c4dc3ac97184b42bcf0cbe15dfb23bdaca234feeee15773216a5243c18dd141ad9dfcc6dc0b2b95b48944ae549674545d
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2
+
+iQIcBAEBCAAGBQJT6vv3AAoJENsjoH7SXZXj9XUQAILdfJejOXtsyZOTPqMHEbw0
+OVcC28FgKanK/7lp6BV62ASrvhPGMcOs0F+JYz541UpEKe5QgKm0SMurt211in+W
+KzTPLOo8OHDjww8PbdlZPV1XFb2ssTM8LUMelRvpZkNxU33E8YIe5voNnKW1lb+j
+/kmldPxnm36rgWNGCjQypm+Dto9kQOtzgZkTBMlsvhDx5V+Y2E1nBjoTfohDtb3e
+Z6u+g7vbYYwS3Y1pqH+u2SshYzw8BEHYFUS18DhlbOlzVNB6xX1bY2NFbKYa5nGo
+SCuVKm0LmOG4VL9RAyDRIQ5855r5i1/Xf8q/HJSo+0btFN1quAJWoV/bvQP2C4d6
+9gCOGp9zPZG9lfUeQwt2ezSUU8+4h8zWIEaRtOK04VrkcZVDhLqypPdWZ64aV+N0
+1UI0wpzVb4GStUEkS64FAi2Mqks84hKxIJCQF/oi+Obrb5eW8KpKV2bXAqgQ7rP0
++gB+WrysShUrHAYdByGTNyy6zyd21NI8TIblp2IxLtULjavTm7sRMAdIZppFr3nd
+SZGvwMjE7KBDQ24u5mftTMtyn5WEQ+fA3YHsMi9slsMKBU8vHEG+MlBJkZMYmrro
+Gn6RrcscFkRGH5Enkc/v3aTDCg16YNezBvVO53MxvvqAC+kA2d/iwkE05la4EOyN
+befofS2W6KBMAJ1lcg6Z
+=LekF
+-----END PGP SIGNATURE-----
diff --git a/net-fs/ncpfs/files/ncpfs-2.2.6-align-fix.patch b/net-fs/ncpfs/files/ncpfs-2.2.6-align-fix.patch
new file mode 100644
index 000000000000..2ec8f29e946e
--- /dev/null
+++ b/net-fs/ncpfs/files/ncpfs-2.2.6-align-fix.patch
@@ -0,0 +1,12 @@
+diff -Naurp ncpfs-2.2.6.orig/lib/ndslib.c ncpfs-2.2.6/lib/ndslib.c
+--- ncpfs-2.2.6.orig/lib/ndslib.c 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/lib/ndslib.c 2014-08-12 21:07:35.559190454 -0400
+@@ -957,7 +957,7 @@ static NWDSCCODE nds_beginauth2(
+ NWDSCCODE err;
+ int n1, n3;
+ u_int16_t n3a;
+- char rpb_b[DEFAULT_MESSAGE_LEN];
++ char rpb_b[DEFAULT_MESSAGE_LEN] __attribute__ ((aligned (4)));
+ Buf_T rpb;
+ size_t k1tl;
+
diff --git a/net-fs/ncpfs/files/ncpfs-2.2.6-cve-2011-1679-1680.patch b/net-fs/ncpfs/files/ncpfs-2.2.6-cve-2011-1679-1680.patch
new file mode 100644
index 000000000000..890a10a61b1f
--- /dev/null
+++ b/net-fs/ncpfs/files/ncpfs-2.2.6-cve-2011-1679-1680.patch
@@ -0,0 +1,54 @@
+diff -Naurp ncpfs-2.2.6.orig/sutil/ncpm_common.c ncpfs-2.2.6/sutil/ncpm_common.c
+--- ncpfs-2.2.6.orig/sutil/ncpm_common.c 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/sutil/ncpm_common.c 2014-08-12 20:55:00.349194943 -0400
+@@ -1415,6 +1415,7 @@ void add_mnt_entry(char* mount_name, cha
+ struct mntent ment;
+ int fd;
+ FILE* mtab;
++ off_t goodoffset;
+
+ ment.mnt_fsname = mount_name;
+ ment.mnt_dir = mpnt;
+@@ -1446,14 +1447,25 @@ void add_mnt_entry(char* mount_name, cha
+
+ if ((mtab = setmntent(MOUNTED, "a+")) == NULL)
+ {
++ unlink(MOUNTED "~");
+ errexit(59, _("Can't open %s\n"), MOUNTED);
+ }
++ fseek (mtab, 0, SEEK_END);
++ goodoffset = ftell(mtab);
+ if (addmntent(mtab, &ment) == 1)
+ {
++ /* restore good state */
++ ftruncate(fileno(mtab), goodoffset);
++ endmntent(mtab);
++ unlink(MOUNTED "~");
+ errexit(60, _("Can't write mount entry\n"));
+ }
+ if (fchmod(fileno(mtab), 0644) == -1)
+ {
++ /* restore good state */
++ ftruncate(fileno(mtab), goodoffset);
++ endmntent(mtab);
++ unlink(MOUNTED "~");
+ errexit(61, _("Can't set perms on %s\n"), MOUNTED);
+ }
+ endmntent(mtab);
+diff -Naurp ncpfs-2.2.6.orig/sutil/ncpumount.c ncpfs-2.2.6/sutil/ncpumount.c
+--- ncpfs-2.2.6.orig/sutil/ncpumount.c 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/sutil/ncpumount.c 2014-08-12 20:55:00.349194943 -0400
+@@ -163,7 +163,12 @@ static int __clearMtab (const char* moun
+ i++;
+ }
+ if (!found) {
+- addmntent(new_mtab, mnt);
++ if (addmntent(new_mtab, mnt)) {
++ eprintf(_("Can't addmntent to %s: %s\n"), MOUNTED_TMP,
++ strerror(errno));
++ endmntent(mtab);
++ return 1;
++ }
+ }
+ }
+
diff --git a/net-fs/ncpfs/files/ncpfs-2.2.6-drop-kernel-check.patch b/net-fs/ncpfs/files/ncpfs-2.2.6-drop-kernel-check.patch
new file mode 100644
index 000000000000..9e42f79fe162
--- /dev/null
+++ b/net-fs/ncpfs/files/ncpfs-2.2.6-drop-kernel-check.patch
@@ -0,0 +1,31 @@
+Description: Drop kernel version check
+Author: Bastian Blank <waldi@debian.org>
+Bug-Debian: http://bugs.debian.org/692472
+
+--- ncpfs-2.2.6.orig/sutil/ncpm_common.c
++++ ncpfs-2.2.6/sutil/ncpm_common.c
+@@ -243,23 +243,6 @@ static int load_ncpfs(void)
+ #endif /* MOUNT2 */
+
+ static int getmountver(void) {
+- struct utsname name;
+- int maj, mid, rev;
+- int ver;
+-
+- if (uname(&name)) {
+- errexit(1, _("Cannot get kernel release\n"));
+- }
+- if (sscanf(name.release, "%d.%d.%d", &maj, &mid, &rev) != 3) {
+- errexit(2, _("Cannot convert kernel release \"%s\" to number\n"), name.release);
+- }
+- ver = maj*0x10000 + mid*0x100 + rev;
+- if (ver < 0x20100)
+- return 2;
+- if (ver < 0x20328)
+- return 3;
+- if (ver < 0x2051F)
+- return 4;
+ return 5;
+ }
+
+
diff --git a/net-fs/ncpfs/files/ncpfs-2.2.6-drop-mtab-support.patch b/net-fs/ncpfs/files/ncpfs-2.2.6-drop-mtab-support.patch
new file mode 100644
index 000000000000..fe52391bb091
--- /dev/null
+++ b/net-fs/ncpfs/files/ncpfs-2.2.6-drop-mtab-support.patch
@@ -0,0 +1,286 @@
+diff -Naurp ncpfs-2.2.6.orig/sutil/ncplogin.c ncpfs-2.2.6/sutil/ncplogin.c
+--- ncpfs-2.2.6.orig/sutil/ncplogin.c 2014-08-12 22:03:48.059170406 -0400
++++ ncpfs-2.2.6/sutil/ncplogin.c 2014-08-12 22:08:09.029168854 -0400
+@@ -111,7 +111,6 @@
+ #include <stdlib.h>
+ #include <stdarg.h>
+ #include <sys/mount.h>
+-#include <mntent.h>
+ #include <ncp/kernel/ipx.h>
+ #include <sys/ioctl.h>
+ #ifdef CONFIG_NATIVE_UNIX
+@@ -935,12 +934,6 @@ ncpipx:;
+ }
+ NWCCCloseConn(conn);
+ NWDSFreeContext(ctx);
+- /* ncpmap, ncplogin must write in /etc/mtab */
+- {
+- block_sigs();
+- add_mnt_entry(mount_name, mount_point, info.flags);
+- unblock_sigs();
+- }
+ free(mount_name);
+ if (info.echo_mnt_pnt) {
+ printf(_("mounted on:%s\n"),mount_point);
+diff -Naurp ncpfs-2.2.6.orig/sutil/ncpm_common.c ncpfs-2.2.6/sutil/ncpm_common.c
+--- ncpfs-2.2.6.orig/sutil/ncpm_common.c 2014-08-12 22:03:48.149170405 -0400
++++ ncpfs-2.2.6/sutil/ncpm_common.c 2014-08-12 22:08:09.029168854 -0400
+@@ -104,7 +104,6 @@
+ #include <stdlib.h>
+ #include <stdarg.h>
+ #include <sys/mount.h>
+-#include <mntent.h>
+ #include <ncp/kernel/ipx.h>
+ #include <sys/ioctl.h>
+ #if MOUNT3
+@@ -1423,80 +1422,6 @@ static const struct smntflags {
+ {MS_NODIRATIME, "nodiratime"},
+ {0, NULL}};
+
+-void add_mnt_entry(char* mount_name, char* mpnt, unsigned long flags) {
+- const struct smntflags* sf;
+- char mnt_opts[80];
+- char* p;
+- struct mntent ment;
+- int fd;
+- FILE* mtab;
+- off_t goodoffset;
+-
+- if (check_name(mount_name) == -1 || check_name(mpnt) == -1)
+- errexit(107, _("Illegal character in mount entry\n"));
+-
+- ment.mnt_fsname = mount_name;
+- ment.mnt_dir = mpnt;
+- ment.mnt_type = (char*)"ncpfs";
+- ment.mnt_opts = mnt_opts;
+- ment.mnt_freq = 0;
+- ment.mnt_passno = 0;
+-
+- p = mnt_opts;
+- *p++ = 'r';
+- *p++ = (flags & MS_RDONLY)?'o':'w';
+- for (sf = mntflags; sf->flag; sf++) {
+- if (flags & sf->flag) {
+- *p++ = ',';
+- strcpy(p, sf->name);
+- p += strlen(p);
+- }
+- }
+- *p = 0;
+-
+- if (ncpm_suser()) {
+- errexit(91, _("Cannot switch to superuser: %s\n"), strerror(errno));
+- }
+- if ((fd = open(MOUNTED "~", O_RDWR | O_CREAT | O_EXCL, 0600)) == -1)
+- {
+- errexit(58, _("Can't get %s~ lock file\n"), MOUNTED);
+- }
+- close(fd);
+-
+- if ((mtab = setmntent(MOUNTED, "a+")) == NULL)
+- {
+- unlink(MOUNTED "~");
+- errexit(59, _("Can't open %s\n"), MOUNTED);
+- }
+- fseek (mtab, 0, SEEK_END);
+- goodoffset = ftell(mtab);
+- if (addmntent(mtab, &ment) == 1)
+- {
+- /* restore good state */
+- ftruncate(fileno(mtab), goodoffset);
+- endmntent(mtab);
+- unlink(MOUNTED "~");
+- errexit(60, _("Can't write mount entry\n"));
+- }
+- if (fchmod(fileno(mtab), 0644) == -1)
+- {
+- /* restore good state */
+- ftruncate(fileno(mtab), goodoffset);
+- endmntent(mtab);
+- unlink(MOUNTED "~");
+- errexit(61, _("Can't set perms on %s\n"), MOUNTED);
+- }
+- endmntent(mtab);
+-
+- if (unlink(MOUNTED "~") == -1)
+- {
+- errexit(62, _("Can't remove %s~\n"), MOUNTED);
+- }
+- if (ncpm_normal()) {
+- errexit(90, _("Cannot relinquish superuser rights: %s\n"), strerror(EPERM));
+- }
+-}
+-
+ static int __proc_option(const struct optinfo* opts, struct ncp_mount_info* info, const char* opt, const char* param) {
+ const struct optinfo* optr;
+
+diff -Naurp ncpfs-2.2.6.orig/sutil/ncpm_common.h ncpfs-2.2.6/sutil/ncpm_common.h
+--- ncpfs-2.2.6.orig/sutil/ncpm_common.h 2014-08-12 22:03:47.919170406 -0400
++++ ncpfs-2.2.6/sutil/ncpm_common.h 2014-08-12 22:08:09.029168854 -0400
+@@ -60,7 +60,6 @@ void verify_argv(int argc, char* argv[])
+ int ncp_mount_specific(struct ncp_conn* conn, int pathNS, const unsigned char* NWpath, int pathlen);
+ int mount_ok(struct stat *st);
+ void mycom_err(int, const char*, ...);
+-void add_mnt_entry(char* mount_name, char* mpoint, unsigned long flags);
+
+ struct ncp_mount_info {
+ struct ncp_mount_data_independent mdata;
+diff -Naurp ncpfs-2.2.6.orig/sutil/ncpmount.c ncpfs-2.2.6/sutil/ncpmount.c
+--- ncpfs-2.2.6.orig/sutil/ncpmount.c 2014-08-12 22:03:47.919170406 -0400
++++ ncpfs-2.2.6/sutil/ncpmount.c 2014-08-12 22:08:09.029168854 -0400
+@@ -114,7 +114,6 @@
+ #include <stdlib.h>
+ #include <stdarg.h>
+ #include <sys/mount.h>
+-#include <mntent.h>
+ #include <ncp/kernel/ipx.h>
+ #include <ncp/nwclient.h>
+ #include <sys/ioctl.h>
+@@ -719,11 +718,6 @@ ncpipx:;
+ }
+ ncp_close(conn);
+
+- if (!opt_n) {
+- block_sigs();
+- add_mnt_entry(mount_name, mount_point, info.flags);
+- unblock_sigs();
+- }
+ return 0;
+ }
+
+diff -Naurp ncpfs-2.2.6.orig/sutil/ncpumount.c ncpfs-2.2.6/sutil/ncpumount.c
+--- ncpfs-2.2.6.orig/sutil/ncpumount.c 2014-08-12 22:03:47.949170406 -0400
++++ ncpfs-2.2.6/sutil/ncpumount.c 2014-08-12 22:09:30.179168372 -0400
+@@ -179,113 +179,6 @@ static void enableAlarm(void) {
+ sigprocmask(SIG_UNBLOCK, &sa.sa_mask, NULL);
+ }
+
+-static int __clearMtab (const char* mount_points[], unsigned int numEntries) {
+-// main logic from ncpumount.c
+- struct mntent *mnt;
+- FILE *mtab;
+- FILE *new_mtab;
+-
+-#define MOUNTED_TMP MOUNTED".tmp"
+-
+- if ((mtab = setmntent(MOUNTED, "r")) == NULL){
+- eprintf(_("Can't open %s: %s\n"), MOUNTED,
+- strerror(errno));
+- return 1;
+- }
+-
+- if ((new_mtab = setmntent(MOUNTED_TMP, "w")) == NULL){
+- eprintf(_("Can't open %s: %s\n"), MOUNTED_TMP,
+- strerror(errno));
+- endmntent(mtab);
+- return 1;
+- }
+- while ((mnt = getmntent(mtab)) != NULL) {
+- unsigned int i=0;
+- int found=0;
+-
+- while (i<numEntries && !found) {
+- found=!strcmp(mnt->mnt_dir, mount_points[i]);
+- i++;
+- }
+- if (!found) {
+- if (addmntent(new_mtab, mnt)) {
+- eprintf(_("Can't addmntent to %s: %s\n"), MOUNTED_TMP,
+- strerror(errno));
+- endmntent(mtab);
+- return 1;
+- }
+- }
+- }
+-
+- endmntent(mtab);
+-
+- if (fchmod(fileno(new_mtab), S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH) < 0){
+- eprintf(_("Error changing mode of %s: %s\n"),
+- MOUNTED_TMP, strerror(errno));
+- return 1;
+- }
+- endmntent(new_mtab);
+-
+- if (rename(MOUNTED_TMP, MOUNTED) < 0){
+- eprintf(_("Cannot rename %s to %s: %s\n"),
+- MOUNTED, MOUNTED_TMP, strerror(errno));
+- return 1;
+- }
+- return 0;
+-}
+-
+-static int clearMtab (const char* mount_points[], unsigned int numEntries) {
+- int fd;
+- int err;
+- int retries = 10;
+-
+- if (!numEntries)
+- return 0; /* don't waste time ! */
+-
+- block_sigs();
+-
+- while ((fd = open(MOUNTED "~", O_RDWR | O_CREAT | O_EXCL, 0600)) == -1) {
+- struct timespec tm;
+-
+- if (errno != EEXIST || retries == 0) {
+- unblock_sigs();
+- eprintf(_("Can't get %s~ lock file: %s\n"), MOUNTED, strerror(errno));
+- return 1;
+- }
+- fd = open(MOUNTED "~", O_RDWR);
+- if (fd != -1) {
+- alarm(10);
+- err = lockf(fd, F_LOCK, 0);
+- alarm(0);
+- close(fd);
+- if (err) {
+- unblock_sigs();
+- eprintf(_("Can't lock lock file %s~: %s\n"), MOUNTED, _("Lock timed out"));
+- return 1;
+- }
+- tm.tv_sec = 0;
+- tm.tv_nsec = 20000000;
+- nanosleep(&tm, NULL);
+- }
+- retries--;
+- }
+- alarm(1);
+- lockf(fd, F_LOCK, 0);
+- alarm(0);
+- close(fd);
+-
+- err = __clearMtab(mount_points, numEntries);
+-
+- if ((unlink(MOUNTED "~") == -1) && (err == 0)){
+- unblock_sigs();
+- eprintf(_("Can't remove %s~"), MOUNTED);
+- return 1;
+- }
+- unblock_sigs();
+- return err;
+-}
+-
+-
+ int ncp_mnt_umount(const char *abs_mnt, const char *rel_mnt)
+ {
+ if (umount(rel_mnt) != 0) {
+@@ -622,10 +515,6 @@ static int old_ncpumount(int argc, char
+ ret = 1;
+ continue;
+ }
+- if (clearMtab(&mount_point, 1)) {
+- ret = 1;
+- continue;
+- }
+ }
+ return ret;
+ }
+@@ -744,7 +633,6 @@ main(int argc, char *argv[])
+ if (serverName || allConns) {
+ processBindServers(conns,curEntries,serverName,umountTable,&mountEntries);
+ }
+- clearMtab(umountTable, mountEntries);
+ } else if (treeName) {
+ eprintf(_("No NCP connections to tree %s.\n"),treeName);
+ } else if (serverName) {
diff --git a/net-fs/ncpfs/files/ncpfs-2.2.6-getuid-fix.patch b/net-fs/ncpfs/files/ncpfs-2.2.6-getuid-fix.patch
new file mode 100644
index 000000000000..8b58a1375d93
--- /dev/null
+++ b/net-fs/ncpfs/files/ncpfs-2.2.6-getuid-fix.patch
@@ -0,0 +1,124 @@
+diff -Naurp ncpfs-2.2.6.orig/contrib/tcl-utils/chgpwd.c ncpfs-2.2.6/contrib/tcl-utils/chgpwd.c
+--- ncpfs-2.2.6.orig/contrib/tcl-utils/chgpwd.c 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/contrib/tcl-utils/chgpwd.c 2014-08-12 21:08:25.779190155 -0400
+@@ -292,12 +292,12 @@ int main(int argc, char *argv[]) {
+ }
+ } else {
+ if (!treeName[0]) {
+- NWCXGetPreferredDSTree(treeName,sizeof(treeName));
++ dserr=NWCXGetPreferredDSTree(treeName,sizeof(treeName));
+
+ }
+ if (!treeName[0]) {
+ fprintf(stderr,"failed: You must specify a server or a tree\n");
+- dserr=114;
++ /*dserr=114;*/
+ goto finished;
+ }
+
+diff -Naurp ncpfs-2.2.6.orig/contrib/tcl-utils/ncplist.c ncpfs-2.2.6/contrib/tcl-utils/ncplist.c
+--- ncpfs-2.2.6.orig/contrib/tcl-utils/ncplist.c 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/contrib/tcl-utils/ncplist.c 2014-08-12 21:08:25.779190155 -0400
+@@ -299,7 +299,12 @@ int main(int argc, char *argv[]) {
+ }else {
+
+ if (!treeName[0]) {
+- NWCXGetPreferredDSTree(treeName,sizeof(treeName));
++ dserr=NWCXGetPreferredDSTree(treeName,sizeof(treeName));
++ if (dserr){
++ fprintf(stderr, "failed: Cannot get preffered DS tree: %s\n",
++ strnwerror(dserr);
++ exit(106);
++ }
+
+ }
+ if (!treeName[0]) {
+diff -Naurp ncpfs-2.2.6.orig/contrib/tcl-utils/ncpreadprop.c ncpfs-2.2.6/contrib/tcl-utils/ncpreadprop.c
+--- ncpfs-2.2.6.orig/contrib/tcl-utils/ncpreadprop.c 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/contrib/tcl-utils/ncpreadprop.c 2014-08-12 21:08:25.779190155 -0400
+@@ -470,7 +470,7 @@ main(int argc, char *argv[])
+ }
+ } else {
+ if (!treeName[0]) {
+- NWCXGetPreferredDSTree(treeName,sizeof(treeName));
++ dserr=NWCXGetPreferredDSTree(treeName,sizeof(treeName));
+
+ }
+ if (!treeName[0]) {
+diff -Naurp ncpfs-2.2.6.orig/contrib/tcl-utils/ncpreadprops.c ncpfs-2.2.6/contrib/tcl-utils/ncpreadprops.c
+--- ncpfs-2.2.6.orig/contrib/tcl-utils/ncpreadprops.c 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/contrib/tcl-utils/ncpreadprops.c 2014-08-12 21:08:25.779190155 -0400
+@@ -507,7 +507,7 @@ main(int argc, char *argv[])
+ }
+ } else {
+ if (!treeName[0]) {
+- NWCXGetPreferredDSTree(treeName,sizeof(treeName));
++ dserr=NWCXGetPreferredDSTree(treeName,sizeof(treeName));
+
+ }
+ if (!treeName[0]) {
+diff -Naurp ncpfs-2.2.6.orig/lib/nwclient.c ncpfs-2.2.6/lib/nwclient.c
+--- ncpfs-2.2.6.orig/lib/nwclient.c 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/lib/nwclient.c 2014-08-12 21:08:25.779190155 -0400
+@@ -481,6 +481,10 @@ static char* readnwinfosfile (char * use
+ *err = EACCES;
+ return NULL;
+ }
++ if (st.st_uid != getuid()) {
++ *err = EACCES;
++ return NULL;
++ }
+ if ((st.st_mode & (S_IRWXO | S_IRWXG)) != 0) {
+ *err = NCPLIB_INVALID_MODE;
+ return NULL;
+@@ -560,7 +564,7 @@ NWDSCCODE NWCXGetPreferredDSTree (NWD
+ if (!res)
+ res=readnwinfosfile (NULL,NDS_PREFERRED_TREE,NULL, &err);
+ if (!res)
+- return -1;
++ return err;
+ if (strlen (res)+1 >maxLen)
+ return NWE_BUFFER_OVERFLOW;
+ strcpy(preferTree,res);
+@@ -581,7 +585,7 @@ NWDSCCODE NWCXGetDefaultNameContext (con
+ if (!res)
+ res=readnwinfosfile (NULL,NDS_PREFERRED_NAME_CTX,forTree,&err);
+ if (!res)
+- return -1;
++ return err;
+ if (strlen (res)+1 >maxLen)
+ return NWE_BUFFER_OVERFLOW;
+ strcpy(nameContext,res);
+@@ -603,7 +607,7 @@ NWDSCCODE NWCXGetPreferredServer (con
+
+ res=readnwinfosfile (NULL, NDS_PREFERRED_SERVER, forTree, &err);
+ if (!res) {
+- return -1;
++ return err;
+ }
+ }
+ /* test that this server DO belongs to tree forTree*/
+@@ -644,7 +648,7 @@ NWDSCCODE NWCXGetDefaultUserName (const
+ if (!res)
+ res=readnwinfosfile (NULL,NDS_USER,forTree, &err);
+ if (!res)
+- return -1;
++ return err;
+ if (strlen (res)+1 >maxLen)
+ return NWE_BUFFER_OVERFLOW;
+ strcpy(defaultName,res);
+diff -Naurp ncpfs-2.2.6.orig/sutil/ncplogin.c ncpfs-2.2.6/sutil/ncplogin.c
+--- ncpfs-2.2.6.orig/sutil/ncplogin.c 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/sutil/ncplogin.c 2014-08-12 21:08:25.779190155 -0400
+@@ -588,7 +588,10 @@ main(int argc, char *argv[])
+ int flags = 0;
+
+ if (!info.tree) {
+- NWCXGetPreferredDSTree(ntree, sizeof(ntree));
++ err=NWCXGetPreferredDSTree(ntree, sizeof(ntree));
++ if (err){
++ errexit(104, _("Cannot get preffered DS tree: %s\n"),strnwerror(err));
++ }
+ info.tree = ntree;
+ }
+
diff --git a/net-fs/ncpfs/files/ncpfs-2.2.6-ldflags-support.patch b/net-fs/ncpfs/files/ncpfs-2.2.6-ldflags-support.patch
new file mode 100644
index 000000000000..613fd120f070
--- /dev/null
+++ b/net-fs/ncpfs/files/ncpfs-2.2.6-ldflags-support.patch
@@ -0,0 +1,153 @@
+diff -Naurp ncpfs-2.2.6.orig/contrib/pam/Makefile.in ncpfs-2.2.6/contrib/pam/Makefile.in
+--- ncpfs-2.2.6.orig/contrib/pam/Makefile.in 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/contrib/pam/Makefile.in 2014-08-12 21:06:42.369190770 -0400
+@@ -17,6 +17,7 @@ PAM_LIBRARY = pam_ncp_auth.so
+ PAM_OBJECTS = pam_ncp_auth.do support.do
+
+ CFLAGS_pam_ncp_auth.do := -DNCPMOUNT_PATH=\"$(bindir)/ncpmount\" -DNCPUMOUNT_PATH=\"$(bindir)/ncpumount\"
++LDFLAGS = @LDFLAGS@
+
+ .PHONY : all install install-dev dep clean mrproper distclean
+ .PHONY : default
+@@ -45,7 +46,7 @@ $(PAM_OBJECTS): %.do: %.c
+
+
+ $(PAM_LIBRARY): $(PAM_OBJECTS)
+- $(CC) $(CFLAGS) -shared -o $@ $(PAM_OBJECTS) -L$(NCPLIB_DIR) -lncp -lpam ${LIBS}
++ $(CC) $(CFLAGS) -shared $(LDFLAGS) -o $@ $(PAM_OBJECTS) -L$(NCPLIB_DIR) -lncp -lpam ${LIBS}
+
+ dep:
+
+diff -Naurp ncpfs-2.2.6.orig/ipx-1.0/Makefile.in ncpfs-2.2.6/ipx-1.0/Makefile.in
+--- ncpfs-2.2.6.orig/ipx-1.0/Makefile.in 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/ipx-1.0/Makefile.in 2014-08-12 21:06:42.369190770 -0400
+@@ -9,6 +9,7 @@ vpath %.c ${this_srcdir}
+ vpath %.8 ${this_srcdir}
+
+ LIBS = @INTLLIBS@ @LIBS@
++LDFLAGS = @LDFLAGS@
+
+ O_UTILS = ipx_configure.o ipx_cmd.o
+ O_UTIIPX = ipx_interface.o ipx_internal_net.o ipx_route.o
+@@ -33,7 +34,7 @@ $(ALL_OBJECTS): %.o: %.c
+ [ -s $@ ] || rm -f $@
+
+ $(UTIIPX): %: %.o ipxutil.o
+- $(CC) $(CFLAGS) -o $@ $(addsuffix .o,$@) ipxutil.o ${LIBS}
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(addsuffix .o,$@) ipxutil.o ${LIBS}
+
+ $(UTILS): %: %.o
+ $(CC) $(CFLAGS) -o $@ $(addsuffix .o,$@) ${LIBS}
+diff -Naurp ncpfs-2.2.6.orig/ipxdump/Makefile.in ncpfs-2.2.6/ipxdump/Makefile.in
+--- ncpfs-2.2.6.orig/ipxdump/Makefile.in 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/ipxdump/Makefile.in 2014-08-12 21:06:42.369190770 -0400
+@@ -11,6 +11,7 @@ ncp_if_ether_support = @ncp_if_ether_sup
+ OBJECTS= ipxutil.o
+
+ ALL_OBJECTS := $(EXEC:%=%.o) $(OBJECTS)
++LDFLAGS = @LDFLAGS@
+
+ .PHONY : all install dep clean mrproper distclean
+ .PHONY : dist tgz
+@@ -24,7 +25,7 @@ install: $(EXEC)
+ ifeq ($(ncp_if_ether_support),yes)
+
+ $(EXEC): %: %.o $(OBJECTS)
+- $(CC) $(CFLAGS) -o $@ $(addsuffix .o,$@) $(OBJECTS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(addsuffix .o,$@) $(OBJECTS)
+
+ else
+ .PHONY ipxdump ipxparse
+diff -Naurp ncpfs-2.2.6.orig/lib/Makefile.in ncpfs-2.2.6/lib/Makefile.in
+--- ncpfs-2.2.6.orig/lib/Makefile.in 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/lib/Makefile.in 2014-08-12 21:06:42.369190770 -0400
+@@ -23,6 +23,7 @@ STATIC_NCPLIB_BIN := $(STATIC_NCPLIB)
+ CCFLAGS += -I.
+ PIC_FLAGS := -fPIC
+ NWCOMPAT := 1
++LDFLAGS := @LDFLAGS@
+
+ SHARED_VLINK :=
+ SHARED_VLINK_CFLAGS :=
+@@ -122,7 +123,7 @@ $(SHARED_NCPLIB): $(SHARED_NCPLIB_BIN)
+ ln -sf $< $@
+
+ $(SHARED_NCPLIB_BIN): $(SHARED_O_OBJ) ${this_srcdir}/libncp.vers
+- $(CC) -shared -o $@ -Wl,-soname=$(SHARED_NCPLIB_SONAME) $(SHARED_VLINK) $(SHARED_O_OBJ) ${LIBS} -lc
++ $(CC) -shared -o $@ -Wl,-soname=$(SHARED_NCPLIB_SONAME) $(LDFLAGS) $(SHARED_VLINK) $(SHARED_O_OBJ) ${LIBS} -lc
+
+ install_static: $(STATIC_NCPLIB_BIN)
+ $(INSTALL) -d $(DESTDIR)$(libadir)
+diff -Naurp ncpfs-2.2.6.orig/Make.rules.in ncpfs-2.2.6/Make.rules.in
+--- ncpfs-2.2.6.orig/Make.rules.in 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/Make.rules.in 2014-08-12 21:06:42.369190770 -0400
+@@ -42,6 +42,7 @@ CFLAGS_OPTIONS += $(CWARN)
+ CFLAGS_DEFINES := -DN_PLAT_LINUX -DLOCALEDIR=\"${localedir}\" -DNCPFS_VERSION=\"${VERSION}\" -DNCPFS_PACKAGE=\"${PACKAGE}\"
+
+ CCFLAGS := $(CFLAGS_DEFINES) $(CFLAGS_OPTIONS) $(INCLUDES)
++LDFLAGS := @LDFLAGS@
+
+ # If your system is ELF, either also do a 'make install', or append the util/
+ # directory where the dynamic library resides to the environment
+diff -Naurp ncpfs-2.2.6.orig/sutil/Makefile.in ncpfs-2.2.6/sutil/Makefile.in
+--- ncpfs-2.2.6.orig/sutil/Makefile.in 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/sutil/Makefile.in 2014-08-12 21:06:42.369190770 -0400
+@@ -14,6 +14,7 @@ USE_KERNEL = @USE_KERNEL@
+ NDS_SUPPORT = @NDS_SUPPORT@
+
+ LIBS = @INTLLIBS@ @LIBS@
++LDFLAGS := @LDFLAGS@
+
+ # environ in ncpmount
+ CCFLAGS += -D_GNU_SOURCE
+@@ -69,7 +70,7 @@ $(O_UTILS:.o=.d): %.d: %.c
+ [ -s $@ ] || rm -f $@
+
+ ncpmap.o: %.o: ncplogin.c
+- $(CC) $(CFLAGS) $(CCFLAGS) $(CFLAGS_$@) -o $@ -c $<
++ $(CC) $(CFLAGS) $(LDFLAGS) $(CCFLAGS) $(CFLAGS_$@) -o $@ -c $<
+
+ ncpmap.d: %.d: ncplogin.c
+ set -e; $(CC) -M $(CFLAGS) $(CCFLAGS) $(CFLAGS_$(@:.d=.o)) $< \
+@@ -85,7 +86,7 @@ ncpm_common.d mount_login.d: %.d: %.c
+ [ -s $@ ] || rm -f $@
+
+ $(UTILS): %: %.o ../lib/libncp.a ncpm_common.o mount_login.o
+- $(CC) @GC_SECTIONS@-o $@ $(addsuffix .o,$@) $(LDFLAGS_$@) ../lib/libncp.a ${LIBS}
++ $(CC) @GC_SECTIONS@-o $@ $(addsuffix .o,$@) $(LDFLAGS) $(LDFLAGS_$@) ../lib/libncp.a ${LIBS}
+
+ ../lib/libncp.a:
+ make -C ../lib libncp.a
+diff -Naurp ncpfs-2.2.6.orig/util/Makefile.in ncpfs-2.2.6/util/Makefile.in
+--- ncpfs-2.2.6.orig/util/Makefile.in 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/util/Makefile.in 2014-08-12 21:06:42.369190770 -0400
+@@ -15,6 +15,7 @@ NDS_SUPPORT = @NDS_SUPPORT@
+ MOUNT2 = @MOUNT2@
+
+ LIBS = @INTLLIBS@ @LIBS@
++LDFLAGS = @LDFLAGS@
+
+ O_OTHER = dsqueue.o
+ O_USERUTILS = slist.o pqlist.o nwfsinfo.o pserver.o nprint.o nsend.o \
+@@ -83,7 +84,7 @@ install-dev:
+ make -C ../lib libncp.so
+
+ $(O_USERUTILS) $(O_SBINUTILS) $(O_OTHER) ncptest.o: %.o: %.c
+- $(CC) $(CFLAGS) $(CCFLAGS) $(CFLAGS_$@) -o $@ -c $<
++ $(CC) $(CFLAGS) $(LDFLAGS) $(CCFLAGS) $(CFLAGS_$@) -o $@ -c $<
+
+ %.d: %.c
+ set -e; $(CC) -M $(CFLAGS) $(CCFLAGS) $(CFLAGS_$(@:.d=.o)) $< \
+@@ -94,10 +95,10 @@ $(O_USERUTILS) $(O_SBINUTILS) $(O_OTHER)
+ pqstat nwpqjob nprint: dsqueue.o
+
+ $(UTILS): %: %.o $(LIBDEP)
+- $(CC) $(CFLAGS) -o $@ $(addsuffix .o,$@) $(ADDOBJS_$@) -L$(NCPLIB_DIR) -lncp ${LIBS}
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(addsuffix .o,$@) $(ADDOBJS_$@) -L$(NCPLIB_DIR) -lncp ${LIBS}
+
+ ipx_probe: ipx_probe.c
+- $(CC) $(CFLAGS) $(CCFLAGS) -o ipx_probe ipx_probe.c ${LIBS}
++ $(CC) $(CFLAGS) $(LDFLAGS) $(CCFLAGS) -o ipx_probe ipx_probe.c ${LIBS}
+
+ dep:
+
diff --git a/net-fs/ncpfs/files/ncpfs-2.2.6-makefile-fix-soname-link.patch b/net-fs/ncpfs/files/ncpfs-2.2.6-makefile-fix-soname-link.patch
new file mode 100644
index 000000000000..240c91424766
--- /dev/null
+++ b/net-fs/ncpfs/files/ncpfs-2.2.6-makefile-fix-soname-link.patch
@@ -0,0 +1,15 @@
+diff -Naurp ncpfs-2.2.6.orig/lib/Makefile.in ncpfs-2.2.6/lib/Makefile.in
+--- ncpfs-2.2.6.orig/lib/Makefile.in 2014-08-12 23:23:27.149141996 -0400
++++ ncpfs-2.2.6/lib/Makefile.in 2014-08-12 23:23:55.969141824 -0400
+@@ -99,9 +99,10 @@ distclean: mrproper
+ install_shared: $(SHARED_NCPLIB_BIN)
+ $(INSTALL) -d $(DESTDIR)$(libsodir)
+ $(INSTALL) $(SHARED_NCPLIB_BIN) $(DESTDIR)$(libsodir)
++ ln -sf $(SHARED_NCPLIB_BIN) $(DESTDIR)$(libsodir)/$(SHARED_NCPLIB)
++ ln -sf $(SHARED_NCPLIB_BIN) $(DESTDIR)$(libsodir)/$(SHARED_NCPLIB_SONAME)
+
+ install-dev: install_shared install_static
+- ln -sf $(SHARED_NCPLIB_SONAME) $(DESTDIR)$(libsodir)/$(SHARED_NCPLIB)
+ $(INSTALL) -d $(DESTDIR)$(includedir)/ncp
+ $(INSTALL) -d $(DESTDIR)$(includedir)/ncp/ext
+ $(INSTALL) -d $(DESTDIR)$(includedir)/ncp/kernel
diff --git a/net-fs/ncpfs/files/ncpfs-2.2.6-no-suid-root.patch b/net-fs/ncpfs/files/ncpfs-2.2.6-no-suid-root.patch
new file mode 100644
index 000000000000..050de30b86b0
--- /dev/null
+++ b/net-fs/ncpfs/files/ncpfs-2.2.6-no-suid-root.patch
@@ -0,0 +1,16 @@
+Description: Don't install utils as suid root
+Author: Bastian Blank <waldi@debian.org>
+Bug-Debian: http://bugs.debian.org/692929
+
+--- ncpfs-2.2.6.orig/sutil/Makefile.in
++++ ncpfs-2.2.6/sutil/Makefile.in
+@@ -51,7 +51,7 @@ all: $(UTILS)
+ install: all
+ ${INSTALL} -d $(DESTDIR)$(bindir)
+ ${INSTALL} -d $(DESTDIR)/sbin
+- ${INSTALL} -m 4755 $(UTILS) $(DESTDIR)$(bindir)
++ ${INSTALL} $(UTILS) $(DESTDIR)$(bindir)
+ ifeq ($(USE_KERNEL),1)
+ ln -sf $(bindir)/ncpmount $(DESTDIR)/sbin/mount.ncp
+ ln -sf $(bindir)/ncpmount $(DESTDIR)/sbin/mount.ncpfs
+
diff --git a/net-fs/ncpfs/files/ncpfs-2.2.6-pam_ncp_auth-fix.patch b/net-fs/ncpfs/files/ncpfs-2.2.6-pam_ncp_auth-fix.patch
new file mode 100644
index 000000000000..2a9e0edd4b22
--- /dev/null
+++ b/net-fs/ncpfs/files/ncpfs-2.2.6-pam_ncp_auth-fix.patch
@@ -0,0 +1,12 @@
+diff -Naurp ncpfs-2.2.6.orig/contrib/pam/pam_ncp_auth.c ncpfs-2.2.6/contrib/pam/pam_ncp_auth.c
+--- ncpfs-2.2.6.orig/contrib/pam/pam_ncp_auth.c 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/contrib/pam/pam_ncp_auth.c 2014-08-12 21:02:33.229192251 -0400
+@@ -2534,7 +2534,7 @@ nw_retrieve_nds_user_info(struct nw_user
+ bailoutctx:;
+ NWDSFreeContext(ctx);
+ bailout:;
+- if (!err & (ui->qflag & QF_DEBUG))
++ if ((!err) && (ui->qflag & QF_DEBUG))
+ syslog(LOG_NOTICE, "%u %u %s %s %s\n", ui->uid, ui->gid, ui->dir, ui->gecos, ui->shell);
+ return err;
+ }
diff --git a/net-fs/ncpfs/files/ncpfs-2.2.6-pie-fix.patch b/net-fs/ncpfs/files/ncpfs-2.2.6-pie-fix.patch
new file mode 100644
index 000000000000..779991808eda
--- /dev/null
+++ b/net-fs/ncpfs/files/ncpfs-2.2.6-pie-fix.patch
@@ -0,0 +1,31 @@
+diff -Naurp ncpfs-2.2.6.orig/lib/Makefile.in ncpfs-2.2.6/lib/Makefile.in
+--- ncpfs-2.2.6.orig/lib/Makefile.in 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/lib/Makefile.in 2014-08-12 21:05:24.349191234 -0400
+@@ -57,7 +57,7 @@ NDS_CFLAGS := $(BASE_CFLAGS) -DPORTABLE
+ CFLAGS_ncplib.o := -DNWSFIND=\"$(bindir)/nwsfind\"
+ CFLAGS_cfgfile.o := -DGLOBALCFGFILE=\"$(sysconfdir)/ncpfs.conf\"
+
+-STATIC_CFLAGS := $(CFLAGS) $(CCFLAGS) $(REENTRANT_CFLAGS) @FFUNCTION_SECTIONS@
++STATIC_CFLAGS := $(CFLAGS) $(CCFLAGS) $(REENTRANT_CFLAGS) $(PIC_FLAGS) @FFUNCTION_SECTIONS@
+ SHARED_CFLAGS := $(CFLAGS) $(CCFLAGS) $(REENTRANT_CFLAGS) $(PIC_FLAGS) $(SHARED_VLINK_CFLAGS)
+
+ .PHONY : all dep install install-dev clean mrproper distclean
+diff -Naurp ncpfs-2.2.6.orig/sutil/Makefile.in ncpfs-2.2.6/sutil/Makefile.in
+--- ncpfs-2.2.6.orig/sutil/Makefile.in 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/sutil/Makefile.in 2014-08-12 21:05:24.349191234 -0400
+@@ -34,11 +34,12 @@ endif
+
+ CFLAGS_ncpmount.o = -DNCPMOUNT=1 -DMAKE_NCPLIB
+ CFLAGS_ncpmap.o = -DNCPMAP=1 -DMAKE_NCPLIB
+-CFLAGS_ncplogin.o = -DMAKE_NCPLIB
++CFLAGS_ncplogin.o = -DMAKE_NCPLIB
+ CFLAGS_ncpm_common.o = -DNWMSG=\"$(sbindir)/nwmsg\"
+ LDFLAGS_ncpmount = ncpm_common.o mount_login.o
+-LDFLAGS_ncplogin = ncpm_common.o mount_login.o
+-LDFLAGS_ncpmap = ncpm_common.o
++LDFLAGS_ncplogin = -pie ncpm_common.o mount_login.o
++LDFLAGS_ncpmap = -pie ncpm_common.o
++LDFLAGS_nwsfind = -pie
+
+ .PHONY : all install install-dev dep clean mrproper distclean
+ .PHONY : default
diff --git a/net-fs/ncpfs/files/ncpfs-2.2.6-remove-libncp_atomic-header.patch b/net-fs/ncpfs/files/ncpfs-2.2.6-remove-libncp_atomic-header.patch
new file mode 100644
index 000000000000..22768817045c
--- /dev/null
+++ b/net-fs/ncpfs/files/ncpfs-2.2.6-remove-libncp_atomic-header.patch
@@ -0,0 +1,15 @@
+Description: Remove another generated file
+Author: Bastian Blank <waldi@debian.org>
+Bug-Debian: http://bugs.debian.org/692471
+
+--- ncpfs-2.2.6.orig/Makefile.in
++++ ncpfs-2.2.6/Makefile.in
+@@ -71,6 +71,7 @@ distclean:
+ rm -f intl/Makefile po/Makefile po/Makefile.in
+ rm -f lib/Makefile man/Makefile sutil/Makefile util/Makefile
+ rm -f include/config.h
++ rm -f include/private/libncp-atomic.h
+ rm -f include/ncp/ext/socket.h include/ncp/ext/stdint.h
+ rm -f include/ncp/kernel/fs.h
+ rm -f include/ncp/kernel/if.h include/ncp/kernel/route.h include/ncp/kernel/types.h
+
diff --git a/net-fs/ncpfs/files/ncpfs-2.2.6-servername-array-fix.patch b/net-fs/ncpfs/files/ncpfs-2.2.6-servername-array-fix.patch
new file mode 100644
index 000000000000..3e96aac5b364
--- /dev/null
+++ b/net-fs/ncpfs/files/ncpfs-2.2.6-servername-array-fix.patch
@@ -0,0 +1,15 @@
+diff -Naurp ncpfs-2.2.6.orig/include/ncp/ncplib.h ncpfs-2.2.6/include/ncp/ncplib.h
+--- ncpfs-2.2.6.orig/include/ncp/ncplib.h 2005-01-27 12:35:59.000000000 -0500
++++ ncpfs-2.2.6/include/ncp/ncplib.h 2014-08-12 21:01:01.159192798 -0400
+@@ -485,9 +485,9 @@ struct ncp_file_server_info
+
+ struct ncp_file_server_info_2 {
+ #ifdef SWIG
+- fixedArray ServerName[49];
++ fixedArray ServerName[50];
+ #else
+- u_int8_t ServerName[49];
++ u_int8_t ServerName[50];
+ #endif
+ u_int8_t FileServiceVersion;
+ u_int8_t FileServiceSubVersion;
diff --git a/net-fs/ncpfs/ncpfs-2.2.6-r3.ebuild b/net-fs/ncpfs/ncpfs-2.2.6-r3.ebuild
new file mode 100644
index 000000000000..247d50d1641b
--- /dev/null
+++ b/net-fs/ncpfs/ncpfs-2.2.6-r3.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-fs/ncpfs/ncpfs-2.2.6-r3.ebuild,v 1.1 2014/08/13 05:47:27 kumba Exp $
+
+EAPI="5"
+
+inherit eutils pam
+
+DESCRIPTION="Provides Access to Netware services using the NCP protocol"
+HOMEPAGE="ftp://platan.vc.cvut.cz/pub/linux/ncpfs/"
+SRC_URI="ftp://platan.vc.cvut.cz/pub/linux/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~mips ~ppc ~ppc64 ~x86"
+IUSE="nls pam php"
+
+DEPEND="nls? ( sys-devel/gettext )
+ pam? ( virtual/pam )
+ php? ( || ( dev-lang/php virtual/httpd-php ) )"
+
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ # Add patch for PHP extension sandbox violation
+ epatch "${FILESDIR}"/${PN}-2.2.5-php.patch
+ epatch "${FILESDIR}"/${P}-gcc4.patch
+ epatch "${FILESDIR}"/${P}-missing-includes.patch
+
+ # Add a patch to fix multiple vulnerabilities.
+ # CVE-2010-0788, CVE-2010-0790, & CVE-2010-0791.
+ # http://seclists.org/fulldisclosure/2010/Mar/122
+ epatch "${FILESDIR}"/${P}-multiple-vulns.patch
+
+ # Bug 371477
+ epatch "${FILESDIR}"/${P}-cve-2011-1679-1680.patch
+
+ # Add a patch that removes the __attribute__((packed)); directive
+ # from several struct members in include/ncp/ncplib.h. This will
+ # cut down on a large number of compile warnings generated by modern
+ # gcc releases.
+ epatch "${FILESDIR}"/${P}-remove-packed-attrib.patch
+
+ # Misc patches borrowed from Mageia.
+ epatch "${FILESDIR}"/${P}-align-fix.patch
+ epatch "${FILESDIR}"/${P}-getuid-fix.patch
+ epatch "${FILESDIR}"/${P}-pam_ncp_auth-fix.patch
+ epatch "${FILESDIR}"/${P}-servername-array-fix.patch
+
+ # Misc patches borrowed from Debian.
+ # Fixes Bug #497278
+ epatch "${FILESDIR}"/${P}-drop-kernel-check.patch
+ epatch "${FILESDIR}"/${P}-drop-mtab-support.patch
+ epatch "${FILESDIR}"/${P}-no-suid-root.patch
+ epatch "${FILESDIR}"/${P}-remove-libncp_atomic-header.patch
+
+ # Bug #273484.
+ sed -i '/ldconfig/d' lib/Makefile.in
+
+ # Support LDFLAGS.
+ epatch "${FILESDIR}"/${P}-ldflags-support.patch
+
+ # Bug 446696. This might need re-diffing if additional Makefile
+ # fixes are added.
+ epatch "${FILESDIR}"/${P}-makefile-fix-soname-link.patch
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable pam pam "$(getpam_mod_dir)") \
+ $(use_enable php)
+}
+
+src_install() {
+ dodir $(getpam_mod_dir) /usr/sbin /sbin
+
+ # Bug #446696.
+ #ln -s "${D}"/usr/lib64/libncp.so.2.3 "${D}"/libncp.so.2.3.0
+
+ # Install the main programs, then the headers.
+ emake DESTDIR="${D}" install || die
+ emake DESTDIR="${D}" install-dev || die
+
+ # Install a startup script in /etc/init.d and a conf file in /etc/conf.d
+ newconfd "${FILESDIR}"/ipx.confd ipx
+ newinitd "${FILESDIR}"/ipx.init ipx
+
+ # Docs
+ dodoc FAQ README
+}