xref: /freebsd/lib/libc/gen/tcsendbreak.3 (revision c98323078dede7579020518ec84cdcb478e5c142)
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$
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
57The
58.Fn tcdrain
59function waits until all output written to the terminal referenced by
60.Fa fd
61has been transmitted to the terminal.
62.Pp
63The
64.Fn tcflow
65function suspends transmission of data to or the reception of data from
66the terminal referenced by
67.Fa fd
68depending on the value of
69.Fa action .
70The value of
71.Fa action
72must be one of the following:
73.Bl -tag -width "TCIOFF"
74.It Fa TCOOFF
75Suspend output.
76.It Fa TCOON
77Restart suspended output.
78.It Fa TCIOFF
79Transmit a STOP character, which is intended to cause the terminal to stop
80transmitting data to the system.
81(See the description of IXOFF in the
82.Ql Input Modes
83section of
84.Xr termios 4 ) .
85.It Fa TCION
86Transmit a START character, which is intended to cause the terminal to start
87transmitting data to the system.
88(See the description of IXOFF in the
89.Ql Input Modes
90section of
91.Xr termios 4 ) .
92.El
93.Pp
94The
95.Fn tcflush
96function discards any data written to the terminal referenced by
97.Fa fd
98which has not been transmitted to the terminal, or any data received
99from the terminal but not yet read, depending on the value of
100.Fa action .
101The value of
102.Fa action
103must be one of the following:
104.Bl -tag -width "TCIOFLUSH"
105.It Fa TCIFLUSH
106Flush data received but not read.
107.It Fa TCOFLUSH
108Flush data written but not transmitted.
109.It Fa TCIOFLUSH
110Flush both data received but not read and data written but not transmitted.
111.El
112.Pp
113The
114.Fn tcsendbreak
115function transmits a continuous stream of zero-valued bits for four-tenths
116of a second to the terminal referenced by
117.Fa fd .
118The
119.Fa len
120argument is ignored in this implementation.
121.Sh RETURN VALUES
122Upon successful completion, all of these functions return a value of zero.
123.Sh ERRORS
124If any error occurs, a value of -1 is returned and the global variable
125.Va errno
126is set to indicate the error, as follows:
127.Bl -tag -width Er
128.It Bq Er EBADF
129The
130.Fa fd
131argument is not a valid file descriptor.
132.It Bq Er EINVAL
133The
134.Fa action
135argument is not a proper value.
136.It Bq Er ENOTTY
137The file associated with
138.Fa fd
139is not a terminal.
140.It Bq Er EINTR
141A signal interrupted the
142.Fn tcdrain
143function.
144.El
145.Sh SEE ALSO
146.Xr tcsetattr 3 ,
147.Xr termios 4
148.Sh STANDARDS
149The
150.Fn tcsendbreak ,
151.Fn tcdrain ,
152.Fn tcflush
153and
154.Fn tcflow
155functions are expected to be compliant with the
156.St -p1003.1-88
157specification.
158