# Class Netchannels.socket_descr

    class socket_descr : ?blocking:bool -> ?start_pos_in:int -> ?start_pos_out:int -> Unix.file_descr -> raw_io_channel

Creates a `raw_io_channel` for the passed socket descriptor, which must be open for reading and writing, and not yet shut down in either direction. The `raw_io_channel` is used to represent a bidirectional channel: `close_out` shuts the socket down for sending, `close_in` shuts the socket down for reading, and when both directions are down, the descriptor is closed.

The `pos_in` and `pos_out` methods returns logical positions.

This class supports sockets and Win32 named pipes. Note, however, that for Win32 named pipes it is not possible to shut down only one direction of the bidirectional data channel.

`blocking` : See `Netchannels.input_descr` and `Netchannels.output_descr`
`start_pos_in` : The position to which `pos_in` is initialized when the channel is created, by default 0
`start_pos_out` : The position to which `pos_out` is initialized when the channel is created, by default 0