<div dir="ltr">Hi Rob,<div><br></div><div style>Calling xabspath() function with "exact=1", makes sure that the last path component exists.</div><div style><br></div><div style>I think the decision making statement</div>
<div style><div><br></div><div>fd = openat(dirfd, s, 0);</div><div>if (fd == -1 && (exact || todo || errno != ENOENT)) goto error;</div><div><br></div><div style>will jump to error:, when openat fails, though the 's' is the last component in the path.</div>
<div style><br></div><div style>Failing to open the last component with errno != ENOENT doesn't mean the component doesn't exist.</div><div style> The check should be modified to see if the fail happens at last component or otherwise.</div>
<div style><br></div><div style>Do provide your inputs on the same.</div><div style><br></div><div style>regards,</div><div style>Ashwini</div><div><br></div></div></div>