]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - share/man/man4/man4.i386/streams.4
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / share / man / man4 / man4.i386 / streams.4
1 .\" Copyright (c) 2000 Mark Newton
2 .\" All rights reserved.
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\"
13 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23 .\" SUCH DAMAGE.
24 .\"
25 .\" $FreeBSD$
26 .\"
27 .Dd March 17, 2008
28 .Dt STREAMS 4 i386
29 .Os
30 .Sh NAME
31 .Nm streams
32 .Nd System V STREAMS networking ABI support
33 .Sh SYNOPSIS
34 To compile support for this ABI into the kernel,
35 place the following line in your
36 kernel configuration file:
37 .Bd -ragged -offset indent
38 .Cd "device streams"
39 .Ed
40 .Pp
41 Alternatively, to load the ABI as a
42 module at boot time, place the following line in
43 .Xr loader.conf 5 :
44 .Bd -literal -offset indent
45 streams_load="YES"
46 .Ed
47 .Sh DESCRIPTION
48 The
49 .Nm
50 module provides limited
51 System V Release 4 STREAMS interprocess communication ABI
52 (application binary interface) compatibility
53 for userland applications.
54 .Pp
55 Internally,
56 .Nm
57 provides STREAMS handles by using socket creation kernel routines, and
58 adding state-tracking information to the socket to permit manipulation
59 by STREAMS emulation code in
60 .Xr svr4 4 .
61 Hence, opening a stream device produces a result similar to what would be
62 obtained by calling
63 .Xr socket 2 .
64 .Pp
65 Applications should never use this interface directly: STREAMS
66 emulation is only provided as a service to support ABI requirements in
67 the SVR4 environment which
68 .Xr svr4 4
69 needs to present to client binaries.
70 .Sh SEE ALSO
71 .Xr svr4 4
72 .Sh HISTORY
73 System V Release 4 ABI support first appeared in
74 .Fx 4.0 .
75 The ABI was ported from an equivalent facility present in
76 .Nx 1.3
77 written by Christos Zoulas.
78 .Sh BUGS
79 This whole interface is a crude hack to produce STREAMS semantics
80 through emulation over sockets.
81 .Pp
82 Programmers who hope to be able to use this interface to provide
83 SVR4 STREAMS services to
84 .Bx
85 applications will be sorely disappointed.