Bug 3519 - Can't create tar when service name has i18n characters
Can't create tar when service name has i18n characters
Status: NEW
Product: Samba 3.0
Classification: Unclassified
Component: smbclient
3.0.21b
Other Linux
: P3 normal
: none
Assigned To: Samba Bugzilla Account
Samba QA Contact
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2006-02-16 11:12 UTC by Gamid Isayev
Modified: 2006-02-16 11:25 UTC (History)
0 users

See Also:


Attachments
smbclient error log (7.31 KB, text/plain)
2006-02-16 11:21 UTC, Gamid Isayev
no flags Details
Quick hack to default to UTF-8 instead of ASCII (233 bytes, patch)
2006-02-16 11:25 UTC, Gamid Isayev
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Gamid Isayev 2006-02-16 11:12:37 UTC
When I tried to create tar file for existing service '\тест' ("test" in Russian), I got NT_STATUS_OBJECT_NAME_INVALID error.

There is command which I used:

$ smbclient -s smb.conf //JOKER/pub -A ~/credfile -Tc /tmp/test.tar '\тест'

Domain=[TEST] OS=[Windows 5.0] Server=[Windows 2000 LAN Manager]
NT_STATUS_OBJECT_NAME_INVALID listing \QP5QQ
tar: dumped 0 files and directories
Total bytes written: 0

My locale is set to "ru_RU.utf8" and smb.conf file contains only two lines:
  display charset = UTF8
  unix charset = UTF8
Comment 1 Gamid Isayev 2006-02-16 11:19:04 UTC
It looks like smbclient parses tar command parameters first and only then reads smb.conf file (see attachment).
As result service name parsed as ASCII string and corrupted by unfixtarname() function.
Comment 2 Gamid Isayev 2006-02-16 11:21:15 UTC
Created attachment 1732 [details]
smbclient error log

Processing an item, \тест
 [...]
Processed an item, QP5QQ
Cliplist is: \тест
lp_load: refreshing parameters
Initialising global parameters
params.c:pm_process() - Processing configuration file "smb.conf"
doing parameter display charset = UTF8
doing parameter unix charset = UTF8
Comment 3 Gamid Isayev 2006-02-16 11:25:37 UTC
Created attachment 1733 [details]
Quick hack to default to UTF-8 instead of ASCII

I made quick hack to default to UTF-8 instead of ASCII.
Why default to UTF-8?
1. UTF-8 is backwards compatible with ASCII
2. I'm using UTF-8 :)