diff --git a/autofs-5.1.9-Fix-masks-in-parse_sub.c-so-that-hosts-are-correctly-matched.patch b/autofs-5.1.9-Fix-masks-in-parse_sub.c-so-that-hosts-are-correctly-matched.patch new file mode 100644 index 0000000..7770336 --- /dev/null +++ b/autofs-5.1.9-Fix-masks-in-parse_sub.c-so-that-hosts-are-correctly-matched.patch @@ -0,0 +1,44 @@ +autofs-5.1.9 - Fix masks in parse_sub.c, so that hosts are correctly matched. + +From: Thiago Becker + +In the case local address is 10.x.x.x and one of the replica addresses +is 138.x.x.x, MASK_A will make both equal, and get_priority will return +PROXIMITY_NET, which is not correct. + +MASK_A = 0x7F000000 = 01111111 00000000 00000000 00000000 +LOCAL = 10.x.x.x = 00001010 00000000 00000000 00000000 +REMOTE = 138.x.x.x = 10001010 00000000 00000000 00000000 + +Signed-off-by: Thiago Becker +Signed-off-by: Ian Kent +--- + CHANGELOG | 1 + + lib/parse_subs.c | 6 +++--- + 2 files changed, 4 insertions(+), 3 deletions(-) + +--- autofs-5.1.9.orig/CHANGELOG ++++ autofs-5.1.9/CHANGELOG +@@ -29,6 +29,7 @@ + - clear per-mount timeout if not set. + - fix incorrect flags update in update_with_defaults(). + - skip expire check for amd nounmount mounts. ++- Fix masks in parse_sub.c, so that hosts are correctly matched. + + 02/11/2023 autofs-5.1.9 + - fix kernel mount status notification. +--- autofs-5.1.9.orig/lib/parse_subs.c ++++ autofs-5.1.9/lib/parse_subs.c +@@ -37,9 +37,9 @@ + static int volatile ifc_buf_len = MAX_IFC_BUF; + static int volatile ifc_last_len = 0; + +-#define MASK_A 0x7F000000 +-#define MASK_B 0xBFFF0000 +-#define MASK_C 0xDFFFFF00 ++#define MASK_A 0xFF000000 ++#define MASK_B 0xFFFF0000 ++#define MASK_C 0xFFFFFF00 + + /* Get numeric value of the n bits starting at position p */ + #define getbits(x, p, n) ((x >> (p + 1 - n)) & ~(~0 << n)) diff --git a/autofs.spec b/autofs.spec index af7387d..41e598c 100644 --- a/autofs.spec +++ b/autofs.spec @@ -12,7 +12,7 @@ Summary: A tool for automatically mounting and unmounting filesystems Name: autofs Version: 5.1.9 -Release: 14%{?dist} +Release: 15%{?dist} Epoch: 1 License: GPL-2.0-or-later Source: https://www.kernel.org/pub/linux/daemons/autofs/v5/autofs-%{version}.tar.gz @@ -53,6 +53,9 @@ Patch44: autofs-5.1.7-clear-per-mount-timeout-if-not-set.patch Patch45: autofs-5.1.9-fix-incorrect-flags-update-in-update_with_defaults.patch Patch46: autofs-5.1.9-skip-expire-check-for-amd-nounmount-mounts.patch +# JIRA: RHEL-160620 +Patch47: autofs-5.1.9-Fix-masks-in-parse_sub.c-so-that-hosts-are-correctly-matched.patch + %if %{with_systemd} BuildRequires: systemd-units BuildRequires: systemd-devel @@ -224,6 +227,12 @@ fi %dir /etc/auto.master.d %changelog +* Thu Mar 26 2026 Ian Kent - 1:5.1.9-15 +- RHEL-160620 - get_proximity returns a worng proximity on specific addresses + [rhel-10] + - Fix masks in parse_sub.c, so that hosts are correctly matched. +- Resolves: RHEL-160620 + * Tue Mar 17 2026 Ian Kent - 1:5.1.9-14 - RHEL-150238 - RFE: autofs: add handling for AMD 'nounmount' option [rhel-10] - fix lookup search type in umount_subtree_mounts().