- add missing patch for bug 1942371, add fixes for bugs 1958489 and 1958486.
This commit is contained in:
parent
258d54465d
commit
059c556a9d
48
autofs-5.1.7-fix-amd-hosts-mount-expire.patch
Normal file
48
autofs-5.1.7-fix-amd-hosts-mount-expire.patch
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
autofs-5.1.7 - fix amd hosts mount expire
|
||||||
|
|
||||||
|
From: Ian Kent <raven@themaw.net>
|
||||||
|
|
||||||
|
When swicthing to use the mnt_list to track mounts for expire, if the
|
||||||
|
amd hosts map entry name is for the host short name, the amd mount
|
||||||
|
entry for the short name gets removed. This causes a subsequent mounts
|
||||||
|
for host exports to fail.
|
||||||
|
|
||||||
|
What should happen is the short name amd entry not be removed and a
|
||||||
|
mounted mount entry for the symlinked FQDN mount added so it expires.
|
||||||
|
|
||||||
|
Signed-off-by: Ian Kent <raven@themaw.net>
|
||||||
|
---
|
||||||
|
CHANGELOG | 1 +
|
||||||
|
modules/parse_amd.c | 9 +++++----
|
||||||
|
2 files changed, 6 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
--- autofs-5.1.7.orig/CHANGELOG
|
||||||
|
+++ autofs-5.1.7/CHANGELOG
|
||||||
|
@@ -68,6 +68,7 @@
|
||||||
|
- add ext_mount_hash_mutex lock helpers.
|
||||||
|
- fix dangling symlink creation if nis support is not available.
|
||||||
|
- fix amd section mounts map reload.
|
||||||
|
+- fix amd hosts mount expire.
|
||||||
|
|
||||||
|
25/01/2021 autofs-5.1.7
|
||||||
|
- make bind mounts propagation slave by default.
|
||||||
|
--- autofs-5.1.7.orig/modules/parse_amd.c
|
||||||
|
+++ autofs-5.1.7/modules/parse_amd.c
|
||||||
|
@@ -2341,12 +2341,13 @@ int parse_mount(struct autofs_point *ap,
|
||||||
|
if (!rv) {
|
||||||
|
/*
|
||||||
|
* If entry->path doesn't match the mnt->mp then
|
||||||
|
- * the mount point path has changed and a new
|
||||||
|
- * mnt_list entry added for it, so remove the
|
||||||
|
- * original.
|
||||||
|
+ * it's a "host" map and the mount point path is
|
||||||
|
+ * different to the lookup name. Add a new mnt_list
|
||||||
|
+ * entry so that both the symlinked name and the
|
||||||
|
+ * mount expire.
|
||||||
|
*/
|
||||||
|
if (strcmp(this->path, mnt->mp))
|
||||||
|
- mnts_remove_amdmount(this->path);
|
||||||
|
+ mnts_add_mount(ap, this->rhost, MNTS_INDIRECT|MNTS_MOUNTED);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
/* Not mounted, remove the mnt_list entry from amdmount list */
|
120
autofs-5.1.7-fix-amd-section-mounts-map-reload.patch
Normal file
120
autofs-5.1.7-fix-amd-section-mounts-map-reload.patch
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
autofs-5.1.7 - fix amd section mounts map reload
|
||||||
|
|
||||||
|
From: Ian Kent <raven@themaw.net>
|
||||||
|
|
||||||
|
Master map section mounts (amd format mounts) get umounted on reload.
|
||||||
|
|
||||||
|
Signed-off-by: Ian Kent <raven@themaw.net>
|
||||||
|
---
|
||||||
|
CHANGELOG | 1
|
||||||
|
daemon/master.c | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
|
||||||
|
2 files changed, 81 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
--- autofs-5.1.7.orig/CHANGELOG
|
||||||
|
+++ autofs-5.1.7/CHANGELOG
|
||||||
|
@@ -67,6 +67,7 @@
|
||||||
|
- cater for empty mounts list in mnts_get_expire_list().
|
||||||
|
- add ext_mount_hash_mutex lock helpers.
|
||||||
|
- fix dangling symlink creation if nis support is not available.
|
||||||
|
+- fix amd section mounts map reload.
|
||||||
|
|
||||||
|
25/01/2021 autofs-5.1.7
|
||||||
|
- make bind mounts propagation slave by default.
|
||||||
|
--- autofs-5.1.7.orig/daemon/master.c
|
||||||
|
+++ autofs-5.1.7/daemon/master.c
|
||||||
|
@@ -882,6 +882,83 @@ struct master *master_new(const char *na
|
||||||
|
return master;
|
||||||
|
}
|
||||||
|
|
||||||
|
+static void master_update_amd_mount_section_mount(struct master *master,
|
||||||
|
+ const char *path, time_t age)
|
||||||
|
+{
|
||||||
|
+ unsigned int m_logopt = master->logopt;
|
||||||
|
+ struct master_mapent *entry;
|
||||||
|
+ struct map_source *source;
|
||||||
|
+ unsigned int loglevel;
|
||||||
|
+ unsigned int logopt;
|
||||||
|
+ unsigned int flags;
|
||||||
|
+ time_t timeout;
|
||||||
|
+ char *map;
|
||||||
|
+ char *opts;
|
||||||
|
+
|
||||||
|
+ entry = master_find_mapent(master, path);
|
||||||
|
+ if (!entry)
|
||||||
|
+ return;
|
||||||
|
+
|
||||||
|
+ map = conf_amd_get_map_name(path);
|
||||||
|
+ if (!map)
|
||||||
|
+ return;
|
||||||
|
+
|
||||||
|
+ /* amd top level mounts have only one map */
|
||||||
|
+ source = entry->maps;
|
||||||
|
+ if (strcmp(source->name, map) != 0) {
|
||||||
|
+ struct map_source *new;
|
||||||
|
+ char *type;
|
||||||
|
+ char *argv[2];
|
||||||
|
+
|
||||||
|
+ type = conf_amd_get_map_type(path);
|
||||||
|
+ argv[0] = map;
|
||||||
|
+ argv[1] = NULL;
|
||||||
|
+
|
||||||
|
+ new = master_add_map_source(entry, type, "amd",
|
||||||
|
+ age, 1, (const char **) argv);
|
||||||
|
+ if (!new) {
|
||||||
|
+ error(m_logopt,
|
||||||
|
+ "failed to add source for amd section mount %s",
|
||||||
|
+ path);
|
||||||
|
+ if (type)
|
||||||
|
+ free(type);
|
||||||
|
+ goto out;
|
||||||
|
+ }
|
||||||
|
+ master_free_map_source(source, 0);
|
||||||
|
+ entry->maps = new;
|
||||||
|
+ source = new;
|
||||||
|
+ if (type)
|
||||||
|
+ free(type);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ loglevel = conf_amd_get_log_options();
|
||||||
|
+ logopt = m_logopt;
|
||||||
|
+ if (loglevel <= LOG_DEBUG && loglevel > LOG_INFO)
|
||||||
|
+ logopt = LOGOPT_DEBUG;
|
||||||
|
+ else if (loglevel <= LOG_INFO && loglevel > LOG_ERR)
|
||||||
|
+ logopt = LOGOPT_VERBOSE;
|
||||||
|
+
|
||||||
|
+ flags = conf_amd_get_flags(path);
|
||||||
|
+ if (flags & CONF_BROWSABLE_DIRS)
|
||||||
|
+ entry->ap->flags |= MOUNT_FLAG_GHOST;
|
||||||
|
+
|
||||||
|
+ opts = conf_amd_get_map_options(path);
|
||||||
|
+ if (opts) {
|
||||||
|
+ if (strstr(opts, "cache:=all"))
|
||||||
|
+ entry->ap->flags |= MOUNT_FLAG_AMD_CACHE_ALL;
|
||||||
|
+ free(opts);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ entry->ap->logopt = logopt;
|
||||||
|
+
|
||||||
|
+ timeout = conf_amd_get_dismount_interval(path);
|
||||||
|
+ set_exp_timeout(entry->ap, source, timeout);
|
||||||
|
+ source->master_line = 0;
|
||||||
|
+ entry->age = age;
|
||||||
|
+out:
|
||||||
|
+ free(map);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
static void master_add_amd_mount_section_mounts(struct master *master, time_t age)
|
||||||
|
{
|
||||||
|
unsigned int m_logopt = master->logopt;
|
||||||
|
@@ -916,8 +993,10 @@ static void master_add_amd_mount_section
|
||||||
|
* master map it's not a duplicate, don't issue
|
||||||
|
* an error message.
|
||||||
|
*/
|
||||||
|
- if (ret == 1)
|
||||||
|
+ if (ret == 1) {
|
||||||
|
+ master_update_amd_mount_section_mount(master, path, age);
|
||||||
|
goto next;
|
||||||
|
+ }
|
||||||
|
info(m_logopt,
|
||||||
|
"amd section mount path conflict, %s ignored",
|
||||||
|
path);
|
@ -0,0 +1,35 @@
|
|||||||
|
autofs-5.1.7 - fix dangling symlink creation if nis support is not available
|
||||||
|
|
||||||
|
From: Ian Kent <raven@themaw.net>
|
||||||
|
|
||||||
|
If NIS support is not available a dangling symlink is created pointing
|
||||||
|
from lookup_nis.so to (a non-existent) lookup_yp.so.
|
||||||
|
|
||||||
|
Signed-off-by: Ian Kent <raven@themaw.net>
|
||||||
|
---
|
||||||
|
CHANGELOG | 1 +
|
||||||
|
modules/Makefile | 2 ++
|
||||||
|
2 files changed, 3 insertions(+)
|
||||||
|
|
||||||
|
--- autofs-5.1.7.orig/CHANGELOG
|
||||||
|
+++ autofs-5.1.7/CHANGELOG
|
||||||
|
@@ -66,6 +66,7 @@
|
||||||
|
- refactor lookup_prune_one_cache() a bit.
|
||||||
|
- cater for empty mounts list in mnts_get_expire_list().
|
||||||
|
- add ext_mount_hash_mutex lock helpers.
|
||||||
|
+- fix dangling symlink creation if nis support is not available.
|
||||||
|
|
||||||
|
25/01/2021 autofs-5.1.7
|
||||||
|
- make bind mounts propagation slave by default.
|
||||||
|
--- autofs-5.1.7.orig/modules/Makefile
|
||||||
|
+++ autofs-5.1.7/modules/Makefile
|
||||||
|
@@ -77,7 +77,9 @@ install: all
|
||||||
|
install -c $(MODS) -m 755 $(INSTALLROOT)$(autofslibdir)
|
||||||
|
-rm -f $(INSTALLROOT)$(autofslibdir)/mount_smbfs.so
|
||||||
|
ln -fs lookup_file.so $(INSTALLROOT)$(autofslibdir)/lookup_files.so
|
||||||
|
+ifeq ($(YPCLNT), 1)
|
||||||
|
ln -fs lookup_yp.so $(INSTALLROOT)$(autofslibdir)/lookup_nis.so
|
||||||
|
+endif
|
||||||
|
ifeq ($(LDAP), 1)
|
||||||
|
ln -fs lookup_ldap.so $(INSTALLROOT)$(autofslibdir)/lookup_ldaps.so
|
||||||
|
endif
|
20
autofs.spec
20
autofs.spec
@ -12,7 +12,7 @@
|
|||||||
Summary: A tool for automatically mounting and unmounting filesystems
|
Summary: A tool for automatically mounting and unmounting filesystems
|
||||||
Name: autofs
|
Name: autofs
|
||||||
Version: 5.1.7
|
Version: 5.1.7
|
||||||
Release: 14%{?dist}
|
Release: 15%{?dist}
|
||||||
Epoch: 1
|
Epoch: 1
|
||||||
License: GPLv2+
|
License: GPLv2+
|
||||||
Source: https://www.kernel.org/pub/linux/daemons/autofs/v5/autofs-%{version}-2.tar.gz
|
Source: https://www.kernel.org/pub/linux/daemons/autofs/v5/autofs-%{version}-2.tar.gz
|
||||||
@ -86,6 +86,9 @@ Patch64: autofs-5.1.7-fix-double-free-in-parse_mapent.patch
|
|||||||
Patch65: autofs-5.1.7-refactor-lookup_prune_one_cache-a-bit.patch
|
Patch65: autofs-5.1.7-refactor-lookup_prune_one_cache-a-bit.patch
|
||||||
Patch66: autofs-5.1.7-cater-for-empty-mounts-list-in-mnts_get_expire_list.patch
|
Patch66: autofs-5.1.7-cater-for-empty-mounts-list-in-mnts_get_expire_list.patch
|
||||||
Patch67: autofs-5.1.7-add-ext_mount_hash_mutex-lock-helpers.patch
|
Patch67: autofs-5.1.7-add-ext_mount_hash_mutex-lock-helpers.patch
|
||||||
|
Patch68: autofs-5.1.7-fix-dangling-symlink-creation-if-nis-support-is-not-available.patch
|
||||||
|
Patch69: autofs-5.1.7-fix-amd-section-mounts-map-reload.patch
|
||||||
|
Patch70: autofs-5.1.7-fix-amd-hosts-mount-expire.patch
|
||||||
|
|
||||||
%if %{with_systemd}
|
%if %{with_systemd}
|
||||||
BuildRequires: systemd-units
|
BuildRequires: systemd-units
|
||||||
@ -219,6 +222,9 @@ echo %{version}-%{release} > .version
|
|||||||
%patch65 -p1
|
%patch65 -p1
|
||||||
%patch66 -p1
|
%patch66 -p1
|
||||||
%patch67 -p1
|
%patch67 -p1
|
||||||
|
%patch68 -p1
|
||||||
|
%patch69 -p1
|
||||||
|
%patch70 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
LDFLAGS=-Wl,-z,now
|
LDFLAGS=-Wl,-z,now
|
||||||
@ -327,6 +333,18 @@ fi
|
|||||||
%dir /etc/auto.master.d
|
%dir /etc/auto.master.d
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue May 11 2021 Ian Kent <ikent@redhat.com> - 1:5.1.7-15
|
||||||
|
- bz1942371 - Drop nis support from autofs
|
||||||
|
- fix dangling symlink creation if nis support is not available
|
||||||
|
(add missing patch).
|
||||||
|
- bz1958489 - autofs amd mounts present in the configuration get
|
||||||
|
umounted on reload
|
||||||
|
- fix amd section mounts map reload.
|
||||||
|
- bz1958486 - autofs amd type host mounts fail for certain host names
|
||||||
|
- fix amd hosts mount expire.
|
||||||
|
- Related: rhbz#1942371
|
||||||
|
- Resolves: rhbz#1958489 rhbz#1958486
|
||||||
|
|
||||||
* Tue Apr 20 2021 Ian Kent <ikent@redhat.com> - 1:5.1.7-14
|
* Tue Apr 20 2021 Ian Kent <ikent@redhat.com> - 1:5.1.7-14
|
||||||
- bz1951344 - the autofs distribution tar has a file with an incompatible
|
- bz1951344 - the autofs distribution tar has a file with an incompatible
|
||||||
license.
|
license.
|
||||||
|
Loading…
Reference in New Issue
Block a user