Comment 8 for bug 738968

Revision history for this message
Larry Reid (lcreid) wrote :

James: I downloaded the source for Samba 3.5.8, built it, and confirmed that it had the same problem. So I've been tracing the code. What I see is that in the function cli_dfs_get_referal in libsmb/clidfs.c two components of the path are returned: one that doesn't end in a \, and the other that doesn't start with a \. When the two paths are put together in the function cli_resolve_path (in the same source file), no \ is put between the components, which leads to smbclient not finding the directory.

I haven't had time to trace below cli_dfs_get_referral, but I believe that the path components are being returned by the server. I'm guessing (stress guessing) that there may be a difference in the EMC CIFS or DFS implementation, and EMC is returning a string without a trailing \ when other implementations return a trailing \.

Give me the weekend to see if I confirm my guesses. I'm pretty sure I have a patch that would work for me, but I have no resources to be able to test other cases to make sure my patch doesn't break anything else. Also, I think we have a case that this is indeed a case that Samba should handle. My limited experience upstreaming bugs from Ubuntu is that they never get addressed. My gut says the Samba team will be more responsive. What do you think the chances are that we can get the Samba team's attention for this?