I've a couple of classes to handle the ASCII transfer mode. Since
these classes are inherited from InputStream and OutputStream, you
should be able to plug these in very easily by just wrapping the
original stream into the new stream. I used these classes in my FTP
Client implementation. We should be able to use these in the Server as
well with no (or little) modifications.

I've attached the classes for you to take a look at.

Regards,

Sai Pullabhotla
Phone: (402) 408-5753
Fax: (402) 408-6861
www.jMethods.com




On Mon, Nov 17, 2008 at 3:26 PM, Niklas Gustavsson (JIRA)
<[EMAIL PROTECTED]> wrote:
>
>    [ 
> https://issues.apache.org/jira/browse/FTPSERVER-184?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12648348#action_12648348
>  ]
>
> Niklas Gustavsson commented on FTPSERVER-184:
> ---------------------------------------------
>
> David, would you like to work on this for M4 or should we reschedule it for 
> now? I do think we should fix this, but it could be done for 1.0
>
>> IODataConnection ASCII mode does not work as expected.
>> ------------------------------------------------------
>>
>>                 Key: FTPSERVER-184
>>                 URL: https://issues.apache.org/jira/browse/FTPSERVER-184
>>             Project: FtpServer
>>          Issue Type: Improvement
>>          Components: Core
>>    Affects Versions: 1.0-M2, 1.0-M3
>>            Reporter: David Latorre
>>            Assignee: Niklas Gustavsson
>>             Fix For: 1.0-M4
>>
>>
>> New lines in files sent in ASCII mode   are transformed into /r/n  no matter 
>> what platform the ftp server is running on.  But if I'm not wrong, the new 
>> EOL should be equal to "line.separator" . If ASCII mode is going to be 
>> supported, this ought to be changed.
>>
>> The code in IODataConnection.transfer()
>> {
>>     if (isAscii) {
>>                     for (int i = 0; i < count; ++i) {
>>                         byte b = buff[i];
>>                         if (b == '\n' && !lastWasCR) {
>>                             bos.write('\r');
>>                         }
>>                         if (b == '\r') {
>>                             lastWasCR = true;
>>                         } else {
>>                             lastWasCR = false;
>>                         }
>>                         bos.write(b);
>>                     }
>>                 }
>> }
>
> --
> This message is automatically generated by JIRA.
> -
> You can reply to this email to add a comment to the issue online.
>
>

Reply via email to