aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authortimur <timur@FreeBSD.org>2011-10-17 06:35:25 +0800
committertimur <timur@FreeBSD.org>2011-10-17 06:35:25 +0800
commit29c62e6d0ab21554c6ffcc6c7a6d0c28a0ff44da (patch)
tree46451f49d36f27a88a46c6aa3e9a997202a50054 /net
parent075088d402c3d859a4892394cee9ca9c2cee2178 (diff)
downloadfreebsd-ports-graphics-29c62e6d0ab21554c6ffcc6c7a6d0c28a0ff44da.tar.gz
freebsd-ports-graphics-29c62e6d0ab21554c6ffcc6c7a6d0c28a0ff44da.tar.zst
freebsd-ports-graphics-29c62e6d0ab21554c6ffcc6c7a6d0c28a0ff44da.zip
Add new version of Samba - 3.6.0.
Most significant improvement is the support of SMB2 protocol.
Diffstat (limited to 'net')
-rw-r--r--net/samba36/Makefile548
-rw-r--r--net/samba36/distinfo2
-rw-r--r--net/samba36/files/README.FreeBSD32
-rw-r--r--net/samba36/files/patch-lib__replace__libreplace_macros.m411
-rw-r--r--net/samba36/files/patch-lib__replace__system__wait.h21
-rw-r--r--net/samba36/files/patch-lib__tevent__tevent_signal.c11
-rw-r--r--net/samba36/files/patch-nsswitch__pam_winbind.c52
-rw-r--r--net/samba36/files/patch-nsswitch__wins_freebsd.c82
-rw-r--r--net/samba36/files/patch-source3__Makefile.in68
-rw-r--r--net/samba36/files/patch-source3__configure.in205
-rw-r--r--net/samba36/files/patch-source3__include__includes.h24
-rw-r--r--net/samba36/files/patch-source3__lib__fault.c164
-rw-r--r--net/samba36/files/patch-source3__lib__system.c19
-rw-r--r--net/samba36/files/patch-source3__m4__aclocal.m4172
-rw-r--r--net/samba36/files/patch-source3__smbd__quotas.c19
-rw-r--r--net/samba36/files/patch-source3__smbd__statvfs.c64
-rw-r--r--net/samba36/files/patch-source3__utils__net_time.c19
-rw-r--r--net/samba36/files/pkg-deinstall.in46
-rw-r--r--net/samba36/files/pkg-install.in44
-rw-r--r--net/samba36/files/pkg-message.in7
-rw-r--r--net/samba36/files/samba.in168
-rw-r--r--net/samba36/files/sernet.patch60
-rw-r--r--net/samba36/files/smb.conf.sample.in306
-rw-r--r--net/samba36/pkg-descr12
-rw-r--r--net/samba36/pkg-plist246
-rw-r--r--net/samba36/pkg-plist.swat337
26 files changed, 2739 insertions, 0 deletions
diff --git a/net/samba36/Makefile b/net/samba36/Makefile
new file mode 100644
index 00000000000..6cbcdeae18d
--- /dev/null
+++ b/net/samba36/Makefile
@@ -0,0 +1,548 @@
+# New ports collection makefile for: samba36
+# Date created: 1 May 2011
+# Whom: timur@FreeBSD.org
+#
+# $FreeBSD$
+#
+
+PORTNAME= ${SAMBA_BASENAME}36
+PORTVERSION= 3.6.0
+PORTREVISION?= 0
+CATEGORIES?= net
+MASTER_SITES= ${MASTER_SITE_SAMBA}
+MASTER_SITE_SUBDIR= . old-versions rc pre
+DISTNAME= ${SAMBA_BASENAME}-${PORTVERSION:S|.p|pre|:S|.r|rc|:S|.t|tp|:S|.a|alpha|}
+
+MAINTAINER?= timur@FreeBSD.org
+COMMENT?= A free SMB and CIFS client and server for UNIX
+
+CONFLICTS?= *samba3[2-5]-3.*
+# Additional patches from Sernet.de
+PATCH_STRIP= -p1
+EXTRA_PATCHES= ${PATCHDIR}/sernet.patch
+
+LICENSE= GPLv3
+LICENSE_FILE= ${WRKDIR}/${DISTNAME}/COPYING
+
+SAMBA_BASENAME= samba
+
+LATEST_LINK= ${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX}
+EXAMPLESDIR= ${PREFIX}/share/examples/${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX}
+PATCH_WRKSRC= ${WRKDIR}/${DISTNAME}
+WRKSRC= ${WRKDIR}/${DISTNAME}/source3
+IPATHS= -I${WRKDIR}/${DISTNAME}/source3/m4 -I${WRKDIR}/${DISTNAME}/m4 -I${WRKDIR}/${DISTNAME}/lib/replace -I${WRKDIR}/${DISTNAME}/source4
+AUTOHEADER_ARGS= ${IPATHS}
+AUTOCONF_ARGS= ${IPATHS}
+
+USE_GMAKE= yes
+USE_ICONV= yes
+GNU_CONFIGURE= yes
+USE_AUTOTOOLS= autoconf autoheader
+USE_LDCONFIG= ${SAMBA_LIBDIR}
+
+# directories
+VARDIR?= /var
+SAMBA_SPOOL?= ${VARDIR}/spool/${SAMBA_BASENAME}
+SAMBA_LOGDIR= ${VARDIR}/log/${SAMBA_BASENAME}
+SAMBA_RUNDIR= ${VARDIR}/run/${SAMBA_BASENAME}
+SAMBA_LOCKDIR?= ${VARDIR}/db/${SAMBA_BASENAME}
+SAMBA_CONFIG?= smb.conf
+SAMBA_CONFDIR?= ${PREFIX}/etc
+RC_DIR= ${PREFIX}/etc/rc.d
+SAMBA_SWATDIR= ${PREFIX}/share/swat
+SAMBA_LIBDIR= ${PREFIX}/lib
+SAMBA_MODULEDIR= ${SAMBA_LIBDIR}/${SAMBA_BASENAME}
+SAMBA_INCLUDEDIR= ${PREFIX}/include/${SAMBA_BASENAME}
+SAMBA_PRIVATEDIR?= ${SAMBA_CONFDIR}/${SAMBA_BASENAME}
+
+CONFIGURE_ARGS+= --exec-prefix="${PREFIX}" \
+ --sysconfdir="${SAMBA_CONFDIR}" \
+ --with-configdir="${SAMBA_CONFDIR}" \
+ --includedir="${SAMBA_INCLUDEDIR}" \
+ --datadir="${DATADIR}" \
+ --with-swatdir="${SAMBA_SWATDIR}" \
+ --libdir="${SAMBA_LIBDIR}" \
+ --with-modulesdir="${SAMBA_MODULEDIR}" \
+ --with-pammodulesdir="${SAMBA_LIBDIR}" \
+ --localstatedir="${VARDIR}" \
+ --with-piddir="${SAMBA_RUNDIR}" \
+ --with-ncalrpcdir="${SAMBA_RUNDIR}/ncalrpc" \
+ --with-lockdir="${SAMBA_LOCKDIR}" \
+ --with-statedir="${SAMBA_LOCKDIR}" \
+ --with-cachedir="${SAMBA_LOCKDIR}" \
+ --with-privatedir="${SAMBA_PRIVATEDIR}" \
+ --with-logfilebase="${SAMBA_LOGDIR}"
+
+CPPFLAGS+= -I${LOCALBASE}/include
+LDFLAGS+= -L${LOCALBASE}/lib
+
+CONFIGURE_ENV+= LDFLAGS="${LDFLAGS}" \
+ PTHREAD_CFLAGS="${PTHREAD_CFLAGS}" \
+ PTHREAD_LDFLAGS="${PTHREAD_LIBS}"
+# pkg-config is used to find talloc
+PKGCONFIGDIR?= ${PREFIX}/libdata/pkgconfig
+PKGCONFIGDIR_REL?= ${PKGCONFIGDIR:S|^${PREFIX}/||}
+
+PKG_CONFIG?= ${LOCALBASE}/bin/pkg-config
+CONFIGURE_ENV+= PKG_CONFIG="${PKG_CONFIG}"
+BUILD_DEPENDS+= ${PKG_CONFIG}:${PORTSDIR}/devel/pkg-config
+# Let process generate meaningful backtrace on a core dump
+LIB_DEPENDS+= execinfo.1:${PORTSDIR}/devel/libexecinfo
+# tdb
+BUILD_DEPENDS+= tdb>=1.2.6:${PORTSDIR}/databases/tdb
+RUN_DEPENDS+= tdb>=1.2.6:${PORTSDIR}/databases/tdb
+CONFIGURE_ARGS+= --without-libtdb --enable-external-libtdb
+# talloc
+BUILD_DEPENDS+= talloc>=2.0.1:${PORTSDIR}/devel/talloc
+RUN_DEPENDS+= talloc>=2.0.1:${PORTSDIR}/devel/talloc
+CONFIGURE_ARGS+= --without-libtalloc --enable-external-libtalloc
+# These options are common for all (sub)ports
+CONFIGURE_ARGS+= --with-libiconv="${LOCALBASE}"
+
+.if !defined(SAMBA_SUBPORT)
+OPTIONS= LDAP "With LDAP support" on \
+ ADS "With Active Directory support" off \
+ CUPS "With CUPS printing support" on \
+ WINBIND "With WinBIND support" on \
+ SWAT "With SWAT WebGUI" off \
+ ACL_SUPPORT "With ACL support" off \
+ AIO_SUPPORT "With Asyncronous IO support" off \
+ FAM_SUPPORT "With File Alteration Monitor" off \
+ SYSLOG "With Syslog support" off \
+ QUOTAS "With Disk quota support" off \
+ UTMP "With UTMP accounting support" off \
+ PAM_SMBPASS "With PAM authentication vs passdb backends" off \
+ DNSUPDATE "With dynamic DNS update(require ADS)" off \
+ AVAHI "With Bonjour service discovery support" off \
+ EXP_MODULES "With experimental modules" off \
+ POPT "With system-wide POPT library" on \
+ IPV6 "With IPv6 support" on \
+ MAX_DEBUG "With maximum debugging" off \
+ SMBTORTURE "With smbtorture" off
+# !SAMBA_SUBPORT
+.endif
+
+.include <bsd.port.options.mk>
+
+# XXX
+.if ${OSVERSION} >= 701000 && ${OSVERSION} < 702000
+IGNORE= databases/tdb crashes on FreeBSD 7.1. Please, consider upgrading to 7.2 or higher
+.endif
+# There are reports that on ARM PIE makes binaries to core dump(#149186)
+.if ${ARCH} == "arm"
+CONFIGURE_ARGS+= --disable-pie
+.endif
+
+.if defined(SAMBA_SUBPORT)
+# Switch off all extra functionality
+CONFIGURE_ARGS+= --disable-cups --disable-fam --without-winbind \
+ --without-syslog --without-quotas --without-utmp \
+ --without-pam --without-pam_smbpass \
+ --without-aio-support
+# Dirty hack to work around usage of OPTIONS in slave ports
+. if exists(${.CURDIR}/Makefile.inc)
+. include "${.CURDIR}/Makefile.inc"
+. endif
+.else
+# Samba server itself
+USE_RC_SUBR= ${SAMBA_BASENAME}
+SUB_FILES= pkg-install pkg-message pkg-deinstall smb.conf.sample
+
+PLIST= ${WRKDIR}/.PLIST
+# We don't (yet) have clustered FS for cluster support
+CONFIGURE_ARGS+= --with-pam --with-readline=/usr \
+ --with-included-iniparser \
+ --with-sendfile-support \
+ --enable-largefile \
+ --without-cluster-support \
+ --without-libsmbclient \
+ --without-libaddns \
+ --without-libnetapi \
+ --without-libsmbsharemodes
+
+# XXX: Temporary hack for RELENG6
+CONFIGURE_ENV+= ac_cv_header_sys_mount_h=yes
+.if !defined(WITH_IPV6)
+CONFIGURE_ENV+= libreplace_cv_HAVE_IPV6=no
+.endif
+
+.if !defined(WITHOUT_LDAP)
+SAMBA_WANT_LDAP= yes
+.endif
+
+.if !defined(WITHOUT_CUPS)
+LIB_DEPENDS+= cups.2:${PORTSDIR}/print/cups-client
+CONFIGURE_ARGS+= --enable-cups --enable-iprint
+SUB_LIST+= CUPS=""
+.else
+CONFIGURE_ARGS+= --disable-cups --disable-iprint
+SUB_LIST+= CUPS="@comment "
+.endif
+
+.if defined(WITH_MAX_DEBUG)
+CPPFLAGS+= -g
+LDFLAGS+= -g
+LIB_DEPENDS+= dmalloc.1:${PORTSDIR}/devel/dmalloc
+CONFIGURE_ARGS+= --enable-debug \
+ --enable-socket-wrapper --enable-nss-wrapper \
+ --enable-developer --enable-krb5developer \
+ --enable-dmalloc --with-profiling-data
+
+CONFIGURE_ARGS+= --with-smbtorture4-path=${WRKDIR}/${DISTNAME}/source4/torture
+.else
+CONFIGURE_ARGS+= --disable-debug \
+ --disable-socket-wrapper --disable-nss-wrapper \
+ --disable-developer --disable-krb5developer \
+ --disable-dmalloc --without-profiling-data
+.endif
+
+.if defined(WITH_SYSLOG)
+CONFIGURE_ARGS+= --with-syslog
+.else
+CONFIGURE_ARGS+= --without-syslog
+.endif
+
+.if defined(WITH_QUOTAS)
+CONFIGURE_ARGS+= --with-quotas
+.else
+CONFIGURE_ARGS+= --without-quotas
+.endif
+
+.if !defined(WITHOUT_UTMP)
+CONFIGURE_ARGS+= --with-utmp
+.else
+CONFIGURE_ARGS+= --without-utmp
+.endif
+
+.if !defined(WITHOUT_WINBIND)
+CONFIGURE_ARGS+= --with-winbind
+PLIST_SUB+= WINBIND=""
+SUB_LIST+= WINBIND=""
+.else
+CONFIGURE_ARGS+= --without-winbind
+PLIST_SUB+= WINBIND="@comment "
+SUB_LIST+= WINBIND="@comment "
+.endif
+
+.if !defined(WITHOUT_SWAT)
+CONFIGURE_ARGS+= --enable-swat
+PLIST_SUB+= SWAT=""
+.else
+CONFIGURE_ARGS+= --disable-swat
+PLIST_SUB+= SWAT="@comment "
+.endif
+# Add some shared modules
+.if defined(WITH_EXP_MODULES)
+. if !defined(WANT_EXP_MODULES) || empty(WANT_EXP_MODULES)
+WANT_EXP_MODULES= idmap_tdb2 idmap_ad idmap_adex idmap_hash idmap_rid \
+ charset_weird
+. if !defined(WITH_MAX_DEBUG)
+WANT_EXP_MODULES+= rpc_echo
+. endif
+WANT_EXP_MODULES+= vfs_cacheprime vfs_catia vfs_commit vfs_dirsort \
+ vfs_readahead vfs_streams_depot vfs_syncops
+. endif
+.endif
+
+.if defined(WITH_FAM_SUPPORT)
+USE_FAM= yes
+WANT_EXP_MODULES+= vfs_notify_fam
+CONFIGURE_ARGS+= --enable-fam
+.else
+CONFIGURE_ARGS+= --disable-fam
+.endif
+
+.if defined(WITH_ACL_SUPPORT)
+CONFIGURE_ARGS+= --with-acl-support
+. if ${OSVERSION} > 800000
+WANT_EXP_MODULES+= vfs_zfsacl
+LIB_DEPENDS+= sunacl.1:${PORTSDIR}/sysutils/libsunacl
+. endif
+.else
+CONFIGURE_ARGS+= --without-acl-support
+.endif
+
+.if defined(WITH_AIO_SUPPORT)
+.if ${OSVERSION} < 700055
+IGNORE= an AIO support requires 7.0-RELEASE or later. Disable AIO support
+.endif
+CONFIGURE_ARGS+= --with-aio-support
+.else
+CONFIGURE_ARGS+= --without-aio-support
+.endif
+
+.if defined(WITH_PAM_SMBPASS)
+CONFIGURE_ARGS+= --with-pam_smbpass
+PLIST_SUB+= SMBPASS=""
+.else
+CONFIGURE_ARGS+= --without-pam_smbpass
+PLIST_SUB+= SMBPASS="@comment "
+.endif
+
+.if defined(WITH_DNSUPDATE)
+. if !defined(WITH_ADS)
+IGNORE= dynamic DNS updates require ADS support. Disable DNSUPDATE support
+. endif
+LIB_DEPENDS+= uuid.1:${PORTSDIR}/misc/e2fsprogs-libuuid
+CONFIGURE_ARGS+= --with-dnsupdate
+.else
+CONFIGURE_ARGS+= --without-dnsupdate
+.endif
+
+.if defined(WITH_AVAHI)
+CPPFLAGS+= `${PKG_CONFIG} --cflags avahi-client`
+DNSSD_LIBS= `${PKG_CONFIG} --libs avahi-client`
+LIB_DEPENDS+= avahi-client.3:${PORTSDIR}/net/avahi-app
+CONFIGURE_ARGS+= --enable-avahi
+.else
+CONFIGURE_ARGS+= --disable-avahi
+.endif
+
+.if !defined(WITHOUT_POPT)
+LIB_DEPENDS+= popt.0:${PORTSDIR}/devel/popt
+CONFIGURE_ARGS+= --without-included-popt
+.else
+CONFIGURE_ARGS+= --with-included-popt
+.endif
+
+#--enable-pthreadpool
+
+.if defined(WITH_SMBTORTURE)
+PLIST_SUB+= SMBTORTURE=""
+.else
+PLIST_SUB+= SMBTORTURE="@comment "
+.endif
+# !SAMBA_SUBPORT
+.endif
+
+###
+### Common part for port and it's subports
+###
+
+.if defined(WITH_ADS)
+SAMBA_WANT_LDAP= yes
+SAMBA_WANT_KRB5= yes
+CONFIGURE_ARGS+= --with-ads
+.else
+CONFIGURE_ARGS+= --without-ads
+.endif
+# Kerberos5 is necessary for ADS
+.if defined(SAMBA_WANT_KRB5)
+.if defined(KRB5_HOME) && exists(${KRB5_HOME}/lib/libgssapi_krb5.so)
+CONFIGURE_ARGS+= --with-krb5="${KRB5_HOME}"
+.elif defined(HEIMDAL_HOME) && exists(${HEIMDAL_HOME}/lib/libgssapi.so)
+CONFIGURE_ARGS+= --with-krb5="${HEIMDAL_HOME}"
+.elif exists(/usr/lib/libkrb5.so) && exists(/usr/bin/krb5-config)
+CONFIGURE_ARGS+= --with-krb5="/usr"
+.else
+LIB_DEPENDS+= krb5:${PORTSDIR}/security/heimdal
+CONFIGURE_ARGS+= --with-krb5="${LOCALBASE}"
+.endif
+.else
+CONFIGURE_ARGS+= --without-krb5
+.endif
+
+.if defined(SAMBA_WANT_LDAP)
+USE_OPENLDAP= yes
+CONFIGURE_ARGS+= --with-ldap
+.else
+CONFIGURE_ARGS+= --without-ldap
+.endif
+
+.if defined(WANT_EXP_MODULES) && !empty(WANT_EXP_MODULES)
+CONFIGURE_ARGS+= --with-shared-modules="${WANT_EXP_MODULES:Q:C/(\\\\ )+/,/g}"
+.endif
+
+.include <bsd.port.pre.mk>
+
+post-patch:
+ @${REINPLACE_CMD} -e 's|%%SAMBA_CONFIG%%|${SAMBA_CONFIG}|g' \
+ ${WRKSRC}/Makefile.in
+###
+### end of common part
+###
+
+.if !defined(SAMBA_SUBPORT)
+# Samba server only
+MAN1= findsmb.1 \
+ ldbadd.1 ldbdel.1 ldbedit.1 ldbmodify.1 ldbrename.1 ldbsearch.1 \
+ log2pcap.1 nmblookup.1 ntlm_auth.1 profiles.1 rpcclient.1 \
+ sharesec.1 smbcacls.1 smbclient.1 smbcontrol.1 smbcquotas.1 \
+ smbget.1 smbstatus.1 smbtar.1 smbtree.1 testparm.1 vfstest.1
+MAN3= ldb.3
+MAN5= lmhosts.5 smb.conf.5 smbgetrc.5 smbpasswd.5
+MAN7= samba.7
+MAN8= eventlogadm.8 net.8 nmbd.8 pdbedit.8 smbd.8 smbpasswd.8 \
+ smbspool.8 idmap_nss.8 idmap_tdb.8 idmap_tdb2.8 \
+ vfs_acl_tdb.8 vfs_acl_xattr.8 \
+ vfs_audit.8 vfs_cap.8 vfs_default_quota.8 vfs_extd_audit.8 \
+ vfs_fake_perms.8 vfs_full_audit.8 vfs_netatalk.8 \
+ vfs_preopen.8 \
+ vfs_readahead.8 vfs_readonly.8 vfs_recycle.8 vfs_shadow_copy.8 \
+ vfs_shadow_copy2.8 vfs_smb_traffic_analyzer.8 \
+ vfs_streams_xattr.8 vfs_xattr_tdb.8
+
+.if !defined(WITHOUT_WINBIND)
+MAN1+= wbinfo.1
+MAN5+= pam_winbind.conf.5
+MAN7+= winbind_krb5_locator.7
+MAN8+= pam_winbind.8 winbindd.8
+.endif
+
+.if !defined(WITHOUT_SWAT)
+MAN8+= swat.8
+.endif
+
+.if defined(WITH_FAM_SUPPORT)
+MAN8+= vfs_notify_fam.8
+.endif
+
+.if defined(SAMBA_WANT_LDAP)
+MAN8+= idmap_ldap.8
+.endif
+
+.if !empty(WANT_EXP_MODULES:Midmap_ad)
+MAN8+= idmap_ad.8
+.endif
+
+.if !empty(WANT_EXP_MODULES:Midmap_adex)
+MAN8+= idmap_adex.8
+.endif
+
+.if !empty(WANT_EXP_MODULES:Midmap_hash)
+MAN8+= idmap_hash.8
+.endif
+
+.if !empty(WANT_EXP_MODULES:Midmap_rid)
+MAN8+= idmap_rid.8
+.endif
+
+.if !empty(WANT_EXP_MODULES:Mvfs_cacheprime)
+MAN8+= vfs_cacheprime.8
+.endif
+
+.if !empty(WANT_EXP_MODULES:Mvfs_catia)
+MAN8+= vfs_catia.8
+.endif
+
+.if !empty(WANT_EXP_MODULES:Mvfs_commit)
+MAN8+= vfs_commit.8
+.endif
+
+.if !empty(WANT_EXP_MODULES:Mvfs_dirsort)
+MAN8+= vfs_dirsort.8
+.endif
+
+.if !empty(WANT_EXP_MODULES:Mvfs_streams_depot)
+MAN8+= vfs_streams_depot.8
+.endif
+
+SAMBA_SUB= SAMBA_LOGDIR="${SAMBA_LOGDIR}" \
+ SAMBA_LOCKDIR="${SAMBA_LOCKDIR}" \
+ SAMBA_CONFDIR="${SAMBA_CONFDIR}" \
+ SAMBA_CONFIG="${SAMBA_CONFIG}" \
+ SAMBA_RUNDIR="${SAMBA_RUNDIR}" \
+ SAMBA_SWATDIR="${SAMBA_SWATDIR}" \
+ SAMBA_SPOOL="${SAMBA_SPOOL}" \
+ SAMBA_PRIVATEDIR="${SAMBA_PRIVATEDIR}" \
+ PKGCONFIGDIR="${PKGCONFIGDIR_REL}"
+
+PLIST_SUB+= ${SAMBA_SUB}
+SUB_LIST+= ${SAMBA_SUB}
+
+ALL_TARGET= all
+.if defined(WITH_SMBTORTURE)
+ALL_TARGET+= smbtorture
+.endif
+
+# What will be installed
+INSTALL_TARGET= installservers installbin installscripts installdat \
+ installmodules installlibs
+
+.if !defined(WITHOUT_SWAT)
+INSTALL_TARGET+=installswat
+.endif
+
+.if defined(OPTIONS)
+pre-fetch:
+ @${ECHO_MSG} "===> -------------------------------------------"
+ @${ECHO_MSG} "===> Run 'make config' to (re)configure the port"
+ @${ECHO_MSG} "===> -------------------------------------------"
+.endif
+
+pre-configure:
+ @${FIND} ${WRKDIR}/${DISTNAME} -type d | ${XARGS} ${CHMOD} u+w,a+rx
+ @${FIND} ${WRKDIR}/${DISTNAME} -type f | ${XARGS} ${CHMOD} u+w,a+r
+
+post-configure:
+# It's in another port
+ @${RM} -f ${WRKDIR}/${DISTNAME}/docs/htmldocs/manpages/libsmbclient.7.html
+ @${RM} -rf ${WRKDIR}/${DISTNAME}/examples/libsmbclient
+
+pre-install:
+ -@${FIND} "${SAMBA_MODULEDIR}" -type f -o -type l 2>/dev/null | ${SORT} | ${SED} -E 's|^${PREFIX}/?||;' > ${WRKDIR}/.PLIST.exclude
+ @${CAT} ${PKGDIR}/pkg-plist > ${PLIST}
+.if !defined(WITHOUT_SWAT)
+ @${CAT} ${PKGDIR}/pkg-plist.swat >> ${PLIST}
+.endif
+
+post-install:
+.for sect in 1 3 5 7 8
+ @${MKDIR} ${MAN${sect}PREFIX}/man/man${sect}
+. for man in ${MAN${sect}}
+ @${INSTALL_MAN} "${WRKDIR}/${DISTNAME}/docs/manpages/${man}" "${MAN${sect}PREFIX}/man/man${sect}"
+. endfor
+.endfor
+# Put examples in place
+ @${MKDIR} "${EXAMPLESDIR}"
+ @${CP} -Rp ${WRKDIR}/${DISTNAME}/examples/* "${EXAMPLESDIR}"
+.if defined(WITH_PAM_SMBPASS)
+ @${MKDIR} "${EXAMPLESDIR}/pam_smbpass"
+ @${CP} -Rp ${WRKSRC}/pam_smbpass/samples/* "${EXAMPLESDIR}/pam_smbpass"
+.endif
+ ${INSTALL_DATA} "${WRKDIR}/smb.conf.sample" "${EXAMPLESDIR}/${SAMBA_CONFIG}.sample"
+ ${INSTALL_SCRIPT} "${WRKSRC}/script/mksmbpasswd.sh" "${PREFIX}/bin/make_smbpasswd"
+# Winbind
+.if !defined(WITHOUT_WINBIND)
+ ${INSTALL_PROGRAM} "${WRKDIR}/${DISTNAME}/nsswitch/nss_winbind.so" "${SAMBA_LIBDIR}/nss_winbind.so.1"
+ ${INSTALL_PROGRAM} "${WRKDIR}/${DISTNAME}/nsswitch/nss_wins.so" "${SAMBA_LIBDIR}/nss_wins.so.1"
+ ${INSTALL_PROGRAM} "${WRKSRC}/bin/pam_winbind.so" "${SAMBA_LIBDIR}"
+.endif
+.if defined(WITH_PAM_SMBPASS)
+ ${INSTALL_PROGRAM} "${WRKSRC}/bin/pam_smbpass.so" "${SAMBA_LIBDIR}"
+.endif
+# smbtorture
+.if defined(WITH_SMBTORTURE)
+ ${INSTALL_PROGRAM} "${WRKSRC}/bin/smbtorture" "${PREFIX}/bin"
+.endif
+# Lib
+ @${FIND} "${SAMBA_MODULEDIR}" -type f -o -type l | ${SED} -E 's|^${PREFIX}/?||;' | ${EGREP} -F -v -f ${WRKDIR}/.PLIST.exclude | ${SORT} >> ${TMPPLIST}
+ @for d in `${FIND} "${SAMBA_MODULEDIR}" -type d | ${SORT} -r`; do \
+ ${ECHO_CMD} "@unexec ${RMDIR} \"$$d\" 2>/dev/null || true" >> ${TMPPLIST}; \
+ done
+# Documentation
+.if !defined(NOPORTDOCS)
+ @${MKDIR} ${DOCSDIR}
+ @${CP} -Rp "${WRKDIR}/${DISTNAME}/docs/registry" "${DOCSDIR}"
+. for f in Samba3-ByExample.pdf Samba3-HOWTO.pdf Samba3-Developers-Guide.pdf
+ @${INSTALL_DATA} "${WRKDIR}/${DISTNAME}/docs/${f}" "${DOCSDIR}"
+. endfor
+. for f in README COPYING MAINTAINERS.txt PFIF.txt Manifest Roadmap \
+ WHATSNEW.txt docs/THANKS docs/history
+ @${INSTALL_DATA} "${WRKDIR}/${DISTNAME}/${f}" "${DOCSDIR}"
+. endfor
+ @${INSTALL_DATA} "${FILESDIR}/README.FreeBSD" "${DOCSDIR}"
+# !NOPORTDOCS
+.endif
+# Run post-install script
+ @${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
+ @${CAT} ${PKGMESSAGE}
+
+.if defined(WITH_MAX_DEBUG)
+test:
+ (cd ${WRKSRC} && ${GMAKE} test_nss_modules test_pam_modules && ${GMAKE} test)
+.endif
+# !SAMBA_SUBPORT
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/net/samba36/distinfo b/net/samba36/distinfo
new file mode 100644
index 00000000000..09dc2232432
--- /dev/null
+++ b/net/samba36/distinfo
@@ -0,0 +1,2 @@
+SHA256 (samba-3.6.0.tar.gz) = e1c14569e4785758838e77852bc1e958c15405146cface568c25c5726802f53f
+SIZE (samba-3.6.0.tar.gz) = 28990069
diff --git a/net/samba36/files/README.FreeBSD b/net/samba36/files/README.FreeBSD
new file mode 100644
index 00000000000..6070b61c81b
--- /dev/null
+++ b/net/samba36/files/README.FreeBSD
@@ -0,0 +1,32 @@
+If you want to run this port:
+
+1. Copy /usr/local/etc/smb.conf.default to /usr/local/etc/smb.conf and edit
+ it.
+2. Put string 'samba_enable="YES"' into your /etc/rc.conf.
+3. Run '/usr/local/etc/rc.d/samba start' or reboot.
+
+This port doesn't create 'smbpasswd' file automatically anymore. Users
+are encouraged to use 'tdbsam' backend instead:
+
+ [global]
+ passdb backend = tdbsam, smbpasswd
+
+You can use pdbedit to migrate accounts from 'smbpasswd' to 'tdbsam',
+see the Samba3-HOWTO-Collection.
+
+You still can create 'smbpasswd' file with the supplied 'make_smbpasswd'
+script:
+
+ cat /etc/passwd | grep -v "^#" | make_smbpasswd > smbpasswd
+ chmod 600 smbpasswd
+
+But the usage of it is deprecated.
+
+See document files in /usr/local/share/doc/samba and example config files in
+/usr/local/share/examples/samba for details.
+
+This port doesn't come anymore with the IDEALX Samba LDAP management tools.
+They are a separate port now, net/smbldap-tools. Please, install it, if you
+are going to use Samba LDAP back end.
+
+FreeBSD Samba3 port maintainer: Timur I. Bakeyev <timur@FreeBSD.org>
diff --git a/net/samba36/files/patch-lib__replace__libreplace_macros.m4 b/net/samba36/files/patch-lib__replace__libreplace_macros.m4
new file mode 100644
index 00000000000..6cfd58e5ca2
--- /dev/null
+++ b/net/samba36/files/patch-lib__replace__libreplace_macros.m4
@@ -0,0 +1,11 @@
+--- ./lib/replace/libreplace_macros.m4.orig 2011-10-12 01:38:14.000000000 +0200
++++ ./lib/replace/libreplace_macros.m4 2011-10-12 01:39:36.000000000 +0200
+@@ -298,7 +298,7 @@
+ eval AS_TR_SH([ac_cv_c_prototype_$1])=no
+ ])
+ )
+-AS_IF([test $AS_TR_SH([ac_cv_c_prototype_$1]) = yes],[$3],[$4])
++AS_IF([eval test \$AS_TR_SH([ac_cv_c_prototype_$1]) = yes],[$3],[$4])
+ ])
+
+ AC_DEFUN(LIBREPLACE_PROVIDE_HEADER,
diff --git a/net/samba36/files/patch-lib__replace__system__wait.h b/net/samba36/files/patch-lib__replace__system__wait.h
new file mode 100644
index 00000000000..3cfa995371b
--- /dev/null
+++ b/net/samba36/files/patch-lib__replace__system__wait.h
@@ -0,0 +1,21 @@
+--- ./lib/replace/system/wait.h.orig 2010-04-01 15:26:22.000000000 +0200
++++ ./lib/replace/system/wait.h 2010-04-23 01:08:35.000000000 +0200
+@@ -32,6 +32,18 @@
+
+ #include <signal.h>
+
++#ifndef SIGRTMIN
++# ifdef NSIG
++# define SIGRTMIN (NSIG+1)
++# else
++# define SIGRTMIN 33
++# endif
++#endif
++
++#ifndef SIGRTMAX
++#define SIGRTMAX (SIGRTMIN+64)
++#endif
++
+ #ifndef SIGCLD
+ #define SIGCLD SIGCHLD
+ #endif
diff --git a/net/samba36/files/patch-lib__tevent__tevent_signal.c b/net/samba36/files/patch-lib__tevent__tevent_signal.c
new file mode 100644
index 00000000000..8d591533983
--- /dev/null
+++ b/net/samba36/files/patch-lib__tevent__tevent_signal.c
@@ -0,0 +1,11 @@
+--- ./lib/tevent/tevent_signal.c.orig 2010-04-01 15:26:22.000000000 +0200
++++ ./lib/tevent/tevent_signal.c 2010-04-23 01:08:35.000000000 +0200
+@@ -30,7 +30,7 @@
+ #include "tevent_internal.h"
+ #include "tevent_util.h"
+
+-#define TEVENT_NUM_SIGNALS 64
++#define TEVENT_NUM_SIGNALS SIGRTMAX
+
+ /* maximum number of SA_SIGINFO signals to hold in the queue.
+ NB. This *MUST* be a power of 2, in order for the ring buffer
diff --git a/net/samba36/files/patch-nsswitch__pam_winbind.c b/net/samba36/files/patch-nsswitch__pam_winbind.c
new file mode 100644
index 00000000000..9c32da334bd
--- /dev/null
+++ b/net/samba36/files/patch-nsswitch__pam_winbind.c
@@ -0,0 +1,52 @@
+--- ./nsswitch/pam_winbind.c.orig 2011-08-09 13:17:47.000000000 +0200
++++ ./nsswitch/pam_winbind.c 2011-09-06 23:23:18.000000000 +0200
+@@ -163,7 +163,6 @@
+ }
+ #endif
+
+-
+ /*
+ * Work around the pam API that has functions with void ** as parameters
+ * These lead to strict aliasing warnings with gcc.
+@@ -173,14 +172,20 @@
+ const void *_item)
+ {
+ const void **item = (const void **)_item;
+- return pam_get_item(pamh, item_type, item);
++ return pam_get_item((pam_handle_t *)pamh, item_type, item);
+ }
++
+ static int _pam_get_data(const pam_handle_t *pamh,
+ const char *module_data_name,
+ const void *_data)
+ {
++#if PAM_GET_DATA_ARG3_CONST_VOID_PP
+ const void **data = (const void **)_data;
+- return pam_get_data(pamh, module_data_name, data);
++ return pam_get_data((pam_handle_t *)pamh, module_data_name, data);
++#else
++ void **data = (void **)_data;
++ return pam_get_data((pam_handle_t *)pamh, module_data_name, data);
++#endif
+ }
+
+ /* some syslogging */
+@@ -311,7 +316,7 @@
+ if (item_type != 0) {
+ pam_get_item(ctx->pamh, item_type, &data);
+ } else {
+- pam_get_data(ctx->pamh, key, &data);
++ _pam_get_data(ctx->pamh, key, &data);
+ }
+ if (data != NULL) {
+ const char *type = (item_type != 0) ? "ITEM" : "DATA";
+@@ -2835,8 +2840,7 @@
+ ret = PAM_USER_UNKNOWN;
+ goto out;
+ case 0:
+- pam_get_data(pamh, PAM_WINBIND_NEW_AUTHTOK_REQD,
+- (const void **)&tmp);
++ _pam_get_data(pamh, PAM_WINBIND_NEW_AUTHTOK_REQD, &tmp);
+ if (tmp != NULL) {
+ ret = atoi((const char *)tmp);
+ switch (ret) {
diff --git a/net/samba36/files/patch-nsswitch__wins_freebsd.c b/net/samba36/files/patch-nsswitch__wins_freebsd.c
new file mode 100644
index 00000000000..b526acc5373
--- /dev/null
+++ b/net/samba36/files/patch-nsswitch__wins_freebsd.c
@@ -0,0 +1,82 @@
+--- ./nsswitch/wins_freebsd.c.orig 2010-04-23 01:08:35.000000000 +0200
++++ ./nsswitch/wins_freebsd.c 2010-04-23 01:08:35.000000000 +0200
+@@ -0,0 +1,79 @@
++/*
++ Unix SMB/CIFS implementation.
++
++ Copyright (C) Timur I. Bakeyev 2007
++
++ This library is free software; you can redistribute it and/or
++ modify it under the terms of the GNU Library General Public
++ License as published by the Free Software Foundation; either
++ version 2 of the License, or (at your option) any later version.
++
++ This library is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ Library General Public License for more details.
++
++ You should have received a copy of the GNU Library General Public
++ License along with this library; if not, write to the
++ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
++ Boston, MA 02111-1307, USA.
++*/
++
++#include "winbind_client.h"
++
++NSS_STATUS _nss_wins_gethostbyname2_r(const char *name, int af, struct hostent *he,
++ char *buffer, size_t buflen, int *h_errnop);
++
++NSS_METHOD_PROTOTYPE(__nss_wins_freebsd_gethostbyname2_r);
++
++static ns_mtab methods[] =
++{
++ { NSDB_HOSTS, "getaddrinfo", NULL, NULL },
++ { NSDB_HOSTS, "ghbyname", NULL, NULL },
++ { NSDB_HOSTS, "ghbyaddr", NULL, NULL },
++ { NSDB_HOSTS, "gethostbyaddr_r", NULL, NULL },
++ { NSDB_HOSTS, "gethostbyname2_r", __nss_wins_freebsd_gethostbyname2_r, _nss_wins_gethostbyname2_r },
++ { NSDB_HOSTS, "getnetbyname_r", NULL, NULL },
++ { NSDB_HOSTS, "getnetbyaddr_r", NULL, NULL },
++ { NSDB_HOSTS, "gethostbyname", NULL, NULL },
++ { NSDB_HOSTS, "gethostbyaddr", NULL, NULL },
++ { NSDB_HOSTS, "getnetbyname", NULL, NULL },
++ { NSDB_HOSTS, "getnetbyaddr", NULL, NULL }
++};
++
++int
++__nss_wins_freebsd_gethostbyname2_r(void *retval, void *mdata, va_list ap)
++{
++ int (*fn)(const char *, int, struct hostent *, char *, size_t, int *);
++ const char *hostname;
++ int af;
++ struct hostent *he;
++ char *buffer;
++ size_t buflen;
++ int *h_errnop;
++ enum nss_status status;
++
++ fn = mdata;
++ hostname = va_arg(ap, const char *);
++ af = va_arg(ap, int);
++ he = va_arg(ap, struct hostent *);
++ buffer = va_arg(ap, char *);
++ buflen = va_arg(ap, size_t);
++ h_errnop = va_arg(ap, int *);
++
++ status = fn(hostname, af, he, buffer, buflen, h_errnop);
++ status = __nss_compat_result(status, *h_errnop);
++ if (status == NS_SUCCESS)
++ *(struct hostent **)retval = he;
++
++ return (status);
++}
++
++ns_mtab *
++nss_module_register(const char *source __unused, unsigned int *mtabsize,
++ nss_module_unregister_fn *unreg)
++{
++ *mtabsize = sizeof(methods) / sizeof(methods[0]);
++ *unreg = NULL;
++ return (methods);
++}
diff --git a/net/samba36/files/patch-source3__Makefile.in b/net/samba36/files/patch-source3__Makefile.in
new file mode 100644
index 00000000000..85dfb9829ab
--- /dev/null
+++ b/net/samba36/files/patch-source3__Makefile.in
@@ -0,0 +1,68 @@
+--- ./source3/Makefile.in.orig 2011-08-09 13:17:47.000000000 +0200
++++ ./source3/Makefile.in 2011-09-06 23:35:41.000000000 +0200
+@@ -149,7 +149,7 @@
+ # These can be overridden by command line switches (see smbd(8))
+ # or in smb.conf (see smb.conf(5))
+ LOGFILEBASE = @logfilebase@
+-CONFIGFILE = $(CONFIGDIR)/smb.conf
++CONFIGFILE = $(CONFIGDIR)/%%SAMBA_CONFIG%%
+ LMHOSTSFILE = $(CONFIGDIR)/lmhosts
+ NCALRPCDIR = @ncalrpcdir@
+
+@@ -1302,8 +1302,8 @@
+ $(LIB_NONSMBD_OBJ) $(KRBCLIENT_OBJ) \
+ $(LIBNDR_GEN_OBJ0)
+
+-WINBIND_WINS_NSS_OBJ = ../nsswitch/wins.o $(PARAM_OBJ) \
+- $(LIB_NONSMBD_OBJ) $(LIBSMB_ERR_OBJ) $(LIBNMB_OBJ)
++WINBIND_WINS_NSS_OBJ = ../nsswitch/wins.o @WINBIND_WINS_NSS_EXTRA_OBJS@ \
++ $(PARAM_OBJ) $(LIB_NONSMBD_OBJ) $(LIBSMB_ERR_OBJ) $(LIBNMB_OBJ)
+
+ PAM_SMBPASS_OBJ_0 = pam_smbpass/pam_smb_auth.o pam_smbpass/pam_smb_passwd.o \
+ pam_smbpass/pam_smb_acct.o pam_smbpass/support.o ../lib/util/asn1.o
+@@ -1620,6 +1620,7 @@
+
+ .SUFFIXES:
+ .SUFFIXES: .c .o .lo
++.SUFFIXES: .h .h.gch
+
+ .PHONY: showflags SHOWFLAGS
+
+@@ -1681,6 +1682,9 @@
+ $(COMPILE_CC) >/dev/null 2>&1
+ @BROKEN_CC@ -mv `echo $@ | sed 's%^.*/%%g'` $@
+
++.h.h.gch:
++ @echo Compiling $*.h
++
+ PRECOMPILED_HEADER = $(builddir)/include/includes.h.gch
+
+ # this adds support for precompiled headers. To use it, install a snapshot
+@@ -2762,14 +2766,15 @@
+ $(LDAP_LIBS) $(KRB5LIBS) $(LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(ZLIB_LIBS) \
+ @SONAMEFLAG@`basename $@`@NSSSONAMEVERSIONSUFFIX@
+
+-bin/winbind_krb5_locator.@SHLIBEXT@: $(BINARY_PREREQS) $(WINBIND_KRB5_LOCATOR_OBJ) $(LIBWBCLIENT)
++bin/winbind_krb5_locator.@SHLIBEXT@: $(BINARY_PREREQS) $(WINBIND_KRB5_LOCATOR_OBJ) $(LIBTALLOC) $(LIBWBCLIENT)
+ @echo "Linking $@"
+- @$(SHLD) $(LDSHFLAGS) -o $@ $(WINBIND_KRB5_LOCATOR_OBJ) $(LIBWBCLIENT_LIBS) $(KRB5LIBS) \
++ @$(SHLD) $(LDSHFLAGS) -o $@ $(WINBIND_KRB5_LOCATOR_OBJ) $(LIBTALLOC_LIBS) $(LIBWBCLIENT_LIBS) $(KRB5LIBS) \
+ @SONAMEFLAG@`basename $@`
+
+ bin/pam_winbind.@SHLIBEXT@: $(BINARY_PREREQS) $(PAM_WINBIND_OBJ) $(LIBTALLOC) $(LIBWBCLIENT)
+ @echo "Linking shared library $@"
+ @$(SHLD) $(LDSHFLAGS) -o $@ $(PAM_WINBIND_OBJ) -lpam @INIPARSERLIBS@ \
++ $(LIBS) $(LDAP_LIBS) $(KRB5LIBS) $(NSCD_LIBS) \
+ $(LIBREPLACE_LIBS) $(LIBTALLOC_LIBS) $(LIBWBCLIENT_LIBS) @SONAMEFLAG@`basename $@`
+
+ ##########
+@@ -3117,7 +3122,8 @@
+ @echo "Linking shared library $@"
+ @$(SHLD) $(LDSHFLAGS) -o $@ $(PAM_SMBPASS_OBJ) $(LIBCLI_LDAP_NDR_OBJ) -lpam $(DYNEXP) \
+ $(LIBS) $(LDAP_LIBS) $(NSCD_LIBS) \
+- $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS)
++ $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) \
++ @SONAMEFLAG@`basename $@`
+
+ bin/tdbbackup@EXEEXT@: $(BINARY_PREREQS) $(TDBBACKUP_OBJ) $(LIBTALLOC) $(LIBTDB)
+ @echo Linking $@
diff --git a/net/samba36/files/patch-source3__configure.in b/net/samba36/files/patch-source3__configure.in
new file mode 100644
index 00000000000..cb309b9ef24
--- /dev/null
+++ b/net/samba36/files/patch-source3__configure.in
@@ -0,0 +1,205 @@
+--- ./source3/configure.in.orig 2011-08-09 13:17:47.000000000 +0200
++++ ./source3/configure.in 2011-10-13 23:29:28.000000000 +0200
+@@ -831,9 +831,13 @@
+ AC_PATH_PROG(CUPS_CONFIG, cups-config)
+
+ if test "x$CUPS_CONFIG" != x; then
++ ac_save_PRINT_CPPFLAGS=$CPPFLAGS
++ ac_save_PRINT_LDFLAGS=$LDFLAGS
+
+- ac_save_LDFLAGS=$LDFLAGS
+ ac_save_PRINT_LIBS=$PRINT_LIBS
++ CPPFLAGS="$CPPFLAGS `$CUPS_CONFIG --cflags`"
++ LDFLAGS="$LDFLAGS `$CUPS_CONFIG --ldflags`"
++
+ AC_CHECK_HEADERS(cups/cups.h cups/language.h)
+
+ if test x"$ac_cv_header_cups_cups_h" = xyes -a \
+@@ -842,7 +846,7 @@
+ # underlinked. With cups-config --libs we pull in unwanted and unneeded
+ # dendencies including thread libraries - use cups-config only if really
+ # required.
+- AC_CHECK_LIB_EXT(cups, ac_save_PRINT_LIBS , httpConnect,
++ AC_CHECK_LIB_EXT(cups, ac_save_PRINT_LIBS, httpConnect,
+ [PRINT_LIBS="$ac_save_PRINT_LIBS -lcups"],
+ [AC_MSG_WARN([your cups library doesn't link with -lcups alone, it might be underlinked.]) ;
+ PRINT_LIBS="$ac_save_PRINT_LIBS `$CUPS_CONFIG --libs`"])
+@@ -852,10 +856,10 @@
+ AC_CHECK_LIB_EXT(cups, PRINT_LIBS, httpConnectEncrypt)
+ else
+ AC_MSG_WARN([cups-config around but cups-devel not installed])
+- CFLAGS=$ac_save_CFLAGS
+- LDFLAGS=$ac_save_LDFLAGS
+ PRINT_LIBS=$ac_save_PRINT_LIBS
+ fi
++ CPPFLAGS=$ac_save_PRINT_CPPFLAGS
++ LDFLAGS=$ac_save_PRINT_LDFLAGS
+
+ elif test x"$enable_cups" = x"yes"; then
+ AC_MSG_ERROR(Cups support required but cups-config not located. Make sure cups-devel related files are installed.)
+@@ -1943,9 +1947,6 @@
+ AC_MSG_CHECKING([PICFLAG])
+ AC_MSG_RESULT([$PICFLAG])
+
+-AC_MSG_CHECKING([NSSSONAMEVERSIONSUFFIX])
+-AC_MSG_RESULT([$NSSSONAMEVERSIONSUFFIX])
+-
+ AC_CACHE_CHECK([whether building shared libraries actually works],
+ [ac_cv_shlib_works],[
+ # try building a trivial shared library
+@@ -4601,15 +4602,51 @@
+ x"$ac_cv_header_pam_pam_modules_h" = x"no" ; then
+ if test x"${try_pam}" = x"yes";then
+ AC_MSG_ERROR([--with-pam=yes but pam_modules.h not found])
+- fi
++ fi
+ create_pam_modules=no
+- fi
++ fi
+
+ if test x"$use_pam" = x"yes"; then
+- AC_DEFINE(WITH_PAM,1,[Whether to include PAM support])
++ AC_DEFINE(WITH_PAM,1,[Whether to include PAM support])
+ AC_DEFINE(HAVE_LIBPAM,1,[Whether libpam is available])
+ AUTH_LIBS="$AUTH_LIBS $PAM_LIBS"
+- with_pam_for_crypt=yes
++ with_pam_for_crypt=yes
++
++ AC_VERIFY_C_PROTOTYPE(
++ [int pam_get_data(const pam_handle_t *pamh, const char *module_data_name, const void **data)],
++ [return 0;],
++ [AC_DEFINE(PAM_GET_DATA_ARG3_CONST_VOID_PP, 1, [Whether pam_get_data 3 argument is a const pointer to pointer])],
++ [
++ dnl Old OpenPAM declaration
++ AC_VERIFY_C_PROTOTYPE(
++ [int pam_get_data(pam_handle_t *pamh, const char *module_data_name, void **data)],
++ [return 0;],
++ [AC_DEFINE(PAM_GET_DATA_ARG3_VOID_PP, 1, [Whether pam_get_data 3 argument is a void pointer to pointer])],
++ [], [
++ #include <sys/types.h>
++ #if HAVE_SECURITY_PAM_APPL_H
++ #include <security/pam_appl.h>
++ #endif
++ #if HAVE_PAM_PAM_APPL_H
++ #include <pam/pam_appl.h>
++ #endif
++ #if HAVE_SECURITY_PAM_MODULES_H
++ #include <security/pam_modules.h>
++ #endif
++ ]
++ )],[
++ #include <sys/types.h>
++ #if HAVE_SECURITY_PAM_APPL_H
++ #include <security/pam_appl.h>
++ #endif
++ #if HAVE_PAM_PAM_APPL_H
++ #include <pam/pam_appl.h>
++ #endif
++ #if HAVE_SECURITY_PAM_MODULES_H
++ #include <security/pam_modules.h>
++ #endif
++ ]
++ )
+
+ if test x"$create_pam_modules" = x"yes"; then
+ AC_DEFINE(WITH_PAM_MODULES,1,[Whether to include PAM MODULES support])
+@@ -4619,7 +4656,7 @@
+ AC_CHECK_HEADERS(pam/pam_ext.h pam/_pam_macros.h)
+ AC_CHECK_FUNC_EXT(pam_vsyslog,$PAM_LIBS)
+ else
+- AC_MSG_WARN([PAM support detected but PAM MODULES support is missing])
++ AC_MSG_WARN([PAM support detected but PAM MODULES support is missing])
+ fi
+ fi
+ AC_MSG_CHECKING(whether to use PAM support)
+@@ -5821,9 +5858,17 @@
+ [AC_MSG_RESULT(no)])
+
+ AC_MSG_CHECKING(for aio_suspend)
+- AC_LINK_IFELSE([#include <aio.h>
+-int main() { struct aiocb a; return aio_suspend(&a, 1, NULL); }],
+-[AC_DEFINE(HAVE_AIO_SUSPEND, 1, [Have aio_suspend]) AC_MSG_RESULT(yes)],
++ AC_LINK_IFELSE([
++ #include <aio.h>
++ #if STDC_HEADERS
++ #include <stdlib.h>
++ #include <stddef.h>
++ #endif
++ int main() {
++ struct aiocb *a[1];
++ return aio_suspend((const struct aiocb**)&a, 1, NULL);
++ }
++ ], [AC_DEFINE(HAVE_AIO_SUSPEND, 1, [Have aio_suspend]) AC_MSG_RESULT(yes)],
+ [AC_MSG_RESULT(no)])
+ fi
+
+@@ -6276,12 +6321,13 @@
+ NSSSONAMEVERSIONSUFFIX=".2"
+ WINBIND_NSS_EXTRA_OBJS="../nsswitch/winbind_nss_linux.o"
+ ;;
+- *freebsd[[5-9]]*)
++ *freebsd*)
+ # FreeBSD winbind client is implemented as a wrapper around
+ # the Linux version.
+ NSSSONAMEVERSIONSUFFIX=".1"
+ WINBIND_NSS_EXTRA_OBJS="../nsswitch/winbind_nss_freebsd.o \
+ ../nsswitch/winbind_nss_linux.o"
++ WINBIND_WINS_NSS_EXTRA_OBJS="../nsswitch/wins_freebsd.o"
+ WINBIND_NSS="../nsswitch/nss_winbind.$SHLIBEXT"
+ WINBIND_WINS_NSS="../nsswitch/nss_wins.$SHLIBEXT"
+ ;;
+@@ -6426,10 +6474,14 @@
+ AC_MSG_RESULT(no$winbind_no_reason)
+ fi
+
++AC_MSG_CHECKING([NSSSONAMEVERSIONSUFFIX])
++AC_MSG_RESULT([$NSSSONAMEVERSIONSUFFIX])
++
+ AC_SUBST(WINBIND_NSS)
+ AC_SUBST(WINBIND_WINS_NSS)
+ AC_SUBST(WINBIND_NSS_LDSHFLAGS)
+ AC_SUBST(WINBIND_NSS_EXTRA_OBJS)
++AC_SUBST(WINBIND_WINS_NSS_EXTRA_OBJS)
+ AC_SUBST(NSSSONAMEVERSIONSUFFIX)
+
+ AC_SUBST(WINBIND_KRB5_LOCATOR)
+@@ -6745,13 +6797,21 @@
+ # Start
+ AC_CHECK_FUNC(getmntent)
+
+-AC_CHECK_HEADERS(sys/statfs.h)
++AC_CHECK_HEADERS(sys/statfs.h sys/mount.h)
+
+ AC_MSG_CHECKING([vfs_fileid: checking for statfs() and struct statfs.f_fsid)])
+ AC_CACHE_VAL(vfsfileid_cv_statfs,[
+ AC_TRY_RUN([
+ #include <sys/types.h>
++ #ifdef HAVE_SYS_PARAM_H
++ #include <sys/param.h>
++ #endif
++ #ifdef HAVE_SYS_MOUNT_H
++ #include <sys/mount.h>
++ #endif
++ #ifdef HAVE_SYS_STATFS_H
+ #include <sys/statfs.h>
++ #endif
+ int main(void)
+ {
+ struct statfs fsd;
+@@ -7050,6 +7110,16 @@
+ LIBS="$LIBS -ldmalloc"
+ fi
+
++AC_ARG_ENABLE(dmalloc, [AS_HELP_STRING([--enable-dmalloc], [Enable heap debugging [default=no]])])
++
++if test "x$enable_dmalloc" = xyes
++then
++ AC_DEFINE(ENABLE_DMALLOC, 1, [Define to turn on dmalloc debugging])
++ AC_DEFINE(DMALLOC_FUNC_CHECK, 1,
++ [Define to check invariants around some common functions])
++ LIBS="$LIBS -ldmalloc"
++fi
++
+ dnl Remove -L/usr/lib/? from LDFLAGS and LIBS
+ LIB_REMOVE_USR_LIB(LDFLAGS)
+ LIB_REMOVE_USR_LIB(LIBS)
diff --git a/net/samba36/files/patch-source3__include__includes.h b/net/samba36/files/patch-source3__include__includes.h
new file mode 100644
index 00000000000..2f6978cafb5
--- /dev/null
+++ b/net/samba36/files/patch-source3__include__includes.h
@@ -0,0 +1,24 @@
+--- ./source3/include/includes.h.orig 2011-08-09 13:17:47.000000000 +0200
++++ ./source3/include/includes.h 2011-10-04 00:34:33.000000000 +0200
+@@ -161,6 +161,10 @@
+ #include <sys/uio.h>
+ #endif
+
++#ifdef HAVE_SYS_SYSCTL_H
++#include <sys/sysctl.h>
++#endif
++
+ #if HAVE_LANGINFO_H
+ #include <langinfo.h>
+ #endif
+@@ -548,10 +552,6 @@
+ #define SIGCLD SIGCHLD
+ #endif
+
+-#ifndef SIGRTMIN
+-#define SIGRTMIN NSIG
+-#endif
+-
+ #if defined(HAVE_PUTPRPWNAM) && defined(AUTH_CLEARTEXT_SEG_CHARS)
+ #define OSF1_ENH_SEC 1
+ #endif
diff --git a/net/samba36/files/patch-source3__lib__fault.c b/net/samba36/files/patch-source3__lib__fault.c
new file mode 100644
index 00000000000..07b573deedc
--- /dev/null
+++ b/net/samba36/files/patch-source3__lib__fault.c
@@ -0,0 +1,164 @@
+--- ./source3/lib/fault.c.orig 2010-04-01 15:26:22.000000000 +0200
++++ ./source3/lib/fault.c 2010-04-23 01:08:35.000000000 +0200
+@@ -25,6 +25,10 @@
+ #endif
+
+
++#ifdef HAVE_SYS_SYSCTL_H
++#include <sys/sysctl.h>
++#endif
++
+ #ifdef HAVE_SYS_PRCTL_H
+ #include <sys/prctl.h>
+ #endif
+@@ -143,52 +147,93 @@
+ * before dump_core() calls abort.
+ */
+ #if (defined(FREEBSD) && defined(HAVE_SYSCTLBYNAME))
+-static char *get_freebsd_corepath(void)
++/*
++ * Expand the name described in corefilename, using name, uid, and pid.
++ * corefilename is a printf-like string, with three format specifiers:
++ * %N name of process ("name")
++ * %P process id (pid)
++ * %U user id (uid)
++ * For example, "%N.core" is the default; they can be disabled completely
++ * by using "/dev/null", or all core files can be stored in "/cores/%U/%N-%P".
++ */
++static char *get_freebsd_corepath(const char *name)
+ {
+- char *tmp_corepath = NULL;
+- char *end = NULL;
+- size_t len = 128;
++ TALLOC_CTX *tmp_ctx;
++ char format[MAXPATHLEN];
++ char *freebsd_corepath = NULL, *buffer = NULL;
++ char *start, *end;
++ size_t len;
+ int ret;
+
+- /* Loop with increasing sizes so we don't allocate too much. */
+- do {
+- if (len > 1024) {
+- goto err_out;
+- }
+-
+- tmp_corepath = (char *)talloc_realloc(NULL, tmp_corepath,
+- char, len);
+- if (!tmp_corepath) {
+- return NULL;
+- }
+-
+- ret = sysctlbyname("kern.corefile", tmp_corepath, &len, NULL,
+- 0);
+- if (ret == -1) {
+- if (errno != ENOMEM) {
+- DEBUG(0, ("sysctlbyname failed getting "
+- "kern.corefile %s\n",
+- strerror(errno)));
+- goto err_out;
+- }
+-
+- /* Not a large enough array, try a bigger one. */
+- len = len << 1;
+- }
+- } while (ret == -1);
+-
++ len = sizeof(format);
++ /* Read format string */
++ if((ret = sysctlbyname("kern.corefile", format, &len, NULL, 0)) == -1) {
++ return NULL;
++ }
+ /* Strip off the common filename expansion */
+- if ((end = strrchr_m(tmp_corepath, '/'))) {
++ if ((end=strrchr_m(format, '/')) != NULL) {
+ *end = '\0';
+ }
++ /* Core file is relative to the cwd */
++ if(!format[0] || format[0] != '/') {
++ return NULL;
++ }
+
+- return tmp_corepath;
+-
+- err_out:
+- if (tmp_corepath) {
+- talloc_free(tmp_corepath);
++ if((tmp_ctx = talloc_new(NULL)) == NULL) {
++ DEBUG(0, ("talloc_new failed\n"));
++ return NULL;
+ }
+- return NULL;
++ if((buffer = talloc_strdup(tmp_ctx, "")) == NULL) {
++ DEBUG(0, ("talloc_strdup: Out of memory!\n"));
++ goto failed;
++ }
++ /* Parse format string and expand variables */
++ start = format;
++ while((end=strchr_m(start, '%')) != NULL) {
++ /* Copy part of the string without format arguments */
++ if(end != start) {
++ buffer = talloc_strndup_append_buffer(buffer, start, end - start);
++ if(buffer == NULL) {
++ DEBUG(0, ("talloc_strdup: Out of memory!\n"));
++ goto failed;
++ }
++ }
++ start = end + 1;
++ switch (*start) {
++ case '%':
++ buffer = talloc_strdup_append_buffer(buffer, "%%");
++ break;
++ case 'N': /* process name */
++ buffer = talloc_asprintf_append_buffer(buffer, "%s", name);
++ break;
++ case 'P': /* process id */
++ buffer = talloc_asprintf_append_buffer(buffer, "%u", getpid());
++ break;
++ case 'U': /* user id */
++ buffer = talloc_asprintf_append_buffer(buffer, "%u", getuid());
++ break;
++ default:
++ DEBUG(0,(
++ "Unknown format character %c in "
++ "corename `%s'\n", *start, format));
++ }
++ if(buffer == NULL) {
++ DEBUG(0, ("talloc_asprintf_append_buffer: Out of memory!\n"));
++ goto failed;
++ }
++ start++;
++ }
++ /* Copy remaining part, if any */
++ if((buffer = talloc_strdup_append_buffer(buffer, start)) == NULL) {
++ DEBUG(0, ("talloc_strdup_append_buffer: Out of memory!\n"));
++ goto failed;
++ }
++ /* Duplicate assembled string in the unattached contenxt */
++ freebsd_corepath = talloc_strdup(NULL, buffer);
++failed:
++ TALLOC_FREE(tmp_ctx);
++
++ return freebsd_corepath;
+ }
+ #endif
+
+@@ -204,8 +249,7 @@
+ /* @todo: Add support for the linux corepath. */
+
+ char *tmp_corepath = NULL;
+- tmp_corepath = get_freebsd_corepath();
+-
++ tmp_corepath = get_freebsd_corepath(progname);
+ /* If this has been set correctly, we're done. */
+ if (tmp_corepath) {
+ return tmp_corepath;
+@@ -281,7 +325,7 @@
+ SAFE_FREE(logbase);
+ }
+
+- void dump_core(void)
++void dump_core(void)
+ {
+ static bool called;
+
diff --git a/net/samba36/files/patch-source3__lib__system.c b/net/samba36/files/patch-source3__lib__system.c
new file mode 100644
index 00000000000..19b93038404
--- /dev/null
+++ b/net/samba36/files/patch-source3__lib__system.c
@@ -0,0 +1,19 @@
+--- ./source3/lib/system.c.orig 2011-08-09 13:17:47.000000000 +0200
++++ ./source3/lib/system.c 2011-10-13 23:38:02.000000000 +0200
+@@ -2584,14 +2584,14 @@
+ }
+
+ /*******************************************************************
+- An aio_fsync wrapper that will deal with 64-bit sizes.
++ An aio_suspend wrapper that will deal with 64-bit sizes.
+ ********************************************************************/
+
+ int sys_aio_suspend(const SMB_STRUCT_AIOCB * const cblist[], int n, const struct timespec *timeout)
+ {
+ #if defined(HAVE_EXPLICIT_LARGEFILE_SUPPORT) && defined(HAVE_AIOCB64) && defined(HAVE_AIO_SUSPEND64)
+ return aio_suspend64(cblist, n, timeout);
+-#elif defined(HAVE_AIO_FSYNC)
++#elif defined(HAVE_AIO_SUSPEND)
+ return aio_suspend(cblist, n, timeout);
+ #else
+ errno = ENOSYS;
diff --git a/net/samba36/files/patch-source3__m4__aclocal.m4 b/net/samba36/files/patch-source3__m4__aclocal.m4
new file mode 100644
index 00000000000..090f4c9db49
--- /dev/null
+++ b/net/samba36/files/patch-source3__m4__aclocal.m4
@@ -0,0 +1,172 @@
+--- ./source3/m4/aclocal.m4.orig 2011-08-09 13:17:47.000000000 +0200
++++ ./source3/m4/aclocal.m4 2011-10-05 22:59:19.000000000 +0200
+@@ -379,11 +379,15 @@
+ ac_new_flags=""
+ for i in [$]$1; do
+ case [$]i in
+- -I/usr/include|-I/usr/include/) ;;
++ -I/usr/include|-I/usr/include/|-I/usr/local/include/|-I/usr/local/include) f=1;;
+ *) ac_new_flags="[$]ac_new_flags [$]i" ;;
+ esac
+ done
+- $1=[$]ac_new_flags
++ if test [$]f; then
++ $1="[$]ac_new_flags -I/usr/local/include"
++ else
++ $1=[$]ac_new_flags
++ fi
+ ])
+
+ dnl Removes '-L/usr/lib[/]', '-Wl,-rpath,/usr/lib[/]'
+@@ -431,104 +435,81 @@
+ dnl those with the standalone portable libiconv installed).
+ AC_MSG_CHECKING(for iconv in $1)
+ jm_cv_func_iconv="no"
++ jm_cv_include=""
+ jm_cv_lib_iconv=""
+- jm_cv_giconv=no
++ jm_cv_giconv="no"
+ jm_save_LIBS="$LIBS"
+
+- dnl Check for include in giconv.h but no lib needed
+- if test "$jm_cv_func_iconv" != yes; then
+- AC_TRY_LINK([#include <stdlib.h>
++ dnl Check for include in funny place but no lib needed
++ if test "$jm_cv_func_iconv" != yes; then
++ AC_TRY_LINK([#include <stdlib.h>
+ #include <giconv.h>],
+ [iconv_t cd = iconv_open("","");
+ iconv(cd,NULL,NULL,NULL,NULL);
+ iconv_close(cd);],
+- jm_cv_func_iconv=yes
+- jm_cv_include="giconv.h"
+- jm_cv_giconv="yes"
+- jm_cv_lib_iconv="")
++ jm_cv_func_iconv=yes
++ jm_cv_include="giconv.h"
++ jm_cv_lib_iconv=""
++ jm_cv_giconv="yes")
+
+- dnl Standard iconv.h include, lib in glibc or libc ...
+- if test "$jm_cv_func_iconv" != yes; then
+- AC_TRY_LINK([#include <stdlib.h>
++ dnl Standard iconv.h include, lib in glibc or libc ...
++ if test "$jm_cv_func_iconv" != yes; then
++ AC_TRY_LINK([#include <stdlib.h>
+ #include <iconv.h>],
+- [iconv_t cd = iconv_open("","");
++ [iconv_t cd = iconv_open("","");
+ iconv(cd,NULL,NULL,NULL,NULL);
+ iconv_close(cd);],
+- jm_cv_include="iconv.h"
+- jm_cv_func_iconv=yes
+- jm_cv_lib_iconv="")
+-
+- dnl Include in giconv.h, libgiconv needed to link
+- if test "$jm_cv_func_iconv" != yes; then
+- jm_save_LIBS="$LIBS"
+- LIBS="$LIBS -lgiconv"
+- AC_TRY_LINK([#include <stdlib.h>
++ jm_cv_func_iconv=yes
++ jm_cv_include="iconv.h"
++ jm_cv_lib_iconv="")
++
++ dnl Include in giconv.h, libgiconv needed to link
++ if test "$jm_cv_func_iconv" != yes; then
++ jm_save_LIBS="$LIBS"
++ LIBS="$LIBS -lgiconv"
++ AC_TRY_LINK([#include <stdlib.h>
+ #include <giconv.h>],
+- [iconv_t cd = iconv_open("","");
++ [iconv_t cd = iconv_open("","");
+ iconv(cd,NULL,NULL,NULL,NULL);
+ iconv_close(cd);],
+- jm_cv_lib_iconv=yes
+ jm_cv_func_iconv=yes
+ jm_cv_include="giconv.h"
+- jm_cv_giconv=yes
+- jm_cv_lib_iconv="giconv")
++ jm_cv_lib_iconv="giconv"
++ jm_cv_giconv=yes)
+
+- LIBS="$jm_save_LIBS"
++ LIBS="$jm_save_LIBS"
+
+- dnl Include in iconv.h, libiconv needed to link
+- if test "$jm_cv_func_iconv" != yes; then
+- jm_save_LIBS="$LIBS"
+- LIBS="$LIBS -liconv"
+- AC_TRY_LINK([#include <stdlib.h>
++ dnl Include in iconv.h, libiconv needed to link
++ if test "$jm_cv_func_iconv" != yes; then
++ jm_save_LIBS="$LIBS"
++ LIBS="$LIBS -liconv"
++ AC_TRY_LINK([#include <stdlib.h>
+ #include <iconv.h>],
+- [iconv_t cd = iconv_open("","");
+- iconv(cd,NULL,NULL,NULL,NULL);
+- iconv_close(cd);],
+- jm_cv_include="iconv.h"
+- jm_cv_func_iconv=yes
+- jm_cv_lib_iconv="iconv")
+- LIBS="$jm_save_LIBS"
+-
+- dnl Include in biconv.h, libbiconv needed to link
+- if test "$jm_cv_func_iconv" != yes; then
+- jm_save_LIBS="$LIBS"
+- LIBS="$LIBS -lbiconv"
+- AC_TRY_LINK([#include <stdlib.h>
+-#include <biconv.h>],
+- [iconv_t cd = iconv_open("","");
+- iconv(cd,NULL,NULL,NULL,NULL);
+- iconv_close(cd);],
+- jm_cv_lib_iconv=yes
+- jm_cv_func_iconv=yes
+- jm_cv_include="biconv.h"
+- jm_cv_biconv=yes
+- jm_cv_lib_iconv="biconv")
++ [iconv_t cd = iconv_open("","");
++ iconv(cd,NULL,NULL,NULL,NULL);
++ iconv_close(cd);],
++ jm_cv_func_iconv=yes
++ jm_cv_include="iconv.h"
++ jm_cv_lib_iconv="iconv")
+
+- LIBS="$jm_save_LIBS"
+- fi
+- fi
++ LIBS="$jm_save_LIBS"
++ fi
++ fi
+ fi
+ fi
+- fi
+- if test "$jm_cv_func_iconv" = yes; then
+- if test "$jm_cv_giconv" = yes; then
+- AC_DEFINE(HAVE_GICONV, 1, [What header to include for iconv() function: giconv.h])
+- AC_MSG_RESULT(yes)
+- ICONV_FOUND=yes
+- else
+- if test "$jm_cv_biconv" = yes; then
+- AC_DEFINE(HAVE_BICONV, 1, [What header to include for iconv() function: biconv.h])
+- AC_MSG_RESULT(yes)
+- ICONV_FOUND=yes
++ if test "$jm_cv_func_iconv" = yes; then
++ if test "$jm_cv_giconv" = yes; then
++ AC_DEFINE(HAVE_GICONV, 1, [What header to include for iconv() function: giconv.h])
++ AC_MSG_RESULT(yes)
++ ICONV_FOUND=yes
+ else
+ AC_DEFINE(HAVE_ICONV, 1, [What header to include for iconv() function: iconv.h])
+ AC_MSG_RESULT(yes)
+ ICONV_FOUND=yes
+ fi
++ else
++ AC_MSG_RESULT(no)
+ fi
+- else
+- AC_MSG_RESULT(no)
+- fi
+ ])
+
+ AC_DEFUN(rjs_CHARSET,[
diff --git a/net/samba36/files/patch-source3__smbd__quotas.c b/net/samba36/files/patch-source3__smbd__quotas.c
new file mode 100644
index 00000000000..deb36c3507b
--- /dev/null
+++ b/net/samba36/files/patch-source3__smbd__quotas.c
@@ -0,0 +1,19 @@
+--- ./source3/smbd/quotas.c.orig 2010-04-01 15:26:22.000000000 +0200
++++ ./source3/smbd/quotas.c 2010-04-23 01:08:35.000000000 +0200
+@@ -1035,6 +1035,7 @@
+ if (!cutstr)
+ return False;
+
++ memset(&D, '\0', sizeof(D));
+ memset(cutstr, '\0', len+1);
+ host = strncat(cutstr,mnttype, sizeof(char) * len );
+ DEBUG(5,("nfs_quotas: looking for mount on \"%s\"\n", cutstr));
+@@ -1043,7 +1044,7 @@
+ args.gqa_pathp = testpath+1;
+ args.gqa_uid = uid;
+
+- DEBUG(5,("nfs_quotas: Asking for host \"%s\" rpcprog \"%i\" rpcvers \"%i\" network \"%s\"\n", host, RQUOTAPROG, RQUOTAVERS, "udp"));
++ DEBUG(5,("nfs_quotas: Asking for host \"%s\" rpcprog \"%lu\" rpcvers \"%lu\" network \"%s\"\n", host, RQUOTAPROG, RQUOTAVERS, "udp"));
+
+ if ((clnt = clnt_create(host, RQUOTAPROG, RQUOTAVERS, "udp")) == NULL) {
+ ret = False;
diff --git a/net/samba36/files/patch-source3__smbd__statvfs.c b/net/samba36/files/patch-source3__smbd__statvfs.c
new file mode 100644
index 00000000000..141b13556c4
--- /dev/null
+++ b/net/samba36/files/patch-source3__smbd__statvfs.c
@@ -0,0 +1,64 @@
+--- ./source3/smbd/statvfs.c.orig 2010-04-01 15:26:22.000000000 +0200
++++ ./source3/smbd/statvfs.c 2010-04-23 01:08:35.000000000 +0200
+@@ -3,6 +3,7 @@
+ VFS API's statvfs abstraction
+ Copyright (C) Alexander Bokovoy 2005
+ Copyright (C) Steve French 2005
++ Copyright (C) Timur I. Bakeyev 2005
+ Copyright (C) James Peach 2006
+
+ This program is free software; you can redistribute it and/or modify
+@@ -47,9 +48,42 @@
+ }
+ return result;
+ }
+-#endif
++#elif defined(FREEBSD)
++static int bsd_statvfs(const char *path, vfs_statvfs_struct *statbuf)
++{
++ struct statfs statfs_buf;
++ int result;
+
+-#if defined(DARWINOS)
++ result = statfs(path, &statfs_buf);
++ if(result != 0) {
++ return result;
++ }
++
++ statbuf->OptimalTransferSize = statfs_buf.f_iosize;
++ statbuf->BlockSize = statfs_buf.f_bsize;
++ statbuf->TotalBlocks = statfs_buf.f_blocks;
++ statbuf->BlocksAvail = statfs_buf.f_bfree;
++ statbuf->UserBlocksAvail = statfs_buf.f_bavail;
++ statbuf->TotalFileNodes = statfs_buf.f_files;
++ statbuf->FreeFileNodes = statfs_buf.f_ffree;
++ statbuf->FsIdentifier =
++ (((uint64_t)statfs_buf.f_fsid.val[0]<<32) & 0xffffffff00000000LL) | (uint64_t)statfs_buf.f_fsid.val[1];
++ /* Try to extrapolate some of the fs flags into the
++ * capabilities
++ */
++ statbuf->FsCapabilities =
++ FILE_CASE_SENSITIVE_SEARCH | FILE_CASE_PRESERVED_NAMES;
++ if(statfs_buf.f_flags & MNT_ACLS)
++ statbuf->FsCapabilities |= FILE_PERSISTENT_ACLS;
++ if(statfs_buf.f_flags & MNT_QUOTA)
++ statbuf->FsCapabilities |= FILE_VOLUME_QUOTAS;
++ if(statfs_buf.f_flags & MNT_RDONLY)
++ statbuf->FsCapabilities |= FILE_READ_ONLY_VOLUME;
++
++ return 0;
++}
++
++#elif defined(DARWINOS)
+
+ #include <sys/attr.h>
+
+@@ -135,6 +169,8 @@
+ {
+ #if defined(LINUX) && defined(HAVE_FSID_INT)
+ return linux_statvfs(path, statbuf);
++#elif defined(FREEBSD)
++ return bsd_statvfs(path, statbuf);
+ #elif defined(DARWINOS)
+ return darwin_statvfs(path, statbuf);
+ #else
diff --git a/net/samba36/files/patch-source3__utils__net_time.c b/net/samba36/files/patch-source3__utils__net_time.c
new file mode 100644
index 00000000000..47c4125c43a
--- /dev/null
+++ b/net/samba36/files/patch-source3__utils__net_time.c
@@ -0,0 +1,19 @@
+--- ./source3/utils/net_time.c.orig 2010-04-01 15:26:22.000000000 +0200
++++ ./source3/utils/net_time.c 2010-04-23 01:08:35.000000000 +0200
+@@ -85,10 +85,15 @@
+ if (!tm) {
+ return "unknown";
+ }
+-
++#if defined(FREEBSD)
++ return talloc_asprintf(talloc_tos(), "%02d%02d%02d%02d%02d.%02d",
++ tm->tm_year + 1900, tm->tm_mon+1, tm->tm_mday,
++ tm->tm_hour, tm->tm_min, tm->tm_sec);
++#else
+ return talloc_asprintf(talloc_tos(), "%02d%02d%02d%02d%04d.%02d",
+ tm->tm_mon+1, tm->tm_mday, tm->tm_hour,
+ tm->tm_min, tm->tm_year + 1900, tm->tm_sec);
++#endif
+ }
+
+ int net_time_usage(struct net_context *c, int argc, const char **argv)
diff --git a/net/samba36/files/pkg-deinstall.in b/net/samba36/files/pkg-deinstall.in
new file mode 100644
index 00000000000..29ecc2cc31b
--- /dev/null
+++ b/net/samba36/files/pkg-deinstall.in
@@ -0,0 +1,46 @@
+#! /bin/sh
+#
+PATH=/bin:/usr/sbin:/usr/bin:/usr/sbin
+
+SAMBA_CONFIG="%%SAMBA_CONFIG%%"
+SAMBA_CONFDIR="%%SAMBA_CONFDIR%%"
+SAMBA_SPOOL="%%SAMBA_SPOOL%%"
+SAMBA_LOGDIR="%%SAMBA_LOGDIR%%"
+SAMBA_RUNDIR="%%SAMBA_RUNDIR%%"
+SAMBA_LOCKDIR="%%SAMBA_LOCKDIR%%"
+SAMBA_PRIVATEDIR="%%SAMBA_PRIVATEDIR%%"
+SAMBA_OWNER=root
+SAMBA_GROUP=wheel
+CMP="cmp"
+RM="rm"
+RMDIR="rmdir"
+ECHO_CMD="echo"
+
+post-deinstall() {
+ if ${CMP} -s ${SAMBA_CONFDIR}/${SAMBA_CONFIG} ${SAMBA_CONFDIR}/${SAMBA_CONFIG}.sample; then
+ ${RM} -f ${SAMBA_CONFDIR}/${SAMBA_CONFIG}
+ fi
+ ${RM} -f ${SAMBA_CONFDIR}/${SAMBA_CONFIG}.sample
+ ${RM} -rf ${SAMBA_SPOOL}
+ ${RMDIR} ${SAMBA_LOGDIR} 2>/dev/null || true
+ for f in connections.tdb locking.tdb messages.tdb sessionid.tdb \
+ unexpected.tdb brlock.tdb namelist.debug
+ do
+ ${RM} -f "${SAMBA_LOCKDIR}/${f}"
+ done
+ ${RMDIR} ${SAMBA_RUNDIR} 2>/dev/null || true
+ ${RMDIR} ${SAMBA_LOCKDIR} 2>/dev/null || true
+ ${RMDIR} ${SAMBA_PRIVATEDIR} 2>/dev/null || true
+ ${ECHO_CMD} "WARNING: If you will *NOT* use this package anymore, please remove the"
+ ${ECHO_CMD} " following directories manually:"
+ ${ECHO_CMD} " ${SAMBA_PRIVATEDIR}"
+ ${ECHO_CMD} " ${SAMBA_LOGDIR}"
+ ${ECHO_CMD} " ${SAMBA_LOCKDIR}"
+ ${ECHO_CMD}
+}
+
+case $2 in
+ POST-DEINSTALL)
+ post-deinstall
+ ;;
+esac
diff --git a/net/samba36/files/pkg-install.in b/net/samba36/files/pkg-install.in
new file mode 100644
index 00000000000..d9d9279e7da
--- /dev/null
+++ b/net/samba36/files/pkg-install.in
@@ -0,0 +1,44 @@
+#! /bin/sh
+#
+PATH=/bin:/usr/sbin:/usr/bin:/usr/sbin
+
+EXAMPLESDIR="%%EXAMPLESDIR%%"
+SAMBA_CONFIG="%%SAMBA_CONFIG%%"
+SAMBA_CONFDIR="%%SAMBA_CONFDIR%%"
+SAMBA_SPOOL="%%SAMBA_SPOOL%%"
+SAMBA_LOGDIR="%%SAMBA_LOGDIR%%"
+SAMBA_RUNDIR="%%SAMBA_RUNDIR%%"
+SAMBA_LOCKDIR="%%SAMBA_LOCKDIR%%"
+SAMBA_PRIVATEDIR="%%SAMBA_PRIVATEDIR%%"
+SAMBA_OWNER=root
+SAMBA_GROUP=wheel
+INSTALL_DATA="install -c -m 0444"
+MKDIR="mkdir -p"
+CHMOD="chmod"
+CHOWN="chown"
+
+post-install() {
+ ${MKDIR} ${SAMBA_SPOOL} && ${CHMOD} 1777 ${SAMBA_SPOOL}
+ ${MKDIR} ${SAMBA_LOGDIR} && ${CHMOD} 0755 ${SAMBA_LOGDIR}
+ ${MKDIR} ${SAMBA_RUNDIR} && ${CHMOD} 0755 ${SAMBA_RUNDIR}
+ ${MKDIR} ${SAMBA_LOCKDIR} && ${CHMOD} 0755 ${SAMBA_LOCKDIR}
+ ${MKDIR} ${SAMBA_PRIVATEDIR} && ${CHMOD} 0700 ${SAMBA_PRIVATEDIR}
+ if [ $(id -u) -eq 0 ]; then
+ INSTALL_DATA="${INSTALL_DATA} -o ${SAMBA_OWNER} -g ${SAMBA_GROUP}"
+ ${CHOWN} ${SAMBA_OWNER}:${SAMBA_GROUP} ${SAMBA_SPOOL}
+ ${CHOWN} ${SAMBA_OWNER}:${SAMBA_GROUP} ${SAMBA_LOGDIR}
+ ${CHOWN} ${SAMBA_OWNER}:${SAMBA_GROUP} ${SAMBA_RUNDIR}
+ ${CHOWN} ${SAMBA_OWNER}:${SAMBA_GROUP} ${SAMBA_LOCKDIR}
+ ${CHOWN} ${SAMBA_OWNER}:${SAMBA_GROUP} ${SAMBA_PRIVATEDIR}
+ fi
+ ${INSTALL_DATA} ${EXAMPLESDIR}/${SAMBA_CONFIG}.sample ${SAMBA_CONFDIR}
+ if [ ! -f ${SAMBA_CONFDIR}/${SAMBA_CONFIG} ]; then
+ ${INSTALL_DATA} ${EXAMPLESDIR}/${SAMBA_CONFIG}.sample ${SAMBA_CONFDIR}/${SAMBA_CONFIG}
+ fi
+}
+
+case $2 in
+ POST-INSTALL)
+ post-install
+ ;;
+esac
diff --git a/net/samba36/files/pkg-message.in b/net/samba36/files/pkg-message.in
new file mode 100644
index 00000000000..98866a899ff
--- /dev/null
+++ b/net/samba36/files/pkg-message.in
@@ -0,0 +1,7 @@
+===============================================================================
+Samba3 *package* now doesn't include ADS support due the portability problems
+with Kerberos5 libraries on different installations. You need to compile the
+port yourself to get this functionality.
+
+For additional hints and directions, please, look into the README.FreeBSD file.
+===============================================================================
diff --git a/net/samba36/files/samba.in b/net/samba36/files/samba.in
new file mode 100644
index 00000000000..58f8fbb0b7e
--- /dev/null
+++ b/net/samba36/files/samba.in
@@ -0,0 +1,168 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+# PROVIDE: nmbd smbd
+%%WINBIND%%# PROVIDE: winbindd
+# REQUIRE: NETWORKING SERVERS DAEMON ldconfig resolv
+%%CUPS%%# REQUIRE: cupsd
+# BEFORE: LOGIN
+# KEYWORD: shutdown
+#
+# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
+# to enable this service:
+#
+#samba_enable="YES"
+# or, for fine grain control:
+#nmbd_enable="YES"
+#smbd_enable="YES"
+%%WINBIND%%# You need to enable winbindd separately, by adding:
+%%WINBIND%%#winbindd_enable="YES"
+#
+# Configuration file can be set with:
+#samba_config="%%SAMBA_CONFDIR%%/%%SAMBA_CONFIG%%"
+#
+
+. /etc/rc.subr
+
+name="samba"
+rcvar=$(set_rcvar)
+set_rcvar ${rcvar} "NO" "Samba service" > /dev/null
+# Defaults
+eval ${rcvar}=\${${rcvar}:=NO}
+samba_config_default="%%SAMBA_CONFDIR%%/%%SAMBA_CONFIG%%"
+samba_config=${samba_config="${samba_config_default}"}
+command_args=${samba_config:+-s "${samba_config}"}
+# Fetch parameters from configuration file
+testparm_command="%%PREFIX%%/bin/testparm"
+smbcontrol_command="%%PREFIX%%/bin/smbcontrol"
+samba_parm="${testparm_command} -s -v --parameter-name"
+samba_idmap=$(${samba_parm} 'idmap uid' "${samba_config}" 2>/dev/null)
+samba_lockdir=$(${samba_parm} 'lock directory' "${samba_config}" 2>/dev/null)
+# Load configuration
+load_rc_config "${name}"
+# Setup dependent variables
+if [ -n "${rcvar}" ] && checkyesno "${rcvar}"; then
+ nmbd_enable=${nmbd_enable=YES}
+ smbd_enable=${smbd_enable=YES}
+%%WINBIND%% # Check that winbindd is actually configured
+%%WINBIND%% if [ -n "${samba_idmap}" ]; then
+%%WINBIND%% winbindd_enable=${winbindd_enable=YES}
+%%WINBIND%% fi
+fi
+# XXX: Hack to enable check of the dependent variables
+eval real_${rcvar}="\${${rcvar}:=NO}" ${rcvar}=YES
+# nmbd
+nmbd_enable=${nmbd_enable:=NO}
+nmbd_flags=${nmbd_flags="-D"}
+set_rcvar nmbd_enable "NO" "nmb daemon" >/dev/null
+# smbd
+smbd_enable=${smbd_enable:=NO}
+smbd_flags=${smbd_flags="-D"}
+set_rcvar smbd_enable "NO" "smb daemon" >/dev/null
+%%WINBIND%%# winbindd
+%%WINBIND%%winbindd_enable=${winbindd_enable:=NO}
+%%WINBIND%%winbindd_flags=${winbindd_flags=''}
+%%WINBIND%%set_rcvar winbindd_enable "NO" "winbind daemon" >/dev/null
+# Custom commands
+extra_commands="reload status"
+start_precmd="samba_start_precmd"
+start_cmd="samba_cmd"
+stop_cmd="samba_cmd"
+status_cmd="samba_cmd"
+restart_precmd="samba_checkconfig"
+reload_precmd="samba_checkconfig"
+reload_cmd="samba_reload_cmd"
+rcvar_cmd="samba_rcvar_cmd"
+#
+samba_daemons="nmbd smbd"
+%%WINBIND%%samba_daemons="${samba_daemons} winbindd"
+# Requirements
+required_files="${samba_config}"
+required_dirs="${samba_lockdir}"
+
+samba_checkconfig() {
+ echo -n "Performing sanity check on Samba configuration: "
+ if ${testparm_command} -s ${samba_config:+"${samba_config}"} >/dev/null 2>&1; then
+ echo "OK"
+ else
+ echo "FAILED"
+ return 1
+ fi
+ return 0
+}
+
+samba_start_precmd() {
+ # XXX: Never delete winbindd_idmap, winbindd_cache and group_mapping
+ if [ -n "${samba_lockdir}" -a -d "${samba_lockdir}" ]; then
+ echo -n "Removing stale Samba tdb files: "
+ for file in brlock.tdb browse.dat connections.tdb gencache.tdb \
+ locking.tdb messages.tdb namelist.debug sessionid.tdb \
+ unexpected.tdb
+ do
+ rm "${samba_lockdir}/${file}" </dev/null 2>/dev/null && echo -n '.'
+ done
+ echo " done"
+ fi
+}
+
+samba_rcvar_cmd() {
+ local rcvar
+ rcvar=$(set_rcvar ${name})
+ eval ${rcvar}=\${real_${rcvar}}
+ # Prevent recursive calling
+ unset "${rc_arg}_cmd" "${rc_arg}_precmd" "${rc_arg}_postcmd"
+ # Check master variable
+ run_rc_command "${_rc_prefix}${rc_arg}" ${rc_extra_args}
+}
+
+samba_reload_cmd() {
+ local name rcvar command pidfile
+ # Prevent recursive calling
+ unset "${rc_arg}_cmd" "${rc_arg}_precmd" "${rc_arg}_postcmd"
+ # Apply to all daemons
+ for name in ${samba_daemons}; do
+ rcvar=$(set_rcvar ${name})
+ command="%%PREFIX%%/sbin/${name}"
+ pidfile="%%SAMBA_RUNDIR%%/${name}${pid_extra}.pid"
+ # Daemon should be enabled and running
+ if [ -n "${rcvar}" ] && checkyesno "${rcvar}"; then
+ if [ -n "$(check_pidfile "${pidfile}" "${command}")" ]; then
+ debug "reloading ${name} configuration"
+ echo "Reloading ${name}."
+ # XXX: Hack with pid_extra
+ ${smbcontrol_command} "${name}${pid_extra}" 'reload-config' ${command_args} >/dev/null 2>&1
+ fi
+ fi
+ done
+}
+
+samba_cmd() {
+ local name rcvar rcvars v command pidfile samba_daemons result
+ # Prevent recursive calling
+ unset "${rc_arg}_cmd" "${rc_arg}_precmd" "${rc_arg}_postcmd"
+ # Stop processes in the reverse order
+ if [ "${rc_arg}" = "stop" ] ; then
+ samba_daemons=$(reverse_list ${samba_daemons})
+ fi
+ # Assume success
+ result=0
+ # Apply to all daemons
+ for name in ${samba_daemons}; do
+ rcvar=$(set_rcvar ${name})
+ # XXX
+ rcvars=''; v=''
+ command="%%PREFIX%%/sbin/${name}"
+ pidfile="%%SAMBA_RUNDIR%%/${name}${pid_extra}.pid"
+ # Daemon should be enabled and running
+ if [ -n "${rcvar}" ] && checkyesno "${rcvar}"; then
+ run_rc_command "${_rc_prefix}${rc_arg}" ${rc_extra_args}
+ # If any of the of the commands failed, take it as a total result
+ result=$((${result} || $?))
+ fi
+ done
+ return ${result}
+}
+
+run_rc_command "$1"
diff --git a/net/samba36/files/sernet.patch b/net/samba36/files/sernet.patch
new file mode 100644
index 00000000000..435b78109ce
--- /dev/null
+++ b/net/samba36/files/sernet.patch
@@ -0,0 +1,60 @@
+0001-s3-vfs_prealloc-fix-build-on-SLES8.patch
+samba3-3.4-honor-all-loopback-ips.patch
+
+From a1cd413de5493b06d7505a441bc5965f27ae38d4 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Bj=C3=B6rn=20Jacke?= <bj@sernet.de>
+Date: Tue, 9 Aug 2011 17:02:29 +0200
+Subject: [PATCH] s3:vfs_prealloc: fix build on SLES8
+
+Signed-off-by: Stefan Metzmacher <metze@samba.org>
+---
+ source3/modules/vfs_prealloc.c | 1 +
+ 1 files changed, 1 insertions(+), 0 deletions(-)
+
+diff --git a/source3/modules/vfs_prealloc.c b/source3/modules/vfs_prealloc.c
+index 4d1b2e1..fb2e46e 100644
+--- a/source3/modules/vfs_prealloc.c
++++ b/source3/modules/vfs_prealloc.c
+@@ -18,6 +18,7 @@
+ */
+
+ #include "includes.h"
++#include "system/filesys.h"
+ #include "smbd/smbd.h"
+
+ /* Extent preallocation module.
+--
+1.7.6
+
+commit b6afe7ef236a454d8a6abf104b8846f817378f73
+Author: Björn Jacke <bj@sernet.de>
+Date: Thu Oct 15 02:02:30 2009 +0200
+
+ util: cope the all loopback addresses IPv4 knows
+
+ The fact that we just recogniced 127.0.0.1 as loopback IP address and not the
+ rest of the 127.0.0.0/8 IP address range we used the lo interface for sending
+ packages even though we should send them to some more physical interface. This
+ way we ended up with failing WINS registration and so on like in #6348.
+ On the lo interface sendto() returned "Invalid Argument" (EINVAL).
+
+diff --git a/lib/util/util_net.c b/lib/util/util_net.c
+index 0ce495e..0511a28 100644
+--- a/lib/util/util_net.c
++++ b/lib/util/util_net.c
+@@ -351,13 +351,11 @@ bool is_broadcast_addr(const struct sockaddr *pss)
+ }
+
+ /**
+- * Check if an IPv7 is 127.0.0.1
++ * Check if an IPv4 is in IN_LOOPBACKNET (127.0.0.0/8)
+ */
+ bool is_loopback_ip_v4(struct in_addr ip)
+ {
+- struct in_addr a;
+- a.s_addr = htonl(INADDR_LOOPBACK);
+- return(ip.s_addr == a.s_addr);
++ return ((ntohl(ip.s_addr) & IN_CLASSA_NET) == (IN_LOOPBACKNET << IN_CLASSA_NSHIFT));
+ }
+
+ /**
diff --git a/net/samba36/files/smb.conf.sample.in b/net/samba36/files/smb.conf.sample.in
new file mode 100644
index 00000000000..4c7e56dbdf5
--- /dev/null
+++ b/net/samba36/files/smb.conf.sample.in
@@ -0,0 +1,306 @@
+# 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]
+
+# workgroup = NT-Domain-Name or Workgroup-Name, eg: MIDEARTH
+ workgroup = MYGROUP
+
+# server string is the equivalent of the NT Description field
+ server string = Samba Server
+
+# Security mode. Defines in which mode Samba will operate. Possible
+# values are share, user, server, domain and ads. Most people will want
+# user level security. See the Samba-HOWTO-Collection for details.
+ security = user
+
+# 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
+; hosts allow = 192.168.1. 192.168.2. 127.
+
+# If you want to automatically load your printer list rather
+# than setting them up individually then you'll need this
+ load printers = yes
+
+# you may wish to override the location of the printcap file
+; printcap name = /etc/printcap
+
+# on SystemV system setting printcap name to lpstat should allow
+# you to automatically obtain a printer list from the SystemV spool
+# system
+; printcap name = lpstat
+
+# It should not be necessary to specify the print system type unless
+# it is non-standard. Currently supported print systems include:
+# bsd, cups, sysv, plp, lprng, aix, hpux, qnx
+; printing = cups
+
+# Uncomment this if you want a guest account, you must add this to /etc/passwd
+# otherwise the user "nobody" is used
+; guest account = pcguest
+
+# this tells Samba to use a separate log file for each machine
+# that connects
+ log file = %%SAMBA_LOGDIR%%/log.%m
+
+# Put a capping on the size of the log files (in Kb).
+ max log size = 50
+
+# Use password server option only with security = server
+# The argument list may include:
+# password server = My_PDC_Name [My_BDC_Name] [My_Next_BDC_Name]
+# or to auto-locate the domain controller/s
+# password server = *
+; password server = <NT-Server-Name>
+
+# Use the realm option only with security = ads
+# Specifies the Active Directory realm the host is part of
+; realm = MY_REALM
+
+# Backend to store user information in. New installations should
+# use either tdbsam or ldapsam. smbpasswd is available for backwards
+# compatibility. tdbsam requires no further configuration.
+; passdb backend = tdbsam
+
+# 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.
+# Note: Consider carefully the location in the configuration file of
+# this line. The included file is read at that point.
+; include = %%SAMBA_CONFDIR%%/smb.conf.%m
+
+# Most people will find that this option gives better performance.
+# See the chapter 'Samba performance issues' in the Samba HOWTO Collection
+# and the manual pages for details.
+# You may want to add the following on a Linux system:
+; socket options = 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
+
+# Browser Control Options:
+# 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
+
+# Enable this if you want Samba to be a domain logon server for
+# Windows95 workstations.
+; 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 roving profiles (only for Win95 and WinNT)
+# %L substitutes for this servers netbios name, %U is username
+# You must uncomment the [Profiles] share below
+; logon path = \\%L\Profiles\%U
+
+# 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 default is NO.
+ dns proxy = no
+
+# Charset settings
+; display charset = koi8-r
+; unix charset = koi8-r
+; dos charset = cp866
+
+# Use extended attributes to store file modes
+; store dos attributes = yes
+; map hidden = no
+; map system = no
+; map archive = no
+
+# Use inherited ACLs for directories
+; nt acl support = yes
+; inherit acls = yes
+; map acl inherit = yes
+
+# These scripts are used on a domain controller or stand-alone
+# machine to add or delete corresponding unix accounts
+; add user script = /usr/sbin/useradd %u
+; add group script = /usr/sbin/groupadd %g
+; add machine script = /usr/sbin/adduser -n -g machines -c Machine -d /dev/null -s /bin/false %u
+; delete user script = /usr/sbin/userdel %u
+; delete user from group script = /usr/sbin/deluser %u %g
+; delete group script = /usr/sbin/groupdel %g
+
+
+#============================ Share Definitions ==============================
+[homes]
+ comment = Home Directories
+ browseable = no
+ writable = yes
+
+# Un-comment the following and create the netlogon directory for Domain Logons
+; [netlogon]
+; comment = Network Logon Service
+; path = /usr/local/samba/lib/netlogon
+; guest ok = yes
+; writable = no
+; share modes = no
+
+
+# Un-comment the following to provide a specific roving profile share
+# the default is to use the user's home directory
+;[Profiles]
+; path = /usr/local/samba/profiles
+; browseable = no
+; guest ok = yes
+
+
+# NOTE: If you have a BSD-style print system there is no need to
+# specifically define each individual printer
+[printers]
+ comment = All Printers
+ path = %%SAMBA_SPOOL%%
+ browseable = no
+# Set public = yes to allow user 'guest account' to print
+ guest ok = no
+ writable = no
+ printable = 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 = yes
+; writable = yes
+; printable = no
+; write list = @staff
+
+# 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
+;
+
+# This is a DRAFT sample configuration for the ACLs on the ZFS partition.
+#
+; nt acl support = yes
+; inherit acls = no
+; map acl inherit = yes
+;
+;[zpool]
+; path = /tank/zpool
+; unix extensions = no
+; vfs objects = zfsacl
+; nfs4:mode = special
+; nfs4:acedup = merge
+; nfs4:chown = yes
diff --git a/net/samba36/pkg-descr b/net/samba36/pkg-descr
new file mode 100644
index 00000000000..28f431acf0f
--- /dev/null
+++ b/net/samba36/pkg-descr
@@ -0,0 +1,12 @@
+The Samba suite is a set of programs which run under the FreeBSD
+operating system. These programs deliver most of the important
+functionality of a Microsoft Lan Manager server. That is, they support
+remote access to FreeBSD filespace and FreeBSD printers from Lan Manager
+compatible clients. In practical terms, this means that such clients can
+connect to and use FreeBSD filespace as if it was a local disk drive, or
+FreeBSD printers as if they were local printers.
+
+Some of the most popular Lan Manager compatible clients include Lan
+Manager itself, Windows for Workgroups, OS/2 and Windows NT.
+
+WWW: http://www.samba.org/
diff --git a/net/samba36/pkg-plist b/net/samba36/pkg-plist
new file mode 100644
index 00000000000..5d931a1a507
--- /dev/null
+++ b/net/samba36/pkg-plist
@@ -0,0 +1,246 @@
+bin/eventlogadm
+bin/findsmb
+bin/make_smbpasswd
+bin/net
+bin/nmblookup
+bin/ntlm_auth
+bin/pdbedit
+bin/profiles
+bin/rpcclient
+bin/sharesec
+bin/smbcacls
+bin/smbclient
+bin/smbcontrol
+bin/smbcquotas
+bin/smbget
+bin/smbpasswd
+bin/smbspool
+bin/smbstatus
+bin/smbta-util
+bin/smbtar
+bin/smbtree
+bin/testparm
+%%SMBTORTURE%%bin/smbtorture
+%%WINBIND%%bin/wbinfo
+include/wbclient.h
+sbin/smbd
+sbin/nmbd
+%%SWAT%%sbin/swat
+lib/libwbclient.so.0
+%%WINBIND%%sbin/winbindd
+%%WINBIND%%lib/nss_winbind.so.1
+%%WINBIND%%lib/nss_wins.so.1
+%%WINBIND%%lib/pam_winbind.so
+%%SMBPASS%%lib/pam_smbpass.so
+%%EXAMPLESDIR%%/%%SAMBA_CONFIG%%.sample
+%%EXAMPLESDIR%%/LDAP/README
+%%EXAMPLESDIR%%/LDAP/convertSambaAccount
+%%EXAMPLESDIR%%/LDAP/get_next_oid
+%%EXAMPLESDIR%%/LDAP/ol-schema-migrate.pl
+%%EXAMPLESDIR%%/LDAP/samba-nds.schema
+%%EXAMPLESDIR%%/LDAP/samba-schema-FDS.ldif
+%%EXAMPLESDIR%%/LDAP/samba-schema-netscapeds5.x
+%%EXAMPLESDIR%%/LDAP/samba-schema.IBMSecureWay
+%%EXAMPLESDIR%%/LDAP/samba.ldif
+%%EXAMPLESDIR%%/LDAP/samba.schema
+%%EXAMPLESDIR%%/LDAP/samba.schema.at.IBM-DS
+%%EXAMPLESDIR%%/LDAP/samba.schema.oc.IBM-DS
+%%EXAMPLESDIR%%/README
+%%EXAMPLESDIR%%/VFS/Makefile.in
+%%EXAMPLESDIR%%/VFS/README
+%%EXAMPLESDIR%%/VFS/autogen.sh
+%%EXAMPLESDIR%%/VFS/config.guess
+%%EXAMPLESDIR%%/VFS/config.sub
+%%EXAMPLESDIR%%/VFS/configure.in
+%%EXAMPLESDIR%%/VFS/install-sh
+%%EXAMPLESDIR%%/VFS/shadow_copy_test.c
+%%EXAMPLESDIR%%/VFS/skel_opaque.c
+%%EXAMPLESDIR%%/VFS/skel_transparent.c
+%%EXAMPLESDIR%%/ad-bench/README
+%%EXAMPLESDIR%%/ad-bench/ad-bench.sh
+%%EXAMPLESDIR%%/ad-bench/settings.sh
+%%EXAMPLESDIR%%/ad-bench/test_utils.sh
+%%EXAMPLESDIR%%/ad-bench/time_group.sh
+%%EXAMPLESDIR%%/ad-bench/time_join.sh
+%%EXAMPLESDIR%%/ad-bench/time_kinit.sh
+%%EXAMPLESDIR%%/ad-bench/time_ldap.sh
+%%EXAMPLESDIR%%/ad-bench/time_user.sh
+%%EXAMPLESDIR%%/ad-bench/utils.sh
+%%EXAMPLESDIR%%/auth/Makefile
+%%EXAMPLESDIR%%/auth/auth_skel.c
+%%EXAMPLESDIR%%/auth/crackcheck/Makefile
+%%EXAMPLESDIR%%/auth/crackcheck/crackcheck.c
+%%EXAMPLESDIR%%/autofs/auto.smb
+%%EXAMPLESDIR%%/bind9-patches/0001-leave-the-question-section-in-update-responses.patch
+%%EXAMPLESDIR%%/bind9-patches/0002-prevent-a-valgrind-uninitialised-memory-warning.patch
+%%EXAMPLESDIR%%/bind9-patches/0003-don-t-compress-TSIG-names.patch
+%%EXAMPLESDIR%%/bind9-patches/0004-If-tkey-gssapi-initialisation-fails-then-heck-for-th.patch
+%%EXAMPLESDIR%%/bind9-patches/0005-windows-doesn-t-return-valid-GSSAPI-sequence-numbers.patch
+%%EXAMPLESDIR%%/bind9-patches/README
+%%EXAMPLESDIR%%/dce-dfs/README
+%%EXAMPLESDIR%%/dce-dfs/smb.conf
+%%EXAMPLESDIR%%/logon/genlogon/genlogon.pl
+%%EXAMPLESDIR%%/logon/mklogon/mklogon.conf
+%%EXAMPLESDIR%%/logon/mklogon/mklogon.pl
+%%EXAMPLESDIR%%/logon/ntlogon/README
+%%EXAMPLESDIR%%/logon/ntlogon/ntlogon.conf
+%%EXAMPLESDIR%%/logon/ntlogon/ntlogon.py
+%%EXAMPLESDIR%%/misc/adssearch.pl
+%%EXAMPLESDIR%%/misc/check_multiple_LDAP_entries.pl
+%%EXAMPLESDIR%%/misc/cldap.pl
+%%EXAMPLESDIR%%/misc/extra_smbstatus
+%%EXAMPLESDIR%%/misc/swat.pl
+%%EXAMPLESDIR%%/misc/wall.perl
+%%EXAMPLESDIR%%/nss/nss_winbind.c
+%%EXAMPLESDIR%%/nss/nss_winbind.h
+%%EXAMPLESDIR%%/nss/wbtest.c
+%%SMBPASS%%%%EXAMPLESDIR%%/pam_smbpass/README
+%%SMBPASS%%%%EXAMPLESDIR%%/pam_smbpass/kdc-pdc
+%%SMBPASS%%%%EXAMPLESDIR%%/pam_smbpass/password-mature
+%%SMBPASS%%%%EXAMPLESDIR%%/pam_smbpass/password-migration
+%%SMBPASS%%%%EXAMPLESDIR%%/pam_smbpass/password-sync
+%%EXAMPLESDIR%%/pam_winbind/pam_winbind.conf
+%%EXAMPLESDIR%%/pcap2nbench/COPYING
+%%EXAMPLESDIR%%/pcap2nbench/Makefile
+%%EXAMPLESDIR%%/pcap2nbench/README
+%%EXAMPLESDIR%%/pcap2nbench/closerequest.cpp
+%%EXAMPLESDIR%%/pcap2nbench/closerequest.hpp
+%%EXAMPLESDIR%%/pcap2nbench/ethernet.cpp
+%%EXAMPLESDIR%%/pcap2nbench/ethernet.hpp
+%%EXAMPLESDIR%%/pcap2nbench/ip.cpp
+%%EXAMPLESDIR%%/pcap2nbench/ip.hpp
+%%EXAMPLESDIR%%/pcap2nbench/main.cpp
+%%EXAMPLESDIR%%/pcap2nbench/ntcreateandxrequest.cpp
+%%EXAMPLESDIR%%/pcap2nbench/ntcreateandxrequest.hpp
+%%EXAMPLESDIR%%/pcap2nbench/ntcreateandxresponse.cpp
+%%EXAMPLESDIR%%/pcap2nbench/ntcreateandxresponse.hpp
+%%EXAMPLESDIR%%/pcap2nbench/readandxrequest.cpp
+%%EXAMPLESDIR%%/pcap2nbench/readandxrequest.hpp
+%%EXAMPLESDIR%%/pcap2nbench/readandxresponse.hpp
+%%EXAMPLESDIR%%/pcap2nbench/smb.cpp
+%%EXAMPLESDIR%%/pcap2nbench/smb.hpp
+%%EXAMPLESDIR%%/pcap2nbench/tcp.cpp
+%%EXAMPLESDIR%%/pcap2nbench/tcp.hpp
+%%EXAMPLESDIR%%/pcap2nbench/writeandxrequest.cpp
+%%EXAMPLESDIR%%/pcap2nbench/writeandxrequest.hpp
+%%EXAMPLESDIR%%/pdb/Makefile
+%%EXAMPLESDIR%%/pdb/README
+%%EXAMPLESDIR%%/pdb/test.c
+%%EXAMPLESDIR%%/perfcounter/Makefile
+%%EXAMPLESDIR%%/perfcounter/perf.h
+%%EXAMPLESDIR%%/perfcounter/perf_writer.c
+%%EXAMPLESDIR%%/perfcounter/perf_writer_cpu.c
+%%EXAMPLESDIR%%/perfcounter/perf_writer_disk.c
+%%EXAMPLESDIR%%/perfcounter/perf_writer_mem.c
+%%EXAMPLESDIR%%/perfcounter/perf_writer_process.c
+%%EXAMPLESDIR%%/perfcounter/perf_writer_util.c
+%%EXAMPLESDIR%%/perfcounter/perfcountd.init
+%%EXAMPLESDIR%%/printer-accounting/README
+%%EXAMPLESDIR%%/printer-accounting/acct-all
+%%EXAMPLESDIR%%/printer-accounting/acct-sum
+%%EXAMPLESDIR%%/printer-accounting/hp5-redir
+%%EXAMPLESDIR%%/printer-accounting/lp-acct
+%%EXAMPLESDIR%%/printer-accounting/printcap
+%%EXAMPLESDIR%%/printing/VampireDriversFunctions
+%%EXAMPLESDIR%%/printing/prtpub.c
+%%EXAMPLESDIR%%/printing/readme.prtpub
+%%EXAMPLESDIR%%/printing/smbprint
+%%EXAMPLESDIR%%/printing/smbprint.sysv
+%%EXAMPLESDIR%%/scripts/debugging/linux/backtrace
+%%EXAMPLESDIR%%/scripts/debugging/solaris/README
+%%EXAMPLESDIR%%/scripts/debugging/solaris/solaris-oops.sh
+%%EXAMPLESDIR%%/scripts/eventlog/parselog.pl
+%%EXAMPLESDIR%%/scripts/idmap/README
+%%EXAMPLESDIR%%/scripts/idmap/idmap_nis.sh
+%%EXAMPLESDIR%%/scripts/mount/mount.smbfs
+%%EXAMPLESDIR%%/scripts/printing/cups/smbaddprinter.pl
+%%EXAMPLESDIR%%/scripts/printing/cups/smbdelprinter.pl
+%%EXAMPLESDIR%%/scripts/shares/perl/modify_samba_config.pl
+%%EXAMPLESDIR%%/scripts/shares/python/SambaConfig.py
+%%EXAMPLESDIR%%/scripts/shares/python/SambaParm.py
+%%EXAMPLESDIR%%/scripts/shares/python/generate_parm_table.py
+%%EXAMPLESDIR%%/scripts/shares/python/modify_samba_config.py
+%%EXAMPLESDIR%%/scripts/shares/python/smbparm.py
+%%EXAMPLESDIR%%/scripts/users_and_groups/adduserstogroups.pl
+%%EXAMPLESDIR%%/scripts/users_and_groups/createdomobj.pl
+%%EXAMPLESDIR%%/scripts/wins_hook/README
+%%EXAMPLESDIR%%/scripts/wins_hook/dns_update
+%%EXAMPLESDIR%%/smb.conf.default
+%%EXAMPLESDIR%%/tridge/README
+%%EXAMPLESDIR%%/tridge/smb.conf
+%%EXAMPLESDIR%%/tridge/smb.conf.WinNT
+%%EXAMPLESDIR%%/tridge/smb.conf.fjall
+%%EXAMPLESDIR%%/tridge/smb.conf.lapland
+%%EXAMPLESDIR%%/tridge/smb.conf.vittjokk
+%%EXAMPLESDIR%%/validchars/msdos70.out
+%%EXAMPLESDIR%%/validchars/nwdos70.out
+%%EXAMPLESDIR%%/validchars/readme
+%%EXAMPLESDIR%%/validchars/validchr.c
+%%EXAMPLESDIR%%/validchars/validchr.com
+@dirrm %%EXAMPLESDIR%%/validchars
+@dirrm %%EXAMPLESDIR%%/tridge
+@dirrm %%EXAMPLESDIR%%/scripts/wins_hook
+@dirrm %%EXAMPLESDIR%%/scripts/users_and_groups
+@dirrm %%EXAMPLESDIR%%/scripts/shares/python
+@dirrm %%EXAMPLESDIR%%/scripts/shares/perl
+@dirrm %%EXAMPLESDIR%%/scripts/shares
+@dirrm %%EXAMPLESDIR%%/scripts/printing/cups
+@dirrm %%EXAMPLESDIR%%/scripts/printing
+@dirrm %%EXAMPLESDIR%%/scripts/mount
+@dirrm %%EXAMPLESDIR%%/scripts/idmap
+@dirrm %%EXAMPLESDIR%%/scripts/eventlog
+@dirrm %%EXAMPLESDIR%%/scripts/debugging/solaris
+@dirrm %%EXAMPLESDIR%%/scripts/debugging/linux
+@dirrm %%EXAMPLESDIR%%/scripts/debugging
+@dirrm %%EXAMPLESDIR%%/scripts
+@dirrm %%EXAMPLESDIR%%/printing
+@dirrm %%EXAMPLESDIR%%/printer-accounting
+@dirrm %%EXAMPLESDIR%%/perfcounter
+@dirrm %%EXAMPLESDIR%%/pdb
+@dirrm %%EXAMPLESDIR%%/pcap2nbench
+@dirrm %%EXAMPLESDIR%%/pam_winbind
+%%SMBPASS%%@dirrm %%EXAMPLESDIR%%/pam_smbpass
+@dirrm %%EXAMPLESDIR%%/nss
+@dirrm %%EXAMPLESDIR%%/misc
+@dirrm %%EXAMPLESDIR%%/logon/ntlogon
+@dirrm %%EXAMPLESDIR%%/logon/mklogon
+@dirrm %%EXAMPLESDIR%%/logon/genlogon
+@dirrm %%EXAMPLESDIR%%/logon
+@dirrm %%EXAMPLESDIR%%/dce-dfs
+@dirrm %%EXAMPLESDIR%%/bind9-patches
+@dirrm %%EXAMPLESDIR%%/autofs
+@dirrm %%EXAMPLESDIR%%/auth/crackcheck
+@dirrm %%EXAMPLESDIR%%/auth
+@dirrm %%EXAMPLESDIR%%/ad-bench
+@dirrm %%EXAMPLESDIR%%/VFS
+@dirrm %%EXAMPLESDIR%%/LDAP
+@dirrm %%EXAMPLESDIR%%
+%%PORTDOCS%%%%DOCSDIR%%/COPYING
+%%PORTDOCS%%%%DOCSDIR%%/MAINTAINERS.txt
+%%PORTDOCS%%%%DOCSDIR%%/Manifest
+%%PORTDOCS%%%%DOCSDIR%%/PFIF.txt
+%%PORTDOCS%%%%DOCSDIR%%/README
+%%PORTDOCS%%%%DOCSDIR%%/README.FreeBSD
+%%PORTDOCS%%%%DOCSDIR%%/Roadmap
+%%PORTDOCS%%%%DOCSDIR%%/Samba3-ByExample.pdf
+%%PORTDOCS%%%%DOCSDIR%%/Samba3-Developers-Guide.pdf
+%%PORTDOCS%%%%DOCSDIR%%/Samba3-HOWTO.pdf
+%%PORTDOCS%%%%DOCSDIR%%/THANKS
+%%PORTDOCS%%%%DOCSDIR%%/WHATSNEW.txt
+%%PORTDOCS%%%%DOCSDIR%%/history
+%%PORTDOCS%%%%DOCSDIR%%/registry/FolderRedir.adm
+%%PORTDOCS%%%%DOCSDIR%%/registry/NT4-Locking.reg
+%%PORTDOCS%%%%DOCSDIR%%/registry/NT4_PlainPassword.reg
+%%PORTDOCS%%%%DOCSDIR%%/registry/Win-2Kx-XPP-DeleteCachedProfiles.reg
+%%PORTDOCS%%%%DOCSDIR%%/registry/Win-2Kx-XPP-ForceLocalProfile.reg
+%%PORTDOCS%%%%DOCSDIR%%/registry/Win-NT-DeleteRoamingProfile.reg
+%%PORTDOCS%%%%DOCSDIR%%/registry/Win2000_PlainPassword.reg
+%%PORTDOCS%%%%DOCSDIR%%/registry/Win7_Samba3DomainMember.reg
+%%PORTDOCS%%%%DOCSDIR%%/registry/Win95_PlainPassword.reg
+%%PORTDOCS%%%%DOCSDIR%%/registry/Win98_PlainPassword.reg
+%%PORTDOCS%%%%DOCSDIR%%/registry/Win9X-CacheHandling.reg
+%%PORTDOCS%%%%DOCSDIR%%/registry/WinME_PlainPassword.reg
+%%PORTDOCS%%%%DOCSDIR%%/registry/WinXP_PlainPassword.reg
+%%PORTDOCS%%%%DOCSDIR%%/registry/WindowsTerminalServer.reg
+%%PORTDOCS%%@dirrm %%DOCSDIR%%/registry
+%%PORTDOCS%%@dirrm %%DOCSDIR%%
diff --git a/net/samba36/pkg-plist.swat b/net/samba36/pkg-plist.swat
new file mode 100644
index 00000000000..8ac36811896
--- /dev/null
+++ b/net/samba36/pkg-plist.swat
@@ -0,0 +1,337 @@
+share/swat/help/Samba3-ByExample/net2000users.html
+share/swat/help/Samba3-ByExample/Big500users.html
+share/swat/help/Samba3-ByExample/DMSMig.html
+share/swat/help/Samba3-ByExample/DomApps.html
+share/swat/help/Samba3-ByExample/ExNetworks.html
+share/swat/help/Samba3-ByExample/HA.html
+share/swat/help/Samba3-ByExample/RefSection.html
+share/swat/help/Samba3-ByExample/apa.html
+share/swat/help/Samba3-ByExample/appendix.html
+share/swat/help/Samba3-ByExample/ch14.html
+share/swat/help/Samba3-ByExample/go01.html
+share/swat/help/Samba3-ByExample/happy.html
+@comment share/swat/help/Samba3-ByExample/images/AccountingNetwork.png
+@comment share/swat/help/Samba3-ByExample/images/Charity-Network.png
+@comment share/swat/help/Samba3-ByExample/images/HostAnnouncment.png
+@comment share/swat/help/Samba3-ByExample/images/NullConnect.png
+@comment share/swat/help/Samba3-ByExample/images/UNIX-Samba-and-LDAP.png
+@comment share/swat/help/Samba3-ByExample/images/UserConnect.png
+@comment share/swat/help/Samba3-ByExample/images/UserMgrNT4.png
+@comment share/swat/help/Samba3-ByExample/images/WINREPRESSME-Capture.png
+@comment share/swat/help/Samba3-ByExample/images/WINREPRESSME-Capture2.png
+@comment share/swat/help/Samba3-ByExample/images/WindowsXP-NullConnection.png
+@comment share/swat/help/Samba3-ByExample/images/WindowsXP-UserConnection.png
+@comment share/swat/help/Samba3-ByExample/images/XP-screen001.png
+@comment share/swat/help/Samba3-ByExample/images/acct2net.png
+@comment share/swat/help/Samba3-ByExample/images/ch7-dual-additive-LDAP-Ok.png
+@comment share/swat/help/Samba3-ByExample/images/ch7-dual-additive-LDAP.png
+@comment share/swat/help/Samba3-ByExample/images/ch7-fail-overLDAP.png
+@comment share/swat/help/Samba3-ByExample/images/ch7-singleLDAP.png
+@comment share/swat/help/Samba3-ByExample/images/ch8-migration.png
+@comment share/swat/help/Samba3-ByExample/images/chap4-net.png
+@comment share/swat/help/Samba3-ByExample/images/chap5-net.png
+@comment share/swat/help/Samba3-ByExample/images/chap6-net.png
+@comment share/swat/help/Samba3-ByExample/images/chap7-idresol.png
+@comment share/swat/help/Samba3-ByExample/images/chap7-net-Ar.png
+@comment share/swat/help/Samba3-ByExample/images/chap7-net2-Br.png
+@comment share/swat/help/Samba3-ByExample/images/chap9-ADSDC.png
+@comment share/swat/help/Samba3-ByExample/images/chap9-SambaDC.png
+@comment share/swat/help/Samba3-ByExample/images/imc-usermanager2.png
+@comment share/swat/help/Samba3-ByExample/images/lam-config.png
+@comment share/swat/help/Samba3-ByExample/images/lam-group-members.png
+@comment share/swat/help/Samba3-ByExample/images/lam-groups.png
+@comment share/swat/help/Samba3-ByExample/images/lam-hosts.png
+@comment share/swat/help/Samba3-ByExample/images/lam-login.png
+@comment share/swat/help/Samba3-ByExample/images/lam-users.png
+@comment share/swat/help/Samba3-ByExample/images/openmag.png
+@comment share/swat/help/Samba3-ByExample/images/wxpp001.png
+@comment share/swat/help/Samba3-ByExample/images/wxpp004.png
+@comment share/swat/help/Samba3-ByExample/images/wxpp006.png
+@comment share/swat/help/Samba3-ByExample/images/wxpp007.png
+@comment share/swat/help/Samba3-ByExample/images/wxpp008.png
+share/swat/help/Samba3-ByExample/index.html
+share/swat/help/Samba3-ByExample/ix01.html
+share/swat/help/Samba3-ByExample/kerberos.html
+share/swat/help/Samba3-ByExample/ntmigration.html
+share/swat/help/Samba3-ByExample/nw4migration.html
+share/swat/help/Samba3-ByExample/pr01.html
+share/swat/help/Samba3-ByExample/pr02.html
+share/swat/help/Samba3-ByExample/pr03.html
+share/swat/help/Samba3-ByExample/preface.html
+share/swat/help/Samba3-ByExample/primer.html
+share/swat/help/Samba3-ByExample/secure.html
+share/swat/help/Samba3-ByExample/simple.html
+share/swat/help/Samba3-ByExample/small.html
+share/swat/help/Samba3-ByExample/unixclients.html
+share/swat/help/Samba3-ByExample/upgrades.html
+share/swat/help/Samba3-Developers-Guide/CodingSuggestions.html
+share/swat/help/Samba3-Developers-Guide/Packaging.html
+share/swat/help/Samba3-Developers-Guide/architecture.html
+share/swat/help/Samba3-Developers-Guide/contributing.html
+share/swat/help/Samba3-Developers-Guide/debug.html
+share/swat/help/Samba3-Developers-Guide/devprinting.html
+share/swat/help/Samba3-Developers-Guide/index.html
+share/swat/help/Samba3-Developers-Guide/internals.html
+share/swat/help/Samba3-Developers-Guide/modules.html
+share/swat/help/Samba3-Developers-Guide/ntdomain.html
+share/swat/help/Samba3-Developers-Guide/parsing.html
+share/swat/help/Samba3-Developers-Guide/pr01.html
+share/swat/help/Samba3-Developers-Guide/pt01.html
+share/swat/help/Samba3-Developers-Guide/pt02.html
+share/swat/help/Samba3-Developers-Guide/pt03.html
+share/swat/help/Samba3-Developers-Guide/pt04.html
+share/swat/help/Samba3-Developers-Guide/pt05.html
+share/swat/help/Samba3-Developers-Guide/pwencrypt.html
+share/swat/help/Samba3-Developers-Guide/rpc-plugin.html
+share/swat/help/Samba3-Developers-Guide/tracing.html
+share/swat/help/Samba3-Developers-Guide/unix-smb.html
+share/swat/help/Samba3-Developers-Guide/vfs.html
+share/swat/help/Samba3-Developers-Guide/wins.html
+share/swat/help/Samba3-HOWTO/AccessControls.html
+share/swat/help/Samba3-HOWTO/AdvancedNetworkManagement.html
+share/swat/help/Samba3-HOWTO/Appendix.html
+share/swat/help/Samba3-HOWTO/Backup.html
+share/swat/help/Samba3-HOWTO/CUPS-printing.html
+share/swat/help/Samba3-HOWTO/ChangeNotes.html
+share/swat/help/Samba3-HOWTO/ClientConfig.html
+share/swat/help/Samba3-HOWTO/DNSDHCP.html
+share/swat/help/Samba3-HOWTO/FastStart.html
+share/swat/help/Samba3-HOWTO/InterdomainTrusts.html
+share/swat/help/Samba3-HOWTO/IntroSMB.html
+share/swat/help/Samba3-HOWTO/NT4Migration.html
+share/swat/help/Samba3-HOWTO/NetCommand.html
+share/swat/help/Samba3-HOWTO/NetworkBrowsing.html
+share/swat/help/Samba3-HOWTO/Other-Clients.html
+share/swat/help/Samba3-HOWTO/PolicyMgmt.html
+share/swat/help/Samba3-HOWTO/Portability.html
+share/swat/help/Samba3-HOWTO/ProfileMgmt.html
+share/swat/help/Samba3-HOWTO/SWAT.html
+share/swat/help/Samba3-HOWTO/SambaHA.html
+share/swat/help/Samba3-HOWTO/ServerType.html
+share/swat/help/Samba3-HOWTO/StandAloneServer.html
+share/swat/help/Samba3-HOWTO/TOSHpreface.html
+share/swat/help/Samba3-HOWTO/VFS.html
+share/swat/help/Samba3-HOWTO/apa.html
+share/swat/help/Samba3-HOWTO/bugreport.html
+share/swat/help/Samba3-HOWTO/cfgsmarts.html
+share/swat/help/Samba3-HOWTO/ch-ldap-tls.html
+share/swat/help/Samba3-HOWTO/ch47.html
+share/swat/help/Samba3-HOWTO/classicalprinting.html
+share/swat/help/Samba3-HOWTO/compiling.html
+share/swat/help/Samba3-HOWTO/diagnosis.html
+share/swat/help/Samba3-HOWTO/domain-member.html
+share/swat/help/Samba3-HOWTO/go01.html
+share/swat/help/Samba3-HOWTO/groupmapping.html
+share/swat/help/Samba3-HOWTO/idmapper.html
+@comment share/swat/help/Samba3-HOWTO/images/10small.png
+@comment share/swat/help/Samba3-HOWTO/images/11small.png
+@comment share/swat/help/Samba3-HOWTO/images/12small.png
+@comment share/swat/help/Samba3-HOWTO/images/13small.png
+@comment share/swat/help/Samba3-HOWTO/images/14small.png
+@comment share/swat/help/Samba3-HOWTO/images/1small.png
+@comment share/swat/help/Samba3-HOWTO/images/2small.png
+@comment share/swat/help/Samba3-HOWTO/images/3small.png
+@comment share/swat/help/Samba3-HOWTO/images/4small.png
+@comment share/swat/help/Samba3-HOWTO/images/5small.png
+@comment share/swat/help/Samba3-HOWTO/images/6small.png
+@comment share/swat/help/Samba3-HOWTO/images/7small.png
+@comment share/swat/help/Samba3-HOWTO/images/8small.png
+@comment share/swat/help/Samba3-HOWTO/images/9small.png
+@comment share/swat/help/Samba3-HOWTO/images/WME001.png
+@comment share/swat/help/Samba3-HOWTO/images/WME002.png
+@comment share/swat/help/Samba3-HOWTO/images/WME003.png
+@comment share/swat/help/Samba3-HOWTO/images/WME005.png
+@comment share/swat/help/Samba3-HOWTO/images/WME009.png
+@comment share/swat/help/Samba3-HOWTO/images/WME010.png
+@comment share/swat/help/Samba3-HOWTO/images/WME013.png
+@comment share/swat/help/Samba3-HOWTO/images/WME014.png
+@comment share/swat/help/Samba3-HOWTO/images/WXPP002.png
+@comment share/swat/help/Samba3-HOWTO/images/WXPP003.png
+@comment share/swat/help/Samba3-HOWTO/images/WXPP005.png
+@comment share/swat/help/Samba3-HOWTO/images/WXPP009.png
+@comment share/swat/help/Samba3-HOWTO/images/WXPP014.png
+@comment share/swat/help/Samba3-HOWTO/images/a_small.png
+@comment share/swat/help/Samba3-HOWTO/images/access1.png
+@comment share/swat/help/Samba3-HOWTO/images/browsing1.png
+@comment share/swat/help/Samba3-HOWTO/images/cups1.png
+@comment share/swat/help/Samba3-HOWTO/images/cups2.png
+@comment share/swat/help/Samba3-HOWTO/images/domain.png
+@comment share/swat/help/Samba3-HOWTO/images/ethereal1.png
+@comment share/swat/help/Samba3-HOWTO/images/ethereal2.png
+@comment share/swat/help/Samba3-HOWTO/images/idmap-gid2sid.png
+@comment share/swat/help/Samba3-HOWTO/images/idmap-sid2gid.png
+@comment share/swat/help/Samba3-HOWTO/images/idmap-sid2uid.png
+@comment share/swat/help/Samba3-HOWTO/images/idmap-store-gid2sid.png
+@comment share/swat/help/Samba3-HOWTO/images/idmap-uid2sid.png
+@comment share/swat/help/Samba3-HOWTO/images/idmap_winbind_no_loop.png
+@comment share/swat/help/Samba3-HOWTO/images/pdftoepsonusb.png
+@comment share/swat/help/Samba3-HOWTO/images/pdftosocket.png
+@comment share/swat/help/Samba3-HOWTO/images/trusts1.png
+@comment share/swat/help/Samba3-HOWTO/images/w2kp001.png
+@comment share/swat/help/Samba3-HOWTO/images/w2kp002.png
+@comment share/swat/help/Samba3-HOWTO/images/w2kp003.png
+@comment share/swat/help/Samba3-HOWTO/images/w2kp004.png
+@comment share/swat/help/Samba3-HOWTO/images/w2kp005.png
+@comment share/swat/help/Samba3-HOWTO/images/wxpp001.png
+@comment share/swat/help/Samba3-HOWTO/images/wxpp004.png
+@comment share/swat/help/Samba3-HOWTO/images/wxpp006.png
+@comment share/swat/help/Samba3-HOWTO/images/wxpp007.png
+@comment share/swat/help/Samba3-HOWTO/images/wxpp008.png
+share/swat/help/Samba3-HOWTO/index.html
+share/swat/help/Samba3-HOWTO/install.html
+share/swat/help/Samba3-HOWTO/integrate-ms-networks.html
+share/swat/help/Samba3-HOWTO/introduction.html
+share/swat/help/Samba3-HOWTO/ix01.html
+share/swat/help/Samba3-HOWTO/largefile.html
+share/swat/help/Samba3-HOWTO/locking.html
+share/swat/help/Samba3-HOWTO/migration.html
+share/swat/help/Samba3-HOWTO/msdfs.html
+share/swat/help/Samba3-HOWTO/optional.html
+share/swat/help/Samba3-HOWTO/pam.html
+share/swat/help/Samba3-HOWTO/passdb.html
+share/swat/help/Samba3-HOWTO/pr01.html
+share/swat/help/Samba3-HOWTO/pr02.html
+share/swat/help/Samba3-HOWTO/pr03.html
+share/swat/help/Samba3-HOWTO/problems.html
+share/swat/help/Samba3-HOWTO/rights.html
+share/swat/help/Samba3-HOWTO/samba-bdc.html
+share/swat/help/Samba3-HOWTO/samba-pdc.html
+share/swat/help/Samba3-HOWTO/securing-samba.html
+share/swat/help/Samba3-HOWTO/speed.html
+share/swat/help/Samba3-HOWTO/tdb.html
+share/swat/help/Samba3-HOWTO/troubleshooting.html
+share/swat/help/Samba3-HOWTO/type.html
+share/swat/help/Samba3-HOWTO/unicode.html
+share/swat/help/Samba3-HOWTO/upgrading-to-3.0.html
+share/swat/help/Samba3-HOWTO/winbind.html
+share/swat/help/manpages/eventlogadm.8.html
+share/swat/help/manpages/findsmb.1.html
+share/swat/help/manpages/idmap_ad.8.html
+share/swat/help/manpages/idmap_adex.8.html
+share/swat/help/manpages/idmap_autorid.8.html
+share/swat/help/manpages/idmap_hash.8.html
+share/swat/help/manpages/idmap_ldap.8.html
+share/swat/help/manpages/idmap_nss.8.html
+share/swat/help/manpages/idmap_rid.8.html
+share/swat/help/manpages/idmap_tdb.8.html
+share/swat/help/manpages/idmap_tdb2.8.html
+share/swat/help/manpages/index.html
+share/swat/help/manpages/ldb.3.html
+share/swat/help/manpages/ldbadd.1.html
+share/swat/help/manpages/ldbdel.1.html
+share/swat/help/manpages/ldbedit.1.html
+share/swat/help/manpages/ldbmodify.1.html
+share/swat/help/manpages/ldbrename.1.html
+share/swat/help/manpages/ldbsearch.1.html
+share/swat/help/manpages/lmhosts.5.html
+share/swat/help/manpages/log2pcap.1.html
+share/swat/help/manpages/net.8.html
+share/swat/help/manpages/nmbd.8.html
+share/swat/help/manpages/nmblookup.1.html
+share/swat/help/manpages/ntlm_auth.1.html
+share/swat/help/manpages/pam_winbind.8.html
+share/swat/help/manpages/pam_winbind.conf.5.html
+share/swat/help/manpages/pdbedit.8.html
+share/swat/help/manpages/profiles.1.html
+share/swat/help/manpages/rpcclient.1.html
+share/swat/help/manpages/samba.7.html
+share/swat/help/manpages/sharesec.1.html
+share/swat/help/manpages/smb.conf.5.html
+share/swat/help/manpages/smbcacls.1.html
+share/swat/help/manpages/smbclient.1.html
+share/swat/help/manpages/smbcontrol.1.html
+share/swat/help/manpages/smbcquotas.1.html
+share/swat/help/manpages/smbd.8.html
+share/swat/help/manpages/smbget.1.html
+share/swat/help/manpages/smbgetrc.5.html
+share/swat/help/manpages/smbpasswd.5.html
+share/swat/help/manpages/smbpasswd.8.html
+share/swat/help/manpages/smbspool.8.html
+share/swat/help/manpages/smbstatus.1.html
+share/swat/help/manpages/smbta-util.8.html
+share/swat/help/manpages/smbtar.1.html
+share/swat/help/manpages/smbtree.1.html
+share/swat/help/manpages/swat.8.html
+share/swat/help/manpages/tdbbackup.8.html
+share/swat/help/manpages/tdbdump.8.html
+share/swat/help/manpages/tdbtool.8.html
+share/swat/help/manpages/testparm.1.html
+share/swat/help/manpages/vfs_acl_tdb.8.html
+share/swat/help/manpages/vfs_acl_xattr.8.html
+share/swat/help/manpages/vfs_audit.8.html
+share/swat/help/manpages/vfs_cacheprime.8.html
+share/swat/help/manpages/vfs_cap.8.html
+share/swat/help/manpages/vfs_catia.8.html
+share/swat/help/manpages/vfs_commit.8.html
+share/swat/help/manpages/vfs_crossrename.8.html
+share/swat/help/manpages/vfs_default_quota.8.html
+share/swat/help/manpages/vfs_dirsort.8.html
+share/swat/help/manpages/vfs_extd_audit.8.html
+share/swat/help/manpages/vfs_fake_perms.8.html
+share/swat/help/manpages/vfs_fileid.8.html
+share/swat/help/manpages/vfs_full_audit.8.html
+share/swat/help/manpages/vfs_gpfs.8.html
+share/swat/help/manpages/vfs_netatalk.8.html
+share/swat/help/manpages/vfs_notify_fam.8.html
+share/swat/help/manpages/vfs_prealloc.8.html
+share/swat/help/manpages/vfs_preopen.8.html
+share/swat/help/manpages/vfs_readahead.8.html
+share/swat/help/manpages/vfs_readonly.8.html
+share/swat/help/manpages/vfs_recycle.8.html
+share/swat/help/manpages/vfs_scannedonly.8.html
+share/swat/help/manpages/vfs_shadow_copy.8.html
+share/swat/help/manpages/vfs_shadow_copy2.8.html
+share/swat/help/manpages/vfs_smb_traffic_analyzer.8.html
+share/swat/help/manpages/vfs_streams_depot.8.html
+share/swat/help/manpages/vfs_streams_xattr.8.html
+share/swat/help/manpages/vfs_time_audit.8.html
+share/swat/help/manpages/vfs_xattr_tdb.8.html
+share/swat/help/manpages/vfstest.1.html
+share/swat/help/manpages/wbinfo.1.html
+share/swat/help/manpages/winbind_krb5_locator.7.html
+share/swat/help/manpages/winbindd.8.html
+share/swat/help/welcome-no-samba-doc.html
+share/swat/help/welcome.html
+share/swat/images/globals.gif
+share/swat/images/home.gif
+share/swat/images/passwd.gif
+share/swat/images/printers.gif
+share/swat/images/samba.gif
+share/swat/images/shares.gif
+share/swat/images/status.gif
+share/swat/images/viewconfig.gif
+share/swat/images/wizard.gif
+share/swat/include/footer.html
+share/swat/include/header.html
+share/swat/lang/ja/help/welcome.html
+share/swat/lang/tr/help/welcome.html
+share/swat/lang/tr/images/globals.gif
+share/swat/lang/tr/images/home.gif
+share/swat/lang/tr/images/passwd.gif
+share/swat/lang/tr/images/printers.gif
+share/swat/lang/tr/images/samba.gif
+share/swat/lang/tr/images/shares.gif
+share/swat/lang/tr/images/status.gif
+share/swat/lang/tr/images/viewconfig.gif
+@dirrm share/swat/lang/tr/js
+@dirrm share/swat/lang/tr/include
+@dirrm share/swat/lang/tr/images
+@dirrm share/swat/lang/tr/help
+@dirrm share/swat/lang/tr
+@dirrm share/swat/lang/ja/js
+@dirrm share/swat/lang/ja/include
+@dirrm share/swat/lang/ja/images
+@dirrm share/swat/lang/ja/help
+@dirrm share/swat/lang/ja
+@dirrm share/swat/lang
+@dirrm share/swat/js
+@dirrm share/swat/include
+@dirrm share/swat/images
+@dirrm share/swat/help/manpages
+@comment @dirrm share/swat/help/Samba3-HOWTO/images
+@dirrm share/swat/help/Samba3-HOWTO
+@dirrm share/swat/help/Samba3-Developers-Guide
+@comment @dirrm share/swat/help/Samba3-ByExample/images
+@dirrm share/swat/help/Samba3-ByExample
+@dirrm share/swat/help
+@dirrm share/swat