Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > T

tcattribute(3C)

HP-UX 11i Version 3: February 2007
» 

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index

NAME

tcgetattr(), tcsetattr() — control tty device

SYNOPSIS

#include <termios.h> int tcgetattr(int fildes, struct termios *termios_p); int tcsetattr( int fildes, int optional_actions, const struct termios *termios_p );

DESCRIPTION

tcgetattr() gets the parameters associated with fildes and stores them in the termios structure referenced by termios_p. If the terminal device does not support split baud rates, the input baud rate stored in the termios structure is zero. This function is allowed from a background process (see termio(7)). However, the terminal attributes can be subsequently changed by a foreground process.

tcsetattr() sets the parameters associated with fildes (unless support is required from underlying hardware that is not available) from the termios structure referenced by termios_p as follows:

  • If optional_actions is TCSANOW, the change is immediate.

  • If optional_actions is TCSADRAIN, the change occurs after all output written to fildes is transmitted.

  • If optional_actions is TCSAFLUSH, the change occurs after all output written to fildes is transmitted, and all input that has been received but not read is discarded.

RETURN VALUE

Upon successful completion, a value of zero is returned. Otherwise, a value of -1 is returned and errno is set to indicate the error.

ERRORS

tcgetattr() and tcsetattr() fail if any of the following conditions are encountered:

[EBADF]

fildes is not a valid file descriptor.

[EINVAL]

The optional_actions argument is not a proper value or no part of a tcsetattr() request could be performed.

[ENOTTY]

The file associated with fildes is not a terminal.

WARNINGS

tcsetattr() will attempt to perform as much of the request as possible. However, the hardware being used may not support all possible c_cflag values. If any part of the request can be performed, those values will be set, any values not supported by the hardware will be ignored, and tcsetattr() will complete successfully. If no part of the request can be performed, tcsetattr() will fail and set errno to [EINVAL].

For any hardware that does not support separate input and output baud rates, an attempt to set different input and output baud rates does not affect either baud rate.

tcgetattr() always returns the actual values set in hardware. For any hardware that does not support separate input and output baud rates, tcgetattr() returns zero for the input baud rate.

STANDARDS CONFORMANCE

tcgetattr(): AES, SVID3, XPG3, XPG4, FIPS 151-2, POSIX.1

tcsetattr(): AES, SVID3, XPG3, XPG4, FIPS 151-2, POSIX.1

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.