Lines Matching defs:test_case

185 static int drop_ack(struct migrate_reuseport_test_case *test_case,
188 if (test_case->family == AF_INET)
190 &test_case->addr)->sin_port;
193 &test_case->addr)->sin6_port;
195 test_case->link = bpf_program__attach_xdp(skel->progs.drop_ack,
197 if (!ASSERT_OK_PTR(test_case->link, "bpf_program__attach_xdp"))
203 static int pass_ack(struct migrate_reuseport_test_case *test_case)
207 err = bpf_link__destroy(test_case->link);
211 test_case->link = NULL;
216 static int start_servers(struct migrate_reuseport_test_case *test_case,
223 make_sockaddr(test_case->family,
224 test_case->family == AF_INET ? "127.0.0.1" : "::1", 0,
225 &test_case->addr, &test_case->addrlen);
228 test_case->servers[i] = socket(test_case->family, SOCK_STREAM,
230 if (!ASSERT_NEQ(test_case->servers[i], -1, "socket"))
233 err = setsockopt(test_case->servers[i], SOL_SOCKET,
238 err = bind(test_case->servers[i],
239 (struct sockaddr *)&test_case->addr,
240 test_case->addrlen);
245 err = setsockopt(test_case->servers[i], SOL_SOCKET,
252 err = getsockname(test_case->servers[i],
253 (struct sockaddr *)&test_case->addr,
254 &test_case->addrlen);
259 if (test_case->fastopen) {
260 err = setsockopt(test_case->servers[i],
269 err = listen(test_case->servers[i], qlen);
278 static int start_clients(struct migrate_reuseport_test_case *test_case)
284 test_case->clients[i] = socket(test_case->family, SOCK_STREAM,
286 if (!ASSERT_NEQ(test_case->clients[i], -1, "socket"))
292 err = settimeo(test_case->clients[i], 100);
296 if (test_case->fastopen) {
299 err = setsockopt(test_case->clients[i], IPPROTO_TCP,
307 err = connect(test_case->clients[i],
308 (struct sockaddr *)&test_case->addr,
309 test_case->addrlen);
313 err = write(test_case->clients[i], buf, MSGLEN);
321 static int update_maps(struct migrate_reuseport_test_case *test_case,
332 value = (__u64)test_case->servers[i];
351 static int migrate_dance(struct migrate_reuseport_test_case *test_case)
359 err = shutdown(test_case->servers[i], SHUT_RDWR);
365 if (test_case->state == BPF_TCP_NEW_SYN_RECV)
381 err = listen(test_case->servers[1], QLEN);
390 err = shutdown(test_case->servers[MIGRATED_TO], SHUT_RDWR);
395 err = listen(test_case->servers[MIGRATED_TO], QLEN);
400 err = shutdown(test_case->servers[1], SHUT_RDWR);
407 static void count_requests(struct migrate_reuseport_test_case *test_case,
415 err = settimeo(test_case->servers[MIGRATED_TO], 4000);
420 client = accept(test_case->servers[MIGRATED_TO],
436 switch (test_case->state) {
444 if (test_case->expire_synack_timer)
456 static void run_test(struct migrate_reuseport_test_case *test_case,
467 init_fds(test_case->servers, NR_SERVERS);
468 init_fds(test_case->clients, NR_CLIENTS);
470 if (test_case->fastopen) {
478 err = start_servers(test_case, skel);
482 if (test_case->drop_ack) {
486 err = drop_ack(test_case, skel);
492 err = start_clients(test_case);
496 err = listen(test_case->servers[MIGRATED_TO], QLEN);
500 err = update_maps(test_case, skel);
507 err = migrate_dance(test_case);
511 if (test_case->expire_synack_timer) {
518 if (test_case->link) {
520 err = pass_ack(test_case);
525 count_requests(test_case, skel);
528 close_fds(test_case->clients, NR_CLIENTS);
530 if (test_case->link) {
531 err = pass_ack(test_case);
536 close_fds(test_case->servers, NR_SERVERS);
538 if (test_case->fastopen) {