[SCM] Samba Shared Repository - branch v3-2-test updated - initial-v3-2-unstable-847-g22ac34a

James Peach jpeach at samba.org
Sun Dec 23 01:22:36 GMT 2007


On 22/12/2007, at 4:30 PM, Jeremy Allison wrote:

> On Sat, Dec 22, 2007 at 04:11:14PM -0600, James Peach wrote:
>>
>>    Cache the underlying filesystem capabilities at connection time.
>>
>>    This change alters the Samba connection code to cache the  
>> filesystem
>>    capabilities when a new client connects. This can be used to  
>> enable
>>    filesystem specific optimisations is a general manner.
>
> James, once you've determined the filesystem capabilities
> for the share, if they're found to be case insensitive and
> case preserving, then it needs to override these settings
> in the connection struct.
>
> 	bool case_sensitive;
> 	bool case_preserve;
> 	bool short_case_preserve;

I think you are right that a case-insensitive filesystem should  
clobber case_sensitive (it's pretty hard for it to provide case- 
sensitive semantics), but case preservation is probably orthogonal to  
that.

Now that it's possible to look at filesystem capabilities, it's  
probably also possible to move the case normalisation behaviour into a  
VFS module.

I won't have email for the next couple of weeks, but I'll look more  
closely at this when I'm back online. Thanks for reviewing!

> If you do this then the unix_convert() function already
> has the logic to bypass case sensitive searches for pathname
> lookups that will never be found. This will massively speed
> up smbd on directories with thousands of entries when a filename
> that doesn't exist is looked up.

yes :)

--
James Peach | jpeach at samba.org




More information about the samba-technical mailing list