Initial import from FreeBSD RELENG_4:
[games.git] / lib / libcr / gen / tcsendbreak.3
1 .\" Copyright (c) 1991, 1993
2 .\"     The Regents of the University of California.  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 .\" 3. All advertising materials mentioning features or use of this software
13 .\"    must display the following acknowledgement:
14 .\"     This product includes software developed by the University of
15 .\"     California, Berkeley and its contributors.
16 .\" 4. Neither the name of the University nor the names of its contributors
17 .\"    may be used to endorse or promote products derived from this software
18 .\"    without specific prior written permission.
19 .\"
20 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30 .\" SUCH DAMAGE.
31 .\"
32 .\"     @(#)tcsendbreak.3       8.1 (Berkeley) 6/4/93
33 .\" $FreeBSD: src/lib/libc/gen/tcsendbreak.3,v 1.5.2.3 2001/12/14 18:33:51 ru Exp $
34 .\"
35 .Dd June 4, 1993
36 .Dt TCSENDBREAK 3
37 .Os
38 .Sh NAME
39 .Nm tcsendbreak ,
40 .Nm tcdrain ,
41 .Nm tcflush ,
42 .Nm tcflow
43 .Nd line control functions
44 .Sh LIBRARY
45 .Lb libc
46 .Sh SYNOPSIS
47 .In termios.h
48 .Ft int
49 .Fn tcdrain "int fd"
50 .Ft int
51 .Fn tcflow "int fd" "int action"
52 .Ft int
53 .Fn tcflush "int fd" "int action"
54 .Ft int
55 .Fn tcsendbreak "int fd" "int len"
56 .Sh DESCRIPTION
57 The
58 .Fn tcdrain
59 function waits until all output written to the terminal referenced by
60 .Fa fd
61 has been transmitted to the terminal.
62 .Pp
63 The
64 .Fn tcflow
65 function suspends transmission of data to or the reception of data from
66 the terminal referenced by
67 .Fa fd
68 depending on the value of
69 .Fa action .
70 The value of
71 .Fa action
72 must be one of the following:
73 .Bl -tag -width "TCIOFF"
74 .It Fa TCOOFF
75 Suspend output.
76 .It Fa TCOON
77 Restart suspended output.
78 .It Fa TCIOFF
79 Transmit a STOP character, which is intended to cause the terminal to stop
80 transmitting data to the system.
81 (See the description of IXOFF in the
82 .Ql Input Modes
83 section of
84 .Xr termios 4 ) .
85 .It Fa TCION
86 Transmit a START character, which is intended to cause the terminal to start
87 transmitting data to the system.
88 (See the description of IXOFF in the
89 .Ql Input Modes
90 section of
91 .Xr termios 4 ) .
92 .El
93 .Pp
94 The
95 .Fn tcflush
96 function discards any data written to the terminal referenced by
97 .Fa fd
98 which has not been transmitted to the terminal, or any data received
99 from the terminal but not yet read, depending on the value of
100 .Fa action .
101 The value of
102 .Fa action
103 must be one of the following:
104 .Bl -tag -width "TCIOFLUSH"
105 .It Fa TCIFLUSH
106 Flush data received but not read.
107 .It Fa TCOFLUSH
108 Flush data written but not transmitted.
109 .It Fa TCIOFLUSH
110 Flush both data received but not read and data written but not transmitted.
111 .El
112 .Pp
113 The
114 .Fn tcsendbreak
115 function transmits a continuous stream of zero-valued bits for four-tenths
116 of a second to the terminal referenced by
117 .Fa fd .
118 The
119 .Fa len
120 parameter is ignored in this implementation.
121 .Sh RETURN VALUES
122 Upon successful completion, all of these functions return a value of zero.
123 .Sh ERRORS
124 If any error occurs, a value of -1 is returned and the global variable
125 .Va errno
126 is set to indicate the error, as follows:
127 .Bl -tag -width Er
128 .It Bq Er EBADF
129 The
130 .Fa fd
131 argument is not a valid file descriptor.
132 .It Bq Er EINVAL
133 The
134 .Fa action
135 argument is not a proper value.
136 .It Bq Er ENOTTY
137 The file associated with
138 .Fa fd
139 is not a terminal.
140 .It Bq Er EINTR
141 A signal interrupted the
142 .Fn tcdrain
143 function.
144 .El
145 .Sh SEE ALSO
146 .Xr tcsetattr 3 ,
147 .Xr termios 4
148 .Sh STANDARDS
149 The
150 .Fn tcsendbreak ,
151 .Fn tcdrain ,
152 .Fn tcflush
153 and
154 .Fn tcflow
155 functions are expected to be compliant with the
156 .St -p1003.1-88
157 specification.