<html lang="en">
<head>
<title>Start/Stop Characters - The GNU C Library</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="The GNU C Library">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Special-Characters.html#Special-Characters" title="Special Characters">
<link rel="prev" href="Signal-Characters.html#Signal-Characters" title="Signal Characters">
<link rel="next" href="Other-Special.html#Other-Special" title="Other Special">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
This file documents the GNU C library.

This is Edition 0.12, last updated 2007-10-27,
of `The GNU C Library Reference Manual', for version
2.8 (Sourcery G++ Lite 2011.03-41).

Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2002,
2003, 2007, 2008, 2010 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being ``Free Software Needs Free Documentation''
and ``GNU Lesser General Public License'', the Front-Cover texts being
``A GNU Manual'', and with the Back-Cover Texts as in (a) below.  A
copy of the license is included in the section entitled "GNU Free
Documentation License".

(a) The FSF's Back-Cover Text is: ``You have the freedom to
copy and modify this GNU manual.  Buying copies from the FSF
supports it in developing GNU and promoting software freedom.''-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
  pre.display { font-family:inherit }
  pre.format  { font-family:inherit }
  pre.smalldisplay { font-family:inherit; font-size:smaller }
  pre.smallformat  { font-family:inherit; font-size:smaller }
  pre.smallexample { font-size:smaller }
  pre.smalllisp    { font-size:smaller }
  span.sc    { font-variant:small-caps }
  span.roman { font-family:serif; font-weight:normal; } 
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
--></style>
<link rel="stylesheet" type="text/css" href="../cs.css">
</head>
<body>
<div class="node">
<a name="Start%2fStop-Characters"></a>
<a name="Start_002fStop-Characters"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="Other-Special.html#Other-Special">Other Special</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Signal-Characters.html#Signal-Characters">Signal Characters</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Special-Characters.html#Special-Characters">Special Characters</a>
<hr>
</div>

<h5 class="subsubsection">17.4.9.3 Special Characters for Flow Control</h5>

<p>These special characters may be active in either canonical or noncanonical
input mode, but their use is controlled by the flags <code>IXON</code> and
<code>IXOFF</code> (see <a href="Input-Modes.html#Input-Modes">Input Modes</a>).

<!-- termios.h -->
<!-- POSIX.1 -->
<div class="defun">
&mdash; Macro: int <b>VSTART</b><var><a name="index-VSTART-1982"></a></var><br>
<blockquote><p><a name="index-START-character-1983"></a>This is the subscript for the START character in the special control
character array.  <var>termios</var><code>.c_cc[VSTART]</code> holds the
character itself.

        <p>The START character is used to support the <code>IXON</code> and <code>IXOFF</code>
input modes.  If <code>IXON</code> is set, receiving a START character resumes
suspended output; the START character itself is discarded.  If
<code>IXANY</code> is set, receiving any character at all resumes suspended
output; the resuming character is not discarded unless it is the START
character.  <code>IXOFF</code> is set, the system may also transmit START
characters to the terminal.

        <p>The usual value for the START character is <kbd>C-q</kbd>.  You may not be
able to change this value&mdash;the hardware may insist on using <kbd>C-q</kbd>
regardless of what you specify. 
</p></blockquote></div>

<!-- termios.h -->
<!-- POSIX.1 -->
<div class="defun">
&mdash; Macro: int <b>VSTOP</b><var><a name="index-VSTOP-1984"></a></var><br>
<blockquote><p><a name="index-STOP-character-1985"></a>This is the subscript for the STOP character in the special control
character array.  <var>termios</var><code>.c_cc[VSTOP]</code> holds the character
itself.

        <p>The STOP character is used to support the <code>IXON</code> and <code>IXOFF</code>
input modes.  If <code>IXON</code> is set, receiving a STOP character causes
output to be suspended; the STOP character itself is discarded.  If
<code>IXOFF</code> is set, the system may also transmit STOP characters to the
terminal, to prevent the input queue from overflowing.

        <p>The usual value for the STOP character is <kbd>C-s</kbd>.  You may not be
able to change this value&mdash;the hardware may insist on using <kbd>C-s</kbd>
regardless of what you specify. 
</p></blockquote></div>

   </body></html>

