eirpecken: Use the new eis_backend_fd_add_client()

This also acts as the test for eis_backend_fd_add_client().

Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
This commit is contained in:
Jonas Ådahl 2022-04-22 23:43:11 +02:00 committed by Peter Hutterer
parent e115c6549b
commit 1ec6d3dbea

View file

@ -320,33 +320,31 @@ peck_new_context(enum peck_ei_mode ei_mode)
assert(ei_mode == PECK_EI_RECEIVER || ei_mode == PECK_EI_SENDER);
int sv[2];
int rc = socketpair(AF_UNIX, SOCK_STREAM|SOCK_NONBLOCK|SOCK_CLOEXEC, 0, sv);
munit_assert_int(rc, ==, 0);
struct ei *ei = ei_mode == PECK_EI_RECEIVER ? ei_new_receiver(peck) : ei_new_sender(peck);
ei_set_user_data(ei, peck);
ei_log_set_handler(ei, peck_ei_log_handler);
ei_log_set_priority(ei, EI_LOG_PRIORITY_DEBUG);
ei_configure_name(ei, "eierpecken test context");
rc = ei_setup_backend_fd(ei, sv[0]);
munit_assert_int(rc, ==, 0);
peck->ei = ei;
flag_set(peck->ei_behavior, PECK_EI_BEHAVIOR_AUTOCONNECT);
flag_set(peck->ei_behavior, PECK_EI_BEHAVIOR_AUTOSEAT);
flag_set(peck->ei_behavior, PECK_EI_BEHAVIOR_AUTOSTART);
int rc, fd;
struct eis *eis = eis_new(peck);
eis_log_set_handler(eis, peck_eis_log_handler);
eis_log_set_priority(eis, EIS_LOG_PRIORITY_DEBUG);
rc = eis_setup_backend_fd(eis);
munit_assert_int(rc, ==, 0);
rc = eis_backend_fd_add_fd(eis, sv[1]);
munit_assert_int(rc, ==, 0);
fd = eis_backend_fd_add_client(eis);
munit_assert_int(fd, >, 0);
peck->eis = eis;
peck->eis_behavior = PECK_EIS_BEHAVIOR_NONE;
peck_enable_eis_behavior(peck, PECK_EIS_BEHAVIOR_HANDLE_FRAME);
struct ei *ei = ei_mode == PECK_EI_RECEIVER ? ei_new_receiver(peck) : ei_new_sender(peck);
ei_set_user_data(ei, peck);
ei_log_set_handler(ei, peck_ei_log_handler);
ei_log_set_priority(ei, EI_LOG_PRIORITY_DEBUG);
ei_configure_name(ei, "eierpecken test context");
rc = ei_setup_backend_fd(ei, fd);
munit_assert_int(rc, ==, 0);
peck->ei = ei;
flag_set(peck->ei_behavior, PECK_EI_BEHAVIOR_AUTOCONNECT);
flag_set(peck->ei_behavior, PECK_EI_BEHAVIOR_AUTOSEAT);
flag_set(peck->ei_behavior, PECK_EI_BEHAVIOR_AUTOSTART);
peck->logger = logger_new("peck", peck);
logger_set_handler(peck->logger, peck_log_handler);
logger_set_priority(peck->logger, LOGGER_DEBUG);