DOKK / manpages / debian 12 / libmodbus-dev / modbus_tcp_accept.3.en
MODBUS_TCP_ACCEPT(3) libmodbus Manual MODBUS_TCP_ACCEPT(3)

modbus_tcp_accept - accept a new connection on a TCP Modbus socket (IPv4)

int modbus_tcp_accept(modbus_t *ctx, int *'s);

The modbus_tcp_accept() function shall extract the first connection on the queue of pending connections, create a new socket and store it in libmodbus context given in argument. If available, accept4() with SOCK_CLOEXEC will be called instead of accept().

The function shall return a new socket if successful. Otherwise it shall return -1 and set errno.

For detailed example, see unit-test-server.c source file in tests directory.

...
ctx = modbus_new_tcp("127.0.0.1", 502);
s = modbus_tcp_listen(ctx, 1);
modbus_tcp_accept(ctx, &s);
...
close(s)
modbus_free(ctx);

modbus_tcp_pi_accept(3) modbus_tcp_listen(3) modbus_tcp_pi_listen(3)

The libmodbus documentation was written by Stéphane Raimbault <stephane.raimbault@gmail.com>

10/15/2022 libmodbus v3.1.6