Original implementation:
Commit: 7fa35cA
dtfile: coverity CIDs 88363,88405,89140,89612; insecure readlink
That commit caused dtfile to be unable to resolve symbolic links and
was later reverted. This commit reimplements the fixes correctly, and
should hopefully still resolve the coverity issues as well.