[paramiko] Testing an exception

jay titleistfour at gmail.com
Wed Aug 8 06:05:10 PDT 2007


That makes more sense.  The remote SSH server is VEEERY slow and login times
can exceed 1 minute sometimes.  Unfortunately, that server is out of my
control.

Thanks

Jason

On 8/7/07, Todd Whiteman <toddw at activestate.com> wrote:
>
> Hi Jay,
>
> Yes, after looking at the code, a timeout is a case that generates the
> exception you describe. The timeout works like by reading the first line
> from the server (waiting up to 15 seconds by default) and then every
> subsequent banner line must be received within 2 seconds, otherwise you
> get that exception. The relevant code is below:
>
>
>      def _check_banner(self):
>          # this is slow, but we only have to do it once
>          for i in range(5):
>              # give them 15 seconds for the first line, then just 2
> seconds
>              # each additional line.  (some sites have very high latency.)
>              if i == 0:
>                  timeout = self.banner_timeout
>              else:
>                  timeout = 2
>              try:
>                  buf = self.packetizer.readline(timeout)
>              except Exception, x:
>                  raise SSHException('Error reading SSH protocol banner'
> + str(x))
>              if buf[:4] == 'SSH-':
>                  break
>
>
> Cheers,
> Todd
>
> jay wrote:
> > Thanks Todd.  Its interesting that I was connected to an ssh server on
> > port 22.  Nothing non standard about that.  Could this also be a timeout
> > related exception?  If the remote server is slow to respond?
> >
> > Jay
> >
> > On 8/7/07, *Todd Whiteman* <toddw at activestate.com
> > <mailto:toddw at activestate.com>> wrote:
> >
> >     Hi Jay,
> >
> >     You get this exception from connecting to a remote machine on a
> non-ssh
> >     port, so when Paramiko tries to read in the relevant SSH
> information, it
> >     fails and raises the SSHException you received.
> >
> >     A simple repro example is to try and connect to the ftp port (port
> 21)
> >     instead of the SSH port (port 22).
> >
> >     Cheers,
> >     Todd
> >
> >     jay wrote:
> >      > Hello,
> >      >
> >      > Like to start off saying paramiko is fantastic and has been a
> >     huge time
> >      > saver for me at work.  Thanks for the hard work!
> >      >
> >      > I got the following traceback and am unsure what the problem is.
> >      >
> >      > Traceback (most recent call last):
> >      >   File "ATM.py", line 115, in <module>
> >      >     t.connect(username=sftpRemoteUser,
> password=sftpRemotePassword)
> >      >   File
> >      >
> >
> "/usr/local/python251/lib/python2.5/site-packages/paramiko/transport.py",
> >      > line 931, in connect
> >      >     self.start_client()
> >      >   File
> >      >
> >
> "/usr/local/python251/lib/python2.5/site-packages/paramiko/transport.py",
> >      > line 398, in start_client
> >      >     raise e
> >      > SSHException: Error reading SSH protocol banner
> >      >
> >      > I thought my code would catch all exceptions, but apparently
> >     not.  This
> >      > particular problem showed up inside this
> >      >
> >      > try:
> >      > except Exception, e:
> >      >
> >      > So, I would like to try and duplicate it, but I'm not even sure
> >     what the
> >      > problem was.  Any suggestions on how to duplicate this problem
> >     and make
> >      > sure the code catches it?  Thanks
> >      >
> >      >  Jay
> >      >
> >      >
> >      >
> >
> ------------------------------------------------------------------------
> >
> >      >
> >      > _______________________________________________
> >      > paramiko mailing list
> >      > paramiko at lag.net <mailto:paramiko at lag.net>
> >      > http://mail.lag.net/mailman/listinfo/paramiko
> >
> >
> >
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > paramiko mailing list
> > paramiko at lag.net
> > http://mail.lag.net/mailman/listinfo/paramiko
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.lag.net/pipermail/paramiko/attachments/20070808/e3a3252a/attachment.htm 


More information about the paramiko mailing list