aboutsummaryrefslogtreecommitdiffstats
path: root/main/samba
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2015-04-04 11:04:48 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2015-04-04 17:12:12 +0000
commitfe0ba101290309b6f8685070054d089d6f0c4b28 (patch)
tree18269f05248cbb8a4181a411e70fa19f4562176c /main/samba
parent28c7fb5e58f00e8cc18fbbd351b369343a511657 (diff)
downloadaports-fe0ba101290309b6f8685070054d089d6f0c4b28.tar.bz2
aports-fe0ba101290309b6f8685070054d089d6f0c4b28.tar.xz
main/samba: upgrade to 4.2
Diffstat (limited to 'main/samba')
-rw-r--r--main/samba/APKBUILD338
-rw-r--r--main/samba/heimdal-1.5-api.patch23
-rw-r--r--main/samba/wrappers.patch51
3 files changed, 342 insertions, 70 deletions
diff --git a/main/samba/APKBUILD b/main/samba/APKBUILD
index 7021fc87f2..8e33dd6dec 100644
--- a/main/samba/APKBUILD
+++ b/main/samba/APKBUILD
@@ -1,27 +1,52 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=samba
-pkgver=4.1.17
+pkgver=4.2.0
pkgrel=0
pkgdesc="Tools to access a server's filespace and printers via SMB"
url="http://www.samba.org"
arch="all"
license="GPL3"
-subpackages="$pkgname-dev $pkgname-doc $pkgname-common $pkgname-initscript
- libsmbclient $pkgname-client
- $pkgname-dc $pkgname-dc-libs:_dc_libs
- $pkgname-winbind libwbclient $pkgname-winbind-clients:_winbind_clients
+subpackages="$pkgname-dev $pkgname-doc
+ $pkgname-common
+ $pkgname-initscript
+ $pkgname-common-tools:_common_tools
+ $pkgname-common-libs:_common_libs
+ libsmbclient
+ $pkgname-client
+ $pkgname-client-libs:_client_libs
+ $pkgname-dc
+ $pkgname-dc-libs:_dc_libs
+
+ $pkgname-winbind
+ libwbclient
+ $pkgname-winbind-clients:_winbind_clients
$pkgname-winbind-krb5-locator:_winbind_krb5_locator
- $pkgname-pidl py-$pkgname:_py $pkgname-test:_test
- $pkgname-libs-py:_libs_py $pkgname-libs"
-depends="$pkgname-initscript $pkgname-client"
+ $pkgname-libnss-winbind:_libnss_winbind
+
+ $pkgname-server
+ $pkgname-server-libs:_server_libs
+ $pkgname-ntdb-tools:_ntdb_tools
+
+ $pkgname-pidl
+ py-$pkgname:_py
+ $pkgname-test:_test
+ $pkgname-libs-py:_libs_py
+ $pkgname-libs"
+
+# samba backage only pulls in samba-server. This is helps to verify that
+# no libs or files are forgotten during packaging
+depends="$pkgname-server"
+
# note that heimdal is required (over mit krb5) for AD DC functionality
makedepends="popt-dev ncurses-dev openldap-dev heimdal-dev e2fsprogs-dev
libiconv-dev talloc-dev tdb-dev ldb-dev cups-dev python-dev libcap-dev
- tevent-dev iniparser-dev perl subunit-dev docbook-xsl"
+ tevent-dev iniparser-dev perl subunit-dev docbook-xsl libarchive-dev"
source="http://us1.samba.org/samba/ftp/stable/samba-$pkgver.tar.gz
fix-libreplace.patch
musl-fix-headers.patch
uclibc-xattr-create.patch
+ wrappers.patch
+ heimdal-1.5-api.patch
samba.initd
samba.confd
samba.logrotate
@@ -36,6 +61,7 @@ prepare() {
*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
esac
done
+ rm source4/heimdal_build/krb5-types.h || return 1
}
build() {
@@ -54,6 +80,7 @@ build() {
--with-piddir=/var/run/samba \
--with-logfilebase=/var/log/samba \
--without-pam \
+ --without-systemd \
--with-ads \
--with-shared-modules=idmap_ad,idmap_rid,idmap_adex,idmap_hash,idmap_tdb2,pdb_tdbsam,pdb_ldap,pdb_ads,pdb_smbpasswd,pdb_wbc_sam,pdb_samba4,auth_unix,auth_wbc,auth_server,auth_netlogond,auth_script,auth_samba4 \
--enable-cups \
@@ -70,6 +97,7 @@ package() {
install -d "$pkgdir"/var/log/samba \
"$pkgdir"/usr/share/doc/samba \
|| return 1
+ install -d -m 0755 "$pkgdir"/var/lib/samba/sysvol || return 1
install -D packaging/RHEL/setup/smbusers "$pkgdir"/etc/samba/smbusers \
|| return 1
install -m 0744 packaging/printing/smbprint "$pkgdir"/usr/bin/smbprint \
@@ -95,93 +123,132 @@ _mv_files() {
common() {
pkgdesc="Samba common files for both client an servers"
depends=
- # we have moved libnetapi to samba-common
- replaces="winbind samba"
cd "$pkgdir"
_mv_files \
- usr/bin/net \
- usr/bin/pdbedit \
- usr/bin/profiles \
- usr/bin/smbcontrol \
- usr/bin/testparm \
+ etc \
usr/share/samba/codepages \
- usr/lib/libnetapi.so.* \
- var/run/samba \
- var/cache/samba \
- var/log/samba \
+ var \
|| return 1
- install -d -m 700 "$subpkgdir"/var/lib/samba/private
+ install -d -m700 "$subpkgdir"/var/lib/samba/private
}
# common-libs is an attempt to avoid libpython dependency for libsmbclient
_libs_py() {
pkgdesc="Libraries that require libpython"
- replaces="samba-libs"
depends=
cd "$pkgdir"
_mv_files \
- usr/lib/samba/libsamba-net.so \
- usr/lib/samba/libsamba_python.so \
+ usr/lib/samba/libsamba-net-samba4.so \
+ usr/lib/samba/libsamba-python-samba4.so \
|| return 1
return 0
}
+_common_tools() {
+ pkgdesc="Tools for Samba servers and clients"
+ depends=
+ cd "$pkgdir"
+ _mv_files \
+ usr/bin/net \
+ usr/bin/pdbedit \
+ usr/bin/profiles \
+ usr/bin/smbcontrol \
+ usr/bin/smbpasswd \
+ usr/bin/testparm \
+ usr/lib/samba/libgpo-samba4.so \
+ usr/lib/samba/libnet-keytab-samba4.so \
+ || return 1
+}
+
+_common_libs() {
+ pkgdesc="Samba libraries shared by common-tools and servers"
+ depends=""
+ cd "$pkgdir"
+ _mv_files \
+ usr/lib/libnetapi.so.0 \
+ usr/lib/libsmbldap.so.0 \
+ usr/lib/samba/libads-samba4.so \
+ usr/lib/samba/libauth-samba4.so \
+ usr/lib/samba/libdfs-server-ad-samba4.so \
+ usr/lib/samba/libndr-samba4.so \
+ usr/lib/samba/libnpa-tstream-samba4.so \
+ usr/lib/samba/libprinting-migrate-samba4.so \
+ usr/lib/samba/libsmbd-base-samba4.so \
+ usr/lib/samba/libsmbd-conn-samba4.so \
+ usr/lib/samba/libsmbldaphelper-samba4.so \
+ usr/lib/samba/pdb \
+ || return 1
+}
+
libsmbclient() {
pkgdesc="The SMB client library"
- replaces="samba"
depends=
cd "$pkgdir"
_mv_files \
usr/lib/libsmbclient.so.* \
- usr/lib/libsmbsharemodes.so.* \
|| return 1
}
client() {
- pkgdesc="Samba client program"
- replaces="samba"
- depends=
+ pkgdesc="Samba client programs"
+ depends="$pkgname-common=$pkgver-r$pkgrel"
cd "$pkgdir"
_mv_files \
usr/bin/cifsdd \
usr/bin/dbwrap_tool \
usr/bin/nmblookup \
- usr/bin/nmblookup4 \
usr/bin/oLschema2ldif \
usr/bin/regdiff \
usr/bin/regpatch \
usr/bin/regshell \
usr/bin/regtree \
usr/bin/rpcclient \
+ usr/bin/samba-regedit \
usr/bin/sharesec \
usr/bin/smbcacls \
usr/bin/smbclient \
- usr/bin/smbclient4 \
usr/bin/smbcquotas \
usr/bin/smbget \
- usr/bin/smbpasswd \
usr/bin/smbprint \
usr/bin/smbspool \
usr/bin/smbta-util \
usr/bin/smbtar \
usr/bin/smbtree \
+ usr/lib/libregistry.so.* \
+ usr/lib/samba/libcmdline-credentials-samba4.so \
+ || return 1
+}
+
+_client_libs() {
+ pkgdesc="Samba libraries shared by clients and DC"
+ depends=
+ cd "$pkgdir"
+ _mv_files \
+ usr/lib/libdcerpc.so.* \
+ usr/lib/libsmbclient-raw.so.* \
+ usr/lib/samba/libcli-ldap-samba4.so \
+ usr/lib/samba/libhttp-samba4.so \
+ usr/lib/samba/libnetif-samba4.so \
|| return 1
}
dc() {
pkgdesc="Samba AD Domain Controller"
- depends=
+ depends="py-samba=$pkgver-r$pkgrel $pkgname-common=$pkgver-r$pkgrel"
cd "$pkgdir"
_mv_files \
usr/bin/samba-tool \
usr/sbin/samba* \
+ usr/lib/mit_samba.so \
usr/lib/samba/ldb \
- usr/lib/samba/libpac.so \
+ usr/lib/samba/libpac-samba4.so \
usr/lib/samba/gensec \
- usr/lib/samba/bind9/dlz_bind9.so \
- usr/lib/mit_samba.so \
+ \
+ usr/lib/samba/bind9 \
+ usr/lib/samba/process_model \
+ usr/lib/samba/service \
+ usr/share/samba/setup \
|| return 1
- install -d -m 0755 "$subpkgdir"/var/lib/samba/sysvol || return 1
}
_dc_libs() {
@@ -189,29 +256,50 @@ _dc_libs() {
depends=
cd "$pkgdir"
_mv_files \
- usr/lib/samba/bind9/dlz_bind9_9.so \
- usr/lib/samba/libprocess_model.so \
- usr/lib/samba/libservice.so \
- usr/lib/samba/service \
- usr/lib/samba/libdsdb-module.so \
- usr/lib/samba/libntvfs.so \
- usr/lib/samba/libposix_eadb.so \
+ usr/lib/samba/libntvfs-samba4.so \
+ usr/lib/samba/libprocess-model-samba4.so \
+ usr/lib/samba/libservice-samba4.so \
+ usr/lib/samba/libshares-samba4.so \
+ \
+ usr/lib/libdcerpc-atsvc.so.* \
+ usr/lib/libdcerpc-samr.so.* \
usr/lib/libdcerpc-server.so.* \
+ usr/lib/libsamba-policy.so.* \
+ usr/lib/samba/libdnsserver-common-samba4.so \
+ usr/lib/samba/libdsdb-module-samba4.so \
+ || return 1
+}
+
+_server_libs() {
+ pkgdesc="Samba libraries shared by server and DC"
+ depends=
+ cd "$pkgdir"
+ _mv_files \
+ usr/lib/samba/libLIBWBCLIENT-OLD-samba4.so \
+ usr/lib/samba/libauth-unix-token-samba4.so \
+ usr/lib/samba/libauth4-samba4.so \
+ usr/lib/samba/libposix-eadb-samba4.so \
|| return 1
}
+
winbind() {
pkgdesc="Samba user and group resolver"
- depends=
+ depends="$pkgname-common=$pkgver-r$pkgrel"
install="winbind.pre-install winbind.pre-upgrade winbind.post-install
winbind.post-upgrade"
- replaces="winbind"
cd "$pkgdir"
_mv_files \
+ usr/lib/samba/libMESSAGING-samba4.so \
+ usr/lib/samba/libcluster-samba4.so \
+ usr/lib/samba/libdcerpc-samba4.so \
+ \
+ usr/lib/samba/libidmap-samba4.so \
+ usr/lib/samba/libnss-info-samba4.so \
usr/sbin/winbindd \
+ \
usr/lib/samba/idmap \
usr/lib/samba/nss_info \
- usr/lib/samba/libidmap.so \
|| return 1
install -d -g winbind -m 750 \
"$subpkgdir"/var/cache/samba/winbindd_privileged
@@ -220,23 +308,28 @@ winbind() {
libwbclient() {
pkgdesc="Samba winbind client libraries"
depends=
- # we have moved libwbclient from samba-common
- replaces="samba-common winbind"
cd "$pkgdir"
_mv_files \
usr/lib/libwbclient.so.* \
- usr/lib/samba/libwinbind-client.so \
+ usr/lib/samba/libwinbind-client-samba4.so \
|| return 1
}
_winbind_clients() {
- pkgdesc="Samba winbind clients"
- replaces="winbind"
+ pkgdesc="Samba winbind client tools"
depends=
cd "$pkgdir"
_mv_files \
usr/bin/ntlm_auth \
usr/bin/wbinfo \
+ || return 1
+}
+
+_libnss_winbind() {
+ pkgdesc="Samba winbind NSS plugin"
+ depends=
+ cd "$pkgdir"
+ _mv_files \
usr/lib/libnss_winbind.so* \
usr/lib/libnss_wins.so* \
|| return 1
@@ -251,11 +344,38 @@ _winbind_krb5_locator() {
|| return 1
}
+server() {
+ pkgdesc="Samba server"
+ depends="$pkgname-common=$pkgver-r$pkgrel
+ $pkgname-initscript=$pkgver-r$pkgrel"
+ cd "$pkgdir"
+ _mv_files \
+ usr/sbin/nmbd \
+ usr/sbin/smbd \
+ usr/bin/eventlogadm \
+ usr/bin/smbstatus \
+ \
+ usr/lib/samba/auth \
+ usr/lib/samba/hdb \
+ usr/lib/samba/vfs \
+ \
+ usr/lib/samba/libxattr-tdb-samba4.so \
+ usr/lib/samba/libdb-glue-samba4.so \
+ usr/lib/samba/libnon-posix-acls-samba4.so \
+ usr/lib/samba/libtdb-compat-samba4.so \
+ usr/lib/samba/libHDB-SAMBA4-samba4.so \
+ || return 1
+}
+
+
pidl() {
pkgdesc="Perl IDL compiler"
- depends=
- mkdir -p "$subpkgdir"/usr/share
- mv "$pkgdir"/usr/share/perl* "$subpkgdir"/usr/share/
+ depends="perl"
+ cd "$pkgdir"
+ _mv_files \
+ usr/bin/pidl \
+ usr/share/perl* \
+ || return 1
}
_py() {
@@ -268,45 +388,123 @@ _py() {
_test() {
pkgdesc="Samba server and client testing tools"
depends=
- mkdir -p "$subpkgdir"/usr/bin "$subpkgdir"/usr/lib/samba
- mv "$pkgdir"/usr/bin/*test \
- "$pkgdir"/usr/bin/ndrdump \
- "$pkgdir"/usr/bin/smbtorture \
- "$subpkgdir"/usr/bin/ || return 1
- mv "$pkgdir"/usr/lib/libtorture.so.* \
- "$subpkgdir"/usr/lib/ || return 1
- mv "$pkgdir"/usr/lib/samba/*torture* \
- "$subpkgdir"/usr/lib/samba/ || return 1
+ cd "$pkgdir"
+ _mv_files \
+ usr/bin/gentest \
+ usr/bin/locktest \
+ usr/bin/masktest \
+ usr/bin/ndrdump \
+ usr/bin/smbtorture \
+ usr/lib/libtorture.so.* \
+ usr/lib/samba/libdlz-bind9-for-torture-samba4.so \
+ || return 1
+}
+
+_ntdb_tools() {
+ pkgdesc="Samba ntdb tools"
+ depends=""
+ cd "$pkgdir"
+ _mv_files \
+ usr/bin/ntdb* \
+ || return 1
}
libs() {
- pkgdesc="Samba libraries"
+ pkgdesc="Samba core libraries"
depends=
cd "$pkgdir"
_mv_files \
- usr/lib/lib*.so.* \
- usr/lib/samba/lib* \
+ usr/lib/samba/libcli-spoolss-samba4.so \
+ usr/lib/samba/libtrusts-util-samba4.so \
+ usr/lib/libsamba-passdb.so.* \
+ usr/lib/libsmbconf.so.* \
+ usr/lib/samba/libCHARSET3-samba4.so \
+ usr/lib/samba/libgse-samba4.so \
+ usr/lib/samba/liblibcli-lsa3-samba4.so \
+ usr/lib/samba/liblibcli-netlogon3-samba4.so \
+ usr/lib/samba/liblibsmb-samba4.so \
+ usr/lib/samba/libmsrpc3-samba4.so \
+ usr/lib/samba/libpopt-samba3-samba4.so \
+ usr/lib/samba/libsamba-cluster-support-samba4.so \
+ usr/lib/samba/libsamba3-util-samba4.so \
+ usr/lib/samba/libsecrets3-samba4.so \
+ usr/lib/samba/libsmbd-shim-samba4.so \
+ usr/lib/samba/libsmbregistry-samba4.so \
+ usr/lib/samba/libutil-cmdline-samba4.so \
+ usr/lib/samba/libutil-reg-samba4.so \
+ usr/lib/libdcerpc-binding.so.* \
+ usr/lib/libgensec.so.* \
+ usr/lib/libndr-krb5pac.so.* \
+ usr/lib/libndr-nbt.so.* \
+ usr/lib/libndr-standard.so.* \
+ usr/lib/libndr.so.* \
+ usr/lib/libsamba-credentials.so.* \
+ usr/lib/libsamba-hostconfig.so.* \
+ usr/lib/libsamba-util.so.* \
+ usr/lib/libsamdb.so.* \
+ usr/lib/libtevent-util.so.* \
+ usr/lib/samba/libaddns-samba4.so \
+ usr/lib/samba/libasn1util-samba4.so \
+ usr/lib/samba/libauth-sam-reply-samba4.so \
+ usr/lib/samba/libauthkrb5-samba4.so \
+ usr/lib/samba/libccan-samba4.so \
+ usr/lib/samba/libcli-cldap-samba4.so \
+ usr/lib/samba/libcli-ldap-common-samba4.so \
+ usr/lib/samba/libcli-nbt-samba4.so \
+ usr/lib/samba/libcli-smb-common-samba4.so \
+ usr/lib/samba/libcliauth-samba4.so \
+ usr/lib/samba/libdbwrap-samba4.so \
+ usr/lib/samba/libdcerpc-samba-samba4.so \
+ usr/lib/samba/liberrors-samba4.so \
+ usr/lib/samba/libevents-samba4.so \
+ usr/lib/samba/libflag-mapping-samba4.so \
+ usr/lib/samba/libinterfaces-samba4.so \
+ usr/lib/samba/libkrb5samba-samba4.so \
+ usr/lib/samba/libldbsamba-samba4.so \
+ usr/lib/samba/libndr-samba-samba4.so \
+ usr/lib/samba/libntdb.so.* \
+ usr/lib/samba/libreplace-samba4.so \
+ usr/lib/samba/libsamba-debug-samba4.so \
+ usr/lib/samba/libsamba-modules-samba4.so \
+ usr/lib/samba/libsamba-security-samba4.so \
+ usr/lib/samba/libsamba-sockets-samba4.so \
+ usr/lib/samba/libsamdb-common-samba4.so \
+ usr/lib/samba/libserver-role-samba4.so \
+ usr/lib/samba/libsmb-transport-samba4.so \
+ usr/lib/samba/libsocket-blocking-samba4.so \
+ usr/lib/samba/libtdb-wrap-samba4.so \
+ usr/lib/samba/libutil-ntdb-samba4.so \
+ usr/lib/samba/libutil-setid-samba4.so \
+ usr/lib/samba/libutil-tdb-samba4.so \
+ \
+ usr/lib/samba/libsmbpasswdparser-samba4.so \
|| return 1
}
-md5sums="8fed0f23a672e6a8d0716d96aca88671 samba-4.1.17.tar.gz
+md5sums="5ef28ee4cda243d07a0066f038b7d6e0 samba-4.2.0.tar.gz
b8c06c1a37bce8a7feea3b6896483da0 fix-libreplace.patch
2386589c1e2cbcf95b644554b8a2f4d1 musl-fix-headers.patch
f9ee1f13e59c60ee7e481f51329bf7d4 uclibc-xattr-create.patch
+395a84482d72136384050d0bc7f969b5 wrappers.patch
+6eb6a33023e7a71a222886be3ee2453d heimdal-1.5-api.patch
044c756d3c33c2d610c40bcd76cfb75c samba.initd
c150433426e18261e6e3eed3930e1a76 samba.confd
b7cafabfb4fa5b3ab5f2e857d8d1c733 samba.logrotate"
-sha256sums="7aeb5d09e9c84bbeeb4b98d33404e9dbc4d99c54e64a447cc9c4d57e9255cb1d samba-4.1.17.tar.gz
+sha256sums="66a6057815a971fee64fbe936ff6cbad542421a4bd52cba8d8d41afc9abc490f samba-4.2.0.tar.gz
13617f691c648b44867c1a76d8be7c185021e8a8f3b695f8689a9f6244e65827 fix-libreplace.patch
0cf7e4eadf442422434d2b0fb43193f3a79f2887e32432f12cb6aed1941e807a musl-fix-headers.patch
dcf6a7118297d6567d8ff31c9eff1afffdf2f548db36fd17d00cdf0ffc555fe3 uclibc-xattr-create.patch
+6bbaeb3c68c64023039bb9a66fd82766ac6d77cf56ac8986eebd6f8a9fce512b wrappers.patch
+d4880c4ccceba5017d64cead644f8f363f22d6e91f2c2e1687dd7b45e6ca27e0 heimdal-1.5-api.patch
86646cb845aababd9e8655994379526f03327a2cc33b489c3a7dea83ab689c8f samba.initd
1d12f98a7727967b04eb123109b34cfffef320822dc0e8059286b6e3394c3fc0 samba.confd
4c2b7d529126b2fc4f62fb09d99e49a87632d723a2d9d289a61e37dd84145be1 samba.logrotate"
-sha512sums="19fa34521d3d520784d1eb85b4844fa59bf12468bf96b174b952eb63b6645a9eefb9044416829ffbe7a6a57abd28a227d1d57e1567cd46a1495c05a865ae75d5 samba-4.1.17.tar.gz
+sha512sums="ec6f1a6276087196450cf5774690cde564beb414ab55fb7db6991f8ae470d338fb9c2b12d38232b804436efc686450d1fa19a26bc234e9f63d8c569e321357e0 samba-4.2.0.tar.gz
4adbbeb75de6c55199e10f284e741ee252f403b7809251caf4baf378669770be01d469b23e12f8119ed5dca5080dd45bda1b5b78cc7a791be44c1eb6fb8c0fa2 fix-libreplace.patch
8d2e1be5f020d0558917f328770b289d0a41836616952d0d3208cecd457df3649f1357a2d35dc54123559ab6a1b720f3189286c65cee90b02ccbae7d676ae383 musl-fix-headers.patch
b43809d7ecbf3968f5154c2ded6ed47dae36921f1895ea98bcce50557eb2ad39b736345ffb4214655ed3154c143c20431d248cde828285380bafbf4d2627df9b uclibc-xattr-create.patch
+1e22dfb4e5db22af27f683d9fdd040a9f568b198b55095dd2dfdec81d9eb8e23d965c92663855ff02ba32cc62b97ca6fbe2cc79dd843e223b4be74bfb3cce71f wrappers.patch
+86181f661bca29d698be3a402a915e35ba4289fd3c34e6e2f4f151125b5f169e729189b48d84472d64857cbcf580ad767077bc791e3b6a1b1c313dc96b3e00ae heimdal-1.5-api.patch
59d05252b8ebbe6ba6a419edc86b66b9541d0bac9dbe810cccb20e64f6044e2900cc6c0979e077741ed00fbbf2d51f9184c83715013299782707b44e39aa99b1 samba.initd
4faf581ecef3ec38319e3c4ab6d3995c51fd7ba83180dc5553a2ff4dfb92efadb43030c543292130c4ed0c281dc0972c6973d52d48062c5edb39bb1c4bbb6dd6 samba.confd
f88ebe59ca3a9e9b77dd5993c13ef3e73a838efb8ed858088b464a330132d662f33e25c27819e38835389dee23057a3951de11bae1eef55db8ff5e1ec6760053 samba.logrotate"
diff --git a/main/samba/heimdal-1.5-api.patch b/main/samba/heimdal-1.5-api.patch
new file mode 100644
index 0000000000..20d421e0da
--- /dev/null
+++ b/main/samba/heimdal-1.5-api.patch
@@ -0,0 +1,23 @@
+
+this was triggered due to this upstream change:
+https://git.samba.org/?p=samba.git;a=commit;h=83fbdc81cdfe6c018bb97d2d482ca09389b2c7af
+
+heimdal 1.5 changed the api:
+https://github.com/heimdal/heimdal/commit/c757eb7fb04a9b0ca883ddb72c1bc75bf5d814f3
+
+proper fix means the configure script should check which to use
+
+--- ./source4/kdc/kdc.c.orig
++++ ./source4/kdc/kdc.c
+@@ -967,9 +967,9 @@
+ * The old behavior in the _kdc_get_preferred_key()
+ * function is use_strongest_server_key=TRUE.
+ */
+- kdc->config->as_use_strongest_session_key = false;
++ kdc->config->tgt_use_strongest_session_key = false;
+ kdc->config->preauth_use_strongest_session_key = false;
+- kdc->config->tgs_use_strongest_session_key = false;
++ kdc->config->svc_use_strongest_session_key = false;
+ kdc->config->use_strongest_server_key = true;
+
+ /* Register hdb-samba4 hooks for use as a keytab */
diff --git a/main/samba/wrappers.patch b/main/samba/wrappers.patch
new file mode 100644
index 0000000000..56858738d4
--- /dev/null
+++ b/main/samba/wrappers.patch
@@ -0,0 +1,51 @@
+from upstream:
+https://git.samba.org/?p=samba.git;a=commit;h=c0a463d94abb5c50eaca7b1d402c979684f96a97
+
+--- ./wscript.orig
++++ ./wscript
+@@ -156,15 +156,16 @@
+ conf.RECURSE('lib/ntdb')
+ conf.RECURSE('lib/util/charset')
+ conf.RECURSE('source4/auth')
+- conf.RECURSE('lib/nss_wrapper')
+ conf.RECURSE('nsswitch')
+- conf.RECURSE('lib/socket_wrapper')
+- conf.RECURSE('lib/uid_wrapper')
+ conf.RECURSE('lib/subunit/c')
+ conf.RECURSE('libcli/smbreadline')
+ conf.RECURSE('lib/crypto')
+ conf.RECURSE('pidl')
+ conf.RECURSE('selftest')
++ if conf.CONFIG_GET('ENABLE_SELFTEST'):
++ conf.RECURSE('lib/nss_wrapper')
++ conf.RECURSE('lib/socket_wrapper')
++ conf.RECURSE('lib/uid_wrapper')
+ conf.RECURSE('source3')
+ conf.RECURSE('lib/texpect')
+ if conf.env.with_ctdb:
+--- ./wscript_build.orig
++++ ./wscript_build
+@@ -2,6 +2,7 @@
+
+ # top level waf build script for samba4
+
++import Options
+ import os
+ srcdir = "."
+
+@@ -70,9 +71,12 @@
+ bld.RECURSE('source4/lib/events')
+ bld.RECURSE('source4/lib/cmdline')
+ bld.RECURSE('source4/lib/http')
+-bld.RECURSE('lib/socket_wrapper')
+-bld.RECURSE('lib/nss_wrapper')
+-bld.RECURSE('lib/uid_wrapper')
++if bld.CONFIG_GET('NSS_WRAPPER'):
++ bld.RECURSE('lib/nss_wrapper')
++if bld.CONFIG_GET('SOCKET_WRAPPER'):
++ bld.RECURSE('lib/socket_wrapper')
++if bld.CONFIG_GET('UID_WRAPPER'):
++ bld.RECURSE('lib/uid_wrapper')
+ if bld.CHECK_FOR_THIRD_PARTY():
+ bld.RECURSE('third_party/zlib')
+ bld.RECURSE('third_party/popt')