diff options
author | Alexander Huemer <alexander.huemer@sbg.ac.at> | 2009-06-28 18:50:54 +0200 |
---|---|---|
committer | Alexander Huemer <alexander.huemer@sbg.ac.at> | 2009-06-28 18:50:54 +0200 |
commit | e45e883069bab8a235bac52cfbd0071b8d97c219 (patch) | |
tree | 8a78684061d79b5898f777cd98ebf8a15ae4f238 | |
parent | bumped x11-libs/qt-xmlpatterns to latest ~ (4.5.2) (diff) | |
download | multilib-portage-e45e883069bab8a235bac52cfbd0071b8d97c219.tar.gz multilib-portage-e45e883069bab8a235bac52cfbd0071b8d97c219.tar.bz2 multilib-portage-e45e883069bab8a235bac52cfbd0071b8d97c219.zip |
bumped net-fs/samba to latest ~ ( 3.2.{11,13{,-r[12]}} )
21 files changed, 2553 insertions, 0 deletions
diff --git a/metadata/cache/net-fs/samba-3.2.11 b/metadata/cache/net-fs/samba-3.2.11 new file mode 100644 index 000000000..9df6caa33 --- /dev/null +++ b/metadata/cache/net-fs/samba-3.2.11 @@ -0,0 +1,22 @@ +dev-libs/popt dev-libs/iniparser virtual/libiconv acl? ( kernel_linux? ( virtual/acl ) ) cups? ( net-print/cups[lib32?] ) ipv6? ( sys-apps/xinetd ) ads? ( virtual/krb5 sys-fs/e2fsprogs ) ldap? ( net-nds/openldap[lib32?] ) pam? ( virtual/pam ) readline? ( sys-libs/readline[lib32?] ) selinux? ( sec-policy/selinux-samba ) swat? ( sys-apps/xinetd ) syslog? ( virtual/logger ) fam? ( virtual/fam ) caps? ( sys-libs/libcap[lib32?] ) lib32? ( fam? ( dev-libs/libgamin[lib32] ) ) lib32? ( pam? ( sys-libs/pam[lib32] ) ) sys-apps/abi-wrapper +dev-libs/popt dev-libs/iniparser virtual/libiconv acl? ( kernel_linux? ( virtual/acl ) ) cups? ( net-print/cups[lib32?] ) ipv6? ( sys-apps/xinetd ) ads? ( virtual/krb5 sys-fs/e2fsprogs ) ldap? ( net-nds/openldap[lib32?] ) pam? ( virtual/pam ) readline? ( sys-libs/readline[lib32?] ) selinux? ( sec-policy/selinux-samba ) swat? ( sys-apps/xinetd ) syslog? ( virtual/logger ) fam? ( virtual/fam ) caps? ( sys-libs/libcap[lib32?] ) lib32? ( fam? ( dev-libs/libgamin[lib32] ) ) lib32? ( pam? ( sys-libs/pam[lib32] ) ) sys-apps/abi-wrapper +0 +mirror://samba/samba-3.2.11.tar.gz +test +http://www.samba.org/ +GPL-3 +A suite of SMB and CIFS client/server programs for UNIX +~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd +base confutils eutils multilib multilib-native pam portability toolchain-funcs versionator +linguas_ja linguas_pl acl ads async automount caps cups doc examples ipv6 kernel_linux ldap fam pam quotas readline selinux swat syslog winbind lib32 + + + +2 + +compile configure install postinst postrm preinst prepare setup test unpack + + + + + diff --git a/metadata/cache/net-fs/samba-3.2.13 b/metadata/cache/net-fs/samba-3.2.13 new file mode 100644 index 000000000..98ce2f90e --- /dev/null +++ b/metadata/cache/net-fs/samba-3.2.13 @@ -0,0 +1,22 @@ +dev-libs/popt dev-libs/iniparser virtual/libiconv acl? ( kernel_linux? ( virtual/acl ) ) cups? ( net-print/cups[lib32?] ) ipv6? ( sys-apps/xinetd ) ads? ( virtual/krb5 sys-fs/e2fsprogs ) ldap? ( net-nds/openldap[lib32?] ) pam? ( virtual/pam ) readline? ( sys-libs/readline[lib32?] ) selinux? ( sec-policy/selinux-samba ) swat? ( sys-apps/xinetd ) syslog? ( virtual/logger ) fam? ( virtual/fam ) caps? ( sys-libs/libcap[lib32?] ) lib32? ( fam? ( dev-libs/libgamin[lib32] ) ) lib32? ( pam? ( sys-libs/pam[lib32] ) ) sys-apps/abi-wrapper +dev-libs/popt dev-libs/iniparser virtual/libiconv acl? ( kernel_linux? ( virtual/acl ) ) cups? ( net-print/cups[lib32?] ) ipv6? ( sys-apps/xinetd ) ads? ( virtual/krb5 sys-fs/e2fsprogs ) ldap? ( net-nds/openldap[lib32?] ) pam? ( virtual/pam ) readline? ( sys-libs/readline[lib32?] ) selinux? ( sec-policy/selinux-samba ) swat? ( sys-apps/xinetd ) syslog? ( virtual/logger ) fam? ( virtual/fam ) caps? ( sys-libs/libcap[lib32?] ) lib32? ( fam? ( dev-libs/libgamin[lib32] ) ) lib32? ( pam? ( sys-libs/pam[lib32] ) ) sys-apps/abi-wrapper +0 +mirror://samba/samba-3.2.13.tar.gz +test +http://www.samba.org/ +GPL-3 +A suite of SMB and CIFS client/server programs for UNIX +~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd +base confutils eutils multilib multilib-native pam portability toolchain-funcs versionator +linguas_ja linguas_pl acl ads async automount caps cups doc examples ipv6 kernel_linux ldap fam pam quotas readline selinux swat syslog winbind lib32 + + + +2 + +compile configure install postinst postrm preinst prepare setup test unpack + + + + + diff --git a/metadata/cache/net-fs/samba-3.2.13-r1 b/metadata/cache/net-fs/samba-3.2.13-r1 new file mode 100644 index 000000000..98ce2f90e --- /dev/null +++ b/metadata/cache/net-fs/samba-3.2.13-r1 @@ -0,0 +1,22 @@ +dev-libs/popt dev-libs/iniparser virtual/libiconv acl? ( kernel_linux? ( virtual/acl ) ) cups? ( net-print/cups[lib32?] ) ipv6? ( sys-apps/xinetd ) ads? ( virtual/krb5 sys-fs/e2fsprogs ) ldap? ( net-nds/openldap[lib32?] ) pam? ( virtual/pam ) readline? ( sys-libs/readline[lib32?] ) selinux? ( sec-policy/selinux-samba ) swat? ( sys-apps/xinetd ) syslog? ( virtual/logger ) fam? ( virtual/fam ) caps? ( sys-libs/libcap[lib32?] ) lib32? ( fam? ( dev-libs/libgamin[lib32] ) ) lib32? ( pam? ( sys-libs/pam[lib32] ) ) sys-apps/abi-wrapper +dev-libs/popt dev-libs/iniparser virtual/libiconv acl? ( kernel_linux? ( virtual/acl ) ) cups? ( net-print/cups[lib32?] ) ipv6? ( sys-apps/xinetd ) ads? ( virtual/krb5 sys-fs/e2fsprogs ) ldap? ( net-nds/openldap[lib32?] ) pam? ( virtual/pam ) readline? ( sys-libs/readline[lib32?] ) selinux? ( sec-policy/selinux-samba ) swat? ( sys-apps/xinetd ) syslog? ( virtual/logger ) fam? ( virtual/fam ) caps? ( sys-libs/libcap[lib32?] ) lib32? ( fam? ( dev-libs/libgamin[lib32] ) ) lib32? ( pam? ( sys-libs/pam[lib32] ) ) sys-apps/abi-wrapper +0 +mirror://samba/samba-3.2.13.tar.gz +test +http://www.samba.org/ +GPL-3 +A suite of SMB and CIFS client/server programs for UNIX +~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd +base confutils eutils multilib multilib-native pam portability toolchain-funcs versionator +linguas_ja linguas_pl acl ads async automount caps cups doc examples ipv6 kernel_linux ldap fam pam quotas readline selinux swat syslog winbind lib32 + + + +2 + +compile configure install postinst postrm preinst prepare setup test unpack + + + + + diff --git a/metadata/cache/net-fs/samba-3.2.13-r2 b/metadata/cache/net-fs/samba-3.2.13-r2 new file mode 100644 index 000000000..e2c01308d --- /dev/null +++ b/metadata/cache/net-fs/samba-3.2.13-r2 @@ -0,0 +1,22 @@ +dev-libs/popt dev-libs/iniparser virtual/libiconv acl? ( kernel_linux? ( virtual/acl ) ) cifsupcall? ( sys-apps/keyutils ) cups? ( net-print/cups[lib32?] ) ipv6? ( sys-apps/xinetd ) ads? ( virtual/krb5 sys-fs/e2fsprogs ) ldap? ( net-nds/openldap[lib32?] ) pam? ( virtual/pam ) readline? ( sys-libs/readline[lib32?] ) selinux? ( sec-policy/selinux-samba ) swat? ( sys-apps/xinetd ) syslog? ( virtual/logger ) fam? ( virtual/fam ) caps? ( sys-libs/libcap[lib32?] ) lib32? ( fam? ( dev-libs/libgamin[lib32] ) ) lib32? ( pam? ( sys-libs/pam[lib32] ) ) sys-apps/abi-wrapper +dev-libs/popt dev-libs/iniparser virtual/libiconv acl? ( kernel_linux? ( virtual/acl ) ) cifsupcall? ( sys-apps/keyutils ) cups? ( net-print/cups[lib32?] ) ipv6? ( sys-apps/xinetd ) ads? ( virtual/krb5 sys-fs/e2fsprogs ) ldap? ( net-nds/openldap[lib32?] ) pam? ( virtual/pam ) readline? ( sys-libs/readline[lib32?] ) selinux? ( sec-policy/selinux-samba ) swat? ( sys-apps/xinetd ) syslog? ( virtual/logger ) fam? ( virtual/fam ) caps? ( sys-libs/libcap[lib32?] ) lib32? ( fam? ( dev-libs/libgamin[lib32] ) ) lib32? ( pam? ( sys-libs/pam[lib32] ) ) sys-apps/abi-wrapper +0 +mirror://samba/samba-3.2.13.tar.gz +test +http://www.samba.org/ +GPL-3 +A suite of SMB and CIFS client/server programs for UNIX +~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd +base confutils eutils multilib multilib-native pam portability toolchain-funcs versionator +linguas_ja linguas_pl acl ads async automount caps cifsupcall cups doc examples ipv6 kernel_linux ldap fam pam quotas readline selinux swat syslog winbind lib32 + + + +2 + +compile configure install postinst postrm preinst prepare setup test unpack + + + + + diff --git a/net-fs/samba/Manifest b/net-fs/samba/Manifest index 61f526f7c..c1d87d621 100644 --- a/net-fs/samba/Manifest +++ b/net-fs/samba/Manifest @@ -2,8 +2,20 @@ AUX 3.0.26a-invalid-free-fix.patch 541 RMD160 13e1b0420ae9c06a2e6d4f9a8a0a3af8c3 AUX 3.0.26a-lazyldflags.patch 1466 RMD160 12a3d97c8b84af5dea7c70173e4613bc663d4e8d SHA1 35742557c810ae4bfbbfecc3a6c3549c392fd313 SHA256 07eb35a567540bc88657f75881c8daf10de3697b64ec9bd7167f1df80cfb0d55 AUX 3.0.28-autoconf-2.62-fix.patch 524 RMD160 843a8adb134376259485fba22deceeebf453abea SHA1 2adfe8d3a5ea32971c67305fc047f39e5c03ba76 SHA256 0b9b80b52899154f6526d4864218742c2ec836d44a8a4045e091b3bb40449171 AUX 3.0.28-fix_broken_readdir_detection.patch 430 RMD160 f881e5a61ee2de714b9409a5a4f4c87d7a9a6dc0 SHA1 092b1ed0abce1eaf90aece7f637e72c3d4a902ff SHA256 7756d512df664d6f55851566d050797a6fc33f13ded4b1df5e2484a578ffd3f4 +AUX 3.0.28-inotify_include.patch 1675 RMD160 056cde16ad2b1e2e84a184b8c07002bd25a832b2 SHA1 ab989d0d4f102ed574f34af9292f5109368e749b SHA256 bcc4e5f4853d40ad66246c540ff3a7f2299185e5729aaaffa06230de9fbc3c14 +AUX 3.0.28-libcap_detection.patch 1676 RMD160 72cb751432db3911aedb32cf21a822bf9fceb278 SHA1 0348cc988150169b42a420a52fbf418aaf90e9e6 SHA256 73540a245115288f43dfd6abe6983a015886c93a14d906f38d59732e390cd070 +AUX 3.0.28a-CVE-2008-1105.patch 5774 RMD160 09a38e2a0e72e25f575789a3ded62fe00217dbc9 SHA1 9f7491b6ae88941881243445e35087b9bc811b5b SHA256 fba679976538265312d2545944e78b20442774d3ff54509d015a11867c15c0ff AUX 3.0.28a-wrong_python_ldflags.patch 996 RMD160 9514ef1b21129a950388ccabf797243dc92b390c SHA1 432366d841bbd2ec97c7a529c0c48d352aace356 SHA256 6f75e2e797d4a7a9f8758c5b3066cc1af86d392457d6f9ae8804427d74be4696 AUX README.gentoo 3208 RMD160 858aee78e07bdc0ebee7bc6c2212d4c528325633 SHA1 819ae809566e967cdc03024adae4443c5833dfc5 SHA256 9e87efa3fcea73becdfad4adb0fe677e1969c2951f03c47d1b0f4aeb00999578 +AUX config-3.2/lmhosts 134 RMD160 7c99b13a2f273ee190c7df9392b1678b00ec461a SHA1 d63d8d846c3cecfc706d28d916ea323f2eae4ef1 SHA256 b891ca7448db3fadefd9f5ddaeb28ea19bad63c3ee21ea8f74cdc2dfecd6ab6b +AUX config-3.2/nsswitch.conf-winbind 414 RMD160 71491dd98acc39aea8f18f5cc382f6a56d80259f SHA1 fa5c1e24437d4ffc0150a2b202f5ba6df5d40463 SHA256 5466dc681036731046f53e4ef59fb7c2110783e77a38d0887432d94776c3dafa +AUX config-3.2/nsswitch.conf-wins 400 RMD160 1e005e46b161edf12a9118018eb2676e3531dd7f SHA1 ccd9903e26ada045428f1ec16678c29e21c35ef3 SHA256 e028691f7144932404ec154fdb72defb4f127e1f6c330c8864ede2f369a0d05d +AUX config-3.2/samba.pam 397 RMD160 8f64b09e17e0c458a8156db3cc92a0413513e4fc SHA1 f39d48e07be8069885b51253c5b891a856b7b41e SHA256 86634f2d541370518d0958a73c04776ed5df2a3716ef128ff384459acce9cd38 +AUX config-3.2/samba.schema 16044 RMD160 b28408c64524ea44a9b0ea877d614603456a18fa SHA1 523d8bcf6313fe8ce03a3fbe762ba90b88ca5643 SHA256 c011a2f2f4fcc2839e3609cf5477507d938083f48f15a05787337b352f3afec3 +AUX config-3.2/smb.conf.example-samba3 19701 RMD160 1ce92cbedb15cf5ee4d66ee50fd7c996231facea SHA1 5c60002f23ac2a60fc27b58ea03659acb0db876a SHA256 83fd9407e71db606bb50677f9d8a557688b6eafacb32d30c7a0a6d1c666b694d +AUX config-3.2/smbusers 212 RMD160 9734e79880e91fb5a9efbd723819413da5746923 SHA1 0c93dcf9d8c854a446b8f1442a7fd9d6b5623314 SHA256 35ebdad3dcad3819996ac63909a3aa5cff72f5953e4060f48c861e399c3ea208 +AUX config-3.2/swat.xinetd 535 RMD160 de492774e24a45eeb378209aa14b212225f3229a SHA1 5d5113ce77807d972bc0d62993cd6a7c2d30705c SHA256 4de179a10806a2e3af2392c0b9002671e567bb94601cfc0a542c607e6cc9dbc9 +AUX config-3.2/system-auth-winbind 709 RMD160 0af9b97a1e35e6e1c5db484bd80ccb95fa8fecf9 SHA1 e36df120cbd51483c22cf324582034c9ff4cee2b SHA256 944f7fbc2d4d5a3da739e1dc37864efa08ee8a39cbd9a36b2ecfeefc47ed3a98 AUX config/lmhosts 130 RMD160 b2acc34f95a4f926528ae67861c3597204be0c41 SHA1 be21644d6b4645d0685b954071b4618faa1c6da2 SHA256 c1c0a520c6d4b4ce7df9bd30f835dd912942b05004fc24e3cc495fc1622d5d8c AUX config/nsswitch.conf-winbind 410 RMD160 02722819dfba2fb1425eadd0f63f96f598ecda69 SHA1 ede68472b5eae7d2efb805e138bd7f9ca8f7fefb SHA256 d1e61b5a152d05a3d8a9f8d18d574596acc1a594b311278d3ad9ea1b2c273a40 AUX config/nsswitch.conf-wins 396 RMD160 61f7d80bfa06efb16e8e9344f2402fc88b1198e8 SHA1 8139e2034118b0fe64d40cf7dc811435ee151584 SHA256 1ab5c5711823af6a04fdaf4920826940b4b0d92822e6464bbf404ca03d24fd1b @@ -19,7 +31,13 @@ AUX samba-xinetd 286 RMD160 c90bd8518082eb4c182d5f7bd223a76f8e3c7fab SHA1 b250c5 DIST samba-3.0.33.tar.gz 49393320 RMD160 c396f9dbd052d9377ca7ff75550173855c9792e2 SHA1 235c15e796a49fcf80b154d608813af8e7ebb329 SHA256 285004bdfb452235ac8ac20d33c083ecb326a10f6ee819dab4032ab5c6563a16 DIST samba-3.0.34.tar.gz 24835363 RMD160 d79cd544b5ab2b4a7130b8c52c19edcfc89083ea SHA1 18104d1bf509cd3fd3107c09fa6205666e04ac16 SHA256 530793de9f4114f4b391d932e2833baf25a00498317471cd75a068f3378c299e DIST samba-3.0.35.tar.gz 24839204 RMD160 81c708aa6ab048f9fa24999650992a92a95f7da3 SHA1 c75e20890f893decfd4285480041b7e39d43ed3d SHA256 87b81c0cea653305e796013148d3c0c68d7f38cbd7ed3b5255ddace14fd37748 +DIST samba-3.2.11.tar.gz 24399021 RMD160 08910e5640dcdb4a72d062d87a31a9f7fc2ebc71 SHA1 2b5d41547aae0267930addd60a1e84f3f3ee7071 SHA256 5db81a9bd2842e7bf5f2fe8eeb0533eb59e6bb75a7d5f79f9e04c13baec32ef5 +DIST samba-3.2.13.tar.gz 24436090 RMD160 5d6cced04b3f20068cc02724021d6f6a893a201a SHA1 68c98900c258d64098d59879153abbb8202cc364 SHA256 91223a742183675cb3bb9ba1cc379948e8666e69735f348ea7d3794ce3bc778d DIST samba-vscan-0.3.6c-beta5.tar.gz 248183 RMD160 6929c30b57e342c4bdf6a6b432fbe41c2ac70a74 SHA1 9e1b37225246ff2f19e37aceb97a680afc82cdda SHA256 bfe910d54add8dcb87d5babdf50127a6dcf079e0e90ad9947b4cbfdbe3e3037d EBUILD samba-3.0.33.ebuild 10538 RMD160 5a6f1aa1504433e82433aeae32793ec5be5d058e SHA1 d9bc01c9e16222443c555c732f7905b0c8f0969b SHA256 e46e67760ee528e2f02b1f0870b9c253c1095fa3dc030b38dedd54ddef5611ac EBUILD samba-3.0.34.ebuild 10469 RMD160 e5d15e06bc6e30c6d7ab5923bea048df5f3bc8d9 SHA1 3c832f889f4de530bfc22fae4a07cadaab6b1f56 SHA256 2dcd1294bfab5ed15e609d62e879ff7809d1bfb2467a729470d3bed016064225 EBUILD samba-3.0.35.ebuild 10469 RMD160 b2cc285e5b02abd68647795c5e4723de1ecaf72b SHA1 9ec27b32383fecbca77b9fb68106965399a3771c SHA256 8c80b12b5ae8045655f6f957b4909f79b1e72eb2cdfa4638f7de7dbc9e55da8b +EBUILD samba-3.2.11.ebuild 8598 RMD160 61239c9db4017a638658524fa19092c11ed66400 SHA1 b536cc3da254a459218364690f43024c36144f43 SHA256 7b81787a9848e69075a548f12ee9be05825619ed6efbf4a1ce977a37d0559cf7 +EBUILD samba-3.2.13-r1.ebuild 8741 RMD160 2019dc7e983e777c4e4b79e47e27f38914b01caf SHA1 7793b40f8067b6e2b8cd914ca72f46feaba16c4a SHA256 24373fb2a99f60189cb7297b336068ae261730d8eeac0caafab379725c0cc1ae +EBUILD samba-3.2.13-r2.ebuild 8830 RMD160 9b5740e8c9289356f9bd2fc9022d8caaabaf3e9d SHA1 8332c885cec07568d7c9ed56335e1ccc8bc388c4 SHA256 05259a52a9d7d7d0defd9cea50fa1a3d16171d5a7244d4f207bda20a4432c8c8 +EBUILD samba-3.2.13.ebuild 8596 RMD160 27e6342b80d14e3dd96a9abaced440200b00fbac SHA1 1d2b73cd6dab84a0e8bbce53ecba12ecf394554c SHA256 b2cf3220d497fdd573a9d1c2c13a2352d5b49fadd556e923167dab8c1a699913 diff --git a/net-fs/samba/files/3.0.28-inotify_include.patch b/net-fs/samba/files/3.0.28-inotify_include.patch new file mode 100644 index 000000000..7ce8078b9 --- /dev/null +++ b/net-fs/samba/files/3.0.28-inotify_include.patch @@ -0,0 +1,53 @@ +diff -Naur samba-3.0.28.orig/source/configure.in samba-3.0.28/source/configure.in +--- samba-3.0.28.orig/source/configure.in 2007-11-21 04:58:01.000000000 +0100 ++++ samba-3.0.28/source/configure.in 2008-02-19 17:56:52.383852151 +0100 +@@ -2541,7 +2541,7 @@ + + AC_CACHE_CHECK([for inotify support],samba_cv_HAVE_INOTIFY,[ + AC_CHECK_HEADERS(linux/inotify.h asm/unistd.h) +-AC_CHECK_FUNC(inotify_init) ++AC_CHECK_FUNCS([inotify_init]) + AC_HAVE_DECL(__NR_inotify_init, [#include <asm/unistd.h>]) + ], + samba_cv_HAVE_INOTIFY=yes, +diff -Naur samba-3.0.28.orig/source/include/config.h.in samba-3.0.28/source/include/config.h.in +--- samba-3.0.28.orig/source/include/config.h.in 2007-12-10 17:04:29.000000000 +0100 ++++ samba-3.0.28/source/include/config.h.in 2008-02-19 17:58:05.092981395 +0100 +@@ -685,6 +685,9 @@ + /* Whether kernel has inotify support */ + #undef HAVE_INOTIFY + ++/* Whether system libc defines the inotify_init function */ ++#undef HAVE_INOTIFY_INIT ++ + /* Whether int16 typedef is included by rpc/rpc.h */ + #undef HAVE_INT16_FROM_RPC_RPC_H + +diff -Naur samba-3.0.28.orig/source/smbd/notify_inotify.c samba-3.0.28/source/smbd/notify_inotify.c +--- samba-3.0.28.orig/source/smbd/notify_inotify.c 2007-11-15 04:15:04.000000000 +0100 ++++ samba-3.0.28/source/smbd/notify_inotify.c 2008-02-19 17:56:52.387155138 +0100 +@@ -30,10 +30,12 @@ + #include <asm/types.h> + #endif + ++#ifndef HAVE_INOTIFY_INIT ++ + #include <linux/inotify.h> + #include <asm/unistd.h> + +-#ifndef HAVE_INOTIFY_INIT ++ + /* + glibc doesn't define these functions yet (as of March 2006) + */ +@@ -51,6 +53,10 @@ + { + return syscall(__NR_inotify_rm_watch, fd, wd); + } ++#else ++ ++#include <sys/inotify.h> ++ + #endif + + diff --git a/net-fs/samba/files/3.0.28-libcap_detection.patch b/net-fs/samba/files/3.0.28-libcap_detection.patch new file mode 100644 index 000000000..991375c63 --- /dev/null +++ b/net-fs/samba/files/3.0.28-libcap_detection.patch @@ -0,0 +1,40 @@ +diff -Naurb samba-3.0.28.orig/source/configure.in samba-3.0.28/source/configure.in +--- samba-3.0.28.orig/source/configure.in 2007-11-21 04:58:01.000000000 +0100 ++++ samba-3.0.28/source/configure.in 2008-02-20 14:31:05.167709211 +0100 +@@ -2663,6 +2663,7 @@ + if test x"$samba_cv_HAVE_POSIX_CAPABILITIES" = x"yes"; then + AC_DEFINE(HAVE_POSIX_CAPABILITIES, 1, + [Whether POSIX capabilities are available]) ++ AC_CHECK_DECLS([capget], , , [#include <sys/capability.h>]) + else + LIBS=$ac_save_LIBS + fi +diff -Naurb samba-3.0.28.orig/source/include/config.h.in samba-3.0.28/source/include/config.h.in +--- samba-3.0.28.orig/source/include/config.h.in 2007-12-10 17:04:29.000000000 +0100 ++++ samba-3.0.28/source/include/config.h.in 2008-02-20 14:32:41.246837408 +0100 +@@ -1211,6 +1211,9 @@ + /* Whether POSIX capabilities are available */ + #undef HAVE_POSIX_CAPABILITIES + ++/* Whether the capget (and capset) function is available (libcap-2.x has it) */ ++#undef HAVE_DECL_CAPGET ++ + /* Whether posix_fadvise is available */ + #undef HAVE_POSIX_FADVISE + +diff -Naurb samba-3.0.28.orig/source/smbd/oplock_linux.c samba-3.0.28/source/smbd/oplock_linux.c +--- samba-3.0.28.orig/source/smbd/oplock_linux.c 2007-11-15 04:15:04.000000000 +0100 ++++ samba-3.0.28/source/smbd/oplock_linux.c 2008-02-20 14:31:48.327720338 +0100 +@@ -34,10 +34,12 @@ + uint32 inheritable; + } data; + ++#if defined HAVE_DECL_CAPGET && !HAVE_DECL_CAPGET + extern int capget(struct cap_user_header * hdrp, + struct cap_user_data * datap); + extern int capset(struct cap_user_header * hdrp, + const struct cap_user_data * datap); ++#endif + + static SIG_ATOMIC_T signals_received; + #define FD_PENDING_SIZE 100 diff --git a/net-fs/samba/files/3.0.28a-CVE-2008-1105.patch b/net-fs/samba/files/3.0.28a-CVE-2008-1105.patch new file mode 100644 index 000000000..20712d844 --- /dev/null +++ b/net-fs/samba/files/3.0.28a-CVE-2008-1105.patch @@ -0,0 +1,168 @@ +diff --git a/source/client/client.c b/source/client/client.c +index 3f96f63..e87623a 100644 +--- a/source/client/client.c ++++ b/source/client/client.c +@@ -3626,7 +3626,7 @@ static void readline_callback(void) + session keepalives and then drop them here. + */ + if (FD_ISSET(cli->fd,&fds)) { +- if (!receive_smb(cli->fd,cli->inbuf,0)) { ++ if (!receive_smb(cli->fd,cli->inbuf,cli->bufsize,0)) { + DEBUG(0, ("Read from server failed, maybe it closed the " + "connection\n")); + return; +diff --git a/source/client/smbctool.c b/source/client/smbctool.c +index 2063418..a18505b 100644 +--- a/source/client/smbctool.c ++++ b/source/client/smbctool.c +@@ -3304,7 +3304,7 @@ static void readline_callback(void) + session keepalives and then drop them here. + */ + if (FD_ISSET(cli->fd,&fds)) { +- receive_smb(cli->fd,cli->inbuf,0); ++ receive_smb(cli->fd,cli->inbuf,cli->bufsize,0); + goto again; + } + +diff --git a/source/lib/util_sock.c b/source/lib/util_sock.c +index 94c5e82..4715ca7 100644 +--- a/source/lib/util_sock.c ++++ b/source/lib/util_sock.c +@@ -654,14 +654,13 @@ ssize_t read_smb_length(int fd, char *inbuf, unsigned int timeout) + } + + /**************************************************************************** +- Read an smb from a fd. Note that the buffer *MUST* be of size +- BUFFER_SIZE+SAFETY_MARGIN. ++ Read an smb from a fd. + The timeout is in milliseconds. + This function will return on receipt of a session keepalive packet. + Doesn't check the MAC on signed packets. + ****************************************************************************/ + +-BOOL receive_smb_raw(int fd, char *buffer, unsigned int timeout) ++BOOL receive_smb_raw(int fd, char *buffer, size_t buflen, unsigned int timeout) + { + ssize_t len,ret; + +@@ -682,25 +681,18 @@ BOOL receive_smb_raw(int fd, char *buffer, unsigned int timeout) + return False; + } + +- /* +- * A WRITEX with CAP_LARGE_WRITEX can be 64k worth of data plus 65 bytes +- * of header. Don't print the error if this fits.... JRA. +- */ +- +- if (len > (BUFFER_SIZE + LARGE_WRITEX_HDR_SIZE)) { ++ if (len > buflen) { + DEBUG(0,("Invalid packet length! (%lu bytes).\n",(unsigned long)len)); +- if (len > BUFFER_SIZE + (SAFETY_MARGIN/2)) { + +- /* +- * Correct fix. smb_read_error may have already been +- * set. Only set it here if not already set. Global +- * variables still suck :-). JRA. +- */ ++ /* ++ * smb_read_error may have already been ++ * set. Only set it here if not already set. Global ++ * variables still suck :-). JRA. ++ */ + +- if (smb_read_error == 0) +- smb_read_error = READ_ERROR; +- return False; +- } ++ if (smb_read_error == 0) ++ smb_read_error = READ_ERROR; ++ return False; + } + + if(len > 0) { +@@ -730,9 +722,9 @@ BOOL receive_smb_raw(int fd, char *buffer, unsigned int timeout) + Checks the MAC on signed packets. + ****************************************************************************/ + +-BOOL receive_smb(int fd, char *buffer, unsigned int timeout) ++BOOL receive_smb(int fd, char *buffer, size_t buflen, unsigned int timeout) + { +- if (!receive_smb_raw(fd, buffer, timeout)) { ++ if (!receive_smb_raw(fd, buffer, buflen, timeout)) { + return False; + } + +diff --git a/source/libsmb/clientgen.c b/source/libsmb/clientgen.c +index c6cef08..7d7ab9e 100644 +--- a/source/libsmb/clientgen.c ++++ b/source/libsmb/clientgen.c +@@ -44,8 +44,7 @@ int cli_set_port(struct cli_state *cli, int port) + } + + /**************************************************************************** +- Read an smb from a fd ignoring all keepalive packets. Note that the buffer +- *MUST* be of size BUFFER_SIZE+SAFETY_MARGIN. ++ Read an smb from a fd ignoring all keepalive packets. + The timeout is in milliseconds + + This is exactly the same as receive_smb except that it never returns +@@ -54,12 +53,12 @@ int cli_set_port(struct cli_state *cli, int port) + should never go into a blocking read. + ****************************************************************************/ + +-static BOOL client_receive_smb(int fd,char *buffer, unsigned int timeout) ++static BOOL client_receive_smb(int fd,char *buffer, size_t bufsize, unsigned int timeout) + { + BOOL ret; + + for(;;) { +- ret = receive_smb_raw(fd, buffer, timeout); ++ ret = receive_smb_raw(fd, buffer, bufsize, timeout); + + if (!ret) { + DEBUG(10,("client_receive_smb failed\n")); +@@ -88,7 +87,7 @@ BOOL cli_receive_smb(struct cli_state *cli) + return False; + + again: +- ret = client_receive_smb(cli->fd,cli->inbuf,cli->timeout); ++ ret = client_receive_smb(cli->fd,cli->inbuf, cli->bufsize, cli->timeout); + + if (ret) { + /* it might be an oplock break request */ +diff --git a/source/smbd/process.c b/source/smbd/process.c +index 8dec719..3d31c29 100644 +--- a/source/smbd/process.c ++++ b/source/smbd/process.c +@@ -521,7 +521,8 @@ static BOOL receive_message_or_smb(char *buffer, int buffer_len, int timeout) + goto again; + } + +- return receive_smb(smbd_server_fd(), buffer, 0); ++ return receive_smb(smbd_server_fd(), buffer, ++ BUFFER_SIZE + LARGE_WRITEX_HDR_SIZE, 0); + } + + /* +diff --git a/source/utils/smbfilter.c b/source/utils/smbfilter.c +index 97d2223..2152e53 100644 +--- a/source/utils/smbfilter.c ++++ b/source/utils/smbfilter.c +@@ -140,7 +140,7 @@ static void filter_child(int c, struct in_addr dest_ip) + if (num <= 0) continue; + + if (c != -1 && FD_ISSET(c, &fds)) { +- if (!receive_smb(c, packet, 0)) { ++ if (!receive_smb(c, packet, BUFFER_SIZE, 0)) { + d_printf("client closed connection\n"); + exit(0); + } +@@ -151,7 +151,7 @@ static void filter_child(int c, struct in_addr dest_ip) + } + } + if (s != -1 && FD_ISSET(s, &fds)) { +- if (!receive_smb(s, packet, 0)) { ++ if (!receive_smb(s, packet, BUFFER_SIZE, 0)) { + d_printf("server closed connection\n"); + exit(0); + } diff --git a/net-fs/samba/files/config-3.2/lmhosts b/net-fs/samba/files/config-3.2/lmhosts new file mode 100644 index 000000000..d152fcc8f --- /dev/null +++ b/net-fs/samba/files/config-3.2/lmhosts @@ -0,0 +1,2 @@ +# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/files/config-3.2/lmhosts,v 1.1 2008/03/08 12:24:12 dev-zero Exp $ +127.0.0.1 localhost diff --git a/net-fs/samba/files/config-3.2/nsswitch.conf-winbind b/net-fs/samba/files/config-3.2/nsswitch.conf-winbind new file mode 100644 index 000000000..0c3af7833 --- /dev/null +++ b/net-fs/samba/files/config-3.2/nsswitch.conf-winbind @@ -0,0 +1,17 @@ +# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/files/config-3.2/nsswitch.conf-winbind,v 1.1 2008/03/08 12:24:12 dev-zero Exp $ +passwd: files winbind +group: files winbind + +hosts: files dns +networks: files dns + +services: db files +protocols: db files +rpc: db files +ethers: db files +netmasks: files +netgroup: files +bootparams: files + +automount: files +aliases: files diff --git a/net-fs/samba/files/config-3.2/nsswitch.conf-wins b/net-fs/samba/files/config-3.2/nsswitch.conf-wins new file mode 100644 index 000000000..e8076de9a --- /dev/null +++ b/net-fs/samba/files/config-3.2/nsswitch.conf-wins @@ -0,0 +1,17 @@ +# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/files/config-3.2/nsswitch.conf-wins,v 1.1 2008/03/08 12:24:12 dev-zero Exp $ +passwd: files +group: files + +hosts: files dns wins +networks: files dns + +services: db files +protocols: db files +rpc: db files +ethers: db files +netmasks: files +netgroup: files +bootparams: files + +automount: files +aliases: files diff --git a/net-fs/samba/files/config-3.2/samba.pam b/net-fs/samba/files/config-3.2/samba.pam new file mode 100644 index 000000000..91beadd47 --- /dev/null +++ b/net-fs/samba/files/config-3.2/samba.pam @@ -0,0 +1,8 @@ +#%PAM-1.0 +# * pam_smbpass.so authenticates against the smbpasswd file +# * changed Redhat's 'pam_stack' with 'include' for *BSD compatibility +# (Diego "Flameeyes" Petteno'): enable with pam>=0.78 only +auth required pam_smbpass.so nodelay +account include system-auth +session include system-auth +password required pam_smbpass.so nodelay smbconf=/etc/samba/smb.conf diff --git a/net-fs/samba/files/config-3.2/samba.schema b/net-fs/samba/files/config-3.2/samba.schema new file mode 100644 index 000000000..17ea2d9fd --- /dev/null +++ b/net-fs/samba/files/config-3.2/samba.schema @@ -0,0 +1,471 @@ +## +## schema file for OpenLDAP 2.x +## Schema for storing Samba user accounts and group maps in LDAP +## OIDs are owned by the Samba Team +## +## Prerequisite schemas - uid (cosine.schema) +## - displayName (inetorgperson.schema) +## - gidNumber (nis.schema) +## +## 1.3.6.1.4.1.7165.2.1.x - attributetypes +## 1.3.6.1.4.1.7165.2.2.x - objectclasses +## +## ----- READ THIS WHEN ADDING A NEW ATTRIBUTE OR OBJECT CLASS ------ +## +## Run the 'get_next_oid' bash script in this directory to find the +## next available OID for attribute type and object classes. +## +## $ ./get_next_oid +## attributetype ( 1.3.6.1.4.1.7165.2.1.XX NAME .... +## objectclass ( 1.3.6.1.4.1.7165.2.2.XX NAME .... +## +## Also ensure that new entries adhere to the declaration style +## used throughout this file +## +## <attributetype|objectclass> ( 1.3.6.1.4.1.7165.2.XX.XX NAME .... +## ^ ^ ^ +## +## The spaces are required for the get_next_oid script (and for +## readability). +## +## ------------------------------------------------------------------ + +######################################################################## +## HISTORICAL ## +######################################################################## + +## +## Password hashes +## +#attributetype ( 1.3.6.1.4.1.7165.2.1.1 NAME 'lmPassword' +# DESC 'LanManager Passwd' +# EQUALITY caseIgnoreIA5Match +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{32} SINGLE-VALUE ) + +#attributetype ( 1.3.6.1.4.1.7165.2.1.2 NAME 'ntPassword' +# DESC 'NT Passwd' +# EQUALITY caseIgnoreIA5Match +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{32} SINGLE-VALUE ) + +## +## Account flags in string format ([UWDX ]) +## +#attributetype ( 1.3.6.1.4.1.7165.2.1.4 NAME 'acctFlags' +# DESC 'Account Flags' +# EQUALITY caseIgnoreIA5Match +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{16} SINGLE-VALUE ) + +## +## Password timestamps & policies +## +#attributetype ( 1.3.6.1.4.1.7165.2.1.3 NAME 'pwdLastSet' +# DESC 'NT pwdLastSet' +# EQUALITY integerMatch +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +#attributetype ( 1.3.6.1.4.1.7165.2.1.5 NAME 'logonTime' +# DESC 'NT logonTime' +# EQUALITY integerMatch +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +#attributetype ( 1.3.6.1.4.1.7165.2.1.6 NAME 'logoffTime' +# DESC 'NT logoffTime' +# EQUALITY integerMatch +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +#attributetype ( 1.3.6.1.4.1.7165.2.1.7 NAME 'kickoffTime' +# DESC 'NT kickoffTime' +# EQUALITY integerMatch +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +#attributetype ( 1.3.6.1.4.1.7165.2.1.8 NAME 'pwdCanChange' +# DESC 'NT pwdCanChange' +# EQUALITY integerMatch +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +#attributetype ( 1.3.6.1.4.1.7165.2.1.9 NAME 'pwdMustChange' +# DESC 'NT pwdMustChange' +# EQUALITY integerMatch +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +## +## string settings +## +#attributetype ( 1.3.6.1.4.1.7165.2.1.10 NAME 'homeDrive' +# DESC 'NT homeDrive' +# EQUALITY caseIgnoreIA5Match +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{4} SINGLE-VALUE ) + +#attributetype ( 1.3.6.1.4.1.7165.2.1.11 NAME 'scriptPath' +# DESC 'NT scriptPath' +# EQUALITY caseIgnoreIA5Match +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{255} SINGLE-VALUE ) + +#attributetype ( 1.3.6.1.4.1.7165.2.1.12 NAME 'profilePath' +# DESC 'NT profilePath' +# EQUALITY caseIgnoreIA5Match +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{255} SINGLE-VALUE ) + +#attributetype ( 1.3.6.1.4.1.7165.2.1.13 NAME 'userWorkstations' +# DESC 'userWorkstations' +# EQUALITY caseIgnoreIA5Match +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{255} SINGLE-VALUE ) + +#attributetype ( 1.3.6.1.4.1.7165.2.1.17 NAME 'smbHome' +# DESC 'smbHome' +# EQUALITY caseIgnoreIA5Match +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} ) + +#attributetype ( 1.3.6.1.4.1.7165.2.1.18 NAME 'domain' +# DESC 'Windows NT domain to which the user belongs' +# EQUALITY caseIgnoreIA5Match +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} ) + +## +## user and group RID +## +#attributetype ( 1.3.6.1.4.1.7165.2.1.14 NAME 'rid' +# DESC 'NT rid' +# EQUALITY integerMatch +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +#attributetype ( 1.3.6.1.4.1.7165.2.1.15 NAME 'primaryGroupID' +# DESC 'NT Group RID' +# EQUALITY integerMatch +# SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +## +## The smbPasswordEntry objectclass has been depreciated in favor of the +## sambaAccount objectclass +## +#objectclass ( 1.3.6.1.4.1.7165.2.2.1 NAME 'smbPasswordEntry' SUP top AUXILIARY +# DESC 'Samba smbpasswd entry' +# MUST ( uid $ uidNumber ) +# MAY ( lmPassword $ ntPassword $ pwdLastSet $ acctFlags )) + +#objectclass ( 1.3.6.1.4.1.7165.2.2.2 NAME 'sambaAccount' SUP top STRUCTURAL +# DESC 'Samba Account' +# MUST ( uid $ rid ) +# MAY ( cn $ lmPassword $ ntPassword $ pwdLastSet $ logonTime $ +# logoffTime $ kickoffTime $ pwdCanChange $ pwdMustChange $ acctFlags $ +# displayName $ smbHome $ homeDrive $ scriptPath $ profilePath $ +# description $ userWorkstations $ primaryGroupID $ domain )) + +#objectclass ( 1.3.6.1.4.1.7165.2.2.3 NAME 'sambaAccount' SUP top AUXILIARY +# DESC 'Samba Auxiliary Account' +# MUST ( uid $ rid ) +# MAY ( cn $ lmPassword $ ntPassword $ pwdLastSet $ logonTime $ +# logoffTime $ kickoffTime $ pwdCanChange $ pwdMustChange $ acctFlags $ +# displayName $ smbHome $ homeDrive $ scriptPath $ profilePath $ +# description $ userWorkstations $ primaryGroupID $ domain )) + +######################################################################## +## END OF HISTORICAL ## +######################################################################## + +####################################################################### +## Attributes used by Samba 3.0 schema ## +####################################################################### + +## +## Password hashes +## +attributetype ( 1.3.6.1.4.1.7165.2.1.24 NAME 'sambaLMPassword' + DESC 'LanManager Password' + EQUALITY caseIgnoreIA5Match + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{32} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.25 NAME 'sambaNTPassword' + DESC 'MD4 hash of the unicode password' + EQUALITY caseIgnoreIA5Match + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{32} SINGLE-VALUE ) + +## +## Account flags in string format ([UWDX ]) +## +attributetype ( 1.3.6.1.4.1.7165.2.1.26 NAME 'sambaAcctFlags' + DESC 'Account Flags' + EQUALITY caseIgnoreIA5Match + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{16} SINGLE-VALUE ) + +## +## Password timestamps & policies +## +attributetype ( 1.3.6.1.4.1.7165.2.1.27 NAME 'sambaPwdLastSet' + DESC 'Timestamp of the last password update' + EQUALITY integerMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.28 NAME 'sambaPwdCanChange' + DESC 'Timestamp of when the user is allowed to update the password' + EQUALITY integerMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.29 NAME 'sambaPwdMustChange' + DESC 'Timestamp of when the password will expire' + EQUALITY integerMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.30 NAME 'sambaLogonTime' + DESC 'Timestamp of last logon' + EQUALITY integerMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.31 NAME 'sambaLogoffTime' + DESC 'Timestamp of last logoff' + EQUALITY integerMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.32 NAME 'sambaKickoffTime' + DESC 'Timestamp of when the user will be logged off automatically' + EQUALITY integerMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.48 NAME 'sambaBadPasswordCount' + DESC 'Bad password attempt count' + EQUALITY integerMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.49 NAME 'sambaBadPasswordTime' + DESC 'Time of the last bad password attempt' + EQUALITY integerMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.55 NAME 'sambaLogonHours' + DESC 'Logon Hours' + EQUALITY caseIgnoreIA5Match + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{42} SINGLE-VALUE ) + +## +## string settings +## +attributetype ( 1.3.6.1.4.1.7165.2.1.33 NAME 'sambaHomeDrive' + DESC 'Driver letter of home directory mapping' + EQUALITY caseIgnoreIA5Match + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{4} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.34 NAME 'sambaLogonScript' + DESC 'Logon script path' + EQUALITY caseIgnoreMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.35 NAME 'sambaProfilePath' + DESC 'Roaming profile path' + EQUALITY caseIgnoreMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.36 NAME 'sambaUserWorkstations' + DESC 'List of user workstations the user is allowed to logon to' + EQUALITY caseIgnoreMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.37 NAME 'sambaHomePath' + DESC 'Home directory UNC path' + EQUALITY caseIgnoreMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.38 NAME 'sambaDomainName' + DESC 'Windows NT domain to which the user belongs' + EQUALITY caseIgnoreMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.47 NAME 'sambaMungedDial' + DESC '' + EQUALITY caseExactMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{1050} ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.54 NAME 'sambaPasswordHistory' + DESC 'Concatenated MD4 hashes of the unicode passwords used on this account' + EQUALITY caseIgnoreIA5Match + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{32} ) + +## +## SID, of any type +## + +attributetype ( 1.3.6.1.4.1.7165.2.1.20 NAME 'sambaSID' + DESC 'Security ID' + EQUALITY caseIgnoreIA5Match + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{64} SINGLE-VALUE ) + + +## +## Primary group SID, compatible with ntSid +## + +attributetype ( 1.3.6.1.4.1.7165.2.1.23 NAME 'sambaPrimaryGroupSID' + DESC 'Primary Group Security ID' + EQUALITY caseIgnoreIA5Match + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{64} SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.51 NAME 'sambaSIDList' + DESC 'Security ID List' + EQUALITY caseIgnoreIA5Match + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{64} ) + +## +## group mapping attributes +## +attributetype ( 1.3.6.1.4.1.7165.2.1.19 NAME 'sambaGroupType' + DESC 'NT Group Type' + EQUALITY integerMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +## +## Store info on the domain +## + +attributetype ( 1.3.6.1.4.1.7165.2.1.21 NAME 'sambaNextUserRid' + DESC 'Next NT rid to give our for users' + EQUALITY integerMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.22 NAME 'sambaNextGroupRid' + DESC 'Next NT rid to give out for groups' + EQUALITY integerMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.39 NAME 'sambaNextRid' + DESC 'Next NT rid to give out for anything' + EQUALITY integerMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.40 NAME 'sambaAlgorithmicRidBase' + DESC 'Base at which the samba RID generation algorithm should operate' + EQUALITY integerMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.41 NAME 'sambaShareName' + DESC 'Share Name' + EQUALITY caseIgnoreMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.42 NAME 'sambaOptionName' + DESC 'Option Name' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.43 NAME 'sambaBoolOption' + DESC 'A boolean option' + EQUALITY booleanMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.44 NAME 'sambaIntegerOption' + DESC 'An integer option' + EQUALITY integerMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.45 NAME 'sambaStringOption' + DESC 'A string option' + EQUALITY caseExactIA5Match + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.46 NAME 'sambaStringListOption' + DESC 'A string list option' + EQUALITY caseIgnoreMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) + + +attributetype ( 1.3.6.1.4.1.7165.2.1.50 NAME 'sambaPrivName' + SUP name ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.52 NAME 'sambaPrivilegeList' + DESC 'Privileges List' + EQUALITY caseIgnoreIA5Match + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{64} ) + +attributetype ( 1.3.6.1.4.1.7165.2.1.53 NAME 'sambaTrustFlags' + DESC 'Trust Password Flags' + EQUALITY caseIgnoreIA5Match + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 ) + + +####################################################################### +## objectClasses used by Samba 3.0 schema ## +####################################################################### + +## The X.500 data model (and therefore LDAPv3) says that each entry can +## only have one structural objectclass. OpenLDAP 2.0 does not enforce +## this currently but will in v2.1 + +## +## added new objectclass (and OID) for 3.0 to help us deal with backwards +## compatibility with 2.2 installations (e.g. ldapsam_compat) --jerry +## +objectclass ( 1.3.6.1.4.1.7165.2.2.6 NAME 'sambaSamAccount' SUP top AUXILIARY + DESC 'Samba 3.0 Auxilary SAM Account' + MUST ( uid $ sambaSID ) + MAY ( cn $ sambaLMPassword $ sambaNTPassword $ sambaPwdLastSet $ + sambaLogonTime $ sambaLogoffTime $ sambaKickoffTime $ + sambaPwdCanChange $ sambaPwdMustChange $ sambaAcctFlags $ + displayName $ sambaHomePath $ sambaHomeDrive $ sambaLogonScript $ + sambaProfilePath $ description $ sambaUserWorkstations $ + sambaPrimaryGroupSID $ sambaDomainName $ sambaMungedDial $ + sambaBadPasswordCount $ sambaBadPasswordTime $ + sambaPasswordHistory $ sambaLogonHours)) + +## +## Group mapping info +## +objectclass ( 1.3.6.1.4.1.7165.2.2.4 NAME 'sambaGroupMapping' SUP top AUXILIARY + DESC 'Samba Group Mapping' + MUST ( gidNumber $ sambaSID $ sambaGroupType ) + MAY ( displayName $ description $ sambaSIDList )) + +## +## Trust password for trust relationships (any kind) +## +objectclass ( 1.3.6.1.4.1.7165.2.2.14 NAME 'sambaTrustPassword' SUP top STRUCTURAL + DESC 'Samba Trust Password' + MUST ( sambaDomainName $ sambaNTPassword $ sambaTrustFlags ) + MAY ( sambaSID $ sambaPwdLastSet )) + +## +## Whole-of-domain info +## +objectclass ( 1.3.6.1.4.1.7165.2.2.5 NAME 'sambaDomain' SUP top STRUCTURAL + DESC 'Samba Domain Information' + MUST ( sambaDomainName $ + sambaSID ) + MAY ( sambaNextRid $ sambaNextGroupRid $ sambaNextUserRid $ + sambaAlgorithmicRidBase ) ) + +## +## used for idmap_ldap module +## +objectclass ( 1.3.6.1.4.1.7165.2.2.7 NAME 'sambaUnixIdPool' SUP top AUXILIARY + DESC 'Pool for allocating UNIX uids/gids' + MUST ( uidNumber $ gidNumber ) ) + + +objectclass ( 1.3.6.1.4.1.7165.2.2.8 NAME 'sambaIdmapEntry' SUP top AUXILIARY + DESC 'Mapping from a SID to an ID' + MUST ( sambaSID ) + MAY ( uidNumber $ gidNumber ) ) + +objectclass ( 1.3.6.1.4.1.7165.2.2.9 NAME 'sambaSidEntry' SUP top STRUCTURAL + DESC 'Structural Class for a SID' + MUST ( sambaSID ) ) + +objectclass ( 1.3.6.1.4.1.7165.1.2.2.10 NAME 'sambaConfig' SUP top AUXILIARY + DESC 'Samba Configuration Section' + MAY ( description ) ) + +objectclass ( 1.3.6.1.4.1.7165.2.2.11 NAME 'sambaShare' SUP top STRUCTURAL + DESC 'Samba Share Section' + MUST ( sambaShareName ) + MAY ( description ) ) + +objectclass ( 1.3.6.1.4.1.7165.2.2.12 NAME 'sambaConfigOption' SUP top STRUCTURAL + DESC 'Samba Configuration Option' + MUST ( sambaOptionName ) + MAY ( sambaBoolOption $ sambaIntegerOption $ sambaStringOption $ + sambaStringListoption $ description ) ) + + +objectclass ( 1.3.6.1.4.1.7165.2.2.13 NAME 'sambaPrivilege' SUP top AUXILIARY + DESC 'Samba Privilege' + MUST ( sambaSID ) + MAY ( sambaPrivilegeList ) ) + diff --git a/net-fs/samba/files/config-3.2/smb.conf.example-samba3 b/net-fs/samba/files/config-3.2/smb.conf.example-samba3 new file mode 100644 index 000000000..1c1216fc2 --- /dev/null +++ b/net-fs/samba/files/config-3.2/smb.conf.example-samba3 @@ -0,0 +1,478 @@ +# This is the main Samba configuration file. You should read the +# smb.conf(5) manual page in order to understand the options listed +# here. Samba has a huge number of configurable options (perhaps too +# many!) most of which are not shown in this example +# +# For a step to step guide on installing, configuring and using samba, +# read the Samba-HOWTO-Collection. This may be obtained from: +# http://www.samba.org/samba/docs/Samba-HOWTO-Collection.pdf +# +# Many working examples of smb.conf files can be found in the +# Samba-Guide which is generated daily and can be downloaded from: +# http://www.samba.org/samba/docs/Samba-Guide.pdf +# +# Any line which starts with a ; (semi-colon) or a # (hash) +# is a comment and is ignored. In this example we will use a # +# for commentry and a ; for parts of the config file that you +# may wish to enable +# +# NOTE: Whenever you modify this file you should run the command "testparm" +# to check that you have not made any basic syntactic errors. +# +#======================= Global Settings ===================================== +[global] + +# 1. Server Naming Options: +# workgroup = NT-Domain-Name or Workgroup-Name + workgroup = MYGROUP + +# netbios name is the name you will see in "Network Neighbourhood", +# but defaults to your hostname +; netbios name = <name_of_this_server> + +# server string is the equivalent of the NT Description field + server string = Samba Server %v + +# 2. Printing Options: +# CHANGES TO ENABLE PRINTING ON ALL CUPS PRINTERS IN THE NETWORK +# if you want to automatically load your printer list rather +# than setting them up individually then you'll need this + printcap name = cups + load printers = yes + +# It should not be necessary to spell out the print system type unless +# yours is non-standard. Currently supported print systems include: +# bsd, sysv, plp, lprng, aix, hpux, qnx, cups + printing = cups + +# 3. Logging Options: +# this tells Samba to use a separate log file for each machine +# that connects + log file = /var/log/samba/log.%m + +# Put a capping on the size of the log files (in Kb). + max log size = 50 + +# Set the log (verbosity) level (0 <= log level <= 10) +; log level = 3 + +# 4. Security and Domain Membership Options: +# This option is important for security. It allows you to restrict +# connections to machines which are on your local network. The +# following example restricts access to two C class networks and +# the "loopback" interface. For more examples of the syntax see +# the smb.conf man page. Do not enable this if (tcp/ip) name resolution does +# not work for all the hosts in your network. +; hosts allow = 192.168.1. 192.168.2. 127. + +# Uncomment this if you want a guest account, you must add this to /etc/passwd +# otherwise the user "nobody" is used +; guest account = pcguest +# Allow users to map to guest: + map to guest = bad user + +# Security mode. Most people will want user level security. See +# security_level.txt for details. + security = user +# Use password server option only with security = server or security = domain +# When using security = domain, you should use password server = * +; password server = <NT-Server-Name> +; password server = * + +# Password Level allows matching of _n_ characters of the password for +# all combinations of upper and lower case. +; password level = 8 +; username level = 8 + +# You may wish to use password encryption. Please read +# ENCRYPTION.txt, Win95.txt and WinNT.txt in the Samba documentation. +# Do not enable this option unless you have read those documents +# Encrypted passwords are required for any use of samba in a Windows NT domain +# The smbpasswd file is only required by a server doing authentication, thus +# members of a domain do not need one. + encrypt passwords = yes + +# The following are needed to allow password changing from Windows to +# also update the Linux system password. +# NOTE: Use these with 'encrypt passwords' and 'smb passwd file' above. +# NOTE2: You do NOT need these to allow workstations to change only +# the encrypted SMB passwords. They allow the Unix password +# to be kept in sync with the SMB password. +; unix password sync = Yes +# You either need to setup a passwd program and passwd chat, or +# enable pam password change +; pam password change = yes +; passwd program = /usr/bin/passwd %u +; passwd chat = *New*UNIX*password* %n\n *Re*ype*new*UNIX*password* %n\n \ +;*passwd:*all*authentication*tokens*updated*successfully* + +# Unix users can map to different SMB User names +; username map = /etc/samba/smbusers + +# Using the following line enables you to customise your configuration +# on a per machine basis. The %m gets replaced with the netbios name +# of the machine that is connecting +; include = /etc/samba/smb.conf.%m + +# Options for using winbind. Winbind allows you to do all account and +# authentication from a Windows or samba domain controller, creating +# accounts on the fly, and maintaining a mapping of Windows RIDs to unix uid's +# and gid's. idmap uid and idmap gid are the only required parameters. +# +# winbind separator is the character a user must use between their domain +# name and username, defaults to "\" +; winbind separator = + +# +# winbind use default domain allows you to have winbind return usernames +# in the form user instead of DOMAIN+user for the domain listed in the +# workgroup parameter. +; winbind use default domain = yes +# +# template homedir determines the home directory for winbind users, with +# %D expanding to their domain name and %U expanding to their username: +; template homedir = /home/%D/%U + +# When using winbind, you may want to have samba create home directories +# on the fly for authenticated users. Ensure that /etc/pam.d/samba is +# using 'service=system-auth-winbind' in pam_stack modules, and then +# enable obedience of pam restrictions below: +; obey pam restrictions = yes + +# +# template shell determines the shell users authenticated by winbind get +; template shell = /bin/bash + +# 5. Browser Control and Networking Options: +# Most people will find that this option gives better performance. +# See speed.txt and the manual pages for details + socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 + +# Configure Samba to use multiple interfaces +# If you have multiple network interfaces then you must list them +# here. See the man page for details. +; interfaces = 192.168.12.2/24 192.168.13.2/24 + +# Configure remote browse list synchronisation here +# request announcement to, or browse list sync from: +# a specific host or from / to a whole subnet (see below) +; remote browse sync = 192.168.3.25 192.168.5.255 +# Cause this host to announce itself to local subnets here +; remote announce = 192.168.1.255 192.168.2.44 + +# set local master to no if you don't want Samba to become a master +# browser on your network. Otherwise the normal election rules apply +; local master = no + +# OS Level determines the precedence of this server in master browser +# elections. The default value should be reasonable +; os level = 33 + +# Domain Master specifies Samba to be the Domain Master Browser. This +# allows Samba to collate browse lists between subnets. Don't use this +# if you already have a Windows NT domain controller doing this job +; domain master = yes + +# Preferred Master causes Samba to force a local browser election on startup +# and gives it a slightly higher chance of winning the election +; preferred master = yes + +# 6. Domain Control Options: +# Enable this if you want Samba to be a domain logon server for +# Windows95 workstations or Primary Domain Controller for WinNT and Win2k +; domain logons = yes + +# if you enable domain logons then you may want a per-machine or +# per user logon script +# run a specific logon batch file per workstation (machine) +; logon script = %m.bat +# run a specific logon batch file per username +; logon script = %U.bat + +# Where to store roaming profiles for WinNT and Win2k +# %L substitutes for this servers netbios name, %U is username +# You must uncomment the [Profiles] share below +; logon path = \\%L\Profiles\%U + +# Where to store roaming profiles for Win9x. Be careful with this as it also +# impacts where Win2k finds it's /HOME share +; logon home = \\%L\%U\.profile + + +# The add user script is used by a domain member to add local user accounts +# that have been authenticated by the domain controller, or when adding +# users via the Windows NT Tools (ie User Manager for Domains). + +# Scripts for file (passwd, smbpasswd) backend: +; add user script = /usr/sbin/useradd -s /bin/false '%u' +; delete user script = /usr/sbin/userdel '%s' +; add user to group script = /usr/bin/gpasswd -a '%u' '%g' +; delete user from group script = /usr/bin/gpasswd -d '%u' '%g' +; set primary group script = /usr/sbin/usermod -g '%g' '%u' +; add group script = /usr/sbin/groupadd %g && getent group '%g'|awk -F: '{print $3}' +; delete group script = /usr/sbin/groupdel '%g' + +# Scripts for LDAP backend (assumes nss_ldap is in use on the domain controller. +# Needs IDEALX scripts, and configuration in smbldap_conf.pm. +# This assumes you've installed the IDEALX scripts into /usr/share/samba/scripts... +; add user script = /usr/share/samba/scripts/smbldap-useradd.pl '%u' +; delete user script = /usr/share/samba/scripts/smbldap-userdel.pl '%u' +; add user to group script = /usr/share/samba/scripts/smbldap-groupmod.pl -m '%u' '%g' +; delete user from group script = /usr/share/samba/scripts/smbldap-groupmod.pl -x '%u' '%g' +; set primary group script = /usr/share/samba/scripts/smbldap-usermod.pl -g '%g' '%u' +; add group script = /usr/share/samba/scripts/smbldap-groupadd.pl '%g' && /usr/share/samba/scripts/smbldap-groupshow.pl %g|awk '/^gidNumber:/ {print $2}' +; delete group script = /usr/share/samba/scripts/smbldap-userdel.pl '%g' + + +# The add machine script is use by a samba server configured as a domain +# controller to add local machine accounts when adding machines to the domain. +# The script must work from the command line when replacing the macros, +# or the operation will fail. Check that groups exist if forcing a group. +# Script for domain controller for adding machines: +; add machine script = /usr/sbin/useradd -d /dev/null -g machines -c 'Machine Account' -s /bin/false '%u' +# Script for domain controller with LDAP backend for adding machines (You need +# the IDEALX scripts, and to configure the smbldap_conf.pm first): +; add machine script = /usr/share/samba/scripts/smbldap-useradd.pl -w -d /dev/null -g machines -c 'Machine Account' -s /bin/false '%u' + +# Domain groups: +# Domain groups are now configured by using the 'net groupmap' tool + +# Samba Password Database configuration: +# Samba now has runtime-configurable password database backends. +# smbpasswd is for backwards compatibility only Default (not recommended), +# new installations should use tdbsam or ldap. +; passdb backend = smbpasswd +# TDB backend +; passdb backend = tdbsam +# LDAP with fallback to smbpasswd guest +# Enable SSL by using an ldaps url, or enable tls with 'ldap ssl' below. +; passdb backend = ldapsam:ldaps://ldap.mydomain.com +# Use the samba2 LDAP schema: +; passdb backend = ldapsam_compat:ldaps://ldap.mydomain.com + +# idmap uid account range: +# This is a range of unix user-id's that samba will map non-unix RIDs to, +# such as when using Winbind +; idmap uid = 10000-20000 +; idmap gid = 10000-20000 + +# LDAP configuration for Domain Controlling: +# The account (dn) that samba uses to access the LDAP server +# This account needs to have write access to the LDAP tree +# You will need to give samba the password for this dn, by +# running 'smbpasswd -w mypassword' +; ldap admin dn = cn=root,dc=mydomain,dc=com +; ldap ssl = start_tls +# start_tls should run on 389, but samba defaults incorrectly to 636 +; ldap port = 389 +; ldap suffix = dc=mydomain,dc=com +; ldap server = ldap.mydomain.com +# Seperate suffixes are available for machines, users, groups, and idmap, if +# ldap suffix appears first, it is appended to the specific suffix. +# Example for a unix-ish directory layout: +; ldap machine suffix = ou=Hosts +; ldap user suffix = ou=People +; ldap group suffix = ou=Group +; ldap idmap suffix = ou=Idmap +# Example for AD-ish layout: +; ldap machine suffix = cn=Computers +; ldap user suffix = cn=Users +; ldap group suffix = cn=Groups +; ldap idmap suffix = cn=Idmap + + +# 7. Name Resolution Options: +# All NetBIOS names must be resolved to IP Addresses +# 'Name Resolve Order' allows the named resolution mechanism to be specified +# the default order is "host lmhosts wins bcast". "host" means use the unix +# system gethostbyname() function call that will use either /etc/hosts OR +# DNS or NIS depending on the settings of /etc/host.config, /etc/nsswitch.conf +# and the /etc/resolv.conf file. "host" therefore is system configuration +# dependant. This parameter is most often of use to prevent DNS lookups +# in order to resolve NetBIOS names to IP Addresses. Use with care! +# The example below excludes use of name resolution for machines that are NOT +# on the local network segment +# - OR - are not deliberately to be known via lmhosts or via WINS. +; name resolve order = wins host lmhosts bcast + +# Windows Internet Name Serving Support Section: +# WINS Support - Tells the NMBD component of Samba to enable it's WINS Server +; wins support = yes + +# WINS Server - Tells the NMBD components of Samba to be a WINS Client +# Note: Samba can be either a WINS Server, or a WINS Client, but NOT both +; wins server = w.x.y.z + +# WINS Proxy - Tells Samba to answer name resolution queries on +# behalf of a non WINS capable client, for this to work there must be +# at least one WINS Server on the network. The default is NO. +; wins proxy = yes + +# DNS Proxy - tells Samba whether or not to try to resolve NetBIOS names +# via DNS nslookups. The built-in default for versions 1.9.17 is yes, +# this has been changed in version 1.9.18 to no. + dns proxy = no + +# 8. File Naming Options: +# Case Preservation can be handy - system default is _no_ +# NOTE: These can be set on a per share basis +; preserve case = no +; short preserve case = no +# Default case is normally upper case for all DOS files +; default case = lower +# Be very careful with case sensitivity - it can break things! +; case sensitive = no + +# Enabling internationalization: +# you can match a Windows code page with a UNIX character set. +# Windows: 437 (US), 737 (GREEK), 850 (Latin1 - Western European), +# 852 (Czech), 861 (???), 932 (Japanese), +# 936 (Simplified Chin.), 949 (Korean Hangul), +# 950 (Trad. Chin.). +# More detail about code page is in +# "http://www.microsoft.com/globaldev/reference/oslocversion.mspx" +# UNIX: ISO8859-1 (Western European), ISO8859-2 (Eastern Eu.), +# ISO8859-5 (Russian Cyrillic), KOI8-R (Alt-Russ. Cyril.) +# This is an example for french users: +; dos charset = 850 +; unix charset = ISO8859-1 + + +#============================ Share Definitions ============================== +[homes] + comment = Home Directories + browseable = no + writable = yes +# You can enable VFS recycle bin on a per share basis: +# Uncomment the next 2 lines (make sure you create a +# .recycle folder in the base of the share and ensure +# all users will have write access to it. See +# examples/VFS/recycle/REAME in the samba docs for details +; vfs object = /usr/lib/samba/vfs/recycle.so + +# Un-comment the following and create the netlogon directory for Domain Logons +; [netlogon] +; comment = Network Logon Service +; path = /var/lib/samba/netlogon +; guest ok = yes +; writable = no + +# Un-comment the following to provide a specific roving profile share +# the default is to use the user's home directory +;[Profiles] +; path = /var/lib/samba/profiles +; browseable = no +; guest ok = yes +# This script can be enabled to create profile directories on the fly +# You may want to turn off guest acces if you enable this, as it +# hasn't been thoroughly tested. +;root preexec = PROFILE=/var/lib/samba/profiles/%u; if [ ! -e $PROFILE ]; \ +; then mkdir -pm700 $PROFILE; chown %u:%g $PROFILE;fi + +# NOTE: If you have a CUPS print system there is no need to +# specifically define each individual printer. +# You must configure the samba printers with the appropriate Windows +# drivers on your Windows clients. On the Samba server no filtering is +# done. If you wish that the server provides the driver and the clients +# send PostScript ("Generic PostScript Printer" under Windows), you have +# to swap the 'print command' line below with the commented one. +[printers] + comment = All Printers + path = /var/spool/samba + browseable = no +# set to yes to allow user 'guest account' to print. + guest ok = no + writable = no + printable = yes + +# This share is used for Windows NT-style point-and-print support. +# To be able to install drivers, you need to be either root, or listed +# in the printer admin parameter above. Note that you also need write access +# to the directory and share definition to be able to upload the drivers. +# For more information on this, please see the Printing Support Section of +# /usr/share/doc/samba-<version>/Samba-HOWTO-Collection.pdf +[print$] + path = /var/lib/samba/printers + browseable = yes + read only = yes + write list = @adm root + guest ok = yes + +# This one is useful for people to share files +;[tmp] +; comment = Temporary file space +; path = /tmp +; read only = no +; public = yes + +# A publicly accessible directory, but read only, except for people in +# the "staff" group +;[public] +; comment = Public Stuff +; path = /home/samba/public +; public = yes +; writable = no +; write list = @staff +# Audited directory through experimental VFS audit.so module: +# Uncomment next line. +; vfs object = /usr/lib/samba/vfs/audit.so + +# Other examples. +# +# A private printer, usable only by Fred. Spool data will be placed in Fred's +# home directory. Note that fred must have write access to the spool directory, +# wherever it is. +;[fredsprn] +; comment = Fred's Printer +; valid users = fred +; path = /homes/fred +; printer = freds_printer +; public = no +; writable = no +; printable = yes + +# A private directory, usable only by Fred. Note that Fred requires write +# access to the directory. +;[fredsdir] +; comment = Fred's Service +; path = /usr/somewhere/private +; valid users = fred +; public = no +; writable = yes +; printable = no + +# a service which has a different directory for each machine that connects +# this allows you to tailor configurations to incoming machines. You could +# also use the %u option to tailor it by user name. +# The %m gets replaced with the machine name that is connecting. +;[pchome] +; comment = PC Directories +; path = /usr/pc/%m +; public = no +; writable = yes + +# A publicly accessible directory, read/write to all users. Note that all files +# created in the directory by users will be owned by the default user, so +# any user with access can delete any other user's files. Obviously this +# directory must be writable by the default user. Another user could of course +# be specified, in which case all files would be owned by that user instead. +;[public] +; path = /usr/somewhere/else/public +; public = yes +; only guest = yes +; writable = yes +; printable = no + +# The following two entries demonstrate how to share a directory so that two +# users can place files there that will be owned by the specific users. In this +# setup, the directory should be writable by both users and should have the +# sticky bit set on it to prevent abuse. Obviously this could be extended to +# as many users as required. +;[myshare] +; comment = Mary's and Fred's stuff +; path = /usr/somewhere/shared +; valid users = mary fred +; public = no +; writable = yes +; printable = no +; create mask = 0765 + diff --git a/net-fs/samba/files/config-3.2/smbusers b/net-fs/samba/files/config-3.2/smbusers new file mode 100644 index 000000000..86fba47fb --- /dev/null +++ b/net-fs/samba/files/config-3.2/smbusers @@ -0,0 +1,4 @@ +# Unix_name = SMB_name1 SMB_name2 ... +# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/files/config-3.2/smbusers,v 1.1 2008/03/08 12:24:12 dev-zero Exp $ +root = administrator admin +nobody = guest pcguest smbguest diff --git a/net-fs/samba/files/config-3.2/swat.xinetd b/net-fs/samba/files/config-3.2/swat.xinetd new file mode 100644 index 000000000..3e0dfe8a3 --- /dev/null +++ b/net-fs/samba/files/config-3.2/swat.xinetd @@ -0,0 +1,17 @@ +# default: off +# description: SWAT is the Samba Web Admin Tool. Use swat \ +# to configure your Samba server. To use SWAT, \ +# connect to port 901 with your favorite web browser. +# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/files/config-3.2/swat.xinetd,v 1.1 2008/03/08 12:24:12 dev-zero Exp $ + +service swat +{ + port = 901 + socket_type = stream + wait = no + only_from = localhost + user = root + server = /usr/sbin/swat + log_on_failure += USERID + disable = yes +} diff --git a/net-fs/samba/files/config-3.2/system-auth-winbind b/net-fs/samba/files/config-3.2/system-auth-winbind new file mode 100644 index 000000000..65eda484b --- /dev/null +++ b/net-fs/samba/files/config-3.2/system-auth-winbind @@ -0,0 +1,18 @@ +#%PAM-1.0 +# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/files/config-3.2/system-auth-winbind,v 1.1 2008/03/08 12:24:12 dev-zero Exp $ + +auth required pam_env.so +auth sufficient pam_winbind.so +auth sufficient pam_unix.so likeauth nullok use_first_pass +auth required pam_deny.so + +account sufficient pam_winbind.so +account required pam_unix.so + +password required pam_cracklib.so retry=3 +password sufficient pam_unix.so nullok use_authtok md5 shadow +password required pam_deny.so + +session required pam_mkhomedir.so skel=/etc/skel/ umask=0022 +session required pam_limits.so +session required pam_unix.so diff --git a/net-fs/samba/samba-3.2.11.ebuild b/net-fs/samba/samba-3.2.11.ebuild new file mode 100644 index 000000000..6ef9c3d43 --- /dev/null +++ b/net-fs/samba/samba-3.2.11.ebuild @@ -0,0 +1,287 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.2.11.ebuild,v 1.2 2009/05/29 19:55:00 flameeyes Exp $ +EAPI="2" + +inherit eutils pam multilib versionator confutils multilib-native + +MY_P=${PN}-${PV/_/} + +DESCRIPTION="A suite of SMB and CIFS client/server programs for UNIX" +HOMEPAGE="http://www.samba.org/" +SRC_URI="mirror://samba/${MY_P}.tar.gz" +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd" +IUSE_LINGUAS="linguas_ja linguas_pl" +IUSE="${IUSE_LINGUAS} acl ads async automount caps cups doc examples ipv6 kernel_linux ldap fam + pam quotas readline selinux swat syslog winbind" + +RDEPEND="dev-libs/popt + dev-libs/iniparser + virtual/libiconv + acl? ( kernel_linux? ( virtual/acl ) ) + cups? ( net-print/cups[lib32?] ) + ipv6? ( sys-apps/xinetd ) + ads? ( virtual/krb5 sys-fs/e2fsprogs ) + ldap? ( net-nds/openldap[lib32?] ) + pam? ( virtual/pam ) + readline? ( sys-libs/readline[lib32?] ) + selinux? ( sec-policy/selinux-samba ) + swat? ( sys-apps/xinetd ) + syslog? ( virtual/logger ) + fam? ( virtual/fam ) + caps? ( sys-libs/libcap[lib32?] ) + lib32? ( fam? ( dev-libs/libgamin[lib32] ) ) + lib32? ( pam? ( sys-libs/pam[lib32] ) )" +DEPEND="${RDEPEND}" + +S="${WORKDIR}/${MY_P}" +CONFDIR="${FILESDIR}/config-3.2" +PRIVATE_DST=/var/lib/samba/private + +# Tests are currently broken due to hardcoded paths (due to --with-fhs) +# The problem is that --without-fhs lets samba use lockdir (which can be changed in smb.conf) +# which is wrong as well. +RESTRICT="test" + +pkg_setup() { + confutils_use_depend_all ads ldap +} + +src_unpack() { + unpack ${A} + cd "${S}/source" + + # Ok, agreed, this is ugly. But it avoids a patch we + # need for every samba version and we don't need autotools + sed -i \ + -e 's|"lib32" ||' \ + -e 's|if test -d "$i/$l" ;|if test -d "$i/$l" -o -L "$i/$l";|' \ + configure || die "sed failed" + + rm "${S}/docs/manpages"/{mount,umount}.cifs.8 + + sed -i \ + -e 's|tdbsam|tdbsam:${PRIVATEDIR}/passdb.tdb|' \ + "${S}/source/script/tests/selftest.sh" || die "sed failed" + +} + +src_configure() { :; } + +multilib-native_src_compile_internal() { + # fails with that + filter-ldflags -m32 -m64 + + cd "${S}/source" + + local myconf + local mylangs + local mymod_shared + + mylangs="--with-manpages-langs=en" + use linguas_ja && mylangs="${mylangs},ja" + use linguas_pl && mylangs="${mylangs},pl" + + use winbind && mymod_shared="--with-shared-modules=idmap_rid" + if use ldap ; then + myconf="${myconf} $(use_with ads)" + use winbind && mymod_shared="${mymod_shared},idmap_ad" + fi + + [[ ${CHOST} == *-*bsd* ]] && myconf="${myconf} --disable-pie" + use hppa && myconf="${myconf} --disable-pie" + + use caps && export ac_cv_header_sys_capability_h=yes || export ac_cv_header_sys_capability_h=no + + # Otherwise we get the whole swat stuff installed + if ! use swat ; then + sed -i \ + -e 's/^\(install:.*\)installswat \(.*\)/\1\2/' \ + Makefile.in || die "sed failed" + fi + + econf \ + --with-fhs \ + --sysconfdir=/etc/samba \ + --localstatedir=/var \ + --with-configdir=/etc/samba \ + --with-libdir=/usr/$(get_libdir)/samba \ + --with-pammodulesdir=$(getpam_mod_dir) \ + --with-swatdir=/usr/share/doc/${PF}/swat \ + --with-piddir=/var/run/samba \ + --with-lockdir=/var/cache/samba \ + --with-logfilebase=/var/log/samba \ + --with-privatedir=${PRIVATE_DST} \ + --with-libsmbclient \ + --without-spinlocks \ + --enable-socket-wrapper \ + --enable-nss-wrapper \ + --with-cifsmount=no \ + $(use_with acl acl-support) \ + $(use_with async aio-support) \ + $(use_with automount) \ + --without-cifsupcall \ + $(use_enable cups) \ + $(use_enable fam) \ + $(use_with ads krb5) \ + $(use_with ads dnsupdate) \ + $(use_with ldap) \ + $(use_with pam) $(use_with pam pam_smbpass) \ + $(use_with quotas) $(use_with quotas sys-quotas) \ + $(use_with readline) \ + $(use_with syslog) \ + $(use_with winbind) \ + ${myconf} ${mylangs} ${mymod_shared} || die "econf failed" + + emake proto || die "emake proto failed" + emake everything || die "emake everything failed" +} + +src_test() { + cd "${S}/source" + emake test || die "tests failed" +} + +multilib-native_src_install_internal() { + cd "${S}/source" + + emake DESTDIR="${D}" install-everything || die "emake install-everything failed" + + # Extra rpctorture progs + local extra_bins="rpctorture" + for i in ${extra_bins} ; do + [[ -x "${S}/bin/${i}" ]] && dobin "${S}/bin/${i}" + done + + # remove .old stuff from /usr/bin: + rm -f "${D}"/usr/bin/*.old + + # Removing executable bits from header-files + fperms 644 /usr/include/libsmbclient.h + + # Nsswitch extensions. Make link for wins and winbind resolvers + if use winbind ; then + dolib.so nsswitch/libnss_wins.so + dosym libnss_wins.so /usr/$(get_libdir)/libnss_wins.so.2 + dolib.so nsswitch/libnss_winbind.so + dosym libnss_winbind.so /usr/$(get_libdir)/libnss_winbind.so.2 + fi + + # bug #46389: samba doesn't create symlink anymore + # beaviour seems to be changed in 3.0.6, see bug #61046 + dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so + dosym samba/libsmbclient.so.0 /usr/$(get_libdir)/libsmbclient.so.0 + dosym samba/libtalloc.so /usr/$(get_libdir)/libtalloc.so + dosym samba/libtalloc.so.1 /usr/$(get_libdir)/libtalloc.so.1 + dosym samba/libtdb.so /usr/$(get_libdir)/libtdb.so + dosym samba/libtdb.so.1 /usr/$(get_libdir)/libtdb.so.1 + + # make the smb backend symlink for cups printing support (bug #133133) + if use cups ; then + dodir $(cups-config --serverbin)/backend + dosym /usr/bin/smbspool $(cups-config --serverbin)/backend/smb + fi + + cd "${S}/source" + + # General config files + insinto /etc/samba + doins "${CONFDIR}"/{smbusers,lmhosts} + newins "${CONFDIR}/smb.conf.example-samba3" smb.conf.example + + newpamd "${CONFDIR}/samba.pam" samba + use winbind && dopamd "${CONFDIR}/system-auth-winbind" + if use swat ; then + insinto /etc/xinetd.d + newins "${CONFDIR}/swat.xinetd" swat + else + rm -f "${D}/usr/sbin/swat" + rm -f "${D}/usr/share/man/man8/swat.8" + fi + + newinitd "${FILESDIR}/samba-init" samba + newconfd "${FILESDIR}/samba-conf" samba + + if use ldap ; then + insinto /etc/openldap/schema + doins "${S}/examples/LDAP/samba.schema" + fi + + if use ipv6 ; then + insinto /etc/xinetd.d + newins "${FILESDIR}/samba-xinetd" smb + fi + + # dirs + diropts -m0700 ; keepdir "${PRIVATE_DST}" + diropts -m1777 ; keepdir /var/spool/samba + + diropts -m0755 + keepdir /var/{log,run,cache}/samba + keepdir /var/lib/samba/{netlogon,profiles} + keepdir /var/lib/samba/printers/{W32X86,WIN40,W32ALPHA,W32MIPS,W32PPC,X64,IA64,COLOR} + keepdir /usr/$(get_libdir)/samba/{rpc,idmap,auth} + + # docs + dodoc "${FILESDIR}/README.gentoo" + dodoc "${S}"/{MAINTAINERS,README,Roadmap,WHATSNEW.txt} + dodoc "${CONFDIR}/nsswitch.conf-wins" + use winbind && dodoc "${CONFDIR}/nsswitch.conf-winbind" + + if use examples ; then + insinto /usr/share/doc/${PF} + doins -r "${S}/examples/" + find "${D}/usr/share/doc/${PF}" -type d -print0 | xargs -0 chmod 755 + find "${D}/usr/share/doc/${PF}/examples" ! -type d -print0 | xargs -0 chmod 644 + fi + + if ! use doc ; then + if ! use swat ; then + rm -rf "${D}/usr/share/doc/${PF}/swat" + else + rm -rf "${D}/usr/share/doc/${PF}/swat/help"/{guide,howto,devel} + rm -rf "${D}/usr/share/doc/${PF}/swat/using_samba" + fi + fi +} + +pkg_preinst() { + local PRIVATE_SRC=/etc/samba/private + if [[ ! -r "${ROOT}/${PRIVATE_DST}/secrets.tdb" \ + && -r "${ROOT}/${PRIVATE_SRC}/secrets.tdb" ]] ; then + ebegin "Copying ${ROOT}/${PRIVATE_SRC}/* to ${ROOT}/${PRIVATE_DST}/" + mkdir -p "${D}/${PRIVATE_DST}" + cp -pPRf "${ROOT}/${PRIVATE_SRC}"/* "${D}/${PRIVATE_DST}/" + eend $? + fi + + if [[ ! -f "${ROOT}/etc/samba/smb.conf" ]] ; then + touch "${D}/etc/samba/smb.conf" + fi +} + +multilib-native_pkg_postinst_internal() { + if use swat ; then + einfo "swat must be enabled by xinetd:" + einfo " change the /etc/xinetd.d/swat configuration" + fi + + if use ipv6 ; then + einfo "ipv6 support must be enabled by xinetd:" + einfo " change the /etc/xinetd.d/smb configuration" + fi + + elog "It is possible to start/stop daemons separately:" + elog " Create a symlink from /etc/init.d/samba.{smbd,nmbd,winbind} to" + elog " /etc/init.d/samba. Calling /etc/init.d/samba directly will start" + elog " the daemons configured in /etc/conf.d/samba" + + elog "The mount/umount.cifs helper applications are not included anymore." + elog "Please install net-fs/mount-cifs instead." + + ewarn "If you're upgrading from 3.0.24 or earlier, please make sure to" + ewarn "restart your clients to clear any cached information about the server." + ewarn "Otherwise they might not be able to connect to the volumes." +} diff --git a/net-fs/samba/samba-3.2.13-r1.ebuild b/net-fs/samba/samba-3.2.13-r1.ebuild new file mode 100644 index 000000000..921282fb8 --- /dev/null +++ b/net-fs/samba/samba-3.2.13-r1.ebuild @@ -0,0 +1,289 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.2.13-r1.ebuild,v 1.1 2009/06/26 17:21:55 patrick Exp $ +EAPI="2" + +inherit eutils pam multilib versionator confutils multilib-native + +MY_P=${PN}-${PV/_/} + +DESCRIPTION="A suite of SMB and CIFS client/server programs for UNIX" +HOMEPAGE="http://www.samba.org/" +SRC_URI="mirror://samba/${MY_P}.tar.gz" +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd" +IUSE_LINGUAS="linguas_ja linguas_pl" +IUSE="${IUSE_LINGUAS} acl ads async automount caps cups doc examples ipv6 kernel_linux ldap fam + pam quotas readline selinux swat syslog winbind" + +RDEPEND="dev-libs/popt + dev-libs/iniparser + virtual/libiconv + acl? ( kernel_linux? ( virtual/acl ) ) + cups? ( net-print/cups[lib32?] ) + ipv6? ( sys-apps/xinetd ) + ads? ( virtual/krb5 sys-fs/e2fsprogs ) + ldap? ( net-nds/openldap[lib32?] ) + pam? ( virtual/pam ) + readline? ( sys-libs/readline[lib32?] ) + selinux? ( sec-policy/selinux-samba ) + swat? ( sys-apps/xinetd ) + syslog? ( virtual/logger ) + fam? ( virtual/fam ) + caps? ( sys-libs/libcap[lib32?] ) + lib32? ( fam? ( dev-libs/libgamin[lib32] ) ) + lib32? ( pam? ( sys-libs/pam[lib32] ) )" +DEPEND="${RDEPEND}" + +S="${WORKDIR}/${MY_P}" +CONFDIR="${FILESDIR}/config-3.2" +PRIVATE_DST=/var/lib/samba/private + +# Tests are currently broken due to hardcoded paths (due to --with-fhs) +# The problem is that --without-fhs lets samba use lockdir (which can be changed in smb.conf) +# which is wrong as well. +RESTRICT="test" + +pkg_setup() { + confutils_use_depend_all ads ldap +} + +src_unpack() { + unpack ${A} + cd "${S}/source" + + # Ok, agreed, this is ugly. But it avoids a patch we + # need for every samba version and we don't need autotools + sed -i \ + -e 's|"lib32" ||' \ + -e 's|if test -d "$i/$l" ;|if test -d "$i/$l" -o -L "$i/$l";|' \ + configure || die "sed failed" + + rm "${S}/docs/manpages"/{mount,umount}.cifs.8 + + sed -i \ + -e 's|tdbsam|tdbsam:${PRIVATEDIR}/passdb.tdb|' \ + "${S}/source/script/tests/selftest.sh" || die "sed failed" + +} + +src_configure() { :; } + +multilib-native_src_compile_internal() { + # fails with that + filter-ldflags -m32 -m64 + + cd "${S}/source" + + local myconf + local mylangs + local mymod_shared + + mylangs="--with-manpages-langs=en" + use linguas_ja && mylangs="${mylangs},ja" + use linguas_pl && mylangs="${mylangs},pl" + + use winbind && mymod_shared="--with-shared-modules=idmap_rid" + if use ldap ; then + myconf="${myconf} $(use_with ads)" + use winbind && mymod_shared="${mymod_shared},idmap_ad" + fi + + [[ ${CHOST} == *-*bsd* ]] && myconf="${myconf} --disable-pie" + use hppa && myconf="${myconf} --disable-pie" + + use caps && export ac_cv_header_sys_capability_h=yes || export ac_cv_header_sys_capability_h=no + + # Otherwise we get the whole swat stuff installed + if ! use swat ; then + sed -i \ + -e 's/^\(install:.*\)installswat \(.*\)/\1\2/' \ + Makefile.in || die "sed failed" + fi + + econf \ + --with-fhs \ + --sysconfdir=/etc/samba \ + --localstatedir=/var \ + --with-configdir=/etc/samba \ + --with-libdir=/usr/$(get_libdir)/samba \ + --with-pammodulesdir=$(getpam_mod_dir) \ + --with-swatdir=/usr/share/doc/${PF}/swat \ + --with-piddir=/var/run/samba \ + --with-lockdir=/var/cache/samba \ + --with-logfilebase=/var/log/samba \ + --with-privatedir=${PRIVATE_DST} \ + --with-libsmbclient \ + --without-spinlocks \ + --enable-socket-wrapper \ + --enable-nss-wrapper \ + --with-cifsmount=no \ + $(use_with acl acl-support) \ + $(use_with async aio-support) \ + $(use_with automount) \ + --without-cifsupcall \ + $(use_enable cups) \ + $(use_enable fam) \ + $(use_with ads krb5) \ + $(use_with ads dnsupdate) \ + $(use_with ldap) \ + $(use_with pam) $(use_with pam pam_smbpass) \ + $(use_with quotas) $(use_with quotas sys-quotas) \ + $(use_with readline) \ + $(use_with syslog) \ + $(use_with winbind) \ + ${myconf} ${mylangs} ${mymod_shared} || die "econf failed" + + emake proto || die "emake proto failed" + emake everything || die "emake everything failed" +} + +src_test() { + cd "${S}/source" + emake test || die "tests failed" +} + +multilib-native_src_install_internal() { + cd "${S}/source" + + emake DESTDIR="${D}" install-everything || die "emake install-everything failed" + + # Extra rpctorture progs + local extra_bins="rpctorture" + for i in ${extra_bins} ; do + [[ -x "${S}/bin/${i}" ]] && dobin "${S}/bin/${i}" + done + + # remove .old stuff from /usr/bin: + rm -f "${D}"/usr/bin/*.old + + # Removing executable bits from header-files + fperms 644 /usr/include/libsmbclient.h + + # Nsswitch extensions. Make link for wins and winbind resolvers + if use winbind ; then + dolib.so nsswitch/libnss_wins.so + dosym libnss_wins.so /usr/$(get_libdir)/libnss_wins.so.2 + dolib.so nsswitch/libnss_winbind.so + dosym libnss_winbind.so /usr/$(get_libdir)/libnss_winbind.so.2 + fi + + # bug #46389: samba doesn't create symlink anymore + # beaviour seems to be changed in 3.0.6, see bug #61046 + dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so + dosym samba/libsmbclient.so.0 /usr/$(get_libdir)/libsmbclient.so.0 + dosym samba/libtalloc.so /usr/$(get_libdir)/libtalloc.so + dosym samba/libtalloc.so.1 /usr/$(get_libdir)/libtalloc.so.1 + dosym samba/libtdb.so /usr/$(get_libdir)/libtdb.so + dosym samba/libtdb.so.1 /usr/$(get_libdir)/libtdb.so.1 + dosym samba/libwbclient.so.0 /usr/$(get_libdir)/libwbclient.so.0 + dosym samba/libsmbsharemodes.so.0 /usr/$(get_libdir)/libsmbsharemodes.so.0 + + # make the smb backend symlink for cups printing support (bug #133133) + if use cups ; then + dodir $(cups-config --serverbin)/backend + dosym /usr/bin/smbspool $(cups-config --serverbin)/backend/smb + fi + + cd "${S}/source" + + # General config files + insinto /etc/samba + doins "${CONFDIR}"/{smbusers,lmhosts} + newins "${CONFDIR}/smb.conf.example-samba3" smb.conf.example + + newpamd "${CONFDIR}/samba.pam" samba + use winbind && dopamd "${CONFDIR}/system-auth-winbind" + if use swat ; then + insinto /etc/xinetd.d + newins "${CONFDIR}/swat.xinetd" swat + else + rm -f "${D}/usr/sbin/swat" + rm -f "${D}/usr/share/man/man8/swat.8" + fi + + newinitd "${FILESDIR}/samba-init" samba + newconfd "${FILESDIR}/samba-conf" samba + + if use ldap ; then + insinto /etc/openldap/schema + doins "${S}/examples/LDAP/samba.schema" + fi + + if use ipv6 ; then + insinto /etc/xinetd.d + newins "${FILESDIR}/samba-xinetd" smb + fi + + # dirs + diropts -m0700 ; keepdir "${PRIVATE_DST}" + diropts -m1777 ; keepdir /var/spool/samba + + diropts -m0755 + keepdir /var/{log,run,cache}/samba + keepdir /var/lib/samba/{netlogon,profiles} + keepdir /var/lib/samba/printers/{W32X86,WIN40,W32ALPHA,W32MIPS,W32PPC,X64,IA64,COLOR} + keepdir /usr/$(get_libdir)/samba/{rpc,idmap,auth} + + # docs + dodoc "${FILESDIR}/README.gentoo" + dodoc "${S}"/{MAINTAINERS,README,Roadmap,WHATSNEW.txt} + dodoc "${CONFDIR}/nsswitch.conf-wins" + use winbind && dodoc "${CONFDIR}/nsswitch.conf-winbind" + + if use examples ; then + insinto /usr/share/doc/${PF} + doins -r "${S}/examples/" + find "${D}/usr/share/doc/${PF}" -type d -print0 | xargs -0 chmod 755 + find "${D}/usr/share/doc/${PF}/examples" ! -type d -print0 | xargs -0 chmod 644 + fi + + if ! use doc ; then + if ! use swat ; then + rm -rf "${D}/usr/share/doc/${PF}/swat" + else + rm -rf "${D}/usr/share/doc/${PF}/swat/help"/{guide,howto,devel} + rm -rf "${D}/usr/share/doc/${PF}/swat/using_samba" + fi + fi +} + +pkg_preinst() { + local PRIVATE_SRC=/etc/samba/private + if [[ ! -r "${ROOT}/${PRIVATE_DST}/secrets.tdb" \ + && -r "${ROOT}/${PRIVATE_SRC}/secrets.tdb" ]] ; then + ebegin "Copying ${ROOT}/${PRIVATE_SRC}/* to ${ROOT}/${PRIVATE_DST}/" + mkdir -p "${D}/${PRIVATE_DST}" + cp -pPRf "${ROOT}/${PRIVATE_SRC}"/* "${D}/${PRIVATE_DST}/" + eend $? + fi + + if [[ ! -f "${ROOT}/etc/samba/smb.conf" ]] ; then + touch "${D}/etc/samba/smb.conf" + fi +} + +multilib-native_pkg_postinst_internal() { + if use swat ; then + einfo "swat must be enabled by xinetd:" + einfo " change the /etc/xinetd.d/swat configuration" + fi + + if use ipv6 ; then + einfo "ipv6 support must be enabled by xinetd:" + einfo " change the /etc/xinetd.d/smb configuration" + fi + + elog "It is possible to start/stop daemons separately:" + elog " Create a symlink from /etc/init.d/samba.{smbd,nmbd,winbind} to" + elog " /etc/init.d/samba. Calling /etc/init.d/samba directly will start" + elog " the daemons configured in /etc/conf.d/samba" + + elog "The mount/umount.cifs helper applications are not included anymore." + elog "Please install net-fs/mount-cifs instead." + + ewarn "If you're upgrading from 3.0.24 or earlier, please make sure to" + ewarn "restart your clients to clear any cached information about the server." + ewarn "Otherwise they might not be able to connect to the volumes." +} diff --git a/net-fs/samba/samba-3.2.13-r2.ebuild b/net-fs/samba/samba-3.2.13-r2.ebuild new file mode 100644 index 000000000..b56f154c1 --- /dev/null +++ b/net-fs/samba/samba-3.2.13-r2.ebuild @@ -0,0 +1,291 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.2.13-r2.ebuild,v 1.1 2009/06/27 07:27:20 patrick Exp $ +EAPI="2" + +inherit eutils pam multilib versionator confutils multilib-native + +MY_P=${PN}-${PV/_/} + +DESCRIPTION="A suite of SMB and CIFS client/server programs for UNIX" +HOMEPAGE="http://www.samba.org/" +SRC_URI="mirror://samba/${MY_P}.tar.gz" +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd" +IUSE_LINGUAS="linguas_ja linguas_pl" +IUSE="${IUSE_LINGUAS} acl ads async automount caps cifsupcall cups doc examples ipv6 kernel_linux ldap fam + pam quotas readline selinux swat syslog winbind" + +RDEPEND="dev-libs/popt + dev-libs/iniparser + virtual/libiconv + acl? ( kernel_linux? ( virtual/acl ) ) + cifsupcall? ( sys-apps/keyutils ) + cups? ( net-print/cups[lib32?] ) + ipv6? ( sys-apps/xinetd ) + ads? ( virtual/krb5 sys-fs/e2fsprogs ) + ldap? ( net-nds/openldap[lib32?] ) + pam? ( virtual/pam ) + readline? ( sys-libs/readline[lib32?] ) + selinux? ( sec-policy/selinux-samba ) + swat? ( sys-apps/xinetd ) + syslog? ( virtual/logger ) + fam? ( virtual/fam ) + caps? ( sys-libs/libcap[lib32?] ) + lib32? ( fam? ( dev-libs/libgamin[lib32] ) ) + lib32? ( pam? ( sys-libs/pam[lib32] ) )" +DEPEND="${RDEPEND}" + +S="${WORKDIR}/${MY_P}" +CONFDIR="${FILESDIR}/config-3.2" +PRIVATE_DST=/var/lib/samba/private + +# Tests are currently broken due to hardcoded paths (due to --with-fhs) +# The problem is that --without-fhs lets samba use lockdir (which can be changed in smb.conf) +# which is wrong as well. +RESTRICT="test" + +pkg_setup() { + confutils_use_depend_all ads ldap + confutils_use_depend_all cifsupcall ads +} + +src_unpack() { + unpack ${A} + cd "${S}/source" + + # Ok, agreed, this is ugly. But it avoids a patch we + # need for every samba version and we don't need autotools + sed -i \ + -e 's|"lib32" ||' \ + -e 's|if test -d "$i/$l" ;|if test -d "$i/$l" -o -L "$i/$l";|' \ + configure || die "sed failed" + + rm "${S}/docs/manpages"/{mount,umount}.cifs.8 + + sed -i \ + -e 's|tdbsam|tdbsam:${PRIVATEDIR}/passdb.tdb|' \ + "${S}/source/script/tests/selftest.sh" || die "sed failed" + +} + +src_configure() { :; } + +multilib-native_src_compile_internal() { + # fails with that + filter-ldflags -m32 -m64 + + cd "${S}/source" + + local myconf + local mylangs + local mymod_shared + + mylangs="--with-manpages-langs=en" + use linguas_ja && mylangs="${mylangs},ja" + use linguas_pl && mylangs="${mylangs},pl" + + use winbind && mymod_shared="--with-shared-modules=idmap_rid" + if use ldap ; then + myconf="${myconf} $(use_with ads)" + use winbind && mymod_shared="${mymod_shared},idmap_ad" + fi + + [[ ${CHOST} == *-*bsd* ]] && myconf="${myconf} --disable-pie" + use hppa && myconf="${myconf} --disable-pie" + + use caps && export ac_cv_header_sys_capability_h=yes || export ac_cv_header_sys_capability_h=no + + # Otherwise we get the whole swat stuff installed + if ! use swat ; then + sed -i \ + -e 's/^\(install:.*\)installswat \(.*\)/\1\2/' \ + Makefile.in || die "sed failed" + fi + + econf \ + --with-fhs \ + --sysconfdir=/etc/samba \ + --localstatedir=/var \ + --with-configdir=/etc/samba \ + --with-libdir=/usr/$(get_libdir)/samba \ + --with-pammodulesdir=$(getpam_mod_dir) \ + --with-swatdir=/usr/share/doc/${PF}/swat \ + --with-piddir=/var/run/samba \ + --with-lockdir=/var/cache/samba \ + --with-logfilebase=/var/log/samba \ + --with-privatedir=${PRIVATE_DST} \ + --with-libsmbclient \ + --without-spinlocks \ + --enable-socket-wrapper \ + --enable-nss-wrapper \ + --with-cifsmount=no \ + $(use_with acl acl-support) \ + $(use_with async aio-support) \ + $(use_with automount) \ + $(use with cifsupcall) \ + $(use_enable cups) \ + $(use_enable fam) \ + $(use_with ads krb5) \ + $(use_with ads dnsupdate) \ + $(use_with ldap) \ + $(use_with pam) $(use_with pam pam_smbpass) \ + $(use_with quotas) $(use_with quotas sys-quotas) \ + $(use_with readline) \ + $(use_with syslog) \ + $(use_with winbind) \ + ${myconf} ${mylangs} ${mymod_shared} || die "econf failed" + + emake proto || die "emake proto failed" + emake everything || die "emake everything failed" +} + +src_test() { + cd "${S}/source" + emake test || die "tests failed" +} + +multilib-native_src_install_internal() { + cd "${S}/source" + + emake DESTDIR="${D}" install-everything || die "emake install-everything failed" + + # Extra rpctorture progs + local extra_bins="rpctorture" + for i in ${extra_bins} ; do + [[ -x "${S}/bin/${i}" ]] && dobin "${S}/bin/${i}" + done + + # remove .old stuff from /usr/bin: + rm -f "${D}"/usr/bin/*.old + + # Removing executable bits from header-files + fperms 644 /usr/include/libsmbclient.h + + # Nsswitch extensions. Make link for wins and winbind resolvers + if use winbind ; then + dolib.so nsswitch/libnss_wins.so + dosym libnss_wins.so /usr/$(get_libdir)/libnss_wins.so.2 + dolib.so nsswitch/libnss_winbind.so + dosym libnss_winbind.so /usr/$(get_libdir)/libnss_winbind.so.2 + fi + + # bug #46389: samba doesn't create symlink anymore + # beaviour seems to be changed in 3.0.6, see bug #61046 + dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so + dosym samba/libsmbclient.so.0 /usr/$(get_libdir)/libsmbclient.so.0 + dosym samba/libtalloc.so /usr/$(get_libdir)/libtalloc.so + dosym samba/libtalloc.so.1 /usr/$(get_libdir)/libtalloc.so.1 + dosym samba/libtdb.so /usr/$(get_libdir)/libtdb.so + dosym samba/libtdb.so.1 /usr/$(get_libdir)/libtdb.so.1 + dosym samba/libwbclient.so.0 /usr/$(get_libdir)/libwbclient.so.0 + dosym samba/libsmbsharemodes.so.0 /usr/$(get_libdir)/libsmbsharemodes.so.0 + + # make the smb backend symlink for cups printing support (bug #133133) + if use cups ; then + dodir $(cups-config --serverbin)/backend + dosym /usr/bin/smbspool $(cups-config --serverbin)/backend/smb + fi + + cd "${S}/source" + + # General config files + insinto /etc/samba + doins "${CONFDIR}"/{smbusers,lmhosts} + newins "${CONFDIR}/smb.conf.example-samba3" smb.conf.example + + newpamd "${CONFDIR}/samba.pam" samba + use winbind && dopamd "${CONFDIR}/system-auth-winbind" + if use swat ; then + insinto /etc/xinetd.d + newins "${CONFDIR}/swat.xinetd" swat + else + rm -f "${D}/usr/sbin/swat" + rm -f "${D}/usr/share/man/man8/swat.8" + fi + + newinitd "${FILESDIR}/samba-init" samba + newconfd "${FILESDIR}/samba-conf" samba + + if use ldap ; then + insinto /etc/openldap/schema + doins "${S}/examples/LDAP/samba.schema" + fi + + if use ipv6 ; then + insinto /etc/xinetd.d + newins "${FILESDIR}/samba-xinetd" smb + fi + + # dirs + diropts -m0700 ; keepdir "${PRIVATE_DST}" + diropts -m1777 ; keepdir /var/spool/samba + + diropts -m0755 + keepdir /var/{log,run,cache}/samba + keepdir /var/lib/samba/{netlogon,profiles} + keepdir /var/lib/samba/printers/{W32X86,WIN40,W32ALPHA,W32MIPS,W32PPC,X64,IA64,COLOR} + keepdir /usr/$(get_libdir)/samba/{rpc,idmap,auth} + + # docs + dodoc "${FILESDIR}/README.gentoo" + dodoc "${S}"/{MAINTAINERS,README,Roadmap,WHATSNEW.txt} + dodoc "${CONFDIR}/nsswitch.conf-wins" + use winbind && dodoc "${CONFDIR}/nsswitch.conf-winbind" + + if use examples ; then + insinto /usr/share/doc/${PF} + doins -r "${S}/examples/" + find "${D}/usr/share/doc/${PF}" -type d -print0 | xargs -0 chmod 755 + find "${D}/usr/share/doc/${PF}/examples" ! -type d -print0 | xargs -0 chmod 644 + fi + + if ! use doc ; then + if ! use swat ; then + rm -rf "${D}/usr/share/doc/${PF}/swat" + else + rm -rf "${D}/usr/share/doc/${PF}/swat/help"/{guide,howto,devel} + rm -rf "${D}/usr/share/doc/${PF}/swat/using_samba" + fi + fi +} + +pkg_preinst() { + local PRIVATE_SRC=/etc/samba/private + if [[ ! -r "${ROOT}/${PRIVATE_DST}/secrets.tdb" \ + && -r "${ROOT}/${PRIVATE_SRC}/secrets.tdb" ]] ; then + ebegin "Copying ${ROOT}/${PRIVATE_SRC}/* to ${ROOT}/${PRIVATE_DST}/" + mkdir -p "${D}/${PRIVATE_DST}" + cp -pPRf "${ROOT}/${PRIVATE_SRC}"/* "${D}/${PRIVATE_DST}/" + eend $? + fi + + if [[ ! -f "${ROOT}/etc/samba/smb.conf" ]] ; then + touch "${D}/etc/samba/smb.conf" + fi +} + +multilib-native_pkg_postinst_internal() { + if use swat ; then + einfo "swat must be enabled by xinetd:" + einfo " change the /etc/xinetd.d/swat configuration" + fi + + if use ipv6 ; then + einfo "ipv6 support must be enabled by xinetd:" + einfo " change the /etc/xinetd.d/smb configuration" + fi + + elog "It is possible to start/stop daemons separately:" + elog " Create a symlink from /etc/init.d/samba.{smbd,nmbd,winbind} to" + elog " /etc/init.d/samba. Calling /etc/init.d/samba directly will start" + elog " the daemons configured in /etc/conf.d/samba" + + elog "The mount/umount.cifs helper applications are not included anymore." + elog "Please install net-fs/mount-cifs instead." + + ewarn "If you're upgrading from 3.0.24 or earlier, please make sure to" + ewarn "restart your clients to clear any cached information about the server." + ewarn "Otherwise they might not be able to connect to the volumes." +} diff --git a/net-fs/samba/samba-3.2.13.ebuild b/net-fs/samba/samba-3.2.13.ebuild new file mode 100644 index 000000000..d2b963796 --- /dev/null +++ b/net-fs/samba/samba-3.2.13.ebuild @@ -0,0 +1,287 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.2.13.ebuild,v 1.1 2009/06/25 19:06:21 patrick Exp $ +EAPI="2" + +inherit eutils pam multilib versionator confutils multilib-native + +MY_P=${PN}-${PV/_/} + +DESCRIPTION="A suite of SMB and CIFS client/server programs for UNIX" +HOMEPAGE="http://www.samba.org/" +SRC_URI="mirror://samba/${MY_P}.tar.gz" +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd" +IUSE_LINGUAS="linguas_ja linguas_pl" +IUSE="${IUSE_LINGUAS} acl ads async automount caps cups doc examples ipv6 kernel_linux ldap fam + pam quotas readline selinux swat syslog winbind" + +RDEPEND="dev-libs/popt + dev-libs/iniparser + virtual/libiconv + acl? ( kernel_linux? ( virtual/acl ) ) + cups? ( net-print/cups[lib32?] ) + ipv6? ( sys-apps/xinetd ) + ads? ( virtual/krb5 sys-fs/e2fsprogs ) + ldap? ( net-nds/openldap[lib32?] ) + pam? ( virtual/pam ) + readline? ( sys-libs/readline[lib32?] ) + selinux? ( sec-policy/selinux-samba ) + swat? ( sys-apps/xinetd ) + syslog? ( virtual/logger ) + fam? ( virtual/fam ) + caps? ( sys-libs/libcap[lib32?] ) + lib32? ( fam? ( dev-libs/libgamin[lib32] ) ) + lib32? ( pam? ( sys-libs/pam[lib32] ) )" +DEPEND="${RDEPEND}" + +S="${WORKDIR}/${MY_P}" +CONFDIR="${FILESDIR}/config-3.2" +PRIVATE_DST=/var/lib/samba/private + +# Tests are currently broken due to hardcoded paths (due to --with-fhs) +# The problem is that --without-fhs lets samba use lockdir (which can be changed in smb.conf) +# which is wrong as well. +RESTRICT="test" + +pkg_setup() { + confutils_use_depend_all ads ldap +} + +src_unpack() { + unpack ${A} + cd "${S}/source" + + # Ok, agreed, this is ugly. But it avoids a patch we + # need for every samba version and we don't need autotools + sed -i \ + -e 's|"lib32" ||' \ + -e 's|if test -d "$i/$l" ;|if test -d "$i/$l" -o -L "$i/$l";|' \ + configure || die "sed failed" + + rm "${S}/docs/manpages"/{mount,umount}.cifs.8 + + sed -i \ + -e 's|tdbsam|tdbsam:${PRIVATEDIR}/passdb.tdb|' \ + "${S}/source/script/tests/selftest.sh" || die "sed failed" + +} + +src_configure() { :; } + +multilib-native_src_compile_internal() { + # fails with that + filter-ldflags -m32 -m64 + + cd "${S}/source" + + local myconf + local mylangs + local mymod_shared + + mylangs="--with-manpages-langs=en" + use linguas_ja && mylangs="${mylangs},ja" + use linguas_pl && mylangs="${mylangs},pl" + + use winbind && mymod_shared="--with-shared-modules=idmap_rid" + if use ldap ; then + myconf="${myconf} $(use_with ads)" + use winbind && mymod_shared="${mymod_shared},idmap_ad" + fi + + [[ ${CHOST} == *-*bsd* ]] && myconf="${myconf} --disable-pie" + use hppa && myconf="${myconf} --disable-pie" + + use caps && export ac_cv_header_sys_capability_h=yes || export ac_cv_header_sys_capability_h=no + + # Otherwise we get the whole swat stuff installed + if ! use swat ; then + sed -i \ + -e 's/^\(install:.*\)installswat \(.*\)/\1\2/' \ + Makefile.in || die "sed failed" + fi + + econf \ + --with-fhs \ + --sysconfdir=/etc/samba \ + --localstatedir=/var \ + --with-configdir=/etc/samba \ + --with-libdir=/usr/$(get_libdir)/samba \ + --with-pammodulesdir=$(getpam_mod_dir) \ + --with-swatdir=/usr/share/doc/${PF}/swat \ + --with-piddir=/var/run/samba \ + --with-lockdir=/var/cache/samba \ + --with-logfilebase=/var/log/samba \ + --with-privatedir=${PRIVATE_DST} \ + --with-libsmbclient \ + --without-spinlocks \ + --enable-socket-wrapper \ + --enable-nss-wrapper \ + --with-cifsmount=no \ + $(use_with acl acl-support) \ + $(use_with async aio-support) \ + $(use_with automount) \ + --without-cifsupcall \ + $(use_enable cups) \ + $(use_enable fam) \ + $(use_with ads krb5) \ + $(use_with ads dnsupdate) \ + $(use_with ldap) \ + $(use_with pam) $(use_with pam pam_smbpass) \ + $(use_with quotas) $(use_with quotas sys-quotas) \ + $(use_with readline) \ + $(use_with syslog) \ + $(use_with winbind) \ + ${myconf} ${mylangs} ${mymod_shared} || die "econf failed" + + emake proto || die "emake proto failed" + emake everything || die "emake everything failed" +} + +src_test() { + cd "${S}/source" + emake test || die "tests failed" +} + +multilib-native_src_install_internal() { + cd "${S}/source" + + emake DESTDIR="${D}" install-everything || die "emake install-everything failed" + + # Extra rpctorture progs + local extra_bins="rpctorture" + for i in ${extra_bins} ; do + [[ -x "${S}/bin/${i}" ]] && dobin "${S}/bin/${i}" + done + + # remove .old stuff from /usr/bin: + rm -f "${D}"/usr/bin/*.old + + # Removing executable bits from header-files + fperms 644 /usr/include/libsmbclient.h + + # Nsswitch extensions. Make link for wins and winbind resolvers + if use winbind ; then + dolib.so nsswitch/libnss_wins.so + dosym libnss_wins.so /usr/$(get_libdir)/libnss_wins.so.2 + dolib.so nsswitch/libnss_winbind.so + dosym libnss_winbind.so /usr/$(get_libdir)/libnss_winbind.so.2 + fi + + # bug #46389: samba doesn't create symlink anymore + # beaviour seems to be changed in 3.0.6, see bug #61046 + dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so + dosym samba/libsmbclient.so.0 /usr/$(get_libdir)/libsmbclient.so.0 + dosym samba/libtalloc.so /usr/$(get_libdir)/libtalloc.so + dosym samba/libtalloc.so.1 /usr/$(get_libdir)/libtalloc.so.1 + dosym samba/libtdb.so /usr/$(get_libdir)/libtdb.so + dosym samba/libtdb.so.1 /usr/$(get_libdir)/libtdb.so.1 + + # make the smb backend symlink for cups printing support (bug #133133) + if use cups ; then + dodir $(cups-config --serverbin)/backend + dosym /usr/bin/smbspool $(cups-config --serverbin)/backend/smb + fi + + cd "${S}/source" + + # General config files + insinto /etc/samba + doins "${CONFDIR}"/{smbusers,lmhosts} + newins "${CONFDIR}/smb.conf.example-samba3" smb.conf.example + + newpamd "${CONFDIR}/samba.pam" samba + use winbind && dopamd "${CONFDIR}/system-auth-winbind" + if use swat ; then + insinto /etc/xinetd.d + newins "${CONFDIR}/swat.xinetd" swat + else + rm -f "${D}/usr/sbin/swat" + rm -f "${D}/usr/share/man/man8/swat.8" + fi + + newinitd "${FILESDIR}/samba-init" samba + newconfd "${FILESDIR}/samba-conf" samba + + if use ldap ; then + insinto /etc/openldap/schema + doins "${S}/examples/LDAP/samba.schema" + fi + + if use ipv6 ; then + insinto /etc/xinetd.d + newins "${FILESDIR}/samba-xinetd" smb + fi + + # dirs + diropts -m0700 ; keepdir "${PRIVATE_DST}" + diropts -m1777 ; keepdir /var/spool/samba + + diropts -m0755 + keepdir /var/{log,run,cache}/samba + keepdir /var/lib/samba/{netlogon,profiles} + keepdir /var/lib/samba/printers/{W32X86,WIN40,W32ALPHA,W32MIPS,W32PPC,X64,IA64,COLOR} + keepdir /usr/$(get_libdir)/samba/{rpc,idmap,auth} + + # docs + dodoc "${FILESDIR}/README.gentoo" + dodoc "${S}"/{MAINTAINERS,README,Roadmap,WHATSNEW.txt} + dodoc "${CONFDIR}/nsswitch.conf-wins" + use winbind && dodoc "${CONFDIR}/nsswitch.conf-winbind" + + if use examples ; then + insinto /usr/share/doc/${PF} + doins -r "${S}/examples/" + find "${D}/usr/share/doc/${PF}" -type d -print0 | xargs -0 chmod 755 + find "${D}/usr/share/doc/${PF}/examples" ! -type d -print0 | xargs -0 chmod 644 + fi + + if ! use doc ; then + if ! use swat ; then + rm -rf "${D}/usr/share/doc/${PF}/swat" + else + rm -rf "${D}/usr/share/doc/${PF}/swat/help"/{guide,howto,devel} + rm -rf "${D}/usr/share/doc/${PF}/swat/using_samba" + fi + fi +} + +pkg_preinst() { + local PRIVATE_SRC=/etc/samba/private + if [[ ! -r "${ROOT}/${PRIVATE_DST}/secrets.tdb" \ + && -r "${ROOT}/${PRIVATE_SRC}/secrets.tdb" ]] ; then + ebegin "Copying ${ROOT}/${PRIVATE_SRC}/* to ${ROOT}/${PRIVATE_DST}/" + mkdir -p "${D}/${PRIVATE_DST}" + cp -pPRf "${ROOT}/${PRIVATE_SRC}"/* "${D}/${PRIVATE_DST}/" + eend $? + fi + + if [[ ! -f "${ROOT}/etc/samba/smb.conf" ]] ; then + touch "${D}/etc/samba/smb.conf" + fi +} + +multilib-native_pkg_postinst_internal() { + if use swat ; then + einfo "swat must be enabled by xinetd:" + einfo " change the /etc/xinetd.d/swat configuration" + fi + + if use ipv6 ; then + einfo "ipv6 support must be enabled by xinetd:" + einfo " change the /etc/xinetd.d/smb configuration" + fi + + elog "It is possible to start/stop daemons separately:" + elog " Create a symlink from /etc/init.d/samba.{smbd,nmbd,winbind} to" + elog " /etc/init.d/samba. Calling /etc/init.d/samba directly will start" + elog " the daemons configured in /etc/conf.d/samba" + + elog "The mount/umount.cifs helper applications are not included anymore." + elog "Please install net-fs/mount-cifs instead." + + ewarn "If you're upgrading from 3.0.24 or earlier, please make sure to" + ewarn "restart your clients to clear any cached information about the server." + ewarn "Otherwise they might not be able to connect to the volumes." +} |