Fix relpath handling in file.recurse
Fix relpath handling in file.recurse

* Ensure that the "maxdepth" checks are performed on all relative paths
  encountered during the file.recurse call, including symlink and
  directory paths.
* Ensure that directory transversal does not occur.

No attempt is made to address the issue of master nodes sending more
files/directories than requested via the cp.list_master family of
functions.

Fix #39915

saltstack/salt,saltstack/salt,saltstack/salt,saltstack/salt,saltstack/salt