Subject: Re: Getting stream data in order received

Re: Getting stream data in order received

From: Mitchell Hashimoto <>
Date: Sun, 11 Mar 2012 10:35:03 -0700


On Sun, Mar 11, 2012 at 3:58 AM, Alexander Lamaison <>wrote:

> On 11 March 2012 06:22, Mitchell Hashimoto <>
> wrote:
> >
> > I'm executing a remote program that sends output to both stdout/stderr.
> Is
> > there a way in libssh2 to receive the output in the order it arrived,
> rather
> > than as one giant buffer on stdout, then another on stderr, since this is
> > causing out of order results.
> That's always going to be a problem, even when you execute the program
> locally. stdout is buffered and stderr isn't so they don't stay in
> sync. See for
> more. But this is a general unix process issue, nothing to do with
> libssh2.
> Alex

Certainly, but you can maintain a certain order by doing the equivalent
fsync()s with the streams.

The main issue I see is that you can only ask for a buffer of data from a
stream, where it would be nice to ask "give me all of this stream ID until
another stream data packet was seen." Of course this wouldn't _guarantee_
order but it would be more correct.



> --
> Swish - Easy SFTP for Windows Explorer (
> _______________________________________________
> libssh2-devel

Received on 2012-03-11