tcsetattr(3c) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

tcsetattr(3c)

Standard C Library Functions                                     tcsetattr(3C)



NAME
       tcsetattr - set the parameters associated with the terminal

SYNOPSIS
       #include <termios.h>

       int tcsetattr(int fildes, int optional_actions,
            const struct termios *termios_p);

DESCRIPTION
       The tcsetattr() function sets the parameters associated with the termi‐
       nal referred to by the  open  file  descriptor  fildes  (an  open  file
       descriptor  associated with a terminal) from the termios structure (see
       termio(4I)) referenced by termios_p as follows:

           o      If optional_actions is TCSANOW, the change will occur  imme‐
                  diately.


           o      If  optional_actions  is  TCSADRAIN,  the  change will occur
                  after all output written  to  fildes  is  transmitted.  This
                  function should be used when changing parameters that affect
                  output.


           o      If optional_actions is  TCSAFLUSH,  the  change  will  occur
                  after  all  output written to fildes is transmitted, and all
                  input so far received but not read will be discarded  before
                  the change is made.



       If  the  output baud rate stored in the termios structure pointed to by
       termios_p is the zero baud rate, B0, the modem control  lines  will  no
       longer be asserted. Normally, this will disconnect the line.


       If  the  input  baud rate stored in the termios structure pointed to by
       termios_p is 0, the input baud rate given to the hardware will  be  the
       same as the output baud rate stored in the termios structure.


       The  tcsetattr()  function  will  return successfully if it was able to
       perform any of the requested actions, even if  some  of  the  requested
       actions  could  not  be  performed. It will set all the attributes that
       implementation supports as requested and leave all the  attributes  not
       supported  by  the  implementation unchanged. If no part of the request
       can be honoured, it will return −1 and set  errno  to  EINVAL.  If  the
       input  and  output  baud rates differ and are a combination that is not
       supported, neither baud rate is changed. A  subsequent  call  to  tcge‐
       tattr(3C) will return the actual state of the terminal device (reflect‐
       ing both the changes made and not  made  in  the  previous  tcsetattr()
       call).  The  tcsetattr()  function  will  not  change the values in the
       termios structure whether or not it actually accepts them.


       The effect of tcsetattr() is undefined if  the  value  of  the  termios
       structure  pointed to by termios_p was not derived from the result of a
       call to tcgetattr(3C) on fildes;  an  application  should  modify  only
       fields  and  flags  defined  by this document between the call to tcge‐
       tattr(3C) and tcsetattr(), leaving all other fields and  flags  unmodi‐
       fied.


       No  actions  defined by this document, other than a call to tcsetattr()
       or a close of the last file descriptor in the  system  associated  with
       this terminal device, will cause any of the terminal attributes defined
       by this document to change.


       Attempts to use tcsetattr() from a process which is a member of a back‐
       ground process group on a fildes associated with its controlling termi‐
       nal, will cause the process group to be sent a SIGTTOU signal.  If  the
       calling process is blocking or ignoring SIGTTOU signals, the process is
       allowed to perform the operation, and no signal is sent.

USAGE
       If trying to change baud rates, applications  should  call  tcsetattr()
       then  call  tcgetattr(3C)  in  order  to determine what baud rates were
       actually selected.

RETURN VALUES
       Upon successful completion, 0 is returned. Otherwise,  −1  is  returned
       and errno is set to indicate the error.

ERRORS
       The tcsetattr() function will fail if:

       EBADF     The fildes argument is not a valid file descriptor.


       EINTR     A signal interrupted tcsettattr().


       EINVAL    The optional_actions argument is not a supported value, or an
                 attempt was made to change an attribute  represented  in  the
                 termios structure to an unsupported value.


       ENOTTY    The file associated with fildes is not a terminal.



       The tcsetattr() function may fail if:

       EIO    The  process  group  of the writing process is orphaned, and the
              writing process is not ignoring or blocking SIGTTOU.


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE  TYPEAT‐
       TRIBUTE  VALUE  _  Interface  StabilityCommitted _ MT-LevelMT-Safe, and
       Async-Signal-Safe _ StandardSee standards(7).


SEE ALSO
       cfgetispeed(3C), tcgetattr(3C), termio(4I), attributes(7), standards(7)



Oracle Solaris 11.4               14 Aug 2002                    tcsetattr(3C)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3