[nanomsg] Re: How block wsarecv with Windows XP?

  • From: Ranier VF <ranier_gyn@xxxxxxxxxxx>
  • To: "nanomsg@xxxxxxxxxxxxx" <nanomsg@xxxxxxxxxxxxx>
  • Date: Tue, 3 Mar 2015 22:53:53 +0000

Hi TTimo, 
I´m sorry, my mistake.in pair.c  int to = 100;
  assert (nn_setsockopt (sock, NN_SOL_SOCKET, NN_RCVTIMEO, &to, sizeof (to)) >= 
0);Define timeout to nn_recv, changing default behavior from -1 (infinite) to 
100.
I´m very tired, and compile and recompile library confused me.
Thanks for yout attention.
Best regards,
Ranier Vilela
From: ranier_gyn@xxxxxxxxxxx
To: nanomsg@xxxxxxxxxxxxx
Subject: [nanomsg] Re: How block wsarecv with Windows XP?
Date: Tue, 3 Mar 2015 21:10:40 +0000




Hello TTimo,With pair.c 
(http://tim.dysinger.net/posts/2013-09-16-getting-started-with-nanomsg.html)int 
result = nn_recv (sock, &buf, NN_MSG, 0);pair.exe node0 
tcp://127.0.0.1:5555pair.exe node1 tcp://127.0.0.1:5555
nn_recv won´t fill buf, and return immediatly.
If nn_recv return with empty buffer, how loop this?
nanomsg-winxp, work with tcp socket in Windows XP?
or
Is really necessary Windows 7, to get nanomsg working with tcp socket?
Best regards,
Ranier Vilela
 
Date: Tue, 3 Mar 2015 09:54:41 -0800
Subject: [nanomsg] Re: How block wsarecv with Windows XP?
From: ttimo@xxxxxxxxx
To: nanomsg@xxxxxxxxxxxxx

Hello Ranier,
Do you have a test case that shows this problem? Is it encountered as part of 
the normal regression tests?
Looking at the documentation, you could probably ignore/disable that flag on XP 
entirely. You may want to add a loop to fill up the buffer and basically 
simulate what MSG_WAITALL does.
Best,TTimo
On Tue, Mar 3, 2015 at 4:10 AM, Ranier VF <ranier_gyn@xxxxxxxxxxx> wrote:



Hi, src\aio\usock_win.inc, line: 454wflags = MSG_WAITALL;wsarecv is not 
supported MSG_WAITALL with TCP socket, MSDN says:"Be aware that if the 
underlying transport provider does not supportMSG_WAITALL, or if the socket is 
in a non-blocking mode, then this call will fail with WSAEOPNOTSUPP"With:wflags 
= 0;wsarecv wont block, and return immediatly.How block wsarecv with Windows 
XP?best regards,Ranier Vilela
Ps. Sorry, my mistake in first message.                                         
  

                                                                                
  

Other related posts: