[Zope-Coders] [Fwd: [Zope] specify passive ports for ftp]

Chris Withers chrisw@nipltd.com
Sun, 10 Feb 2002 11:58:37 +0000


Has anyone got any problem if I work this into the Zope core?

It'd be very useful for allowing non-passive mode FTP into Zope through
firewalls

(EMACS is a bitch to set up on Windows with passive mode ftp :-S)

cheers,

Chris

ra@burningman.com wrote:
> 
> Brad Clements wrote:
> 
> > On 7 Feb 2002 at 23:37, ra@burningman.com wrote:
> >
> >
> >>Actually, I'd be interested in even hearing ways to solve this problem that
> >>DO involve modifying the source code... I dug into the FTPServer.py code a
> >>while back to try to tackle this very problem and didn't see where the
> >>ports were being specified.  Unfortunately, other matters became a bit more
> >>pressing.  I'd be willing to hack up a way to set the passive ftp ports if
> >>someone would orient me a bit...
> >>
> >
> > I changed the code in one of my servers to specify the pasv port range.. Now I can't
> > remember which instance I changed, or where it was in the code.
> >
> > It wasn't hard, if that's any help.
> >
> > You need to change ZServer/medusa/ftp_server.py
> >
> > class passive_acceptor (asyncore.dispatcher):
> >         ready = None
> >
> >         def __init__ (self, control_channel):
> >                 # connect_fun (conn, addr)
> >                 asyncore.dispatcher.__init__ (self)
> >                 self.control_channel = control_channel
> >                 self.create_socket (socket.AF_INET, socket.SOCK_STREAM)
> >                 # bind to an address on the interface that the
> >                 # control connection is coming from.
> >                 self.bind ((
> >                         self.control_channel.getsockname()[0],
> >                         0
> >                         ))
> >                 self.addr = self.getsockname()
> >                 self.listen (1)
> >
> >
> > As I recall, I put a range loop to try the self.bind over a range of non-privilaged ports. I
> > use a range in case a port is in use.
> 
> Awesome, thanks!  I'll dig in over the next few days and will post a
> brief note to the list after I've got it working.  Anyone interested in
> the patch (against 2.4.2, which I'm currently running) can contact me
> off-list at that point.
> 
> -r
> 
> _______________________________________________
> Zope maillist  -  Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> **   No cross posts or HTML encoding!  **
> (Related lists -
>  http://lists.zope.org/mailman/listinfo/zope-announce
>  http://lists.zope.org/mailman/listinfo/zope-dev )