… | |
… | |
86 | goto fail; |
86 | goto fail; |
87 | |
87 | |
88 | if (connect (sock [0], (struct sockaddr *)&addr, addr_size)) |
88 | if (connect (sock [0], (struct sockaddr *)&addr, addr_size)) |
89 | goto fail; |
89 | goto fail; |
90 | |
90 | |
|
|
91 | /* TODO: returns INVALID_SOCKET on winsock accept, not < 0. fix it */ |
|
|
92 | /* when convenient, probably by just removing error checking altogether? */ |
91 | if ((sock [1] = accept (listener, 0, 0)) < 0) |
93 | if ((sock [1] = accept (listener, 0, 0)) < 0) |
92 | goto fail; |
94 | goto fail; |
93 | |
95 | |
94 | /* windows vista returns fantasy port numbers for sockets: |
96 | /* windows vista returns fantasy port numbers for sockets: |
95 | * example for two interconnected tcp sockets: |
97 | * example for two interconnected tcp sockets: |