Opened 17 years ago

Closed 16 years ago

Last modified 15 years ago

#20 closed defect (fixed)

Directory containig DBCS chars is not listed

Reported by: guest Owned by:
Priority: blocker Milestone: Netdrive plugin 1.0
Component: Samba Client Plugin Version:
Keywords: Cc:

Description

Hi/2.

If directory name contain DBCS chars, its contents is not listed.

This goes for server and client.

That is, client(VISTA) cannot list the directory of samba server(OS/2), and client(OS/2) cannot list the directory of server(VISTA). Of course, client(OS/2) cannot list the directory of samba server(OS/2).

If directory name consist of SBCS chars only, it works well. But files have no problems.

I'm using samba 3.0.25b-20070628 version for both server and client.

KO Myung-Hun

Attachments (3)

smb_patch.zip (13.8 KB) - added by guest 17 years ago.
Patches for DBCS problem
loadparm.diff (665 bytes) - added by guest 16 years ago.
set the default value of dos charset to 'SYSTEM' instead of 'CP850'
charcnv.diff (1.5 KB) - added by guest 16 years ago.
Check the max len of string more precisely in next_codepoint()

Download all attachments as: .zip

Change History (13)

comment:1 Changed 17 years ago by guest

Resolution: fixed
Status: newclosed

Hi/2.

I've fixed DBCS problem and attached patches. It is due to the result of combination of ugly charset conversion of samba(server) and difference of iconv() implementatin on OS/2.

In case of iconv(), at least, Korean use '\' as currency, WON sign. And iconv() does not treat it as path separator. So path including '\' is not recognized correctly.

Maybe later, provided iconv() modified to support path separator, workaround of iconv() is needless.

KO Myung-Hun

Changed 17 years ago by guest

Attachment: smb_patch.zip added

Patches for DBCS problem

comment:2 Changed 17 years ago by Paul Smedley

Hi KO,

Thanks for the report. Next time, please supply an svn diff instead of zipped source - makes the patch much easier to apply.

Also - I don't actually see any changes in charcnv.c - at least - none that are wrapped in #ifdef OS2

Changes to iconv.c will be in svn shortly

comment:3 in reply to:  2 Changed 17 years ago by guest

Hi/2.

Replying to psmedley:

Hi KO,

Thanks for the report. Next time, please supply an svn diff instead of zipped source - makes the patch much easier to apply.

Ah, Ok.

Also - I don't actually see any changes in charcnv.c - at least - none that are wrapped in #ifdef OS2

It is not a OS/2 specific problem. So I didn't use preprocessor macros. You can compare next_codepoint() with one in svn repos.

Changes to iconv.c will be in svn shortly

Thanks.

KO Myung-Hun

comment:4 Changed 17 years ago by guest

Resolution: fixed
Status: closedreopened

Hi/2.

Would you mind applying 'charconv.c' to svn ?

KO Myung-Hun

comment:5 Changed 17 years ago by Paul Smedley

Resolution: fixed
Status: reopenedclosed

Fixed in changeset #63

comment:6 Changed 16 years ago by guest

Resolution: fixed
Status: closedreopened

Hi/2.

I've updated svn repository. And I've found 'charcnv.c' was regressed to older one.

So I repost patches. In addition, unlike before, I wrapped patches with #ifdef OS2 ... #else ... #endif directives.

KO Myung-Hun

comment:7 Changed 16 years ago by guest

Hi/2.

When connecting to OS/2 machine, DBCS chars are broken. This is due to dos charset. I changed its default value from 'CP850' to 'SYSTEM' like unix charset.

KO Myung-Hun

Changed 16 years ago by guest

Attachment: loadparm.diff added

set the default value of dos charset to 'SYSTEM' instead of 'CP850'

comment:8 in reply to:  6 Changed 16 years ago by guest

Hi/2.

I'm sorry that I had updated 'trunk' not 'branch'. It's my mistake.

So I've attached another patch for the stronger length check in charcnv.c.

KO Myung-Hun

Replying to guest:

Hi/2.

I've updated svn repository. And I've found 'charcnv.c' was regressed to older one.

So I repost patches. In addition, unlike before, I wrapped patches with #ifdef OS2 ... #else ... #endif directives.

KO Myung-Hun

Changed 16 years ago by guest

Attachment: charcnv.diff added

Check the max len of string more precisely in next_codepoint()

comment:9 Changed 16 years ago by Paul Smedley

Resolution: fixed
Status: reopenedclosed

Checkin 120 should address this

comment:10 Changed 15 years ago by Herwig Bauernfeind

Milestone: Netdrive SMB Client plugin 1.0
Note: See TracTickets for help on using tickets.