Bug 12282 - Cannot copy file with vfs_catia and colon characters
Summary: Cannot copy file with vfs_catia and colon characters
Status: RESOLVED INVALID
Alias: None
Product: Samba 4.1 and newer
Classification: Unclassified
Component: VFS Modules (show other bugs)
Version: 4.3.9
Hardware: All All
: P5 minor (vote)
Target Milestone: ---
Assignee: Samba QA Contact
QA Contact: Samba QA Contact
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-09-20 10:45 UTC by Simon
Modified: 2018-08-30 14:04 UTC (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Simon 2016-09-20 10:45:21 UTC
Hi

I've setup a share with the vfs catia module because I have some colons in the path.

Everything works perfectly but one action : copying from windows explorer. Tried Windows 7 and Server 2008 R2.

When I try I get an error message box saying :

=========================
Item not found

Could not find this item

This is no longer located in <path with colons>. Verify the item's location and try again.
=========================

All the following works :

* Browsing with windows explorer
* Opening the files from windows explorer
* Renaming the files from windows explorer
* Copying from the cmd with "copy" or "xcopy"
* Copying empty files from windows explorer, most likely because it does not try to open the source, only creating the empty destination.
* Copying from Nautilus

Seems like when windows explorer tries to get the actual content of the file, it does so with an API that no other program uses.

Server is Samba 4.3.9 on Ubuntu 16.04.

[global]
        workgroup = MYDOMAIN
        server string = Burp Test Server
        server role = standalone server
        map to guest = Bad User
        obey pam restrictions = Yes
        pam password change = Yes
        passwd program = /usr/bin/passwd %u
        passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
        unix password sync = Yes
        syslog = 0
        log file = /var/log/samba/log.%m
        max log size = 1000
        dns proxy = No
        usershare allow guests = Yes
        panic action = /usr/share/samba/panic-action %d
        idmap config * : backend = tdb


[snanfiler]
        path = /var/spool/burp/testserver
        valid users = admin
        create mask = 0700
        directory mask = 0700
        directory mode = 0700
        mangled names = No
        vfs objects = streams_xattr catia
        catia:mappings = 0x3a:0xf7
Comment 1 Björn Jacke 2018-08-29 22:40:35 UTC
you may not map 0x3a to a non-UTF-8 character as this is the unix charset.
Comment 2 Simon 2018-08-30 13:14:21 UTC
(In reply to Björn Jacke from comment #1)

Your answer makes no sense to me.

Anyway, I changed 0xf7(÷) to 0x24($) or 0x5f(_) like in the example [1], and it does not work either.

On W10, the problem does not exist.

There's something fishy going on with W7 file explorer.

As we don't have many W7 left, I will leave the issue closed, but I don't think it is invalid.


[1] https://www.samba.org/samba/docs/current/man-html/vfs_catia.8.html
Comment 3 Björn Jacke 2018-08-30 13:25:26 UTC
the order of the vfs modules streams_xattr catia probably also needs to be the other way round.
Comment 4 Ralph Böhme 2018-08-30 14:04:07 UTC
(In reply to Simon from comment #0)
You can try

  catia:mappings = 0x3a:0xf022

Besides that, Björn is right, catia must become before streams_xattr.