Filenames with double quotes broken somewhere between 4.0.17 and 4.0.26

Jeremy Allison jra at samba.org
Wed Jul 29 23:28:43 UTC 2015


On Wed, Jul 29, 2015 at 09:44:09PM +1000, Jan Mikkelsen wrote:
> Hi,
> 
> Filenames with double quotes seem to have broken sometime between these versions.
> 
> With standard 4.0.26 a file called say "Test” (including the double quotes) gets mangled when presented to the client. I have tested this with OS X 10.9 OSX 10.10.4 and Windows 7 clients.
> 
> This worked fine a few releases ago -- the problem I am seeing is that files that were created from the client are no longer accessible using their name with double quotes and only the mangled name is available.
> 
> Changing source3/smbd/mangle_hash2.c like to not treat double quotes as a special character (patch below) make the mangling stop but the the 0x22 double quote character is translated to Unicode 0xf80 on the Unix side. I don’t see where this is happening.
> 
> Doing
> 
>    touch \”XYZ\”
>    ls *XYZ* | xxd
> 
> when in a share directory on the client side gives:
> 
> 0000000: 2258 595a 220a                           "XYZ”.
> 
> On the server side, in the same directory, ls *XYZ* | xxd gives:
> 
> 00000000: ef80 a058 595a ef80 a00a                 ...XYZ….
> 
> Then the names aren’t matched and aren’t available even though it looks like they’re there.
> 
> This is on FreeBSD 10.2-PRERELEASE with a ZFS filesystem, with Unicode filenames enabled. This is samba 4.0.26 installed using the standard FreeBSD port.
> 
> Can anyone point me to where this translation might be happening? Or better yet, happen to know where the recent-ish change that might have caused this behaviour might be?

What does your smb.conf look like ? Are there
any vfs modules you're using on these shares ?



More information about the samba-technical mailing list