mina-ftpserver icon indicating copy to clipboard operation
mina-ftpserver copied to clipboard

Apache FTPServer adapt to Apache MINA 2.2.x

Open 07070529 opened this issue 2 years ago β€’ 11 comments

Hi, I see that Apache MINA 2.2.x rewrites the SSL/TLS layer to address some flaws that were hard to fix in 2.1.x. Apache FTPServer depends on Apache MINA, but the latest released version of Apache FTPServer (1.2.0) still depends on Apache MINA 2.1.6. So, I'd like to ask if there are plans to release a new version of Apache FTPServer to adapt to Apache MINA 2.2.x.

image

07070529 avatar Apr 17 '23 09:04 07070529

The motivation I raise this issue is that we are using Apache MINA and Apache FTP Server together. Currently, we are using Apache FTP Server version 1.1.3, and we want to use the more secure Apache MINA version 2.2.1. However, Apache MINA 2.2 and 2.1 have incompatible changes (https://mina.apache.org/mina-project/2.2-vs-2.1.html) . Using Apache FTPServer 1.1.3 with Apache MINA 2.2.1 has compatibility issues. Therefore, we wanted to know if there are plans to release a new version of Apache FTPServer to adapt to Apache MINA 2.2.x?

07070529 avatar Apr 17 '23 09:04 07070529

Hi, that is certainly something to be done...

If you want to give it a try, I'll be pleased to push a PR and cut a release...

elecharny avatar Apr 17 '23 10:04 elecharny

Thank you for your reply and suggestions. I'd like to contribute to the open source community, but I'm just starting to learn Java. So, sorry, maybe I'm not able to support this work in the short term.

07070529 avatar Apr 18 '23 11:04 07070529

I understand :-)

OTOH, it can be funny and a good learning experience for someone starting to learn Java! And remember we all were beginners at some point in the past, so one shoulmd not feel ashamed or scared to do mistakes. We all do a LOT even after 2 decades of Java !

elecharny avatar Apr 18 '23 13:04 elecharny

Thank you for your encouragement.

07070529 avatar Apr 19 '23 10:04 07070529

FTR, currently working on migrating to Mina 2.2.2

elecharny avatar Jun 28 '23 07:06 elecharny

Wow, that's great. Thank you.

07070529 avatar Jun 28 '23 08:06 07070529

Almost done, but there is a problem:

We use the getAuthValue() method as a parameter for the AUTH command and as a parameter for the sslConfigFactory.setSslProtocol() method. This is broken, as the AUTH command only accept SSL and TLS, while we may inject TLSv1.2 or TLSv1.3 in the second method.

We need to define a way to call setEnabledProtocols() method that does not use the getAuthValue() method.

Currently working on it.

elecharny avatar Jun 30 '23 22:06 elecharny

Looking forward to it,and sorry for not being able to offer any advice at this time.

07070529 avatar Jul 04 '23 13:07 07070529

@elecharny i am also facing compatablity issue of mina-core-2.2.1 with ftp server. Can you pls do it soon , i am waiting for it.πŸ™πŸ™

rohit-100 avatar Nov 03 '23 07:11 rohit-100

Hi, is there any update on this? any branch where I can help?

flozano avatar Jan 16 '24 09:01 flozano

Heya @elecharny I've raised https://github.com/apache/mina-ftpserver/pull/37 Not sure if its correct, but I'd love some feedback :)

Many thanks!!

MikeRocke avatar Dec 18 '24 22:12 MikeRocke

@MikeRocke Will have a look today. Thanks!

elecharny avatar Dec 19 '24 02:12 elecharny

Branch 1.2.X now builds with MINA 2.2.4

elecharny avatar Dec 31 '24 16:12 elecharny

Great news! Thank you!

MikeRocke avatar Jan 01 '25 00:01 MikeRocke

Agreed. That's good news. Thank you very much.

07070529 avatar Jan 02 '25 09:01 07070529

I'm looking forward to a new release so I can migrate Apache Commons VFS from all old versions of Mina components! πŸ‘

garydgregory avatar Jan 11 '25 13:01 garydgregory

I'm pretty much done with the cleaning I started. Probably time to get the release cut then :-)

Although I still have 25 javadoc errors I get to fix...

elecharny avatar Jan 11 '25 22:01 elecharny

πŸ‘ πŸš€

garydgregory avatar Jan 11 '25 22:01 garydgregory

I'll take some extra time to fix the few tens of javadoc warnings (most of them are now gone, except for the core module).

I would also like to review PR 55, which might be a good inclusion.

elecharny avatar Jan 12 '25 07:01 elecharny

Yeah, I like that in memory file idea.

Thanks for your work @elecharny and the team :)

MikeRocke avatar Jan 14 '25 17:01 MikeRocke