Fri Mar 1 20:03:24 2019 UTC ()
Add a patch taken from upstream to allow smbd to work when
winbindd has been started but not configured.


(roy)
diff -r1.59 -r1.60 pkgsrc/net/samba4/Makefile
diff -r1.22 -r1.23 pkgsrc/net/samba4/distinfo
diff -r0 -r1.1 pkgsrc/net/samba4/patches/patch-source3_auth_token_util.c

cvs diff -r1.59 -r1.60 pkgsrc/net/samba4/Makefile (switch to unified diff)

--- pkgsrc/net/samba4/Makefile 2019/02/23 21:29:29 1.59
+++ pkgsrc/net/samba4/Makefile 2019/03/01 20:03:24 1.60
@@ -1,237 +1,237 @@ @@ -1,237 +1,237 @@
1# $NetBSD: Makefile,v 1.59 2019/02/23 21:29:29 jperkin Exp $ 1# $NetBSD: Makefile,v 1.60 2019/03/01 20:03:24 roy Exp $
2 2
3DISTNAME= samba-4.9.4 3DISTNAME= samba-4.9.4
4PKGREVISION= 2 4PKGREVISION= 3
5CATEGORIES= net 5CATEGORIES= net
6MASTER_SITES= http://download.samba.org/pub/samba/stable/ 6MASTER_SITES= http://download.samba.org/pub/samba/stable/
7 7
8MAINTAINER= pkgsrc-users@NetBSD.org 8MAINTAINER= pkgsrc-users@NetBSD.org
9HOMEPAGE= http://www.samba.org/ 9HOMEPAGE= http://www.samba.org/
10COMMENT= SMB/CIFS protocol server suite 10COMMENT= SMB/CIFS protocol server suite
11LICENSE= gnu-gpl-v3 11LICENSE= gnu-gpl-v3
12 12
13CONFLICTS+= ja-samba-[0-9]* winbind-[0-9]* 13CONFLICTS+= ja-samba-[0-9]* winbind-[0-9]*
14 14
15GCC_REQD+= 4.4 15GCC_REQD+= 4.4
16BUILD_DEPENDS+= libxslt-[0-9]*:../../textproc/libxslt 16BUILD_DEPENDS+= libxslt-[0-9]*:../../textproc/libxslt
17BUILD_DEPENDS+= docbook-xml-[0-9]*:../../textproc/docbook-xml 17BUILD_DEPENDS+= docbook-xml-[0-9]*:../../textproc/docbook-xml
18BUILD_DEPENDS+= docbook-xsl-[0-9]*:../../textproc/docbook-xsl 18BUILD_DEPENDS+= docbook-xsl-[0-9]*:../../textproc/docbook-xsl
19DEPENDS+= p5-Parse-Yapp>=1.05:../../devel/p5-Parse-Yapp 19DEPENDS+= p5-Parse-Yapp>=1.05:../../devel/p5-Parse-Yapp
20DEPENDS+= ${PYPKGPREFIX}-dns-[0-9]*:../../net/py-dns 20DEPENDS+= ${PYPKGPREFIX}-dns-[0-9]*:../../net/py-dns
21DEPENDS+= ${PYPKGPREFIX}-expat-[0-9]*:../../textproc/py-expat 21DEPENDS+= ${PYPKGPREFIX}-expat-[0-9]*:../../textproc/py-expat
22DEPENDS+= ${PYPKGPREFIX}-iso8601-[0-9]*:../../time/py-iso8601 22DEPENDS+= ${PYPKGPREFIX}-iso8601-[0-9]*:../../time/py-iso8601
23 23
24BUILD_DEFS+= VARBASE 24BUILD_DEFS+= VARBASE
25 25
26.include "../../mk/bsd.prefs.mk" 26.include "../../mk/bsd.prefs.mk"
27 27
28SMB_LIB?= ${PREFIX}/lib 28SMB_LIB?= ${PREFIX}/lib
29 29
30PKG_SYSCONFSUBDIR= samba 30PKG_SYSCONFSUBDIR= samba
31SMB_SHAREDSTATE?= ${PREFIX}/com 31SMB_SHAREDSTATE?= ${PREFIX}/com
32SMB_LOCALSTATE?= ${VARBASE} 32SMB_LOCALSTATE?= ${VARBASE}
33SMB_INFO?= ${PREFIX}/info 33SMB_INFO?= ${PREFIX}/info
34SMB_MAN?= ${PREFIX}/${PKGMANDIR} 34SMB_MAN?= ${PREFIX}/${PKGMANDIR}
35SMB_STATE?= ${VARBASE}/run 35SMB_STATE?= ${VARBASE}/run
36SMB_PRIVATE?= ${PKG_SYSCONFDIR}/private 36SMB_PRIVATE?= ${PKG_SYSCONFDIR}/private
37SMB_PID?= ${VARBASE}/run 37SMB_PID?= ${VARBASE}/run
38SMB_CACHE?= ${VARBASE}/run 38SMB_CACHE?= ${VARBASE}/run
39SMB_LOCK?= ${VARBASE}/run 39SMB_LOCK?= ${VARBASE}/run
40SMB_LOGFILEBASE?= ${VARBASE}/log 40SMB_LOGFILEBASE?= ${VARBASE}/log
41SMB_SOCKETS?= ${VARBASE}/run 41SMB_SOCKETS?= ${VARBASE}/run
42SMB_MODULES?= ${SMB_LIB}/samba 42SMB_MODULES?= ${SMB_LIB}/samba
43SMB_PRIVATELIB?= ${SMB_LIB}/samba/private 43SMB_PRIVATELIB?= ${SMB_LIB}/samba/private
44SMB_PRIVSOCKETS?= ${VARBASE}/run 44SMB_PRIVSOCKETS?= ${VARBASE}/run
45SMB_CONFIG?= ${PKG_SYSCONFDIR} 45SMB_CONFIG?= ${PKG_SYSCONFDIR}
46SMB_DATAROOT?= ${PREFIX}/share/samba 46SMB_DATAROOT?= ${PREFIX}/share/samba
47SMB_LOCALE?= ${PREFIX}/share/locale 47SMB_LOCALE?= ${PREFIX}/share/locale
48SMB_DOC?= ${PREFIX}/share/doc/samba 48SMB_DOC?= ${PREFIX}/share/doc/samba
49SMB_PAMMODULES?= ${SMB_LIB}/samba/security 49SMB_PAMMODULES?= ${SMB_LIB}/samba/security
50 50
51FILES_SUBST+= SMB_CONFIG=${SMB_CONFIG} 51FILES_SUBST+= SMB_CONFIG=${SMB_CONFIG}
52FILES_SUBST+= SMB_PID=${SMB_PID} 52FILES_SUBST+= SMB_PID=${SMB_PID}
53 53
54# mktemp is useful for the replacement adduser script, but don't require 54# mktemp is useful for the replacement adduser script, but don't require
55# a full dependency since it's not actually needed by samba. 55# a full dependency since it's not actually needed by samba.
56USE_TOOLS+= gmake mktemp perl:run pkg-config 56USE_TOOLS+= gmake mktemp perl:run pkg-config
57 57
58USE_GNU_ICONV= yes # FIXME: something doesn't work on NetBSD 58USE_GNU_ICONV= yes # FIXME: something doesn't work on NetBSD
59BROKEN_GETTEXT_DETECTION=yes 59BROKEN_GETTEXT_DETECTION=yes
60 60
61# Debugging 61# Debugging
62#CONFIGURE_ARGS+= -vvv 62#CONFIGURE_ARGS+= -vvv
63#CONFIGURE_ARGS+= --enable-developer 63#CONFIGURE_ARGS+= --enable-developer
64#CONFIGURE_ARGS+= --fatal-errors 64#CONFIGURE_ARGS+= --fatal-errors
65 65
66HAS_CONFIGURE= yes 66HAS_CONFIGURE= yes
67CONFIG_SHELL= ${PYTHONBIN} 67CONFIG_SHELL= ${PYTHONBIN}
68CONFIGURE_SCRIPT= ${WRKSRC}/buildtools/bin/waf 68CONFIGURE_SCRIPT= ${WRKSRC}/buildtools/bin/waf
69CONFIGURE_ARGS+= configure 69CONFIGURE_ARGS+= configure
70CONFIGURE_ARGS+= --prefix=${PREFIX} 70CONFIGURE_ARGS+= --prefix=${PREFIX}
71CONFIGURE_ARGS+= --infodir=${SMB_INFO} 71CONFIGURE_ARGS+= --infodir=${SMB_INFO}
72CONFIGURE_ARGS+= --mandir=${SMB_MAN} 72CONFIGURE_ARGS+= --mandir=${SMB_MAN}
73CONFIGURE_ARGS+= --datarootdir=${SMB_DATAROOT} 73CONFIGURE_ARGS+= --datarootdir=${SMB_DATAROOT}
74CONFIGURE_ARGS+= --libdir=${SAMBA_LIB} 74CONFIGURE_ARGS+= --libdir=${SAMBA_LIB}
75CONFIGURE_ARGS+= --localedir=${SMB_LOCALE} 75CONFIGURE_ARGS+= --localedir=${SMB_LOCALE}
76CONFIGURE_ARGS+= --docdir=${SMB_DOC} 76CONFIGURE_ARGS+= --docdir=${SMB_DOC}
77CONFIGURE_ARGS+= --with-statedir=${SMB_STATE} 77CONFIGURE_ARGS+= --with-statedir=${SMB_STATE}
78CONFIGURE_ARGS+= --with-privatedir=${SMB_PRIVATE} 78CONFIGURE_ARGS+= --with-privatedir=${SMB_PRIVATE}
79CONFIGURE_ARGS+= --with-piddir=${SMB_PID} 79CONFIGURE_ARGS+= --with-piddir=${SMB_PID}
80CONFIGURE_ARGS+= --with-cachedir=${SMB_CACHE} 80CONFIGURE_ARGS+= --with-cachedir=${SMB_CACHE}
81CONFIGURE_ARGS+= --with-lockdir=${SMB_LOCK} 81CONFIGURE_ARGS+= --with-lockdir=${SMB_LOCK}
82CONFIGURE_ARGS+= --with-logfilebase=${SMB_LOGFILEBASE} 82CONFIGURE_ARGS+= --with-logfilebase=${SMB_LOGFILEBASE}
83CONFIGURE_ARGS+= --with-sockets-dir=${SMB_SOCKETS} 83CONFIGURE_ARGS+= --with-sockets-dir=${SMB_SOCKETS}
84CONFIGURE_ARGS+= --with-modulesdir=${SMB_MODULES} 84CONFIGURE_ARGS+= --with-modulesdir=${SMB_MODULES}
85CONFIGURE_ARGS+= --with-privatelibdir=${SMB_PRIVATELIB} 85CONFIGURE_ARGS+= --with-privatelibdir=${SMB_PRIVATELIB}
86CONFIGURE_ARGS+= --with-privileged-socket-dir=${SMB_PRIVSOCKETS} 86CONFIGURE_ARGS+= --with-privileged-socket-dir=${SMB_PRIVSOCKETS}
87CONFIGURE_ARGS+= --with-configdir=${SMB_CONFIG} 87CONFIGURE_ARGS+= --with-configdir=${SMB_CONFIG}
88CONFIGURE_ARGS+= --with-libiconv=${BUILDLINK_PREFIX.iconv} 88CONFIGURE_ARGS+= --with-libiconv=${BUILDLINK_PREFIX.iconv}
89#CONFIGURE_ARGS+= --bundled-libraries=com_err 89#CONFIGURE_ARGS+= --bundled-libraries=com_err
90CONFIGURE_ARGS+= --abi-check-disable 90CONFIGURE_ARGS+= --abi-check-disable
91CONFIGURE_ARGS+= --disable-symbol-versions 91CONFIGURE_ARGS+= --disable-symbol-versions
92CONFIGURE_ARGS+= --enable-gnutls 92CONFIGURE_ARGS+= --enable-gnutls
93.if defined(MAKE_JOBS) && !empty(MAKE_JOBS) && !(defined(MAKE_JOBS_SAFE) && !empty(MAKE_JOBS_SAFE:M[nN][oO])) 93.if defined(MAKE_JOBS) && !empty(MAKE_JOBS) && !(defined(MAKE_JOBS_SAFE) && !empty(MAKE_JOBS_SAFE:M[nN][oO]))
94CONFIGURE_ARGS+= --jobs=${MAKE_JOBS} 94CONFIGURE_ARGS+= --jobs=${MAKE_JOBS}
95.else 95.else
96CONFIGURE_ARGS+= --jobs=1 96CONFIGURE_ARGS+= --jobs=1
97.endif 97.endif
98CONFIGURE_ARGS+= --without-gpgme 98CONFIGURE_ARGS+= --without-gpgme
99 99
100# Depends on ncurses, explicitly disable for now. 100# Depends on ncurses, explicitly disable for now.
101CONFIGURE_ARGS+= --without-regedit 101CONFIGURE_ARGS+= --without-regedit
102 102
103# for winbind option build. 103# for winbind option build.
104.if "${OPSYS}" != "Darwin" && "${OPSYS}" != "SunOS" 104.if "${OPSYS}" != "Darwin" && "${OPSYS}" != "SunOS"
105LDFLAGS+= -Wl,--allow-shlib-undefined 105LDFLAGS+= -Wl,--allow-shlib-undefined
106.endif 106.endif
107LDFLAGS+= ${BUILDLINK_LDADD.gettext} 107LDFLAGS+= ${BUILDLINK_LDADD.gettext}
108LDFLAGS+= ${COMPILER_RPATH_FLAG}${SMB_PRIVATELIB} 108LDFLAGS+= ${COMPILER_RPATH_FLAG}${SMB_PRIVATELIB}
109 109
110CFLAGS.SunOS+= -DHAVE_SOLARIS_GETGRENT_R 110CFLAGS.SunOS+= -DHAVE_SOLARIS_GETGRENT_R
111# workaround https://bugzilla.samba.org/show_bug.cgi?id=12502 for now 111# workaround https://bugzilla.samba.org/show_bug.cgi?id=12502 for now
112CFLAGS.SunOS+= -DMSG_NOSIGNAL=0 112CFLAGS.SunOS+= -DMSG_NOSIGNAL=0
113LDFLAGS.SunOS+= -lsocket -lnsl 113LDFLAGS.SunOS+= -lsocket -lnsl
114 114
115.include "options.mk" 115.include "options.mk"
116 116
117.if ${SHLIB_TYPE} == "dylib" 117.if ${SHLIB_TYPE} == "dylib"
118PLIST_SUBST+= SOEXT=dylib 118PLIST_SUBST+= SOEXT=dylib
119SAMBA_LIBEXT= dylib 119SAMBA_LIBEXT= dylib
120.else 120.else
121PLIST_SUBST+= SOEXT=so 121PLIST_SUBST+= SOEXT=so
122SAMBA_LIBEXT= so 122SAMBA_LIBEXT= so
123.endif 123.endif
124 124
125.if !defined(PWD_MKDB) 125.if !defined(PWD_MKDB)
126PWD_MKDB!= ${TYPE} pwd_mkdb 2>&1 | \ 126PWD_MKDB!= ${TYPE} pwd_mkdb 2>&1 | \
127 ${AWK} '/not found/ { print "pwd_mkdb"; exit } { print $$3 }' 127 ${AWK} '/not found/ { print "pwd_mkdb"; exit } { print $$3 }'
128MAKEFLAGS+= PWD_MKDB=${PWD_MKDB:Q} 128MAKEFLAGS+= PWD_MKDB=${PWD_MKDB:Q}
129.endif 129.endif
130FILES_SUBST+= MKTEMP=${MKTEMP:Q} 130FILES_SUBST+= MKTEMP=${MKTEMP:Q}
131FILES_SUBST+= PWD_MKDB=${PWD_MKDB:Q} 131FILES_SUBST+= PWD_MKDB=${PWD_MKDB:Q}
132 132
133PLIST_VARS+= 64bit 133PLIST_VARS+= 64bit
134.if !empty(LP64PLATFORMS:@.PLAT.@${MACHINE_PLATFORM:M${.PLAT.}}@) || \ 134.if !empty(LP64PLATFORMS:@.PLAT.@${MACHINE_PLATFORM:M${.PLAT.}}@) || \
135 (defined(ABI) && ${ABI} == "64") 135 (defined(ABI) && ${ABI} == "64")
136PLIST.64bit= yes 136PLIST.64bit= yes
137.else 137.else
138CONFIGURE_ARGS+= --without-ldb-lmdb 138CONFIGURE_ARGS+= --without-ldb-lmdb
139.endif 139.endif
140 140
141INSTALLATION_DIRS+= ${DOCDIR} ${EGDIR} 141INSTALLATION_DIRS+= ${DOCDIR} ${EGDIR}
142 142
143DOCDIR= share/doc/${PKGBASE} 143DOCDIR= share/doc/${PKGBASE}
144EGDIR= share/examples/${PKGBASE} 144EGDIR= share/examples/${PKGBASE}
145CONF_FILES= ${PREFIX}/${EGDIR}/smb.conf.default ${SMB_CONFIG}/smb.conf 145CONF_FILES= ${PREFIX}/${EGDIR}/smb.conf.default ${SMB_CONFIG}/smb.conf
146OWN_DIRS_PERMS= ${SMB_PRIVATE} ${REAL_ROOT_USER} ${REAL_ROOT_GROUP} 0700 146OWN_DIRS_PERMS= ${SMB_PRIVATE} ${REAL_ROOT_USER} ${REAL_ROOT_GROUP} 0700
147RCD_SCRIPTS+= samba nmbd smbd ${WINBINDD_RCD_SCRIPT} 147RCD_SCRIPTS+= samba nmbd smbd ${WINBINDD_RCD_SCRIPT}
148 148
149SUBST_CLASSES+= docbook 149SUBST_CLASSES+= docbook
150SUBST_MESSAGE.docbook= Fixing docbook URLs. 150SUBST_MESSAGE.docbook= Fixing docbook URLs.
151SUBST_FILES.docbook+= buildtools/wafsamba/wafsamba.py 151SUBST_FILES.docbook+= buildtools/wafsamba/wafsamba.py
152SUBST_FILES.docbook+= ctdb/doc/*.xml 152SUBST_FILES.docbook+= ctdb/doc/*.xml
153SUBST_FILES.docbook+= docs-xml/xslt/*.xsl 153SUBST_FILES.docbook+= docs-xml/xslt/*.xsl
154SUBST_FILES.docbook+= lib/ldb/docs/builddocs.sh 154SUBST_FILES.docbook+= lib/ldb/docs/builddocs.sh
155SUBST_FILES.docbook+= librpc/tools/*.xml 155SUBST_FILES.docbook+= librpc/tools/*.xml
156SUBST_FILES.docbook+= */*/man/*.xml 156SUBST_FILES.docbook+= */*/man/*.xml
157SUBST_FILES.docbook+= */*/*/man/*.xml 157SUBST_FILES.docbook+= */*/*/man/*.xml
158SUBST_STAGE.docbook= pre-configure 158SUBST_STAGE.docbook= pre-configure
159SUBST_SED.docbook= -e 's,http://www.oasis-open.org/docbook/xml,${PREFIX}/share/xml/docbook,g' 159SUBST_SED.docbook= -e 's,http://www.oasis-open.org/docbook/xml,${PREFIX}/share/xml/docbook,g'
160SUBST_SED.docbook+= -e 's,http://docbook.sourceforge.net/release/xsl/current,${PREFIX}/share/xsl/docbook,g' 160SUBST_SED.docbook+= -e 's,http://docbook.sourceforge.net/release/xsl/current,${PREFIX}/share/xsl/docbook,g'
161 161
162SUBST_CLASSES+= paths 162SUBST_CLASSES+= paths
163SUBST_MESSAGE.paths= Fixing paths. 163SUBST_MESSAGE.paths= Fixing paths.
164SUBST_FILES.paths= ${WRKDIR}/adduser.sh ${WRKDIR}/deluser.sh 164SUBST_FILES.paths= ${WRKDIR}/adduser.sh ${WRKDIR}/deluser.sh
165SUBST_FILES.paths+= source3/script/findsmb.in source4/heimdal_build/roken.h 165SUBST_FILES.paths+= source3/script/findsmb.in source4/heimdal_build/roken.h
166SUBST_STAGE.paths= pre-configure 166SUBST_STAGE.paths= pre-configure
167SUBST_SED.paths+= -e 's,@PERL@,${PERL5},g' 167SUBST_SED.paths+= -e 's,@PERL@,${PERL5},g'
168SUBST_VARS.paths= AWK CAT MKTEMP RM PWD_MKDB SH PERL PKG_SYSCONFBASE 168SUBST_VARS.paths= AWK CAT MKTEMP RM PWD_MKDB SH PERL PKG_SYSCONFBASE
169 169
170SUBST_CLASSES+= logpath 170SUBST_CLASSES+= logpath
171SUBST_MESSAGE.logpath= Fixing log path. 171SUBST_MESSAGE.logpath= Fixing log path.
172SUBST_FILES.logpath= examples/smb.conf.default 172SUBST_FILES.logpath= examples/smb.conf.default
173SUBST_STAGE.logpath= pre-configure 173SUBST_STAGE.logpath= pre-configure
174SUBST_SED.logpath+= -e 's,/usr/local/samba/var/log.%m,${SMB_LOGFILEBASE}/log.%m,g' 174SUBST_SED.logpath+= -e 's,/usr/local/samba/var/log.%m,${SMB_LOGFILEBASE}/log.%m,g'
175 175
176.if ${INIT_SYSTEM} == "rc.d" 176.if ${INIT_SYSTEM} == "rc.d"
177MESSAGE_SRC= ${PKGDIR}/MESSAGE.rcd 177MESSAGE_SRC= ${PKGDIR}/MESSAGE.rcd
178.endif 178.endif
179 179
180SMF_INSTANCES= smbd nmbd 180SMF_INSTANCES= smbd nmbd
181 181
182CTF_FILES_SKIP+= lib/libdcerpc-samr.so.* # empty 182CTF_FILES_SKIP+= lib/libdcerpc-samr.so.* # empty
183 183
184post-extract: 184post-extract:
185 ${CP} ${FILESDIR}/adduser.sh ${FILESDIR}/deluser.sh ${WRKDIR} 185 ${CP} ${FILESDIR}/adduser.sh ${FILESDIR}/deluser.sh ${WRKDIR}
186 186
187post-install: 187post-install:
188 ${RUN} cd ${WRKSRC}/docs-xml/registry; for f in *.reg; do \ 188 ${RUN} cd ${WRKSRC}/docs-xml/registry; for f in *.reg; do \
189 ${INSTALL_DATA} $${f} ${DESTDIR}${PREFIX}/${DOCDIR}/$${f}; \ 189 ${INSTALL_DATA} $${f} ${DESTDIR}${PREFIX}/${DOCDIR}/$${f}; \
190 done 190 done
191 ${INSTALL_SCRIPT} ${WRKDIR}/adduser.sh \ 191 ${INSTALL_SCRIPT} ${WRKDIR}/adduser.sh \
192 ${DESTDIR}${PREFIX}/${EGDIR}/adduser.sh 192 ${DESTDIR}${PREFIX}/${EGDIR}/adduser.sh
193 ${INSTALL_SCRIPT} ${WRKDIR}/deluser.sh \ 193 ${INSTALL_SCRIPT} ${WRKDIR}/deluser.sh \
194 ${DESTDIR}${PREFIX}/${EGDIR}/deluser.sh 194 ${DESTDIR}${PREFIX}/${EGDIR}/deluser.sh
195 ${INSTALL_DATA} ${WRKSRC}/examples/LDAP/samba.schema \ 195 ${INSTALL_DATA} ${WRKSRC}/examples/LDAP/samba.schema \
196 ${DESTDIR}${PREFIX}/${EGDIR} 196 ${DESTDIR}${PREFIX}/${EGDIR}
197 ${INSTALL_DATA} ${WRKSRC}/examples/smb.conf.default \ 197 ${INSTALL_DATA} ${WRKSRC}/examples/smb.conf.default \
198 ${DESTDIR}${PREFIX}/${EGDIR} 198 ${DESTDIR}${PREFIX}/${EGDIR}
199 199
200REPLACE_PERL+= librpc/tables.pl 200REPLACE_PERL+= librpc/tables.pl
201REPLACE_PERL+= pidl/pidl 201REPLACE_PERL+= pidl/pidl
202REPLACE_PERL+= pidl/tests/*.pl 202REPLACE_PERL+= pidl/tests/*.pl
203REPLACE_PERL+= script/*.pl 203REPLACE_PERL+= script/*.pl
204REPLACE_PERL+= script/findsmb.in 204REPLACE_PERL+= script/findsmb.in
205REPLACE_PERL+= source3/script/*.pl 205REPLACE_PERL+= source3/script/*.pl
206REPLACE_PERL+= source4/build/pasn1/pasn1.pl 206REPLACE_PERL+= source4/build/pasn1/pasn1.pl
207REPLACE_PERL+= source4/script/*.pl 207REPLACE_PERL+= source4/script/*.pl
208REPLACE_PERL+= third_party/nss_wrapper/nss_wrapper.pl 208REPLACE_PERL+= third_party/nss_wrapper/nss_wrapper.pl
209REPLACE_PYTHON+= buildtools/bin/waf 209REPLACE_PYTHON+= buildtools/bin/waf
210REPLACE_PYTHON+= source4/setup/wscript_build 210REPLACE_PYTHON+= source4/setup/wscript_build
211REPLACE_PYTHON+= source4/scripting/bin/* 211REPLACE_PYTHON+= source4/scripting/bin/*
212 212
213PYTHON_VERSIONS_ACCEPTED= 27 # as of 4.3.2 213PYTHON_VERSIONS_ACCEPTED= 27 # as of 4.3.2
214 214
215PY_PATCHPLIST= yes 215PY_PATCHPLIST= yes
216.include "../../lang/python/application.mk" 216.include "../../lang/python/application.mk"
217.include "../../lang/python/extension.mk" 217.include "../../lang/python/extension.mk"
218 218
219.if "${OPSYS}" == "Linux" 219.if "${OPSYS}" == "Linux"
220.include "../../devel/libuuid/buildlink3.mk" 220.include "../../devel/libuuid/buildlink3.mk"
221.endif 221.endif
222.include "../../archivers/libarchive/buildlink3.mk" 222.include "../../archivers/libarchive/buildlink3.mk"
223.include "../../converters/libiconv/buildlink3.mk" 223.include "../../converters/libiconv/buildlink3.mk"
224.include "../../databases/lmdb/buildlink3.mk" 224.include "../../databases/lmdb/buildlink3.mk"
225.include "../../databases/tdb/buildlink3.mk" 225.include "../../databases/tdb/buildlink3.mk"
226.include "../../devel/cmocka/buildlink3.mk" 226.include "../../devel/cmocka/buildlink3.mk"
227.include "../../devel/gettext-lib/buildlink3.mk" 227.include "../../devel/gettext-lib/buildlink3.mk"
228.include "../../devel/popt/buildlink3.mk" 228.include "../../devel/popt/buildlink3.mk"
229.include "../../devel/readline/buildlink3.mk" 229.include "../../devel/readline/buildlink3.mk"
230BUILDLINK_API_DEPENDS.talloc+= talloc>=2.1.9 230BUILDLINK_API_DEPENDS.talloc+= talloc>=2.1.9
231.include "../../devel/talloc/buildlink3.mk" 231.include "../../devel/talloc/buildlink3.mk"
232.include "../../devel/tevent/buildlink3.mk" 232.include "../../devel/tevent/buildlink3.mk"
233.include "../../devel/zlib/buildlink3.mk" 233.include "../../devel/zlib/buildlink3.mk"
234.include "../../security/gnutls/buildlink3.mk" 234.include "../../security/gnutls/buildlink3.mk"
235.include "../../security/libgcrypt/buildlink3.mk" 235.include "../../security/libgcrypt/buildlink3.mk"
236.include "../../textproc/jansson/buildlink3.mk" 236.include "../../textproc/jansson/buildlink3.mk"
237.include "../../mk/bsd.pkg.mk" 237.include "../../mk/bsd.pkg.mk"

cvs diff -r1.22 -r1.23 pkgsrc/net/samba4/distinfo (switch to unified diff)

--- pkgsrc/net/samba4/distinfo 2018/12/22 01:13:52 1.22
+++ pkgsrc/net/samba4/distinfo 2019/03/01 20:03:24 1.23
@@ -1,19 +1,20 @@ @@ -1,19 +1,20 @@
1$NetBSD: distinfo,v 1.22 2018/12/22 01:13:52 adam Exp $ 1$NetBSD: distinfo,v 1.23 2019/03/01 20:03:24 roy Exp $
2 2
3SHA1 (samba-4.9.4.tar.gz) = 7f8e15709e03e52d14bd9c85dd717366c106993f 3SHA1 (samba-4.9.4.tar.gz) = 7f8e15709e03e52d14bd9c85dd717366c106993f
4RMD160 (samba-4.9.4.tar.gz) = d0a43b85b85906f860de12b0b0abb1fcc5643b7a 4RMD160 (samba-4.9.4.tar.gz) = d0a43b85b85906f860de12b0b0abb1fcc5643b7a
5SHA512 (samba-4.9.4.tar.gz) = ecd9937caa12d409b9b4cf34982b1670346fa64c7ecd111b390e296771476e13eb7b868997bfe489f36b7bdc5c9fc3af42cd5ad276e9d85aaedfa8ac4cfc0617 5SHA512 (samba-4.9.4.tar.gz) = ecd9937caa12d409b9b4cf34982b1670346fa64c7ecd111b390e296771476e13eb7b868997bfe489f36b7bdc5c9fc3af42cd5ad276e9d85aaedfa8ac4cfc0617
6Size (samba-4.9.4.tar.gz) = 18053738 bytes 6Size (samba-4.9.4.tar.gz) = 18053738 bytes
7SHA1 (patch-buildtools_wafsamba_samba__install.py) = 82e91af3125931767df06821983d40e6f94140c3 7SHA1 (patch-buildtools_wafsamba_samba__install.py) = 82e91af3125931767df06821983d40e6f94140c3
8SHA1 (patch-buildtools_wafsamba_samba__pidl.py) = 1469d23fd2094ce0ecf979df6ff8cfd69fae53a6 8SHA1 (patch-buildtools_wafsamba_samba__pidl.py) = 1469d23fd2094ce0ecf979df6ff8cfd69fae53a6
9SHA1 (patch-buildtools_wafsamba_wscript) = 5604936a825675647157331df2333f4237c611f5 9SHA1 (patch-buildtools_wafsamba_wscript) = 5604936a825675647157331df2333f4237c611f5
10SHA1 (patch-docs-xml_wscript__build) = 5aa5cbf61882604b7ec9d19f0cd1537a23705ad0 10SHA1 (patch-docs-xml_wscript__build) = 5aa5cbf61882604b7ec9d19f0cd1537a23705ad0
11SHA1 (patch-dynconfig_wscript) = b77bc4aabaab2943962112c51dc539a65d015400 11SHA1 (patch-dynconfig_wscript) = b77bc4aabaab2943962112c51dc539a65d015400
12SHA1 (patch-lib_ldb_ldb__mdb_ldb__mdb.c) = e6d10c0eb44bbad4fbdd52a9e66116ead8e1818d 12SHA1 (patch-lib_ldb_ldb__mdb_ldb__mdb.c) = e6d10c0eb44bbad4fbdd52a9e66116ead8e1818d
13SHA1 (patch-lib_param_loadparm.h) = 0216b69d33d1e17260a446e11bee764116c52b18 13SHA1 (patch-lib_param_loadparm.h) = 0216b69d33d1e17260a446e11bee764116c52b18
14SHA1 (patch-lib_replace_wscript) = b6a042c2c13c0be78d7b64c0ce2efdaf4bbb1f3b 14SHA1 (patch-lib_replace_wscript) = b6a042c2c13c0be78d7b64c0ce2efdaf4bbb1f3b
15SHA1 (patch-lib_tevent_wscript) = fbbe2024096b57d651d90064f53489a974db9d7a 15SHA1 (patch-lib_tevent_wscript) = fbbe2024096b57d651d90064f53489a974db9d7a
16SHA1 (patch-nsswitch_wscript__build) = e8a6251e031ffa13d6347fade8891f7afd65d3eb 16SHA1 (patch-nsswitch_wscript__build) = e8a6251e031ffa13d6347fade8891f7afd65d3eb
 17SHA1 (patch-source3_auth_token_util.c) = fbe67b501fa4325c9fb3e37c51bc424847f5e908
17SHA1 (patch-source4_heimdal__build_roken.h) = ee535f8e7cc46a3487d95bc859438c476a88fe60 18SHA1 (patch-source4_heimdal__build_roken.h) = ee535f8e7cc46a3487d95bc859438c476a88fe60
18SHA1 (patch-source4_scripting_wsript_build) = bd4feddcaadf1c3d2d25eb7914e7b5843e4e9511 19SHA1 (patch-source4_scripting_wsript_build) = bd4feddcaadf1c3d2d25eb7914e7b5843e4e9511
19SHA1 (patch-source4_torture_local_nss__tests.c) = 8c878a8ed771ba996a7a325a1ad41bd13016c70c 20SHA1 (patch-source4_torture_local_nss__tests.c) = 8c878a8ed771ba996a7a325a1ad41bd13016c70c

File Added: pkgsrc/net/samba4/patches/Attic/patch-source3_auth_token_util.c
$NetBSD: patch-source3_auth_token_util.c,v 1.1 2019/03/01 20:03:24 roy Exp $

Taken from https://bugzilla.samba.org/show_bug.cgi?id=13697

From 1e8931dfc24a2576a3b1fe9115c4ccbfefbbd298 Mon Sep 17 00:00:00 2001
From: Stefan Metzmacher <metze@samba.org>
Date: Wed, 19 Dec 2018 09:38:33 +0100
Subject: [PATCH] s3:auth: ignore create_builtin_guests() failing without a
 valid idmap configuration

This happens on standalone servers, where winbindd is automatically
started by init scripts if it's installed. But it's not really
used and may not have a valid idmap configuration (
"idmap config * : range" has no default!)

BUG: https://bugzilla.samba.org/show_bug.cgi?id=13697

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Alexander Bokovoy <ab@samba.org>
(cherry picked from commit 865538fabaea33741f5fa542dbc3f2e08308c2c1)
---
 source3/auth/token_util.c | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/source3/auth/token_util.c b/source3/auth/token_util.c
index f5b0e6944335..ee38d6c9645b 100644
--- source3/auth/token_util.c
+++ source3/auth/token_util.c
@@ -745,7 +745,23 @@ NTSTATUS finalize_local_nt_token(struct security_token *result,
 		status = create_builtin_guests(domain_sid);
 		unbecome_root();
 
-		if (NT_STATUS_EQUAL(status, NT_STATUS_PROTOCOL_UNREACHABLE)) {
+		/*
+		 * NT_STATUS_PROTOCOL_UNREACHABLE:
+		 * => winbindd is not running.
+		 *
+		 * NT_STATUS_ACCESS_DENIED:
+		 * => no idmap config at all
+		 * and wbint_AllocateGid()/winbind_allocate_gid()
+		 * failed.
+		 *
+		 * NT_STATUS_NO_SUCH_GROUP:
+		 * => no idmap config at all and
+		 * "tdbsam:map builtin = no" means
+		 * wbint_Sids2UnixIDs() fails.
+		 */
+		if (NT_STATUS_EQUAL(status, NT_STATUS_PROTOCOL_UNREACHABLE) ||
+		    NT_STATUS_EQUAL(status, NT_STATUS_ACCESS_DENIED) ||
+		    NT_STATUS_EQUAL(status, NT_STATUS_NO_SUCH_GROUP)) {
 			/*
 			 * Add BUILTIN\Guests directly to token.
 			 * But only if the token already indicates