diff options
Diffstat (limited to 'main/samba/APKBUILD')
-rw-r--r-- | main/samba/APKBUILD | 242 |
1 files changed, 135 insertions, 107 deletions
diff --git a/main/samba/APKBUILD b/main/samba/APKBUILD index 572052ce1ab..f3fede60785 100644 --- a/main/samba/APKBUILD +++ b/main/samba/APKBUILD @@ -1,17 +1,20 @@ # Maintainer: Natanael Copa <ncopa@alpinelinux.org> pkgname=samba -pkgver=4.14.6 +pkgver=4.19.5 pkgrel=1 pkgdesc="Tools to access a server's filespace and printers via SMB" url="https://www.samba.org/" arch="all" -license="GPL-3.0-or-later LGPL-3.0-or-later" +license="GPL-3.0-or-later AND LGPL-3.0-or-later" +options="!check" # fixme: missing dependencies for '--enable-selftest' subpackages=" - $pkgname-dev $pkgname-doc $pkgname-server-openrc + $pkgname-dev + $pkgname-doc + $pkgname-server-openrc libwbclient $pkgname-util-libs:_util_libs - $pkgname-common::noarch + $pkgname-common:_common:noarch $pkgname-common-tools:_common_tools $pkgname-common-server-libs:_common_server_libs libsmbclient @@ -33,6 +36,7 @@ subpackages=" py3-$pkgname:_py3 $pkgname-test:_test $pkgname-libs-py3:_libs_py3 + libauth-$pkgname:_libauth $pkgname-libs " @@ -51,7 +55,6 @@ makedepends=" dbus-dev docbook-xsl e2fsprogs-dev - fuse-dev gnutls-dev iniparser-dev jansson-dev @@ -65,8 +68,10 @@ makedepends=" ncurses-dev openldap-dev perl + perl-json perl-parse-yapp popt-dev + py3-ldb py3-tdb py3-tevent python3-dev @@ -78,19 +83,18 @@ makedepends=" zlib-dev $_dc_deps " - -# vfs_btrfs patch from https://bugzilla.samba.org/show_bug.cgi?id=14790 source=" https://download.samba.org/pub/samba/stable/samba-$pkgver.tar.gz + netgroup.patch getpwent_r.patch musl_uintptr.patch - netdb-defines.patch - netapp.patch missing-headers.patch musl_rm_unistd_incl.patch add_missing___compar_fn_t.patch pidl.patch - vfs_btrfs_14790.patch + samba-bgqd-include-signal-h.patch + default-config.patch + $pkgname.initd $pkgname.confd $pkgname.logrotate @@ -98,6 +102,42 @@ source=" pkggroups="winbind" # secfixes: +# 4.18.9-r0: +# - CVE-2018-14628 +# 4.18.8-r0: +# - CVE-2023-3961 +# - CVE-2023-4091 +# - CVE-2023-4154 +# - CVE-2023-42669 +# - CVE-2023-42670 +# 4.18.1-r0: +# - CVE-2023-0225 +# 4.17.0-r0: +# - CVE-2022-1615 +# - CVE-2022-32743 +# 4.16.7-r0: +# - CVE-2022-42898 +# 4.16.6-r0: +# - CVE-2022-3437 +# - CVE-2022-3592 +# 4.15.9-r0: +# - CVE-2022-2031 +# - CVE-2021-3670 +# - CVE-2022-32744 +# - CVE-2022-32745 +# - CVE-2022-32746 +# - CVE-2022-32742 +# 4.15.2-r0: +# - CVE-2016-2124 +# - CVE-2020-25717 +# - CVE-2020-25718 +# - CVE-2020-25719 +# - CVE-2020-25721 +# - CVE-2020-25722 +# - CVE-2021-23192 +# - CVE-2021-3738 +# 4.15.0-r0: +# - CVE-2021-3671 # 4.14.4-r0: # - CVE-2021-20254 # 4.14.2-r0: @@ -165,6 +205,8 @@ build() { local _pdb_modules=pdb_tdbsam,pdb_ldap,pdb_ads,pdb_smbpasswd,pdb_wbc_sam,pdb_samba4 local _auth_modules=auth_unix,auth_wbc,auth_server,auth_netlogond,auth_script,auth_samba4 + # pclose, .. + export CFLAGS="$CFLAGS -O2 -D_BSD_SOURCE -flto=auto" ./configure \ --prefix=/usr \ --sysconfdir=/etc/$pkgname \ @@ -183,8 +225,13 @@ build() { --without-gettext \ --bundled-libraries=NONE,ntdb,roken,wind,hx509,asn1,heimbase,hcrypto,krb5,gssapi,heimntlm,hdb,kdc,cmocka \ --disable-rpath-install \ - --without-gpgme - make -j"$(nproc)" + --without-gpgme \ + --disable-fault-handling + make +} + +check() { + make check } package() { @@ -204,24 +251,10 @@ package() { install -Dm644 "$srcdir/$pkgname.confd" "$pkgdir/etc/conf.d/$pkgname" } -_mv_files() { - local i - for i in "$@"; do - case $i in - */*) mkdir -p "$subpkgdir"/${i%/*};; - *) mkdir -p "$subpkgdir";; - esac - mv "$pkgdir"/$i "$subpkgdir"/$i - done -} - -common() { +_common() { pkgdesc="Samba common files for both client an servers" depends= - cd "$pkgdir" - _mv_files \ - etc \ - var + amove etc var install -d -m700 "$subpkgdir"/var/lib/$pkgname/private } @@ -229,8 +262,7 @@ common() { _libs_py3() { pkgdesc="Libraries that require libpython" depends= - cd "$pkgdir" - _mv_files \ + amove \ usr/lib/$pkgname/libsamba-net*samba4.so \ usr/lib/$pkgname/libsamba-python*samba4.so return 0 @@ -240,11 +272,11 @@ _libs_py3() { _common_tools() { pkgdesc="Tools for Samba servers and clients" depends= - cd "$pkgdir" - _mv_files \ + amove \ usr/bin/net \ usr/bin/pdbedit \ usr/bin/profiles \ + usr/bin/samba-log-parser \ usr/bin/smbcontrol \ usr/bin/smbpasswd \ usr/bin/testparm \ @@ -256,12 +288,11 @@ _common_tools() { _common_server_libs() { pkgdesc="Samba libraries shared by common-tools and servers" # not shared with clients depends="" - cd "$pkgdir" - _mv_files \ + amove \ usr/lib/libdcerpc-server-core.so.* \ usr/lib/libnetapi.so.* \ + usr/lib/$pkgname/libRPC-SERVER-LOOP-samba4.so \ usr/lib/$pkgname/libdfs-server-ad-samba4.so \ - usr/lib/$pkgname/libnpa-tstream-samba4.so \ usr/lib/$pkgname/libprinting-migrate-samba4.so \ usr/lib/$pkgname/libsmbd-base-samba4.so \ usr/lib/$pkgname/libsmbldaphelper-samba4.so \ @@ -271,8 +302,7 @@ _common_server_libs() { libsmbclient() { pkgdesc="The SMB client library" depends= - cd "$pkgdir" - _mv_files \ + amove \ usr/lib/libsmbclient.so.* } @@ -280,17 +310,17 @@ libsmbclient() { _client_libs() { pkgdesc="Samba libraries used by clients" depends= - cd "$pkgdir" - _mv_files \ + amove \ + usr/lib/$pkgname/libad-claims-samba4.so \ + usr/lib/$pkgname/libauthn-policy-util-samba4.so \ usr/lib/$pkgname/libcli-ldap-samba4.so \ usr/lib/$pkgname/libcmdline-contexts-samba4.so \ - usr/lib/$pkgname/libcmdline-credentials-samba4.so \ usr/lib/$pkgname/libdsdb-garbage-collect-tombstones-samba4.so \ + usr/lib/$pkgname/libdsdb-module-samba4.so \ usr/lib/$pkgname/libgpo-samba4.so \ usr/lib/$pkgname/libhttp-samba4.so \ usr/lib/$pkgname/libmscat-samba4.so \ usr/lib/$pkgname/libnetif-samba4.so \ - usr/lib/$pkgname/libpopt-samba3-cmdline-samba4.so \ usr/lib/$pkgname/libprinter-driver-samba4.so \ usr/lib/$pkgname/libregistry-samba4.so \ usr/lib/$pkgname/libsmbclient-raw-samba4.so \ @@ -301,12 +331,11 @@ client() { pkgdesc="Samba client programs" depends="$pkgname-common=$pkgver-r$pkgrel" cd "$pkgdir" - _mv_files \ + amove \ usr/bin/cifsdd \ usr/bin/dumpmscat \ - usr/bin/findsmb \ usr/bin/dbwrap_tool \ - usr/bin/mdfind \ + usr/bin/mdsearch \ usr/bin/mvxattr \ usr/bin/nmblookup \ usr/bin/oLschema2ldif \ @@ -332,8 +361,7 @@ client() { _server_libs() { pkgdesc="Samba libraries shared by server and windbind" depends= - cd "$pkgdir" - _mv_files \ + amove \ usr/lib/$pkgname/libdcerpc-samba4.so \ usr/lib/$pkgname/libidmap-samba4.so \ usr/lib/$pkgname/libnss-info-samba4.so @@ -345,8 +373,7 @@ winbind() { depends="$pkgname-common=$pkgver-r$pkgrel" install="winbind.pre-install winbind.pre-upgrade winbind.post-install winbind.post-upgrade" - cd "$pkgdir" - _mv_files \ + amove \ usr/sbin/winbindd \ usr/lib/$pkgname/idmap \ usr/lib/$pkgname/nss_info @@ -358,8 +385,7 @@ winbind() { _util_libs() { pkgdesc="Samba utility libraries" depends= - cd "$pkgdir" - _mv_files \ + amove \ usr/lib/libsamba-util.so.* \ usr/lib/$pkgname/libgenrand-samba4.so \ usr/lib/$pkgname/libsocket-blocking-samba4.so \ @@ -367,25 +393,22 @@ _util_libs() { usr/lib/$pkgname/libtime-basic-samba4.so \ usr/lib/$pkgname/libsys-rw-samba4.so \ usr/lib/$pkgname/libiov-buf-samba4.so \ + usr/lib/$pkgname/libcom-err-samba4.so \ usr/lib/$pkgname/libreplace-samba4.so \ - usr/lib/$pkgname/libcom_err-samba4.so.* + usr/lib/$pkgname/libstable-sort-samba4.so } # should only depend on samba-util-libs libwbclient() { pkgdesc="Samba winbind client libraries" depends= - cd "$pkgdir" - _mv_files \ - usr/lib/libwbclient.so.* \ - usr/lib/$pkgname/libwinbind-client-samba4.so + amove usr/lib/libwbclient.so.* } _winbind_clients() { pkgdesc="Samba winbind client tools" depends= - cd "$pkgdir" - _mv_files \ + amove \ usr/bin/ntlm_auth \ usr/bin/wbinfo } @@ -393,8 +416,7 @@ _winbind_clients() { _libnss_winbind() { pkgdesc="Samba winbind NSS plugin" depends= - cd "$pkgdir" - _mv_files \ + amove \ usr/lib/libnss_winbind.so* \ usr/lib/libnss_wins.so* } @@ -402,17 +424,17 @@ _libnss_winbind() { _winbind_krb5_locator() { pkgdesc="Samba winbind krb5 locator" depends= - cd "$pkgdir" - _mv_files \ + amove \ usr/lib/samba/krb5 } _pam_winbind() { pkgdesc="PAM module for winbind" depends= - cd "$pkgdir" - _mv_files \ - usr/lib/security + + mkdir -p "$subpkgdir"/lib/security + mv "$pkgdir"/usr/lib/security/* "$subpkgdir"/lib/security/ + rmdir -p "$pkgdir"/usr/lib/security || true } dc() { @@ -422,8 +444,7 @@ dc() { $pkgname-winbind=$pkgver-r$pkgrel py3-$pkgname=$pkgver-r$pkgrel $_dc_deps" - cd "$pkgdir" - _mv_files \ + amove \ usr/bin/samba-tool \ usr/sbin/samba* \ usr/share/$pkgname \ @@ -436,8 +457,7 @@ dc() { _dc_libs() { pkgdesc="Samba AD Domain Controller libraries" - cd "$pkgdir" - _mv_files \ + amove \ usr/lib/libdcerpc-samr.so.* \ usr/lib/libdcerpc-server.so.* \ usr/lib/libsamba-policy.* \ @@ -446,12 +466,11 @@ _dc_libs() { usr/lib/$pkgname/libLIBWBCLIENT-OLD-samba4.so \ usr/lib/$pkgname/libauth-unix-token-samba4.so \ usr/lib/$pkgname/libauth4-samba4.so \ - usr/lib/$pkgname/libcluster-samba4.so \ usr/lib/$pkgname/libdb-glue-samba4.so \ usr/lib/$pkgname/libdnsserver-common-samba4.so \ - usr/lib/$pkgname/libdsdb-module-samba4.so \ - usr/lib/$pkgname/libhdb-samba4.so.* \ - usr/lib/$pkgname/libkdc-samba4.so.* \ + usr/lib/$pkgname/libgss-preauth-samba4.so \ + usr/lib/$pkgname/libhdb-samba4.so* \ + usr/lib/$pkgname/libkdc-samba4.so* \ usr/lib/$pkgname/libpac-samba4.so \ usr/lib/$pkgname/libposix-eadb-samba4.so \ usr/lib/$pkgname/libprocess-model-samba4.so \ @@ -465,24 +484,26 @@ _dc_libs() { server() { pkgdesc="Samba server" depends="$pkgname-common=$pkgver-r$pkgrel" - cd "$pkgdir" - _mv_files \ + amove \ usr/sbin/nmbd \ usr/sbin/smbd \ usr/sbin/eventlogadm \ usr/bin/smbstatus \ \ usr/lib/$pkgname/auth \ + usr/lib/$pkgname/libREG-FULL-samba4.so \ + usr/lib/$pkgname/libRPC-WORKER-samba4.so \ usr/lib/$pkgname/libxattr-tdb-samba4.so \ + usr/lib/$pkgname/rpcd_* \ + usr/lib/$pkgname/samba-bgqd \ + usr/lib/$pkgname/samba-dcerpcd \ usr/lib/$pkgname/vfs } - pidl() { pkgdesc="Perl IDL compiler" depends="perl" - cd "$pkgdir" - _mv_files \ + amove \ usr/bin/pidl \ usr/share/perl* } @@ -497,8 +518,7 @@ _py3() { _test() { pkgdesc="Samba server and client testing tools" depends= - cd "$pkgdir" - _mv_files \ + amove \ usr/bin/gentest \ usr/bin/locktest \ usr/bin/masktest \ @@ -508,31 +528,37 @@ _test() { usr/lib/$pkgname/libtorture-samba4.so } +# avoid samba-libs and libsmbclient depending on pam +_libauth() { + pkgdesc="Samba auth library shared by common-tools, server and clients" + depends= + + amove usr/lib/$pkgname/libauth-samba4.so +} + # should only depend on samba-util-libs and libwbclient libs() { pkgdesc="Samba core libraries shared by common-tools, server and clients" depends= - cd "$pkgdir" # heimdal libs - _mv_files \ - usr/lib/$pkgname/libasn1-samba4.so.* \ - usr/lib/$pkgname/libgssapi-samba4.so.* \ - usr/lib/$pkgname/libhcrypto-samba4.so.* \ - usr/lib/$pkgname/libheimbase-samba4.so.* \ - usr/lib/$pkgname/libheimntlm-samba4.so.* \ - usr/lib/$pkgname/libhx509-samba4.so.* \ - usr/lib/$pkgname/libkrb5-samba4.so.* \ - usr/lib/$pkgname/libroken-samba4.so.* \ - usr/lib/$pkgname/libwind-samba4.so.* - - _mv_files \ + amove \ + usr/lib/$pkgname/libasn1-samba4.so* \ + usr/lib/$pkgname/libgssapi-samba4.so* \ + usr/lib/$pkgname/libhcrypto-samba4.so* \ + usr/lib/$pkgname/libheimbase-samba4.so* \ + usr/lib/$pkgname/libheimntlm-samba4.so* \ + usr/lib/$pkgname/libhx509-samba4.so* \ + usr/lib/$pkgname/libkrb5-samba4.so* \ + usr/lib/$pkgname/libroken-samba4.so* \ + usr/lib/$pkgname/libwind-samba4.so* + + amove \ usr/lib/$pkgname/libCHARSET3-samba4.so \ usr/lib/$pkgname/libMESSAGING-SEND-samba4.so \ usr/lib/$pkgname/libMESSAGING-samba4.so \ usr/lib/$pkgname/libaddns-samba4.so \ usr/lib/$pkgname/libads-samba4.so \ usr/lib/$pkgname/libasn1util-samba4.so \ - usr/lib/$pkgname/libauth-samba4.so \ usr/lib/$pkgname/libauthkrb5-samba4.so \ usr/lib/$pkgname/libcli-cldap-samba4.so \ usr/lib/$pkgname/libcli-ldap-common-samba4.so \ @@ -541,9 +567,12 @@ libs() { usr/lib/$pkgname/libcli-spoolss-samba4.so \ usr/lib/$pkgname/libcliauth-samba4.so \ usr/lib/$pkgname/libclidns-samba4.so \ + usr/lib/$pkgname/libcluster-samba4.so \ + usr/lib/$pkgname/libcmdline-samba4.so \ usr/lib/$pkgname/libcmocka-samba4.so \ usr/lib/$pkgname/libcommon-auth-samba4.so \ usr/lib/$pkgname/libdbwrap-samba4.so \ + usr/lib/$pkgname/libdcerpc-pkt-auth-samba4.so \ usr/lib/$pkgname/libdcerpc-samba-samba4.so \ usr/lib/$pkgname/libevents-samba4.so \ usr/lib/$pkgname/libflag-mapping-samba4.so \ @@ -561,7 +590,7 @@ libs() { usr/lib/$pkgname/libmsrpc3-samba4.so \ usr/lib/$pkgname/libndr-samba-samba4.so \ usr/lib/$pkgname/libndr-samba4.so \ - usr/lib/$pkgname/libpopt-samba3-samba4.so \ + usr/lib/$pkgname/libnpa-tstream-samba4.so \ usr/lib/$pkgname/libsamba-cluster-support-samba4.so \ usr/lib/$pkgname/libsamba-modules-samba4.so \ usr/lib/$pkgname/libsamba-security-samba4.so \ @@ -577,7 +606,6 @@ libs() { usr/lib/$pkgname/libtalloc-report-samba4.so \ usr/lib/$pkgname/libtdb-wrap-samba4.so \ usr/lib/$pkgname/libtrusts-util-samba4.so \ - usr/lib/$pkgname/libutil-cmdline-samba4.so \ usr/lib/$pkgname/libutil-reg-samba4.so \ usr/lib/$pkgname/libutil-setid-samba4.so \ usr/lib/$pkgname/libutil-tdb-samba4.so \ @@ -596,26 +624,26 @@ libs() { usr/lib/libtevent-util.so.* # exit with error if some stuff stayed at main pack - rmdir "$pkgdir"/usr/lib/$pkgname \ - "$pkgdir"/usr/share \ - "$pkgdir"/usr/sbin \ - "$pkgdir"/usr/bin \ - "$pkgdir"/usr/lib \ - "$pkgdir"/usr + local leftovers="$(find "$pkgdir" -type f)" + if [ -n "$leftovers" ]; then + error "files left in main package:" + echo "$leftovers" >&2 + return 1 + fi } sha512sums=" -0ce3f46b2693daa27656fe9a04925cbe7dd398342cab352f0422a350eb9f91d1ea6d64fb18d04010b93fb3c0b9fe6434b23deb1f26018bd1f9bdc1b0f97beca2 samba-4.14.6.tar.gz +5b0934f2e44a28ffc4aa07e5495b339cf3a7548c49e29d1bae87de6c3a6f57c2a9130592dce782895079f559ed3bc8b5e4514c9c0fd8d5638aef68f0d0a3391f samba-4.19.5.tar.gz +f997d0bca9de64a567bccc245bec41e4aa00bacb379d8e348678dcafcf7e723e8716608c5d2d266ad816439b8b93bb8ee28371308a01c9d9c50229f1fc8deb67 netgroup.patch 58de5e79fdfd06e828d478e112d581d333a8bee88d2602b92204d780f0d707b27dd84f8e2e6b00fca40da81c8fe99aa5bcec70d8b393d3a0a83199c72a4aa48b getpwent_r.patch b7906d66fe55a980a54161ee3f311b51bcbce76b8d4c8cc1ba6d0c5bdf98232cb192b9d2c1aa7b3e2742f5b9848c6cf429347940eefe66c3e0eda1d5aac1bf93 musl_uintptr.patch -1854577d0e4457e27da367a6c7ec0fb5cfd63cefea0a39181c9d6e78cf8d3eb50878cdddeea3daeec955d00263151c2f86ea754ff4276ef98bc52c0276d9ffe8 netdb-defines.patch -3b4759dfcf6ec54f2131390c9eb7fd7dd23071e304905cdeaf7a9828fa888cb3dcb5c5bb6a07a634c51d0392ac47f6e22b937faf4354e3b07cfc0de7fdfa28e9 netapp.patch -c0afe8b1dfddc5290c9aa611163d20adc3a546f54bba0081f739cda4255829f1a72bae422b6cb049aca82e58d4daf63ad5553f4c5c51671019bfbbc2781460f0 missing-headers.patch +9642e0de5a39ab940e0f53040ae20fccdbde471bed9bcca713482f26e7c88451e405bd63d719d0548975c7c4c045b51b0006672d34ec4390c3b5a618ea6c8d85 missing-headers.patch 9bf4bbc8b03d9ea17d2f8ffeaf3a83541b171936a90bb8d75b08cc5afbdbaaec545c1b3782c90ae2ffc4568ab4e6f15fb21899d80c654a796301e16429c93b65 musl_rm_unistd_incl.patch bc2df70e327fea5dfbd923600225f1448815d842c37d6937dd74eab7f7699d7f52cd7a8e28a61233974649cf86661a0107dce5019d33b71205e4b41bac73f4e2 add_missing___compar_fn_t.patch c0bbe1186b150a9bb2a0b741a8cfbd7a5109e5fed1eaa07aaa38cf026ebe054d38cc01e2496f0cab7b40f743e1b7ecfbf8a4d5820810226c4152021df65f36dc pidl.patch -2dc8bd253a9387c509a39ae87250c8062dd2835836dd77097f0b6b1a6b65ea32a70f396c76342f9a24a52e4a4000eb8b748ad5dee271c4390f64709d8ef82a65 vfs_btrfs_14790.patch -96070e2461370437f48571e7de550c13a332fef869480cfe92e7cac73a998f6c2ee85d2580df58211953bebd0e577691aa710c8edddf3ea0f30e9d47d0a2fd44 samba.initd +e98fd19f65d954f04f7e3b5be86e9c4bcc9ac090c40037de77bfeb266617747c514aeb42f3daf84113b2f3374480d25e368bc1fdebc1870458eda12329d2062e samba-bgqd-include-signal-h.patch +14666954aec4a0bc7a6730ba3a9afdbd4e27c083a038d9a1f5a033e4f0a42bc8408906612ea51f74bf743ff8a225242e54b0a518367fe526b110639bfbfdd071 default-config.patch +e4ce11b699c5841d0aa83e0e912bb86cff1d8726308e7b75548e0fcc349518d3fefb68b902bf75404643494d610e491b080cfc2a4e4d82385c5d9b6657434771 samba.initd e2b49cb394e758447ca97de155a61b4276499983a0a5c00b44ae621c5559b759a766f8d1c8d3ee98ad5560f4064a847a7a20cfa2e14f85c061bec8b80fd649eb samba.confd 3458a4e1f8a8b44c966afb339b2dca51615be049f594c14911fc4d8203623deee416b6fe881436e246fc7d49c97a2b3bf9c5f33ba774302b24190a1103d6b67d samba.logrotate " |