home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 15 / 15.iso / s / s053 / 25.ddi / root.2 / usr / ucbinclude / sysexits.h < prev    next >
Encoding:
Text File  |  1990-12-08  |  4.6 KB  |  117 lines

  1. /*    Copyright (c) 1990 UNIX System Laboratories, Inc.    */
  2. /*    Copyright (c) 1984, 1986, 1987, 1988, 1989, 1990 AT&T    */
  3. /*      All Rights Reserved      */
  4.  
  5. /*    THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF         */
  6. /*    UNIX System Laboratories, Inc.                         */
  7. /*    The copyright notice above does not evidence any       */
  8. /*    actual or intended publication of such source code.    */
  9.  
  10.  
  11. #ident    "@(#)//usr/ucbinclude/sysexits.h.sl 1.1 4.0 12/08/90 25045 AT&T-USL"
  12.  
  13. /*******************************************************************
  14.  
  15.         PROPRIETARY NOTICE (Combined)
  16.  
  17. This source code is unpublished proprietary information
  18. constituting, or derived under license from AT&T's UNIX(r) System V.
  19. In addition, portions of such source code were derived from Berkeley
  20. 4.3 BSD under license from the Regents of the University of
  21. California.
  22.  
  23.  
  24.  
  25.         Copyright Notice 
  26.  
  27. Notice of copyright on this source code product does not indicate 
  28. publication.
  29.  
  30.     (c) 1986,1987,1988,1989  Sun Microsystems, Inc
  31.     (c) 1983,1984,1985,1986,1987,1988,1989  AT&T.
  32.               All rights reserved.
  33. ********************************************************************/ 
  34.  
  35. /*
  36. **
  37. **  SYSEXITS.H -- Exit status codes for system programs.
  38. **
  39. **    This include file attempts to categorize possible error
  40. **    exit statuses for system programs, notably delivermail
  41. **    and the Berkeley network.
  42. **
  43. **    Error numbers begin at EX__BASE to reduce the possibility of
  44. **    clashing with other exit statuses that random programs may
  45. **    already return.  The meaning of the codes is approximately
  46. **    as follows:
  47. **
  48. **    EX_USAGE -- The command was used incorrectly, e.g., with
  49. **        the wrong number of arguments, a bad flag, a bad
  50. **        syntax in a parameter, or whatever.
  51. **    EX_DATAERR -- The input data was incorrect in some way.
  52. **        This should only be used for user's data & not
  53. **        system files.
  54. **    EX_NOINPUT -- An input file (not a system file) did not
  55. **        exist or was not readable.  This could also include
  56. **        errors like "No message" to a mailer (if it cared
  57. **        to catch it).
  58. **    EX_NOUSER -- The user specified did not exist.  This might
  59. **        be used for mail addresses or remote logins.
  60. **    EX_NOHOST -- The host specified did not exist.  This is used
  61. **        in mail addresses or network requests.
  62. **    EX_UNAVAILABLE -- A service is unavailable.  This can occur
  63. **        if a support program or file does not exist.  This
  64. **        can also be used as a catchall message when something
  65. **        you wanted to do doesn't work, but you don't know
  66. **        why.
  67. **    EX_SOFTWARE -- An internal software error has been detected.
  68. **        This should be limited to non-operating system related
  69. **        errors as possible.
  70. **    EX_OSERR -- An operating system error has been detected.
  71. **        This is intended to be used for such things as "cannot
  72. **        fork", "cannot create pipe", or the like.  It includes
  73. **        things like getuid returning a user that does not
  74. **        exist in the passwd file.
  75. **    EX_OSFILE -- Some system file (e.g., /etc/passwd, /etc/utmp,
  76. **        etc.) does not exist, cannot be opened, or has some
  77. **        sort of error (e.g., syntax error).
  78. **    EX_CANTCREAT -- A (user specified) output file cannot be
  79. **        created.
  80. **    EX_IOERR -- An error occurred while doing I/O on some file.
  81. **    EX_TEMPFAIL -- temporary failure, indicating something that
  82. **        is not really an error.  In sendmail, this means
  83. **        that a mailer (e.g.) could not create a connection,
  84. **        and the request should be reattempted later.
  85. **    EX_PROTOCOL -- the remote system returned something that
  86. **        was "not possible" during a protocol exchange.
  87. **    EX_NOPERM -- You did not have sufficient permission to
  88. **        perform the operation.  This is not intended for
  89. **        file system problems, which should use NOINPUT or
  90. **        CANTCREAT, but rather for higher level permissions.
  91. **        For example, kre uses this to restrict who students
  92. **        can send mail to.
  93. **
  94. **    Maintained by Eric Allman (eric@berkeley, ucbvax!eric) --
  95. **        please mail changes to me.
  96. **
  97. */
  98.  
  99. # define EX_OK        0    /* successful termination */
  100.  
  101. # define EX__BASE    64    /* base value for error messages */
  102.  
  103. # define EX_USAGE    64    /* command line usage error */
  104. # define EX_DATAERR    65    /* data format error */
  105. # define EX_NOINPUT    66    /* cannot open input */
  106. # define EX_NOUSER    67    /* addressee unknown */
  107. # define EX_NOHOST    68    /* host name unknown */
  108. # define EX_UNAVAILABLE    69    /* service unavailable */
  109. # define EX_SOFTWARE    70    /* internal software error */
  110. # define EX_OSERR    71    /* system error (e.g., can't fork) */
  111. # define EX_OSFILE    72    /* critical OS file missing */
  112. # define EX_CANTCREAT    73    /* can't create (user) output file */
  113. # define EX_IOERR    74    /* input/output error */
  114. # define EX_TEMPFAIL    75    /* temp failure; user is invited to retry */
  115. # define EX_PROTOCOL    76    /* remote error in protocol */
  116. # define EX_NOPERM    77    /* permission denied */
  117.