Matthew Gregan <[EMAIL PROTECTED]> writes: > At 2007-12-09T16:32:42-0500, Stephen Leake wrote: > >> mtn: fatal: std::runtime_error: network error: select(2): An operation was >> attempted on something that is not a socket. (10038) > > Okay so far, you'd expect to see this when the stdio handles are not > sockets.
Hmm. If we want Windows to be an ssh server, it must handle this case. That is, the client does: mtn sync ssh:my.windows.box.org then on 'my.window.box.org', ssh runs the command mtn serve --sdtio and stdio for mtn is _not_ a socket. Actually, I have no idea what mechanism ssh uses to spawn mtn in this case. But if we advertise "--stdio", it aught to handle the non-socket case. Hmm. I guess I should look in the ssh source to see what it does here; it might be instructive. Or we can just say "mtn can't be an ssh server on Windows". That would work for me, but it would be disappointing. >> The same occurs when 'mtn --stdio' is spawned with a socket as stdio, >> as you can see in tester.log. > > So... we need to work out why this is happening, because it should work. Ok. > I haven't had time to look over your changes in any depth yet, but I > will have some time in the weekend, so if you're still stuck on this > I'll take a crack at it as well. Ok. >> So I think we are back to the fundamental problem; how do we do >> non-blocking IO on Win32 stdio? > > I have a working standalone proof of concept for this approach already, so I > know we can make it work with monotone. Ok. Can you send me that code? I'm at the point of implementing some simple standalone debug code. Maybe I could start with yours. -- -- Stephe _______________________________________________ Monotone-devel mailing list Monotone-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/monotone-devel