NAME
	  ERRNO	- Error	values returned	by functions in	the errno glo-
	  bal variable.

     SYNOPSIS
	  #include <errno.h>

     DESCRIPTION
	  There	are two	versions of the	operating system C system
	  calls:

	  o The	standard C system calls	that send a message to stan-
	    dard error when an error occurs

	  o The	underscore C system calls that return an error code
	    (errno) when an error occurs

	  The standard C system	calls terminate	a process when an
	  error	occurs and send	a message to standard error describing
	  the error. For example, the crecv() function terminates when
	  an error occurs and it sends a message to the	standard error
	  describing the error.

	  The underscore C system calls	are identified by an under-
	  score	as the first character of the name. For	example, the
	  _crecv() function is the underscore version of the crecv()
	  function. The	underscore calls allow you to write programs
	  that take specific actions when an error occurs. They	return
	  a non-negative value upon successful completion. When	an
	  error	occurs in an underscore	system call, the call does not
	  terminate the	process, but returns a -1 value	and sets the
	  errno	global variable	with an	error value.

	  The errno global variable is set with	an error value that
	  has an associated message that helps determine the problem
	  in a program.	This manual page provides a complete list of
	  the error values for operating system	C system calls.	You
	  can also find	the list of error codes	in the file
	  /usr/include/sys/errno.h. See	the OSF/1 Programmer's Refer-
	  ence for more	information about error	codes and error
	  numbers.

	  There	are two	functions you can use to print out the error
	  code for a program that terminates with an error: perror()
	  and nx_perror(). The perror()	function writes	an error mes-
	  sage on the standard error output that describes the last
	  error	encountered by a function, library function, or	Para-
	  gon OSF/1 system call. The nx_perror() function is identical
	  to the perror() function, except that	it writes the current
	  node number and process type in addition to the error	mes-
	  sage.

	  For example, the underscore C	system call _crecv() call does
	  not terminate	when an	error occurs. On a error, it returns a
	  -1 and sets errno to the error code for the error that
	  occurred. You	can use	perror() or nx_perror()	to print the
	  error	message.

	  The following	table lists the	errno values for operating
	  system system	calls. The table lists the error code, the
	  error	code number, the message text, and notes on the	error
	  code.	The message text appears in italic text.

	  Error	Code	   Value  Messages and Notes

	  E2BIG		   7	  Arg list too long. The number	of
				  bytes	received by the	argument is
				  too big.

	  EACCES	   13	  Permission denied. The calling pro-
				  cess does not	have permission	for
				  the operation.

	  EADDRINUSE	   48	  Address already in use. The speci-
				  fied address is already in use.

	  EADDRNOTAVAIL	   49	  Can't	assign requested address. The
				  specified address is not available
				  from the local machine.

	  EAEXIST	   158	  Application exists for process
				  group.

	  EAFNOSUPPORT	   47	  Address family not supported by pro-
				  tocol	family.	The addresses in a
				  specified address family cannot be
				  used with the	socket.

	  EAGAIN	   35	  Resource temporarily unavailable. A
				  resource, such as a lock or process,
				  is temporarily unavailable.

	  EAINVALGTH	   156	  Give threshold invalid or out	of
				  range. For information about the
				  range	of values for the give thres-
				  hold,	see the	application manual
				  page either online or	in the
				  Paragon(tm) System Commands Refer-
				  ence Manual.

	  EAINVALMBF	   151	  Memory buffer	invalid	or out of
				  range. For information about the
				  range	of values for the memory
				  buffer size, see the application
				  manual page either online or in the
				  Paragon(tm) System Commands Refer-
				  ence Manual.

	  EAINVALMEA	   153	  Memory each invalid or out of	range.
				  For information about	the range of
				  values for the memory	each size, see
				  the application manual page either
				  online or in the Paragon(tm) System
				  Commands Reference Manual.

	  EAINVALMEX	   152	  Memory Export	invalid	or out of
				  range. For information about the
				  range	of values for the memory
				  export size, see the application
				  manual page either online or in the
				  Paragon(tm) System Commands Refer-
				  ence Manual.

	  EAINVALPKT	   150	  Packet size invalid or out of	range.
				  For information about	the range of
				  values for the packet	size, see the
				  application manual page either
				  online or in the Paragon(tm) System
				  Commands Reference Manual.

	  EAINVALSCT	   155	  Send count invalid or	out of range.
				  For information about	the range of
				  values for the send count size, see
				  the application manual page either
				  online or in the Paragon(tm) System
				  Commands Reference Manual.

	  EAINVALSTH	   154	  Send threshold invalid or out	of
				  range. For information about the
				  range	of values for the send count
				  size,	see the	application manual
				  page either online or	in the
				  Paragon(tm) System Commands Refer-
				  ence Manual.

	  EALREADY	   37	  Operation already in progress.

	  EANOEXIST	   164	  Application does not exist for pro-
				  cess group. The specified process
				  group	does not exist.

	  EANOTPGL	   157	  Calling process not process group
				  leader.

	  EANXACCT	   141	  NX accounting	permission denied.

	  EAOVLP	   141	  Request overlaps with	nodes in use.
				  A partition or application overlaps
				  with another partition or applica-
				  tion.

	  EAREJPLK	   144	  Use of -plk not allowed in
				  gang-scheduled partition. An appli-
				  cation cannot	use the	-plk switch in
				  a gang-scheduled partition.

	  EBADF		   9	  Bad file number. A socket or file
				  descriptor parameter is invalid.

	  EBADID	   215	  Asynchronous request ID invalid. The
				  id parameter is not a	valid I/O ID.

	  EBADMSG	   84	  Next message has wrong type.

	  EBADPORT	   101	  Failed port to struct	translation.

	  EBADRPC	   72	  RPC structure	is bad.

	  EBUSY		   16	  Device busy. The requested element
				  is unavailable, or the associated
				  system limit was exceeded.

	  ECFPS		   199	  Seek to different file pointers. Two
				  or more application processes	are
				  calling lseek() with different
				  shared I/O modes (M_SYNC, M_RECORD,
				  or M_GLOBAL).

	  ECHILD	   10	  No child processes. The child	pro-
				  cess does not	exist, or the
				  requested child process information
				  is unavailable.

	  ECLONEME	   88	  Tells	open to	clone the device.

	  ECONNABORTED	   53	  Software caused connection abort.
				  The software caused a	connection to
				  abort	because	there is no space on
				  the socket's queue and the socket
				  cannot receive further connections.

	  ECONNREFUSED	   61	  Connection refused.

	  ECONNRESET	   54	  Connection reset by peer. The
				  attempt to connect was rejected.

	  EDEADLK	   11	  Resource deadlock avoided. There is
				  a probable deadlock condition, or
				  the requested	lock is	owned by some-
				  one else.

	  EDESTADDRREQ	   39	  Destination address required.

	  EDIRTY	   89	  Mounting a dirty file	system w/o
				  force. The file system is not	clean
				  and M_FORCE is not set.

	  EDOM		   33	  Argument out of domain. The value of
				  the parameter	is a Not a Number
				  (NaN).

	  EDQUOT	   69	  Disc quota exceeded. The file	system
				  of the requested directory has
				  exceeded the user's quota of disk
				  blocks.

	  EDUPPKG	   90	  Duplicate package name. The loaded
				  module exported a package which
				  duplicated the package name of a
				  module already loaded	in the same
				  process.

	  EEXIST	   17	  File exists. The requested file
				  already exists.

	  EEXCEEDCONF	   146	  Exceeded allocator configuration
				  parameters. The application exceeded
				  the configuration parameters for the
				  partition. See the allocator manual
				  page.

	  EFAULT	   14	  Bad address. The requested address
				  is in	some way invalid.

	  EFBIG		   27	  File too large. The file size
				  exceeds the process' file size
				  limit, or the	requested semaphore
				  number is invalid.

				  For the stat(), lstat(), or fstat()
				  system call, the file	is an extended
				  file (the file size can exceed 2G -
				  1 bytes). Use	the estat(), lestat(),
				  or festat() system call, respec-
				  tively.

	  EFSNOTSUPP	   210	  Operation not	supported by this file
				  system.

	  EHOSTDOWN	   64	  Host is down.
	  EHOSTUNREACH	   65	  Host is unreachable.

	  EIDRM		   81	  Identifier removed. The requested
				  semaphore or message queue ID	has
				  been removed from the	system.

	  EIMODE	   202	  Bad io mode number. Use the I/O mode
				  M_UNIX, M_LOG, M_SYNC, M_RECORD, or
				  M_GLOBAL.

	  EINCOMPAT	   216	  The application and the OS are of
				  incompatible revisions. Your appli-
				  cations code is no longer with the
				  current release of the installed
				  operating system. You	must your
				  application.

	  EINPROGRESS	   36	  Operation now	in progress.

	  EINTR		   4	  Interrupted system call. The opera-
				  tion was interrupted by a signal.

	  EINVAL	   22	  Invalid argument. The	argument or
				  parameter is not valid for the sys-
				  tem call.

	  EIO		   5	  I/O error. An	I/O error occurred
				  while	reading	or writing to the file
				  system.

	  EISCONN	   56	  Socket is already connected. The
				  socket is already connected.

	  EISDIR	   21	  Is a directory. The request is for a
				  write	to a file but the specified
				  file name is a directory, or the
				  function is trying to	rename a file
				  as a directory.

	  ELOCAL	   103	  Handle operation locally.

	  ELOOP		   62	  Too many levels of symbolic links.
				  Too many symbolic links were encoun-
				  tered	in translating a pathname.

	  EMFILE	   24	  Too many open	files. Too many	files
				  descriptors are open,	no space
				  remains in the mount table, or the
				  attempt to attach a shared memory
				  region exceeded the maximum number
				  of attached regions for a process.

	  EMIXIO	   201	  Mixed	file operations. In M_SYNC or
				  M_GLOBAL I/O mode, nodes are
				  attempting different operations
				  (reads and writes) to	a shared file.
				  In these modes, all nodes must per-
				  form the same	operation. In the
				  M_GLOBAL I/O mode, nodes are
				  attempting different sized reads
				  (using the nbytes parameter) from a
				  shared file. See the setiomode()
				  function for a description of	the
				  I/O modes for	file operations.

	  EMLINK	   31	  Too many links. The number of	links
				  would	exceed LINK_MAX.

	  EMSGSIZE	   40	  Message too long. The	message	is too
				  large	to be sent all at once,	as the
				  socket requires.

	  ENAMETOOLONG	   63	  File name too	long. The pathname
				  argument exceeds PATH_MAX (1024
				  characters) or the pathname com-
				  ponent exceeds NAME_MAX (255 charac-
				  ters).

	  ENETDOWN	   50	  Network is down.

	  ENETRESET	   52	  Network dropped connection on	reset.

	  ENETUNREACH	   51	  Network is unreachable. No route to
				  the network or host is present.

	  ENFILE	   23	  File table overflow. Too many	files
				  are currently	open in	the system.

	  ENFPS		   200	  Different file pointers.

	  ENOBUFS	   55	  No buffer space available. Insuffi-
				  cient	resources, such	as buffers,
				  are available	to complete the	call.

	  ENOCFS	   204	  No CFS available. The	concurrent
				  file system (CFS) is not available.

	  ENODATA	   86	  No message on	stream head read q.

	  ENODEV	   19	  No such device. The file descriptor
				  refers to an object that cannot be
				  mapped, the requested	block special
				  device file does not exist, or a
				  file system is unmounted.

	  ENOENT	   2	  No such file or directory. A path-
				  name component of the	parameter does
				  not exist.

	  ENOEXEC	   8	  Exec format error. The parameter
				  specifies a file with	a bad object
				  file format.

	  ENOLCK	   77	  No locks available. The lock table
				  is full because too many regions are
				  already locked.

	  ENOMEM	   12	  Not enough space. Insufficient
				  memory is available for the
				  requested function.

	  ENOMSG	   80	  No message of	desired	type. A	mes-
				  sage of a requested type does	not
				  exist.

	  ENOPKG	   92	  Unresolved package name. One or more
				  unresolved package names were	found.

	  ENOPROTOOPT	   42	  Option not supported by protocol.
				  The option is	unknown.

	  ENOSDIR	   82	  PFS stripe dir not available.

	  ENOSPC	   28	  No space left	on device. There is
				  not enough memory space to extend
				  the file system or device for	file
				  or directory writes.

	  ENOSR		   82	  Out of STREAMS resources.

	  ENOSTR	   87	  fd not associated with a stream.

	  ENOSYM	   93	  Unresolved symbol name. One or more
				  unresolved external symbols were
				  found.

	  ENOSYS	   78	  Function not implemented.

	  ENOTBLK	   15	  Block	device required. The specified
				  device is not	a block	device.

	  ENOTCONN	   57	  Socket is not	connected. The socket
				  is not connected.

	  ENOTDIR	   20	  Not a	directory. A component of the
				  pathname is not a directory.

	  ENOTEMPTY	   66	  Directory not	empty.

	  ENOTPFS	   212	  Non-striped regular file in a	PFS.

	  ENOTSOCK	   38	  Socket operation on non-socket. The
				  parameter refers to a	file not a
				  socket.

	  ENOTTY	   25	  Not a	typewriter. The	specified
				  request does not apply to the	kind
				  of object that the descriptor	refer-
				  ences.

	  ENXIO		   6	  No such device or address. The dev-
				  ice or address does not exist.

	  EOPNOTSUPP	   45	  Operation not	supported on socket.
				  The socket does not support the
				  requested operation, or the socket
				  does not accept the connection.

	  EPACCES	   139	  Partition permission denied. The
				  application has insufficient access
				  permission on	a partition.

	  EPALLOCERR	   130	  Allocator internal error.

	  EPBADNODE	   132	  Bad node specification.

	  EPERM		   1	  Not owner. The calling process does
				  not have permissions for the opera-
				  tion.

	  EPFNOSUPPORT	   46	  Protocol family not supported.

	  EPFSBUSY	   214	  PFS stripe file in use.

	  EPINGRP	   160	  Invalid group.

	  EPINRN	   161	  Invalid partition rename. Use	a sim-
				  ple name for a partition name.

	  EPINUSER	   159	  Invalid user.

	  EPINVALMOD	   136	  Invalid mode.

	  EPINVALPART	   133	  Partition not	found. The specified
				  partition (or	its parent) does not
				  exist.

	  EPINVALPRI	   134	  Invalid priority.

	  EPINVALSCHED	   138	  Invalid Scheduling.

	  EPIPE		   32	  Broken pipe. An attempt was made to
				  write	to a pipe or FIFO that is not
				  open for reading by any process.

	  EPLOCK	   162	  Partition lock denied. You specified
				  a partition that is currently	in use
				  and being updated by someone else.
				  You cannot change the	characteris-
				  tics of a partition that is
				  currently being used.

	  EPNOTEMPTY	   135	  Partition not	empty.

	  EPPARTEXIST	   137	  Partition exists.

	  EPROCLIM	   67	  Too many processes.

	  EPROCUNAVAIL	   76	  Bad procedure	for program.

	  EPROGMISMATCH	   75	  Program version wrong.

	  EPROGUNAVAIL	   74	  RPC program not available.

	  EPROTO	   85	  Error	in protocol.

	  EPROTONOSUPPORT  43	  Protocol not supported. The socket
				  or protocol is not supported.

	  EPROTOTYPE	   41	  Protocol wrong type for socket.

	  EPXRS		   131	  Exceeds partition resources.

	  EQBADFIL	   183	  Invalid object file. Specify a load-
				  able file.

	  EQBLEN	   171	  Buffer length	exceeds	allocation.
				  Make sure the	buffer length does not
				  exceed the buffer size.

	  EQDIM		   195	  Invalid dimension.

	  EQESIZE	   205	  Invalid size.

	  EQHND		   179	  Invalid handler type.	Select one of
				  the handlers listed in the handler
				  description.

	  EQLEN		   172	  Invalid length. Use a	non-negative
				  number or a length that is less than
				  or equal to the maximum message
				  length.

	  EQMEM		   190	  Not enough memory. Simplify the
				  application program.

	  EQMID		   178	  Invalid message id. Use the message
				  ID (MID) returned by the irecv() or
				  isend() functions.

	  EQMODE	   196	  Invalid diagnostic channel mode.

	  EQMSGLONG	   174	  Received message too long for
				  buffer. Make sure the	buffer is
				  large	enough to hold the message.

	  EQMSGSHORT	   198	  Received message too short for
				  buffer.

	  EQNOACT	   182	  No active process. Use the process
				  ID (PID) of a	loaded process.

	  EQNODE	   176	  Invalid node.	Use the	numnodes()
				  function to determine	the partition
				  size and the myhost()	function to
				  determine the	host node number.

	  EQNOMID	   191	  Too many requests. Use the msgwait()
				  function for outstanding requests
				  from the irecv() or isend() func-
				  tions.

	  EQNOPROC	   180	  Out of process slots.	Use fewer
				  processes.

	  EQNOSET	   193	  No ptype defined.

	  EQPARAM	   184	  Invalid parameter.

	  EQPATH	   207	  Path name too	long.

	  EQPBUF	   170	  Invalid buffer pointer. Specify a
				  pointer that contains	the address of
				  a valid data buffer.

	  EQPCCODE	   188	  Invalid ccode	pointer.

	  EQPCNODE	   186	  Invalid cnode	pointer.

	  EQPCPID	   187	  Invalid cpid pointer.	Do not call
				  the setpid() function	again.

	  EQPFIL	   185	  Invalid file name pointer.
	  EQPGRP	   209	  Supplied processes group does	not
				  exist	or is under control of another
				  TAM.

	  EQPID		   175	  Invalid ptype. The PID must not be
				  negative.

	  EQPRIV	   189	  Privileged operation.

	  EQSET		   192	  Ptype	already	set.

	  EQSTATUS	   197	  Invalid diagnostic channel status.

	  EQTAM		   208	  Max number of	applications under
				  debug	was reached.

	  EQTIME	   173	  Time limit exceeded.

	  EQTYPE	   177	  Invalid type.	Use a non-negative
				  number.

	  EQUSEPID	   181	  Ptype	already	in use.	Select another
				  PID.

	  EQUSM		   194	  Invalid diagnostic channel usm id.

	  ERANGE	   34	  Result too large. The	symbol address
				  could	not be converted into an abso-
				  lute value.

	  ERDEOF	   206	  Attempt to read past end of file.

	  EREMOTE	   71	  Item is not local to host.

	  EREMOTEPORT	   102	  Returned port	is remote.

	  ERFORK	   140	  Do an	rfork instead of a fork.

	  EROFS		   30	  Read-only file system. The directory
				  in which the file is to be created
				  is located on	a read-only file sys-
				  tem.

	  ERPCMISMATCH	   73	  RPC version is wrong.

	  ESCHEDCONF	   145	  Scheduling parameters	conflict with
				  allocator configuration
				  parameters.The scheduling parameters
				  conflict with	the allocator confi-
				  guration. See	the allocator manual
				  page.

	  ESETIO	   203	  File is not synchronized. In I/O
				  modes	M_SYNC and M_RECORD, all nodes
				  must read or write synchronously.

	  ESHUTDOWN	   58	  Can't	send after socket shutdown.

	  ESOCKTNOSUPPORT  44	  Socket type not supported.

	  ESPIPE	   29	  Illegal seek.	An invalid seek	opera-
				  tion was requested for a pipe
				  (FIFO), socket, or multiplexed spe-
				  cial file.

	  ESRCH		   3	  No such process. The requested pro-
				  cess or child	process	ID is invalid,
				  no disk quota	is found for the
				  specified user, or the specified
				  thread ID does not refer to an
				  existing thread.

	  ESTALE	   70	  Missing file or file system. The
				  process' root	or current directory
				  is located in	a virtual file system
				  that has been	unmounted.

	  ETIME		   83	  System call timed out.

	  ETIMEDOUT	   60	  Connection timed out.	The establish-
				  ment of the connection timed out
				  before the connection	could be made.

	  ETOOMANYREFS	   59	  Too many references: can't splice.

	  ETXTBSY	   26	  Text file busy. The file is
				  currently opened for writing by
				  another process, or a	write access
				  is requested by a pure procedure
				  (shared text)	file that is being
				  executed.

	  EUSERS	   68	  Too many users. There	are too	many
				  users.

	  EVERSION	   91	  Version mismatch.

	  EWOULDBLOCK	   35	  Operation would block. The file is
				  locked, but blocking is not set. The
				  socket is marked nonblocking,	so the
				  connection cannot be completed.

	  EXDEV		   18	  Cross-device link. The link and the
				  file are on different	file systems.

     LIMITATIONS AND WORKAROUNDS
	  For information about	limitations and	workarounds, see the
	  release notes	files in /usr/share/release_notes.

     SEE ALSO
	  application, nx_perror(), perror(3)














































Acknowledgement and Disclaimer