modbus_set_socket - Man Page

set socket of the context

Synopsis

int modbus_set_socket(modbus_t *ctx, int s);

Description

The modbus_set_socket() function shall set the socket or file descriptor in the libmodbus context. This function is useful for managing multiple client connections to the same server.

Return Value

The function shall return 0 if successful. Otherwise it shall return -1 and set errno.

Example

ctx = modbus_new_tcp("127.0.0.1", 1502);
server_socket = modbus_tcp_listen(ctx, NB_CONNECTION);

FD_ZERO(&rdset);
FD_SET(server_socket, &rdset);

/* .... */

if (FD_ISSET(master_socket, &rdset)) {
    modbus_set_socket(ctx, master_socket);
    rc = modbus_receive(ctx, query);
    if (rc != -1) {
        modbus_reply(ctx, query, rc, mb_mapping);
    }
}

See Also

modbus_get_socket(3)

Authors

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

Referenced By

libmodbus(7), modbus_get_socket(3), modbus_receive(3).

01/25/2024 libmodbus v3.1.7 libmodbus Manual