Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (SunOS-5.9)
Apropos / Subsearch:
optional field

File Formats                                           ttysrch(4)

     ttysrch - directory search list for ttyname

     ttysrch is an optional file that  is  used  by  the  ttyname
     library routine. This file contains the names of directories
     in /dev that contain terminal  and  terminal-related  device
     files.  The  purpose  of this file is to improve the perfor-
     mance of ttyname by indicating which subdirectories in  /dev
     contain terminal-related device files and should be searched
     first. These subdirectory  names  must  appear  on  separate
     lines and must begin with /dev. Those path names that do not
     begin with /dev will be ignored and a warning will  be  sent
     to  the  console.  Blank  lines (lines containing only white
     space) and lines beginning with the  comment  character  "#"
     will  be  ignored. For each file listed (except for the spe-
     cial entry /dev), ttyname will  recursively  search  through
     subdirectories  looking  for a match. If /dev appears in the
     ttysrch file, the /dev directory itself will be searched but
     there  will  not be a recursive search through its subdirec-

     When ttyname searches through the device files, it tries  to
     find  a  file  whose  major/minor device number, file system
     identifier, and inode number match that of the file descrip-
     tor it was given as an argument. If a match is not found, it
     will settle for a match of just major/minor device and  file
     system identifier, if one can be found. However, if the file
     descriptor is associated with a cloned  device,  this  algo-
     rithm does not work efficiently because the inode number  of
     the device file associated with a clonable device will never
     match  the  inode  number  of  the  file descriptor that was
     returned by the open of that clonable device. To  help  with
     these  situations,  entries can be put into the /etc/ttysrch
     file to improve performance when cloned devices are used  as
     terminals  on a system (for example, for remote login). How-
     ever, this is only useful if the minor devices related to  a
     cloned  device are put into a subdirectory. (It is important
     to note that device files need not exist for cloned  devices
     and  if  that is the case, ttyname will eventually fail.) An
     optional second field is used in the  /etc/ttysrch  file  to
     indicate  the  matching criteria. This field is separated by
     white space (any combination of blanks or tabs). The  letter
     M means major/minor device number, F means file system iden-
     tifier, and I means inode  number.  If  this  field  is  not
     specified  for  an entry, the default is MFI which means try
     to match on all three. For cloned devices the  field  should
     be  MF, which indicates that it is not necessary to match on
     the inode number.

     Without the /etc/ttysrch file, ttyname will search the  /dev
     directory  by  first  looking  in the directories /dev/term,

SunOS 5.9           Last change: 23 Feb 1994                    1

File Formats                                           ttysrch(4)

     /dev/pts, and /dev/xt. If  a  system  has  terminal  devices
     installed  in directories other than these, it may help per-
     formance if the ttysrch file is created  and  contains  that
     list of directories.

     Example 1: A sample display of /etc/ttysrch command.

     A sample /etc/ttysrch file follows:

     /dev/term     MFI
     /dev/pts      MFI
     /dev/xt       MFI
     /dev/slan     MF

     This file tells  ttyname that it should first search through
     those  directories  listed   and that when searching through
     the /dev/slan directory, if  a  file  is  encountered  whose
     major/minor devices and file system identifier match that of
     the file descriptor argument to ttyname,  this  device  name
     should be considered a match.



SunOS 5.9           Last change: 23 Feb 1994                    2