diff options
Diffstat (limited to 'upstream/archlinux/man3p/cfgetispeed.3p')
-rw-r--r-- | upstream/archlinux/man3p/cfgetispeed.3p | 128 |
1 files changed, 128 insertions, 0 deletions
diff --git a/upstream/archlinux/man3p/cfgetispeed.3p b/upstream/archlinux/man3p/cfgetispeed.3p new file mode 100644 index 00000000..f65a113d --- /dev/null +++ b/upstream/archlinux/man3p/cfgetispeed.3p @@ -0,0 +1,128 @@ +'\" et +.TH CFGETISPEED "3P" 2017 "IEEE/The Open Group" "POSIX Programmer's Manual" +.\" +.SH PROLOG +This manual page is part of the POSIX Programmer's Manual. +The Linux implementation of this interface may differ (consult +the corresponding Linux manual page for details of Linux behavior), +or the interface may not be implemented on Linux. +.\" +.SH NAME +cfgetispeed +\(em get input baud rate +.SH SYNOPSIS +.LP +.nf +#include <termios.h> +.P +speed_t cfgetispeed(const struct termios *\fItermios_p\fP); +.fi +.SH DESCRIPTION +The +\fIcfgetispeed\fR() +function shall extract the input baud rate from the +.BR termios +structure to which the +.IR termios_p +argument points. +.P +This function shall return exactly the value in the +.BR termios +data structure, without interpretation. +.SH "RETURN VALUE" +Upon successful completion, +\fIcfgetispeed\fR() +shall return a value of type +.BR speed_t +representing the input baud rate. +.SH ERRORS +No errors are defined. +.LP +.IR "The following sections are informative." +.SH EXAMPLES +None. +.SH "APPLICATION USAGE" +None. +.SH RATIONALE +The term ``baud'' is used historically here, but is not technically +correct. This is properly ``bits per second'', which may not be the +same as baud. However, the term is used because of the historical +usage and understanding. +.P +The +\fIcfgetospeed\fR(), +\fIcfgetispeed\fR(), +\fIcfsetospeed\fR(), +and +\fIcfsetispeed\fR() +functions do not take arguments as numbers, but rather as symbolic +names. There are two reasons for this: +.IP " 1." 4 +Historically, numbers were not used because of the way the rate was +stored in the data structure. This is retained even though a +function is now used. +.IP " 2." 4 +More importantly, only a limited set of possible rates is at all +portable, and this constrains the application to that set. +.P +There is nothing to prevent an implementation accepting as an extension +a number (such as 126), and since the encoding of the Bxxx symbols is +not specified, this can be done to avoid introducing ambiguity. +.P +Setting the input baud rate to zero was a mechanism to allow for split +baud rates. Clarifications in this volume of POSIX.1\(hy2017 have made it possible to determine +whether split rates are supported and to support them without having to +treat zero as a special case. Since this functionality is also +confusing, it has been declared obsolescent. +The 0 argument referred to is the literal constant 0, not the symbolic +constant B0. This volume of POSIX.1\(hy2017 does not preclude B0 from being defined as the value +0; in fact, implementations would likely benefit from the two being +equivalent. This volume of POSIX.1\(hy2017 does not fully specify whether the previous +\fIcfsetispeed\fR() +value is retained after a +\fItcgetattr\fR() +as the actual value or as zero. Therefore, conforming applications should +always set both the input speed and output speed when setting either. +.P +In historical implementations, the baud rate information is +traditionally kept in +.BR c_cflag . +Applications should be written to presume that this might be the case +(and thus not blindly copy +.BR c_cflag ), +but not to rely on it in case it is in some other field of the +structure. Setting the +.BR c_cflag +field absolutely after setting a baud rate is a non-portable action +because of this. In general, the unused parts of the flag fields might +be used by the implementation and should not be blindly copied from the +descriptions of one terminal device to another. +.SH "FUTURE DIRECTIONS" +None. +.SH "SEE ALSO" +.IR "\fIcfgetospeed\fR\^(\|)", +.IR "\fIcfsetispeed\fR\^(\|)", +.IR "\fIcfsetospeed\fR\^(\|)", +.IR "\fItcgetattr\fR\^(\|)" +.P +The Base Definitions volume of POSIX.1\(hy2017, +.IR "Chapter 11" ", " "General Terminal Interface", +.IR "\fB<termios.h>\fP" +.\" +.SH COPYRIGHT +Portions of this text are reprinted and reproduced in electronic form +from IEEE Std 1003.1-2017, Standard for Information Technology +-- Portable Operating System Interface (POSIX), The Open Group Base +Specifications Issue 7, 2018 Edition, +Copyright (C) 2018 by the Institute of +Electrical and Electronics Engineers, Inc and The Open Group. +In the event of any discrepancy between this version and the original IEEE and +The Open Group Standard, the original IEEE and The Open Group Standard +is the referee document. The original Standard can be obtained online at +http://www.opengroup.org/unix/online.html . +.PP +Any typographical or formatting errors that appear +in this page are most likely +to have been introduced during the conversion of the source files to +man page format. To report such errors, see +https://www.kernel.org/doc/man-pages/reporting_bugs.html . |