'\" t
.\"     Title: modbus_set_socket
.\"    Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/>
.\"      Date: 05/26/2012
.\"    Manual: Libmodbus Manual
.\"    Source: libmodbus 3.0.3
.\"  Language: English
.\"
.TH "MODBUS_SET_SOCKET" "3" "05/26/2012" "libmodbus 3\&.0\&.3" "Libmodbus Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
modbus_set_socket \- set socket of the context
.SH "SYNOPSIS"
.sp
\fBvoid modbus_set_socket(modbus_t *\fR\fB\fIctx\fR\fR\fB, int \fR\fB\fIsocket\fR\fR\fB);\fR
.SH "DESCRIPTION"
.sp
The \fImodbus_set_socket()\fR 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\&.
.SH "RETURN VALUE"
.sp
There is no return values\&.
.SH "EXAMPLE"
.sp
.if n \{\
.RS 4
.\}
.nf
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);
    }
}
.fi
.if n \{\
.RE
.\}
.SH "SEE ALSO"
.sp
\fBmodbus_get_socket\fR(3)
.SH "AUTHORS"
.sp
The libmodbus documentation was written by St\('ephane Raimbault <\m[blue]\fBstephane\&.raimbault@gmail\&.com\fR\m[]\&\s-2\u[1]\d\s+2>
.SH "NOTES"
.IP " 1." 4
stephane.raimbault@gmail.com
.RS 4
\%mailto:stephane.raimbault@gmail.com
.RE
