CID 69145 - Argument cannot be negative in unit-test-server
[libmodbus.git] / doc / modbus_set_socket.txt
blob49e5d1ff00791c8d460ff6c96a5e2df46c0255d9
1 modbus_set_socket(3)
2 ====================
5 NAME
6 ----
7 modbus_set_socket - set socket of the context
10 SYNOPSIS
11 --------
12 *int modbus_set_socket(modbus_t *'ctx', int 's');*
15 DESCRIPTION
16 -----------
17 The *modbus_set_socket()* function shall set the socket or file descriptor in
18 the libmodbus context. This function is useful for managing multiple client
19 connections to the same server.
22 RETURN VALUE
23 ------------
24 The function shall return 0 if successful. Otherwise it shall return -1 and set errno.
27 EXAMPLE
28 -------
29 [source,c]
30 -------------------
31 ctx = modbus_new_tcp("127.0.0.1", 1502);
32 server_socket = modbus_tcp_listen(ctx, NB_CONNECTION);
34 FD_ZERO(&rdset);
35 FD_SET(server_socket, &rdset);
37 /* .... */
39 if (FD_ISSET(master_socket, &rdset)) {
40     modbus_set_socket(ctx, master_socket);
41     rc = modbus_receive(ctx, query);
42     if (rc != -1) {
43         modbus_reply(ctx, query, rc, mb_mapping);
44     }
46 -------------------
48 SEE ALSO
49 --------
50 linkmb:modbus_get_socket[3]
53 AUTHORS
54 -------
55 The libmodbus documentation was written by Stéphane Raimbault
56 <stephane.raimbault@gmail.com>