Package init
This commit is contained in:
commit
cd2b54cf41
@ -0,0 +1,61 @@
|
|||||||
|
From 0feb1a80f3777f4c244b46958aa9f730de9e18b6 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Steve French <stfrench@microsoft.com>
|
||||||
|
Date: Fri, 1 Mar 2019 23:11:25 -0600
|
||||||
|
Subject: [PATCH 25/39] setcifsacl: fix adding ACE when owner sid in unexpected
|
||||||
|
location
|
||||||
|
|
||||||
|
If owner information is after the ACEs instead of before (e.g. Azure servers) in the ACL query
|
||||||
|
then we would get "invalid argument" returned on setcifsacl -a (adding an ACE).
|
||||||
|
|
||||||
|
This fixes that.
|
||||||
|
|
||||||
|
Signed-off-by: Steve French <stfrench@microsoft.com>
|
||||||
|
---
|
||||||
|
setcifsacl.c | 29 ++++++++++++++++++++++++-----
|
||||||
|
1 file changed, 24 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/setcifsacl.c b/setcifsacl.c
|
||||||
|
index ba34403..1b98c37 100644
|
||||||
|
--- a/setcifsacl.c
|
||||||
|
+++ b/setcifsacl.c
|
||||||
|
@@ -106,13 +106,32 @@ copy_sec_desc(const struct cifs_ntsd *pntsd, struct cifs_ntsd *pnntsd,
|
||||||
|
|
||||||
|
/* copy owner sid */
|
||||||
|
owner_sid_ptr = (struct cifs_sid *)((char *)pntsd + osidsoffset);
|
||||||
|
- nowner_sid_ptr = (struct cifs_sid *)((char *)pnntsd + osidsoffset);
|
||||||
|
- size = copy_cifs_sid(nowner_sid_ptr, owner_sid_ptr);
|
||||||
|
- bufsize += size;
|
||||||
|
+ group_sid_ptr = (struct cifs_sid *)((char *)pntsd + gsidsoffset);
|
||||||
|
+ /*
|
||||||
|
+ * some servers like Azure return the owner and group SIDs at end rather
|
||||||
|
+ * than at the beginning of the ACL so don't want to overwrite the last ACEs
|
||||||
|
+ */
|
||||||
|
+ if (dacloffset <= osidsoffset) {
|
||||||
|
+ /* owners placed at end of ACL */
|
||||||
|
+ nowner_sid_ptr = (struct cifs_sid *)((char *)pnntsd + dacloffset + size);
|
||||||
|
+ pnntsd->osidoffset = dacloffset + size;
|
||||||
|
+ size = copy_cifs_sid(nowner_sid_ptr, owner_sid_ptr);
|
||||||
|
+ bufsize += size;
|
||||||
|
+ /* put group SID after owner SID */
|
||||||
|
+ ngroup_sid_ptr = (struct cifs_sid *)((char *)nowner_sid_ptr + size);
|
||||||
|
+ pnntsd->gsidoffset = pnntsd->osidoffset + size;
|
||||||
|
+ } else {
|
||||||
|
+ /*
|
||||||
|
+ * Most servers put the owner information at the beginning,
|
||||||
|
+ * before the ACL
|
||||||
|
+ */
|
||||||
|
+ nowner_sid_ptr = (struct cifs_sid *)((char *)pnntsd + osidsoffset);
|
||||||
|
+ size = copy_cifs_sid(nowner_sid_ptr, owner_sid_ptr);
|
||||||
|
+ bufsize += size;
|
||||||
|
+ ngroup_sid_ptr = (struct cifs_sid *)((char *)pnntsd + gsidsoffset);
|
||||||
|
+ }
|
||||||
|
|
||||||
|
/* copy group sid */
|
||||||
|
- group_sid_ptr = (struct cifs_sid *)((char *)pntsd + gsidsoffset);
|
||||||
|
- ngroup_sid_ptr = (struct cifs_sid *)((char *)pnntsd + gsidsoffset);
|
||||||
|
size = copy_cifs_sid(ngroup_sid_ptr, group_sid_ptr);
|
||||||
|
bufsize += size;
|
||||||
|
|
||||||
|
--
|
||||||
|
2.7.4
|
||||||
|
|
||||||
25
6001-cifs.upcall-fix-a-compiler-warning.patch
Normal file
25
6001-cifs.upcall-fix-a-compiler-warning.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
From 2244e109ae30aeb0a21deaa591f6e11fa2039e7d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Pavel Shilovsky <pshilov@microsoft.com>
|
||||||
|
Date: Sat, 16 Mar 2019 12:34:13 -0700
|
||||||
|
Subject: [PATCH 28/39] cifs.upcall: fix a compiler warning
|
||||||
|
|
||||||
|
Signed-off-by: Pavel Shilovsky <pshilov@microsoft.com>
|
||||||
|
---
|
||||||
|
cifs.upcall.c | 1 +
|
||||||
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
|
diff --git a/cifs.upcall.c b/cifs.upcall.c
|
||||||
|
index c92ee62..1559434 100644
|
||||||
|
--- a/cifs.upcall.c
|
||||||
|
+++ b/cifs.upcall.c
|
||||||
|
@@ -126,6 +126,7 @@ drop_all_capabilities(void)
|
||||||
|
static int
|
||||||
|
trim_capabilities(bool unused)
|
||||||
|
{
|
||||||
|
+ (void)unused;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
--
|
||||||
|
2.7.4
|
||||||
|
|
||||||
53
9000-mount.cifs-fix-memory-leaks.patch
Normal file
53
9000-mount.cifs-fix-memory-leaks.patch
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
From fe54b753f57686382754521774fef46a537322fb Mon Sep 17 00:00:00 2001
|
||||||
|
From: liujiawen <liujiawen10@huawei.com>
|
||||||
|
Date: Wed, 24 Jul 2019 03:25:14 +0800
|
||||||
|
Subject: [PATCH] Module: modification summary
|
||||||
|
|
||||||
|
reason:fix memory leaks
|
||||||
|
---
|
||||||
|
mount.cifs.c | 8 +++++++-
|
||||||
|
1 file changed, 7 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/mount.cifs.c b/mount.cifs.c
|
||||||
|
index ae7a899..029f01a 100644
|
||||||
|
--- a/mount.cifs.c
|
||||||
|
+++ b/mount.cifs.c
|
||||||
|
@@ -1830,6 +1830,7 @@ assemble_mountinfo(struct parsed_mount_info *parsed_info,
|
||||||
|
}
|
||||||
|
|
||||||
|
assemble_exit:
|
||||||
|
+ free(orgoptions);
|
||||||
|
return rc;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -1994,8 +1995,11 @@ int main(int argc, char **argv)
|
||||||
|
|
||||||
|
/* chdir into mountpoint as soon as possible */
|
||||||
|
rc = acquire_mountpoint(&mountpoint);
|
||||||
|
- if (rc)
|
||||||
|
+ if (rc){
|
||||||
|
+ free(mountpoint);
|
||||||
|
+ free(orgoptions);
|
||||||
|
return rc;
|
||||||
|
+ }
|
||||||
|
|
||||||
|
/*
|
||||||
|
* mount.cifs does privilege separation. Most of the code to handle
|
||||||
|
@@ -2014,6 +2018,7 @@ int main(int argc, char **argv)
|
||||||
|
/* child */
|
||||||
|
rc = assemble_mountinfo(parsed_info, thisprogram, mountpoint,
|
||||||
|
orig_dev, orgoptions);
|
||||||
|
+ free(mountpoint);
|
||||||
|
return rc;
|
||||||
|
} else {
|
||||||
|
/* parent */
|
||||||
|
@@ -2149,5 +2154,6 @@ mount_exit:
|
||||||
|
}
|
||||||
|
free(options);
|
||||||
|
free(orgoptions);
|
||||||
|
+ free(mountpoint);
|
||||||
|
return rc;
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.7.4
|
||||||
|
|
||||||
BIN
cifs-utils-6.8.tar.bz2
Normal file
BIN
cifs-utils-6.8.tar.bz2
Normal file
Binary file not shown.
111
cifs-utils.spec
Normal file
111
cifs-utils.spec
Normal file
@ -0,0 +1,111 @@
|
|||||||
|
Name: cifs-utils
|
||||||
|
Version: 6.8
|
||||||
|
Release: 5
|
||||||
|
Summary: Utilities for doing and managing mounts of the Linux CIFS filesystem
|
||||||
|
License: GPLv3+
|
||||||
|
URL: http://linux-cifs.samba.org/cifs-utils/
|
||||||
|
Source0: https://download.samba.org/pub/linux-cifs/cifs-utils/%{name}-%{version}.tar.bz2
|
||||||
|
|
||||||
|
Patch6000: 6000-setcifsacl-fix-adding-ACE-when-owner-sid-in-unexpect.patch
|
||||||
|
Patch6001: 6001-cifs.upcall-fix-a-compiler-warning.patch
|
||||||
|
Patch9000: 9000-mount.cifs-fix-memory-leaks.patch
|
||||||
|
|
||||||
|
BuildRequires: python3-docutils libcap-ng-devel libtalloc-devel krb5-devel keyutils-libs-devel autoconf
|
||||||
|
BuildRequires: automake libwbclient-devel pam-devel git python3-samba pkg-config fdupes gcc
|
||||||
|
Provides: pam_cifscreds
|
||||||
|
Obsoletes: pam_cifscreds
|
||||||
|
Requires: keyutils
|
||||||
|
|
||||||
|
%description
|
||||||
|
The in-kernel CIFS filesystem is generally the preferred method for mounting
|
||||||
|
SMB/CIFS shares on Linux.
|
||||||
|
|
||||||
|
The in-kernel CIFS filesystem relies on a set of user-space tools. That package
|
||||||
|
of tools is called cifs-utils.Although not really part of Samba proper, these
|
||||||
|
tools were originally part of the Samba package. For several reasons, shipping
|
||||||
|
these tools as part of Samba was problematic and it was deemed better to split
|
||||||
|
them off into their own package.
|
||||||
|
|
||||||
|
%package devel
|
||||||
|
Summary: Files needed for building plugins for cifs-utils
|
||||||
|
|
||||||
|
%description devel
|
||||||
|
The SMB/CIFS protocol is a standard file sharing protocol widely deployed
|
||||||
|
on Microsoft Windows machines. This package contains the header file
|
||||||
|
necessary for building ID mapping plugins for cifs-utils.
|
||||||
|
|
||||||
|
%package help
|
||||||
|
Summary: Including man files for cifs-utils
|
||||||
|
Requires: man
|
||||||
|
|
||||||
|
%description help
|
||||||
|
This contains man files for the using of cifs-utils.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -Sgit -n %{name}-%{version}
|
||||||
|
|
||||||
|
%build
|
||||||
|
%configure --prefix=/usr --with-pamdir=%{_libdir}/security ROOTSBINDIR=%{_sbindir}
|
||||||
|
make %{?_smp_mflags}
|
||||||
|
|
||||||
|
%install
|
||||||
|
rm -rf %{buildroot}
|
||||||
|
%make_install
|
||||||
|
mkdir -p %{buildroot}%{_sysconfdir}/%{name}
|
||||||
|
ln -s %{_libdir}/%{name}/idmapwb.so %{buildroot}%{_sysconfdir}/%{name}/idmap-plugin
|
||||||
|
mkdir -p %{buildroot}%{_sysconfdir}/request-key.d
|
||||||
|
install -m 644 contrib/request-key.d/cifs.idmap.conf %{buildroot}%{_sysconfdir}/request-key.d
|
||||||
|
install -m 644 contrib/request-key.d/cifs.spnego.conf %{buildroot}%{_sysconfdir}/request-key.d
|
||||||
|
|
||||||
|
%files
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%doc
|
||||||
|
%{_bindir}/*
|
||||||
|
%{_sbindir}/*
|
||||||
|
%dir %{_libdir}/%{name}
|
||||||
|
%{_libdir}/%{name}/idmapwb.so
|
||||||
|
%{_libdir}/security/pam_cifscreds.so
|
||||||
|
%dir %{_sysconfdir}/cifs-utils
|
||||||
|
%config(noreplace) %{_sysconfdir}/request-key.d/cifs.idmap.conf
|
||||||
|
%config(noreplace) %{_sysconfdir}/request-key.d/cifs.spnego.conf
|
||||||
|
%ghost %config(noreplace) %{_sysconfdir}/cifs-utils/idmap-plugin
|
||||||
|
|
||||||
|
%files devel
|
||||||
|
%{_includedir}/cifsidmap.h
|
||||||
|
|
||||||
|
%files help
|
||||||
|
%{_mandir}/man1/*
|
||||||
|
%{_mandir}/man8/*
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Fri Aug 30 2019 zoujing<zoujing13@huawei.com> - 6.8-5
|
||||||
|
- Type:enhancemnet
|
||||||
|
- ID:NA
|
||||||
|
- SUG:restart
|
||||||
|
- DESCi:openEuler Debranding
|
||||||
|
|
||||||
|
* Tue Aug 20 2019 zoujing<zoujing13@huawei.com> - 6.8-4
|
||||||
|
- Type:enhancemnet
|
||||||
|
- ID:NA
|
||||||
|
- SUG:restart
|
||||||
|
- DESCi:openEuler Debranding
|
||||||
|
|
||||||
|
* Tue Aug 20 2019 zhanghaibo <ted.zhang@huawei.com> - 6.8-3
|
||||||
|
- correct patch name
|
||||||
|
|
||||||
|
* Tue Jul 23 2019 liujiawen <liujiawen10@huawei.com> - 6.8-2.2
|
||||||
|
- Type:bugfix
|
||||||
|
- ID:NA
|
||||||
|
- SUG:NA
|
||||||
|
- DESC:mount.cifs: fix memory leaks
|
||||||
|
|
||||||
|
* Wed Jul 10 2019 zhangyujing <zhangyujing1@huawei.com> - 6.8-2.1
|
||||||
|
- Type:bugfix
|
||||||
|
- ID:NA
|
||||||
|
- SUG:NA
|
||||||
|
- DESC:setcifsacl: fix adding ACE when owner sid in unexpected location
|
||||||
|
cifs.upcall: fix a compiler warning
|
||||||
|
|
||||||
|
* Mon Jul 1 2019 zoujing<zoujing13@huawei.com> - 6.8-2
|
||||||
|
- Package Initialization
|
||||||
|
|
||||||
Loading…
x
Reference in New Issue
Block a user