MSDfs Samba2.2.4 lower case ??

Kevin Wheatley hxpro at cinesite.co.uk
Wed May 8 10:59:04 GMT 2002


Shirish Kalele wrote:
> 
> >Is it just Win9X ? because I notice there is some code to detect the
> >client OS in some parts of samba, in this case you could only
> >strlower() on those client you know have the upper case 'feature' (or
> >perhaps the reverse and don't do it on those you know work with mixed
> >case?)
> >
> You have a dfs link at /dfsroot/Directory/sub/TR
> 
> Now you get a pathname like \\SRV\DFS\DIRECTORY\SUB\TR
> 
> Doing a strlower on the path DIRECTORY\SUB\TR because the client is Win9X
> would not help get us the Unix link pathname. We would need to try (using
> stat()) all kinds of case-combinations for each component of the path to
> finally form the correct path Directory/sub/TR.

Now at least I'm beginging to play the same game...

> We don't have a problem with Win2K because it sends us
> \\SRV\DFS\Directory\sub\TR so we can simply take the relative path and do
> an lstat on that. No case combinations needed. However, even Win2K is not
> guaranteed. If a user/application tries to access
> \\SRV\DFS\Directory\SUB\tr, Win2K might send us this path and we'd have to
> do the same thing that we do for Win9X.

Ah, so Win2K isn't likely to spontaneously decide to mangle the case
then, that means I'm in the same situation as under Unix, the users
will just have to 'do the right thing' and type/select the right path
from their file mananger. Which is the same on both platforms I hope
they can handle that :-)

> In the current situation, by restricting that links be all lowercase on
> the Unix machine, your link would have to be /dfsroot/directory/sub/tr.
> 
> So we can simply strlower all the paths that we get from the clients,
> and do an lstat. No case combinations needed.

I now see what you mean, unfortunately I'm still stuck with trying to
implement something, so from what you've said if I say Win95 can have
lowercase links and anything else has to do the right thing (one 'if
(get_remote_arch() == RA_WIN95)' statement) then I'm no worse off in
the worst case but more likely to work for the general case (which for
me is Win2K).

Thanks for you help

Kevin

-- 
| Kevin Wheatley              | These are the opinions of nobody   |
| Special Services (Projects) | and are not shared by my employers |
| Cinesite Digital Studios    |                                    |




More information about the samba-technical mailing list