Changeset - 9e06e4c254a7
[Not reviewed]
0 1 0
Christopher Esterhuyse - 5 years ago 2020-04-30 10:01:47
christopher.esterhuyse@gmail.com
fixed connection returning false positives for active-bound ports in failure case on Windows
1 file changed with 2 insertions and 1 deletions:
0 comments (0 inline, 0 general)
examples/1_socketlike/bob.c
Show inline comments
 
#include <stdio.h>
 
#include "../../reowolf.h"
 
#include "../utility.c"
 

	
 
int main() {
 

	
 
	// bob hard-codes his protocol.
 
	char* pdl =
 
	"primitive forward(in i, out o) {"
 
	"	while(true) synchronous {"
 
	"		put(o, get(i));"
 
	"	}"
 
	"}"
 
	;
 
	
 
	// setup a connector with one incoming network channel.
 
	Connector* c = connector_new();
 
	printf("configuring...\n");
 
	check("config ", connector_configure(c, pdl, "forward"));
 
	check("bind 0 ", connector_bind_active(c, 0, "127.0.0.1:7000"));
 
	check("bind 1 ", connector_bind_native(c, 1));
 
	printf("connecting...\n");
 
	check("connect", connector_connect(c, 5000));
 
	printf("connect err %d%n", connector_connect(c, 20000));
 
	printf("%s%n", connector_dump_log(c));
 
	
 
	// receive a message and print it to stdout three times
 
	int i;
 
	for (i = 0; i < 3; i++) {
 
		check("get ", connector_get(c, 0));
 
		check("sync", connector_sync(c, 1000));
 

	
 
		int msg_len;
 
		const unsigned char * msg;
 
		check("read", connector_gotten(c, 0, &msg, &msg_len));
 

	
 
		printf("Received one message `%s`!\n", msg);
 
	}
 

	
 
	// cleanup
 
	printf("destroying...\n");
 
	connector_destroy(c);
 
	printf("exiting...\n");
 
	return 0;
 
}
 
\ No newline at end of file
0 comments (0 inline, 0 general)