Bug 1497846

Summary: autofs option parsing for maps with fstype=autofs no longer works
Product: Red Hat Enterprise Linux 7 Reporter: Frank Sorenson <fsorenso>
Component: autofsAssignee: Ian Kent <ikent>
Status: CLOSED ERRATA QA Contact: xiaoli feng <xifeng>
Severity: unspecified Docs Contact:
Priority: urgent    
Version: 7.4CC: davy.defaud, dwysocha, ikent, redhat, smazul, xzhou, zlang
Target Milestone: rcKeywords: Patch, Regression, Reproducer, ZStream
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: autofs-5.0.7-71.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 1503945 (view as bug list) Environment:
Last Closed: 2018-04-10 18:17:12 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1420851, 1469559, 1503945    
Attachments:
Description Flags
Patch - revert fix argc off by one in mount_autofs.c none

Description Frank Sorenson 2017-10-02 20:50:49 UTC
Description of problem:

Macro definitions which are specified as options to the mount entry are not being set, and are therefore not available for use in substitutions.


Version-Release number of selected component (if applicable):
  autofs-5.0.7-69.el7.x86_64


How reproducible:
  see below

Steps to Reproduce:

samba server with share
  //server/share


auto.master:
/smb    /etc/auto.cifs.top --negative-timeout=1 --timeout=20

auto.cifs.top:
*       -fstype=autofs,-Dhname=& file:/etc/auto.cifs.sub


auto.cifs.sub:
*       -fstype=cifs,credentials=/root/cifs_mount_creds,noserverino,nounix  ://$hname/&


# ls /smb/server/share


Actual results:

ls: cannot access /smb/server/share: No such file or directory


the 'hname' macro is not defined in the table, so the '$hname' is replaced by an empty string when used in 'auto.cifs.sub'


Expected results:

'hname' macro gets defined, and is available 


Additional info:

this has worked in previous autofs versions

Comment 2 Ian Kent 2017-10-03 02:33:52 UTC
(In reply to Frank Sorenson from comment #0)
> Description of problem:
> 
> Macro definitions which are specified as options to the mount entry are not
> being set, and are therefore not available for use in substitutions.

Indeed they aren't.

It seems a "fix" I added actually introduced a regression.
 
Ian

Comment 3 Ian Kent 2017-10-03 02:34:58 UTC
Created attachment 1333480 [details]
Patch - revert fix argc off by one in mount_autofs.c

Comment 5 Ian Kent 2017-10-04 11:39:33 UTC
*** Bug 1498443 has been marked as a duplicate of this bug. ***

Comment 7 smazul 2017-10-09 17:56:48 UTC
Hello,

I understand that has been a commit that has seemingly resolved the issue. Customer in case 01940146 is interested in any potential test package that has result from this commit. Understanding that this seems to be in package 5.0.7-71 I do not observe this to be GA. Apologies if I am misunderstanding the current state.

Thanks

Comment 8 Ian Kent 2017-10-09 23:15:39 UTC
(In reply to smazul from comment #7)
> Hello,
> 
> I understand that has been a commit that has seemingly resolved the issue.
> Customer in case 01940146 is interested in any potential test package that
> has result from this commit. Understanding that this seems to be in package
> 5.0.7-71 I do not observe this to be GA. Apologies if I am misunderstanding
> the current state.

Right, the process is that changes are committed and built into
a package during the release development phase, following development
the release enters testing phase where QA verifies changed packages
and finally it gets to a GA release.

All of this can take quite a while.

We can give the customer revision 71 (or the current latest revision)
but that package can have other changes that have seen limited testing
and isn't (strictly speaking) supported. Also the package may have
further changes from the development phase or the testing phase so
it may not (and likely won't) be the package that is released at
GA.

Locate the support documentation on providing an accelerated fix
for the options and requirements for delivering an appropriate
package to the customer.

Ian

Comment 16 Dave Wysochanski 2017-10-18 19:39:17 UTC
Now that I look at this patch it looks to me like this will affect option parsing which goes far beyond macro definitions.  If I'm understanding correctly, effectively the bug is that the last 'option' in the chain gets ignored, so it could be any option in the list.  I'm going to do a few more tests.  If this is true, then an effective workaround may just be to add a garbage option at the end, which will be ignored.

Comment 18 Dave Wysochanski 2017-10-18 20:14:36 UTC
BTW, I verified a simple 'ro' got ignored so it definitely is a more generic problem as the patch reads.  For some reason adding a garbage option at the end does not work around the problem so there's something I'm missing there.

Comment 29 errata-xmlrpc 2018-04-10 18:17:12 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2018:0977