Commit f792b082 authored by Zebediah Figura's avatar Zebediah Figura Committed by Alexandre Julliard

ws2_32/tests: Test FD_CONNECT with UDP sockets.

parent 913a96d7
......@@ -5878,7 +5878,7 @@ static void test_connect_events(struct event_test_ctx *ctx)
check_events(ctx, FD_WRITE, 0, 200);
select_events(ctx, client, FD_ACCEPT | FD_CLOSE | FD_CONNECT | FD_OOB | FD_READ | FD_WRITE);
select_events(ctx, client, FD_ACCEPT | FD_CONNECT | FD_OOB | FD_READ | FD_WRITE);
if (ctx->is_message)
check_events(ctx, FD_WRITE, 0, 200);
......@@ -5888,6 +5888,33 @@ static void test_connect_events(struct event_test_ctx *ctx)
closesocket(client);
closesocket(server);
/* Test with UDP sockets. */
client = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
server = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
select_events(ctx, client, FD_ACCEPT | FD_CONNECT | FD_OOB | FD_READ | FD_WRITE);
if (ctx->is_message)
check_events(ctx, FD_WRITE, 0, 200);
check_events_todo_event(ctx, 0, 0, 0);
ret = bind(server, (const struct sockaddr *)&addr, sizeof(addr));
ok(!ret, "failed to bind, error %u\n", WSAGetLastError());
len = sizeof(destaddr);
ret = getsockname(server, (struct sockaddr *)&destaddr, &len);
ok(!ret, "failed to get address, error %u\n", WSAGetLastError());
ret = connect(client, (struct sockaddr *)&addr, sizeof(addr));
ok(!ret, "got error %lu\n", GetLastError());
if (ctx->is_message)
check_events_todo(ctx, FD_WRITE, 0, 200);
else
check_events_todo(ctx, FD_CONNECT, FD_WRITE, 200);
check_events(ctx, 0, 0, 0);
closesocket(client);
closesocket(server);
closesocket(listener);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment