[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ssh_handle_packets blocking issue


ah sadly this seems different from what I am observing :(...though I am
curious if something in my code could somehow be causing this effect....if
someone here could go through my code (sent earlier) or throw any light I'd
appreciate it profusely :)



On Tue, Apr 12, 2011 at 3:17 PM, Oliver Stöneberg <oliverst@xxxxxxxxx>wrote:

> Hey,
>
> seems like this was actually my fault. The hang happened in
> ssh_channel_get_exit_status(). After chatting with Aris it turned
> out, that it wasn't enough to just call ssh_channel_send_eof() before
> that, but I also needed to call ssh_channel_close() to assure the
> channel is actually closed.
>
> Also the issue with the poll function I mentioned is already fixed in
> the latest code. I am using an older version at the moment.
>
> Greetings
> Oliver
>
> > Hi,
> >
> > > I just ran into this issues as well using Windows. Here's the
> > > backtrace:
> >
> > Oliver, this is interesting. I'm very intrigued to know if this manifests
> in
> > the
> > same way like how I am seeing? Is your code part of a server or client?
> > In my case this behaviour and blocking occurs on some occasions is that
> > how you are seeing it too?
> >
> > Aris, any luck or anything you would like me to try?
> >
> > Bye for now.
> >
> >
> >
> > On Tue, Apr 12, 2011 at 1:58 PM, Oliver Stöneberg <oliverst@xxxxxxxxx
> >wrote:
> >
> > > I just ran into this issues as well using Windows. Here's the
> > > backtrace:
> > >
> > >        ntdll.dll!775ff8c1()
> > >        [Frames below may be incorrect and/or missing, no symbols loaded
> > > for ntdll.dll]
> > >        ntdll.dll!775ff8c1()
> > >        mswsock.dll!723d6f0f()
> > >        mswsock.dll!723d6d30()
> > >        ws2_32.dll!75eb2f7d()
> > >        ws2_32.dll!75eb6a28()
> > >        shell32.dll!762f11f0()
> > >        libssh.dll!bsd_poll(ssh_pollfd_struct * fds=0x06b87ba8, unsigned
> > > long nfds=1, int timeout=-1)  Line 212 + 0x2e bytes     C
> > > >       libssh.dll!ssh_poll(ssh_pollfd_struct * fds=0x06b87ba8,
> unsigned
> > > long nfds=1, int timeout=-1)  Line 289 + 0x14 bytes     C
> > >        libssh.dll!ssh_poll_ctx_dopoll(ssh_poll_ctx_struct *
> > > ctx=0x06b8b778, int timeout=-1)  Line 635 + 0x17 bytes  C
> > >        libssh.dll!ssh_handle_packets(ssh_session_struct *
> > > session=0x06b8bbc8, int timeout=-1)  Line 390 + 0xd bytes       C
> > >        libssh.dll!ssh_channel_get_exit_status(ssh_channel_struct *
> > > channel=0x06b8ecb8)  Line 2376 + 0xe bytes      C
> > >        [External Code]
> > >
> > > Pretty strange, that it is using bsd_pool. Looks like an issue in
> > > ssh_poll_init(). It doesn't set ssh_poll_emu to wsa_poll when it is
> > > available.
> > >
> > >
> > > > Hi Aris,
> > > >
> > > > I thought I'll also send across openssh client debug output taken
> both
> > > > when things work and when they fail, maybe this helps somehow too.
> > > >
> > > > Thanks again.
> > > >
> > > > Bye for now
> > > >
> > > > On Wed, Apr 6, 2011 at 8:07 PM, jeetu.golani@xxxxxxxxx
> > > > <jeetu.golani@xxxxxxxxx> wrote:
> > > > > Hi Aris,
> > > > >
> > > > >> I think it's because the options from ssh_session are overriden by
> the
> > > > >> sshbind one. Either use ssh_bind_options_set (I think it's the
> name)
> > > or
> > > > >> call ssh_options_set after the ssh_bind_accept.
> > > > >
> > > > > Yup you were right, although ssh_bind_options_set didn't help but
> when
> > > > > I set log options with ssh_options_set after ssh_bind_accept it did
> > > > > the trick :)
> > > > >
> > > > > I'm attaching the logs I've collected along with a text with the
> code
> > > > > wherein things fall apart on some occassions.
> > > > >
> > > > > ...
> > > > > do {
> > > > >                ssh_event_dopoll(event, 1000);
> > > > >                } while(!ssh_channel_is_closed(chan_x11));
> > > > > ...
> > > > >
> > > > > this is basically the place where things fail, this is replica code
> > > > > from the samplesshd-tty.c file. Is the timeout value of 1000 too
> small
> > > > > here? should I have infinite blocking here too or increase this
> value?
> > > > >
> > > > > I'm also attaching the entire server code that i've been working on
> > > > > for eBrainPool (http://ebrain.in)...beware tough it's laden with
> > > > > printfs i've put in for debugging...and heavily laden with bugs I
> > > > > suppose ;)...work in progress.
> > > > >
> > > > > Thanks so much guys for all the help truly appreciate it :)
> > > > >
> > > > > Bye for now
> > > > >
> > > >
> > >
> > >
> > >
> > >
> >
>
>
>
>

References:
Re: ssh_handle_packets blocking issue"Sharon Heath" <Sharon.Heath@xxxxxxxxxxxxxxxxxxxxxx>
Re: ssh_handle_packets blocking issue"Oliver Stöneberg" <oliverst@xxxxxxxxx>
Re: ssh_handle_packets blocking issue"jeetu.golani@xxxxxxxxx" <jeetu.golani@xxxxxxxxx>
Re: ssh_handle_packets blocking issue"Oliver Stöneberg" <oliverst@xxxxxxxxx>
Archive administrator: postmaster@lists.cynapses.org