🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: borland.public.cppbuilder.internet.socket
9 messages
9 total messages Started by Hanne B Thu, 09 Nov 2006 12:22
Indy9 - BCB5 - FTP server - port / data port problem
#1771
Author: Hanne B
Date: Thu, 09 Nov 2006 12:22
21 lines
1776 bytes
Is Indy9 FTP server not capable of using another port than 21 ?

I have a FTP server on a local PC where I would like to use another port 
than the default port 21 eg. 2521 and data port 2520 (so that I can have two 
FTP servers running on the same PC).
We have port forwarding so that users connecting from outside world will go 
to the port of the local PC.

When a client connects everything is ok until the dataport is going to be 
used when the client wants to retrieve a files.
The communication stops after the OnPASV event.

If I use port 21 and still data port 2520 communication is ok.

Could it have something to do with Firewall setup ? Any idea to solve the 
problem ?

If I run a FTP client application on the local PC it can connect properly to 
port 2521 / data port 2520 and retrive files.

Hanne 
Re: Indy9 - BCB5 - FTP server - port / data port problem
#1772
Author: Hanne B
Date: Thu, 09 Nov 2006 13:55
6 lines
1249 bytes
Another problem is that the application has to be closed down when changing 
port / data port - else the FTP server will continue using the first 
selected port / data port - even though FTPServer->Active = false before 
changing the port / data port.

Hanne 
Re: Indy9 - BCB5 - FTP server - port / data port problem
#1773
Author: Remy Lebeau (TeamB)
Date: Thu, 09 Nov 2006 17:48
29 lines
1926 bytes
"Hanne B" <hb@aeromark.dk> wrote in message
news:45531d9b$1@newsgroups.borland.com...

> Is Indy9 FTP server not capable of using another port than 21 ?

Yes, it is.  Just like with any other Indy TCP-based server, use the
DefaultPort property to specify the port.  You have to set the DefaultPort
before adding any entries to the Bindings property.  If there are any
entries in the collection, then you will have to either clear the collection
and readd them, or else update the Binding.Port property manually.

> I have a FTP server on a local PC where I would like to use another port
> than the default port 21 eg. 2521

Use the DefaultPort property.

> and data port 2520

Use the DefaultDataPort property.

> When a client connects everything is ok until the dataport is going
> to be used when the client wants to retrieve a files.
> The communication stops after the OnPASV event.

Please be more specific.  What EXACTLY is being sent to the client?


Gambit
Re: Indy9 - BCB5 - FTP server - port / data port problem
#1774
Author: Remy Lebeau (TeamB)
Date: Thu, 09 Nov 2006 17:49
20 lines
1592 bytes
"Hanne B" <hb@aeromark.dk> wrote in message
news:45533363@newsgroups.borland.com...

> Another problem is that the application has to be closed down
> when changing port / data port

You can't change the ports on the fly while they are still being used.  You
have to shut down the server in order to change them. You do NOT, however,
have to shut down the entire application to do that.

> else the FTP server will continue using the first selected port / data
port
> - even though FTPServer->Active = false before changing the port / data
port.

You are likely not updating the Bindings correctly.


Gambit
Re: Indy9 - BCB5 - FTP server - port / data port problem
#1716
Author: Hanne B
Date: Fri, 01 Dec 2006 13:22
12 lines
1352 bytes
Can a FTP Server only have one client using the data port at a time ?

I have tried following code for the OnPASV event:

static WORD vport = PSetup->FTPServerData;
VPort = vport++;
if (vport == PSetup->FTPServerData + 100)
  vport = PSetup->FTPServerData;


After that several client could be receive data - but it seems not to be the 
right solution !
Re: Indy9 - BCB5 - FTP server - port / data port problem
#1718
Author: Bob Gonder
Date: Fri, 01 Dec 2006 16:36
15 lines
1549 bytes
Hanne B wrote:

>Can a FTP Server only have one client using the data port at a time ?

I don't think so.
See property MaxConnections: Integer;
If you have problems with that, then also look at
property ReuseSocket: TIdReuseSocket;


The DefaultPort is where the client calls in to.
Once the connection is established, the Actual port in use will be
different from the DefaultPort.
This allows many clients to call the same DefaultPort, with Windows
auto-routing the client and server to an unused port.
Re: Indy9 - BCB5 - FTP server - port / data port problem
#1722
Author: Hanne B
Date: Mon, 04 Dec 2006 08:42
3 lines
1154 bytes
I have the following selection:
MaxConnections = 10000
ReuseSocket = rsOSDependent 
Re: Indy9 - BCB5 - FTP server - port / data port problem
#1723
Author: Bob Gonder
Date: Mon, 04 Dec 2006 17:00
13 lines
1319 bytes
Hanne B wrote:

>I have the following selection:
>MaxConnections = 10000
>ReuseSocket = rsOSDependent 

So, you are running this on Linux?


rsOSDependent 
Reuse IP addersses and port numbers when the OS platform is Linux. 

You might try rsTrue
Re: Indy9 - BCB5 - FTP server - port / data port problem
#1577
Author: Hanne B
Date: Tue, 05 Dec 2006 08:22
7 lines
1348 bytes
No - I am running on Windows XP.

I have tried ReuseSocket = rsTrue

Still gets the exception for second data connection:
EIdCouldNotBindSocket: Could not bind socket. Address and and port are 
already in use. 
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads