When smbd receives a request such as Query path info on say “\\server\share\folder1\folder2\folder3” and there is dfs link
setup at \\server\share -> \\server1\share1, the resolve_dfspath code seems to just peek into last 2 components to check if they are msdfs links. In this case the last 2 components are not links. So instead of returning path_not_covered it returns path_not_found error for folder3.
The Dfs client then does not attempt to do a get_dfs_referral(). With native Dfs server it works fine i.e. the server returns correct error code.
(Please note that the error was reproduced on samba 2.x , but the related code
looks similar in 3.0)

Ok, hang on a minute. I'm looking at the code in 3.0.23b (our current release) and we do handle this correctly (I tested with smbclient). I've also noticed you filed the bug against 3.0.9. Please try this again with 3.0.23b and re-open the bug if you still think there's a problem.
Jeremy.