diff options
-rw-r--r-- | net/samba4/Makefile | 15 | ||||
-rw-r--r-- | net/samba4/distinfo | 4 | ||||
-rw-r--r-- | net/samba4/files/patch-lib__socket__interfaces.c | 50 | ||||
-rw-r--r-- | net/samba4/files/patch-nsswitch__winbind_nss_freebsd.c | 33 | ||||
-rw-r--r-- | net/samba4/files/patch-nsswitch__wins_freebsd.c | 10 | ||||
-rw-r--r-- | net/samba4/files/patch-nsswitch__wscript_build | 11 | ||||
-rw-r--r-- | net/samba4/files/patch-source4__lib__cmdline__wscript_build | 12 | ||||
-rw-r--r-- | net/samba4/files/patch-source4__libcli__resolve__dns_ex.c | 39 | ||||
-rw-r--r-- | net/samba4/files/patch-source4__smbd__wscript_build | 11 | ||||
-rw-r--r-- | net/samba4/files/samba4.in | 13 | ||||
-rw-r--r-- | net/samba4/pkg-plist | 10 |
11 files changed, 57 insertions, 151 deletions
diff --git a/net/samba4/Makefile b/net/samba4/Makefile index 57e979a8f29d..333b7167a204 100644 --- a/net/samba4/Makefile +++ b/net/samba4/Makefile @@ -3,7 +3,7 @@ PORTNAME?= ${SAMBA4_PORTNAME} PORTVERSION?= ${SAMBA4_VERSION} -PORTREVISION?= 1 +PORTREVISION?= 0 CATEGORIES?= net MASTER_SITES= ${MASTER_SITE_SAMBA} MASTER_SITE_SUBDIR= samba/stable samba/rc @@ -20,7 +20,7 @@ MAKE_JOBS_SAFE= yes SAMBA4_BASENAME= samba SAMBA4_PORTNAME= ${SAMBA4_BASENAME}4 -SAMBA4_VERSION= 4.0.4 +SAMBA4_VERSION= 4.0.7 SAMBA4_DISTNAME= ${SAMBA4_BASENAME}-${SAMBA4_VERSION:S|.p|pre|:S|.r|rc|:S|.t|tp|:S|.a|alpha|} WRKSRC?= ${WRKDIR}/${DISTNAME} @@ -100,8 +100,8 @@ BUILD_DEPENDS+= talloc>=2.0.8:${PORTSDIR}/devel/talloc RUN_DEPENDS+= talloc>=2.0.8:${PORTSDIR}/devel/talloc SAMBA4_BUNDLED_LIBS+= !talloc # tevent -BUILD_DEPENDS+= tevent>=0.9.17:${PORTSDIR}/devel/tevent -RUN_DEPENDS+= tevent>=0.9.17:${PORTSDIR}/devel/tevent +BUILD_DEPENDS+= tevent>=0.9.18:${PORTSDIR}/devel/tevent +RUN_DEPENDS+= tevent>=0.9.18:${PORTSDIR}/devel/tevent SAMBA4_BUNDLED_LIBS+= !tevent # tdb BUILD_DEPENDS+= tdb>=1.2.11:${PORTSDIR}/databases/tdb @@ -271,15 +271,14 @@ CONFIGURE_ARGS+= --with-dnsupdate CONFIGURE_ARGS+= --without-dnsupdate .endif -.if 0 +# https://bugzilla.samba.org/show_bug.cgi?id=9545 .if ${PORT_OPTIONS:MFAM_SUPPORT} USE_FAM= yes -CONFIGURE_ARGS+= --enable-fam +CONFIGURE_ARGS+= --with-fam WANT_EXP_MODULES+= vfs_notify_fam SAMBA4_MODULES+= vfs_notify_fam .else -CONFIGURE_ARGS+= --disable-fam -.endif +CONFIGURE_ARGS+= --without-fam .endif .if ${PORT_OPTIONS:MLDAP} diff --git a/net/samba4/distinfo b/net/samba4/distinfo index af71310d998d..c6f0b6288afa 100644 --- a/net/samba4/distinfo +++ b/net/samba4/distinfo @@ -1,2 +1,2 @@ -SHA256 (samba-4.0.4.tar.gz) = 20a84280155543892ce939e70482243396a9a8bfa77dcb4bf58328f7029772c5 -SIZE (samba-4.0.4.tar.gz) = 22055293 +SHA256 (samba-4.0.7.tar.gz) = e9ad36ff65a1d6b6a57f272aa08f844139ac2b5b1cb2257f1236aa2a8c864245 +SIZE (samba-4.0.7.tar.gz) = 22078244 diff --git a/net/samba4/files/patch-lib__socket__interfaces.c b/net/samba4/files/patch-lib__socket__interfaces.c deleted file mode 100644 index 14ad00e5b693..000000000000 --- a/net/samba4/files/patch-lib__socket__interfaces.c +++ /dev/null @@ -1,50 +0,0 @@ -https://bugzilla.samba.org/show_bug.cgi?id=9666 - ---- ./lib/socket/interfaces.c.orig 2012-10-02 08:24:40.000000000 +0000 -+++ ./lib/socket/interfaces.c 2013-02-18 06:52:41.529874139 +0000 -@@ -185,7 +185,22 @@ - - memcpy(&ifaces[total].ip, ifptr->ifa_addr, copy_size); - memcpy(&ifaces[total].netmask, ifptr->ifa_netmask, copy_size); -+ /* calculate broadcast address */ -+#if defined(HAVE_IPV6) -+ if (ifptr->ifa_addr->sa_family == AF_INET6) { -+ struct sockaddr_in6 *sin6 = -+ (struct sockaddr_in6 *)ifptr->ifa_addr; -+ struct in6_addr *in6 = -+ (struct in6_addr *)&sin6->sin6_addr; - -+ if (IN6_IS_ADDR_LINKLOCAL(in6) || IN6_IS_ADDR_V4COMPAT(in6)) { -+ sin6->sin6_scope_id = if_nametoindex(ifptr->ifa_name); -+ continue; -+ } -+ /* IPv6 does not have broadcast it uses multicast. */ -+ memset(&ifaces[total].bcast, '\0', copy_size); -+ } else -+#endif - if (ifaces[total].flags & (IFF_BROADCAST|IFF_LOOPBACK)) { - make_bcast(&ifaces[total].bcast, - &ifaces[total].ip, -@@ -195,20 +210,8 @@ - memcpy(&ifaces[total].bcast, - ifptr->ifa_dstaddr, - copy_size); --#if defined(HAVE_IPV6) -- } else if (ifptr->ifa_addr->sa_family == AF_INET6) { -- const struct sockaddr_in6 *sin6 = -- (const struct sockaddr_in6 *)ifptr->ifa_addr; -- const struct in6_addr *in6 = -- (const struct in6_addr *)&sin6->sin6_addr; -- -- if (IN6_IS_ADDR_LINKLOCAL(in6) || IN6_IS_ADDR_V4COMPAT(in6)) { -- continue; -- } -- /* IPv6 does not have broadcast it uses multicast. */ -- memset(&ifaces[total].bcast, '\0', copy_size); --#endif -- } else { -+ } -+ else { - continue; - } - diff --git a/net/samba4/files/patch-nsswitch__winbind_nss_freebsd.c b/net/samba4/files/patch-nsswitch__winbind_nss_freebsd.c index 103059a96790..98822689c5e7 100644 --- a/net/samba4/files/patch-nsswitch__winbind_nss_freebsd.c +++ b/net/samba4/files/patch-nsswitch__winbind_nss_freebsd.c @@ -1,5 +1,5 @@ --- ./nsswitch/winbind_nss_freebsd.c.orig 2012-10-02 08:24:41.000000000 +0000 -+++ ./nsswitch/winbind_nss_freebsd.c 2013-03-13 09:40:37.285778609 +0000 ++++ ./nsswitch/winbind_nss_freebsd.c 2013-07-03 01:27:00.339935089 +0000 @@ -5,6 +5,7 @@ routines against Samba winbind/Windows NT Domain @@ -8,7 +8,32 @@ This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public -@@ -53,6 +54,9 @@ +@@ -23,7 +24,6 @@ + #include "winbind_client.h" + + /* Make sure that the module gets registered needed by freebsd 5.1 */ +- + extern enum nss_status _nss_winbind_getgrent_r(struct group *, char *, size_t, + int *); + extern enum nss_status _nss_winbind_getgrnam_r(const char *, struct group *, +@@ -32,6 +32,8 @@ + size_t, int *); + extern enum nss_status _nss_winbind_setgrent(void); + extern enum nss_status _nss_winbind_endgrent(void); ++extern enum nss_status _nss_winbind_initgroups_dyn(char *, gid_t, long int *, ++ long int *, gid_t **, long int , int *); + + extern enum nss_status _nss_winbind_getpwent_r(struct passwd *, char *, size_t, + int *); +@@ -41,6 +43,7 @@ + size_t, int *); + extern enum nss_status _nss_winbind_setpwent(void); + extern enum nss_status _nss_winbind_endpwent(void); ++ns_mtab *nss_module_register(const char *, unsigned int *, nss_module_unregister_fn *); + + NSS_METHOD_PROTOTYPE(__nss_compat_getgrnam_r); + NSS_METHOD_PROTOTYPE(__nss_compat_getgrgid_r); +@@ -53,6 +56,9 @@ NSS_METHOD_PROTOTYPE(__nss_compat_getpwent_r); NSS_METHOD_PROTOTYPE(__nss_compat_setpwent); NSS_METHOD_PROTOTYPE(__nss_compat_endpwent); @@ -18,7 +43,7 @@ static ns_mtab methods[] = { { NSDB_GROUP, "getgrnam_r", __nss_compat_getgrnam_r, _nss_winbind_getgrnam_r }, -@@ -60,6 +64,7 @@ +@@ -60,6 +66,7 @@ { NSDB_GROUP, "getgrent_r", __nss_compat_getgrent_r, _nss_winbind_getgrent_r }, { NSDB_GROUP, "setgrent", __nss_compat_setgrent, _nss_winbind_setgrent }, { NSDB_GROUP, "endgrent", __nss_compat_endgrent, _nss_winbind_endgrent }, @@ -26,7 +51,7 @@ { NSDB_PASSWD, "getpwnam_r", __nss_compat_getpwnam_r, _nss_winbind_getpwnam_r }, { NSDB_PASSWD, "getpwuid_r", __nss_compat_getpwuid_r, _nss_winbind_getpwuid_r }, -@@ -69,6 +74,71 @@ +@@ -69,6 +76,71 @@ }; diff --git a/net/samba4/files/patch-nsswitch__wins_freebsd.c b/net/samba4/files/patch-nsswitch__wins_freebsd.c index b526acc53730..1b47c702d3a1 100644 --- a/net/samba4/files/patch-nsswitch__wins_freebsd.c +++ b/net/samba4/files/patch-nsswitch__wins_freebsd.c @@ -1,6 +1,6 @@ ---- ./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 @@ +--- ./nsswitch/wins_freebsd.c.orig 2013-07-03 01:06:20.689871582 +0000 ++++ ./nsswitch/wins_freebsd.c 2013-07-03 01:33:02.779873084 +0000 +@@ -0,0 +1,81 @@ +/* + Unix SMB/CIFS implementation. + @@ -24,9 +24,11 @@ + +#include "winbind_client.h" + -+NSS_STATUS _nss_wins_gethostbyname2_r(const char *name, int af, struct hostent *he, ++extern enum nss_status _nss_wins_gethostbyname2_r(const char *name, int af, struct hostent *he, + char *buffer, size_t buflen, int *h_errnop); + ++ns_mtab *nss_module_register(const char *source, unsigned int *, nss_module_unregister_fn *); ++ +NSS_METHOD_PROTOTYPE(__nss_wins_freebsd_gethostbyname2_r); + +static ns_mtab methods[] = diff --git a/net/samba4/files/patch-nsswitch__wscript_build b/net/samba4/files/patch-nsswitch__wscript_build deleted file mode 100644 index b37a6547bd22..000000000000 --- a/net/samba4/files/patch-nsswitch__wscript_build +++ /dev/null @@ -1,11 +0,0 @@ ---- ./nsswitch/wscript_build.orig 2012-12-04 10:07:44.000000000 +0000 -+++ ./nsswitch/wscript_build 2013-02-02 17:36:40.409893341 +0000 -@@ -42,7 +42,7 @@ - bld.SAMBA_LIBRARY('nss_winbind', - source='winbind_nss_linux.c winbind_nss_freebsd.c', - deps='winbind-client', -- realname='libnss_winbind.so.1', -+ realname='nss_winbind.so.1', - vnum='1') - - elif (host_os.rfind('netbsd') > -1): diff --git a/net/samba4/files/patch-source4__lib__cmdline__wscript_build b/net/samba4/files/patch-source4__lib__cmdline__wscript_build deleted file mode 100644 index fe6e01345cf2..000000000000 --- a/net/samba4/files/patch-source4__lib__cmdline__wscript_build +++ /dev/null @@ -1,12 +0,0 @@ -https://bugzilla.samba.org/show_bug.cgi?id=9664 - ---- ./source4/lib/cmdline/wscript_build.orig 2013-02-02 21:15:00.669868288 +0000 -+++ ./source4/lib/cmdline/wscript_build 2013-02-02 21:16:06.379875983 +0000 -@@ -4,6 +4,7 @@ - source='credentials.c', - autoproto='credentials.h', - public_deps='samba-credentials popt', -+ deps='replace', - private_library=True) - - bld.SAMBA_SUBSYSTEM('POPT_SAMBA', diff --git a/net/samba4/files/patch-source4__libcli__resolve__dns_ex.c b/net/samba4/files/patch-source4__libcli__resolve__dns_ex.c deleted file mode 100644 index 04f0d5a8745b..000000000000 --- a/net/samba4/files/patch-source4__libcli__resolve__dns_ex.c +++ /dev/null @@ -1,39 +0,0 @@ -https://bugzilla.samba.org/show_bug.cgi?id=9656 - -From 30d391abd0909b4838b87ddedf4d5fe037c514cf Mon Sep 17 00:00:00 2001 -From: Landon Fuller <landonf@bikemonkey.org> -Date: Sat, 16 Feb 2013 22:57:40 -0500 -Subject: [PATCH] Fallback to the internal resolver on EAI_FAIL. - -On Linux, non-RFC 1034-complaint names (such as gc._msdsc.example.org) -will result in the resolver returning the non-POSIX EAI_NODATA. In that -case, the case statement here would fall back on the internal resolver, -allowing resolution to complete successfully. - -On FreeBSD, the libc resolver uses the same validation code, but -the POSIX result of EAI_FAIL is returned instead of EAI_NODATA. Since -there was no case for this error code, no fallback to the internal -resolver would occur. This led to replication failing on FreeBSD. ---- - source4/libcli/resolve/dns_ex.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/source4/libcli/resolve/dns_ex.c b/source4/libcli/resolve/dns_ex.c -index bc64e8d..3f47898 100644 ---- ./source4/libcli/resolve/dns_ex.c -+++ ./source4/libcli/resolve/dns_ex.c -@@ -400,8 +400,10 @@ static void run_child_getaddrinfo(struct dns_ex_state *state, int fd) - #ifdef EAI_NODATA - case EAI_NODATA: - #endif -+ case EAI_FAIL: -+ /* Linux returns EAI_NODATA on non-RFC1034-compliant names. FreeBSD returns EAI_FAIL */ - case EAI_NONAME: -- /* getaddrinfo() doesn't handle CNAME records */ -+ /* getaddrinfo() doesn't handle CNAME or non-RFC1034 compatible records */ - run_child_dns_lookup(state, fd); - return; - default: --- -1.8.1.3 - diff --git a/net/samba4/files/patch-source4__smbd__wscript_build b/net/samba4/files/patch-source4__smbd__wscript_build deleted file mode 100644 index 4b7da154c7bd..000000000000 --- a/net/samba4/files/patch-source4__smbd__wscript_build +++ /dev/null @@ -1,11 +0,0 @@ ---- ./source4/smbd/wscript_build.orig 2012-12-04 10:07:44.000000000 +0000 -+++ ./source4/smbd/wscript_build 2013-01-27 01:44:15.919866417 +0000 -@@ -17,7 +17,7 @@ - enabled=bld.AD_DC_BUILD_IS_ENABLED() - ) - --bld.SAMBA_BINARY('samba', -+bld.SAMBA_BINARY('samba4', - source='server.c', - subsystem_name='service', - deps='''events process_model service samba-hostconfig samba-util POPT_SAMBA diff --git a/net/samba4/files/samba4.in b/net/samba4/files/samba4.in index c59a3b20029a..ffdbbe8c9565 100644 --- a/net/samba4/files/samba4.in +++ b/net/samba4/files/samba4.in @@ -39,9 +39,10 @@ samba4_piddir=$(${testparm_command} --parameter-name='pid directory' 2>/dev/null # Runtime options start_precmd="samba4_prestart" restart_precmd="samba4_checkconfig" -command="%%PREFIX%%/sbin/${name}" +command_name="samba" +command="%%PREFIX%%/sbin/${command_name}" command_args=${samba4_configfile_arg} -pidfile="%%SAMBA4_RUNDIR%%/samba.pid" +pidfile="%%SAMBA4_RUNDIR%%/${command_name}.pid" # Requirements required_files="${samba4_config}" required_dirs="${samba4_lockdir}" @@ -58,12 +59,12 @@ samba4_checkconfig() { samba4_prestart() { # Make sure we have our RUNDIR, even if it's on a tmpfs - if [ ! -d "%%SAMBA4_RUNDIR%%" -a ! -e "%%SAMBA4_RUNDIR%%" ]; then - install -m 0755 -d "%%SAMBA4_RUNDIR%%" + if [ ! -d "${samba4_piddir}" -a ! -e "${samba4_piddir}" ]; then + install -m 0755 -d "${samba4_piddir}" fi # Remove smbd.pid before starting up samba(needed for s3fs) - if [ -e "%%SAMBA4_RUNDIR%%/smbd.pid" ] ; then - rm -f "%%SAMBA4_RUNDIR%%/smbd.pid" + if [ -e "${samba4_piddir}/smbd.pid" ] ; then + rm -f "${samba4_piddir}/smbd.pid" fi } diff --git a/net/samba4/pkg-plist b/net/samba4/pkg-plist index c95c667dca37..7a6e5e72efd2 100644 --- a/net/samba4/pkg-plist +++ b/net/samba4/pkg-plist @@ -30,16 +30,16 @@ bin/smbspool bin/smbstatus bin/smbta-util bin/smbtorture +bin/smbtar bin/smbtree bin/testparm bin/wbinfo sbin/nmbd -sbin/samba4 +sbin/samba sbin/samba_dnsupdate sbin/samba_kcc sbin/samba_spnupdate sbin/samba_upgradedns -sbin/samba_upgradeprovision sbin/smbd %%SWAT%%sbin/swat %%WINBIND%%sbin/winbindd @@ -403,6 +403,7 @@ lib/shared-modules/vfs/full_audit.so lib/shared-modules/vfs/linux_xfs_sgid.so lib/shared-modules/vfs/media_harmony.so lib/shared-modules/vfs/netatalk.so +@comment vfs_notify_fam lib/shared-modules/vfs/notify_fam.so lib/shared-modules/vfs/posix_eadb.so lib/shared-modules/vfs/preopen.so lib/shared-modules/vfs/readahead.so @@ -478,6 +479,7 @@ libdata/pkgconfig/smbclient-raw.pc libdata/pkgconfig/smbsharemodes.pc libdata/pkgconfig/torture.pc libdata/pkgconfig/wbclient.pc +%%DEVELOPER%%%%PYTHON_SITELIBDIR%%/samba/socket_wrapper.so %%PYTHON_SITELIBDIR%%/samba/__init__.py %%PYTHON_SITELIBDIR%%/samba/_glue.so %%PYTHON_SITELIBDIR%%/samba/_ldb.so @@ -519,6 +521,7 @@ libdata/pkgconfig/wbclient.pc %%PYTHON_SITELIBDIR%%/samba/dcerpc/wkssvc.so %%PYTHON_SITELIBDIR%%/samba/dcerpc/xattr.so %%PYTHON_SITELIBDIR%%/samba/dckeytab.so +%%PYTHON_SITELIBDIR%%/samba/descriptor.py %%PYTHON_SITELIBDIR%%/samba/drs_utils.py %%PYTHON_SITELIBDIR%%/samba/dsdb.so %%PYTHON_SITELIBDIR%%/samba/external/__init__.py @@ -702,7 +705,6 @@ libdata/pkgconfig/wbclient.pc %%PYTHON_SITELIBDIR%%/samba/provision/__init__.py %%PYTHON_SITELIBDIR%%/samba/provision/backend.py %%PYTHON_SITELIBDIR%%/samba/provision/common.py -%%PYTHON_SITELIBDIR%%/samba/provision/descriptor.py %%PYTHON_SITELIBDIR%%/samba/provision/sambadns.py %%PYTHON_SITELIBDIR%%/samba/registry.so %%PYTHON_SITELIBDIR%%/samba/samba3/__init__.py @@ -716,7 +718,7 @@ libdata/pkgconfig/wbclient.pc %%PYTHON_SITELIBDIR%%/samba/security.so %%PYTHON_SITELIBDIR%%/samba/sites.py %%PYTHON_SITELIBDIR%%/samba/smb.so -%%DEVELOPER%%%%PYTHON_SITELIBDIR%%/samba/socket_wrapper.so +%%PYTHON_SITELIBDIR%%/samba/tdb_util.py %%PYTHON_SITELIBDIR%%/samba/tests/__init__.py %%PYTHON_SITELIBDIR%%/samba/tests/auth.py %%PYTHON_SITELIBDIR%%/samba/tests/blackbox/__init__.py |