!116 [sync] PR-113: backport patches from community
From: @openeuler-sync-bot Reviewed-by: @swf504 Signed-off-by: @swf504
This commit is contained in:
commit
8e32a03f15
32
0008-fixed-a-regression-in-the-junction-code.patch
Normal file
32
0008-fixed-a-regression-in-the-junction-code.patch
Normal file
@ -0,0 +1,32 @@
|
||||
From 7916134e5d9b1641effd3b6d964c806a09cfdcee Mon Sep 17 00:00:00 2001
|
||||
From: Steve Dickson <steved@redhat.com>
|
||||
Date: Thu, 10 Aug 2023 11:57:39 -0400
|
||||
Subject: [PATCH] Fixed a regression in the junction code
|
||||
|
||||
commit cdbef4e9 created a regression in the
|
||||
in the junction code by adding a O_PATH flag
|
||||
to the open() in junction_open_path()
|
||||
|
||||
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=2213669
|
||||
Signed-off-by: Steve Dickson <steved@redhat.com>
|
||||
|
||||
---
|
||||
support/junction/junction.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/support/junction/junction.c b/support/junction/junction.c
|
||||
index 0628bb0..c1ec8ff 100644
|
||||
--- a/support/junction/junction.c
|
||||
+++ b/support/junction/junction.c
|
||||
@@ -63,7 +63,7 @@ junction_open_path(const char *pathname, int *fd)
|
||||
if (pathname == NULL || fd == NULL)
|
||||
return FEDFS_ERR_INVAL;
|
||||
|
||||
- tmp = open(pathname, O_PATH|O_DIRECTORY);
|
||||
+ tmp = open(pathname, O_DIRECTORY);
|
||||
if (tmp == -1) {
|
||||
switch (errno) {
|
||||
case EPERM:
|
||||
--
|
||||
2.33.0
|
||||
|
||||
@ -0,0 +1,55 @@
|
||||
From 90a23f7c6343bcb1b69c93ceccc14cc06e14d958 Mon Sep 17 00:00:00 2001
|
||||
From: Aram Akhavan <github@aram.nubmail.ca>
|
||||
Date: Sat, 15 Jul 2023 13:21:04 -0400
|
||||
Subject: [PATCH] libnfsidmap: try to get the domain directly from hostname if
|
||||
the DNS lookup fails and always show the log message if the domain can't be
|
||||
determined
|
||||
|
||||
In nfs4_init_name_mapping(), if no domain is specified in the config file, the hostname will be looked up in DNS, and the domain extracted from that.
|
||||
If DNS resolution isn't up at this time (i.e. on idmapd startup), the hardcoded domain in IDMAPD_DEFAULT_DOMAIN is used. This will break id mapping
|
||||
for anyone who doesn't happen to use "localdomain". Previously, the log message indicating this has happened requires -v to be passed, so the
|
||||
"failure" was silent by default.
|
||||
|
||||
Signed-off-by: Aram Akhavan <github@aram.nubmail.ca>
|
||||
Signed-off-by: Steve Dickson <steved@redhat.com>
|
||||
---
|
||||
support/nfsidmap/libnfsidmap.c | 16 +++++++++++-----
|
||||
1 file changed, 11 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/support/nfsidmap/libnfsidmap.c b/support/nfsidmap/libnfsidmap.c
|
||||
index 0a912e5..1db24d1 100644
|
||||
--- a/support/nfsidmap/libnfsidmap.c
|
||||
+++ b/support/nfsidmap/libnfsidmap.c
|
||||
@@ -219,10 +219,16 @@ static int domain_from_dns(char **domain)
|
||||
|
||||
if (gethostname(hname, sizeof(hname)) == -1)
|
||||
return -1;
|
||||
- if ((he = gethostbyname(hname)) == NULL)
|
||||
- return -1;
|
||||
- if ((c = strchr(he->h_name, '.')) == NULL || *++c == '\0')
|
||||
- return -1;
|
||||
+ if ((he = gethostbyname(hname)) == NULL) {
|
||||
+ IDMAP_LOG(1, ("libnfsidmap: DNS lookup of hostname failed. Attempting to use domain from hostname as is."));
|
||||
+ if ((c = strchr(hname, '.')) == NULL || *++c == '\0')
|
||||
+ return -1;
|
||||
+ }
|
||||
+ else {
|
||||
+ if ((c = strchr(he->h_name, '.')) == NULL || *++c == '\0')
|
||||
+ return -1;
|
||||
+ }
|
||||
+
|
||||
/*
|
||||
* Query DNS to see if the _nfsv4idmapdomain TXT record exists
|
||||
* If so use it...
|
||||
@@ -387,7 +393,7 @@ int nfs4_init_name_mapping(char *conffile)
|
||||
dflt = 1;
|
||||
ret = domain_from_dns(&default_domain);
|
||||
if (ret) {
|
||||
- IDMAP_LOG(1, ("libnfsidmap: Unable to determine "
|
||||
+ IDMAP_LOG(0, ("libnfsidmap: Unable to determine "
|
||||
"the NFSv4 domain; Using '%s' as the NFSv4 domain "
|
||||
"which means UIDs will be mapped to the 'Nobody-User' "
|
||||
"user defined in %s",
|
||||
--
|
||||
2.33.0
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
|
||||
Name: nfs-utils
|
||||
Version: 2.6.3
|
||||
Release: 2
|
||||
Release: 3
|
||||
Epoch: 2
|
||||
Summary: The Linux NFS userland utility package
|
||||
License: MIT and GPLv2 and GPLv2+ and BSD
|
||||
@ -20,7 +20,9 @@ Patch4: 0004-export-move-cache_open-before-workers-are-forked.patch
|
||||
Patch5: 0005-gssd-fix-handling-DNS-lookup-failure.patch
|
||||
Patch6: 0006-nfsidmap-fix-a-memory-leak.patch
|
||||
Patch7: 0007-rpc-gssd-service-has-status-failed-due-to-segfault.patch
|
||||
|
||||
Patch8: 0008-fixed-a-regression-in-the-junction-code.patch
|
||||
Patch9: 0009-libnfsidmap-try-to-get-the-domain-directly-from-host.patch
|
||||
|
||||
BuildRequires: libevent-devel,libcap-devel, libtirpc-devel libblkid-devel
|
||||
BuildRequires: krb5-libs >= 1.4 autoconf >= 2.57 openldap-devel >= 2.2
|
||||
BuildRequires: automake, libtool, gcc, device-mapper-devel
|
||||
@ -292,6 +294,9 @@ fi
|
||||
%{_mandir}/*/*
|
||||
|
||||
%changelog
|
||||
* Mon Nov 18 2024 zhangjian <zhangjian496@huawei.com> - 2:2.6.3-3
|
||||
- backport bugfix patches from community
|
||||
|
||||
* Tue Sep 10 2024 zhangjian <zhangjian496@huawei.com> - 2:2.6.3-2
|
||||
- backport bugfix patches from community
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user