home *** CD-ROM | disk | FTP | other *** search
- /* File: /u1/Eden/Kernel/MsgOps/mmCodes.m Date: 16-Jan-1983 */
-
- /*
- * $Header$
- * INTERFACE: None.
- *
- * FUNCTION: Define the standard error and status codes associated
- * with message module operations. Some of these codes
- * report, in the standard Eden format, the errors returned
- * by the underlying IPC mechanism.
- *
- * IMPORTS: Kernel/h/errMsgs.h.
- *
- * EXPORTS: A set of #defined constants representing the error and
- * status codes returned by the message module routines.
- *
- * DESIGN:
- *
- * $Log$
- * 24-Nov-1982: Initial implementation. S. Cady, J. Sanislo.
- */
- #ifndef mmCodes
- #define mmCodes
-
- #ifndef errMsgs
- #include "Kernel/h/errMsgs.h"
- #endif
-
- #define FAC_MsgModule ((unsigned)0x0000000B)
- #define VER_MsgModule ((unsigned)0x00000004)
- #define ABV_MsgModule "MMS"
- #define KMSG_MsgModule ((unsigned)0x000B0004)
- /*
- * Module specific success code.
- */
- #define MMSS_Success ((unsigned)0x000B0001)
- /* "Normal, successful completion." */
- #define MMSS_ServPortTaken ((unsigned)0x000B0009)
- /* "Successful completion, but service port already in use." */
- /*
- * Module specific failures.
- */
- #define MMSF_BadDelta ((unsigned)0x000B0002)
- /* "Delta timer value <= 0." */
- #define MMSF_BadID ((unsigned)0x000B000A)
- /* "Invalid timer request id." */
- #define MMSF_BadNode ((unsigned)0x000B0012)
- /* "Invalid LNN value: %d." */
- #define MMSF_BadRange ((unsigned)0x000B001A)
- /* "Range exceeds msg size: %d-%d." */
- #define MMSF_BadSubtype ((unsigned)0x000B0022)
- /* "Invalid message subtype: %8.8x." */
- #define MMSF_BadType ((unsigned)0x000B002A)
- /* "Invalid message type: %8.8x." */
- #define MMSF_Dupl ((unsigned)0x000B0032)
- /* "Duplicate keyed queue entry: %8.8x." */
- #define MMSF_MsgOvfl ((unsigned)0x000B003A)
- /* "Max msg size exceeded: %d." */
- #define MMSF_BufOvfl ((unsigned)0x000B0042)
- /* "Msg exceeds buffer size." */
- #define MMSF_NoEntry ((unsigned)0x000B004A)
- /* "No entry found." */
- #define MMSF_NoHOTSEntry ((unsigned)0x000B0052)
- /* "No HOTS entry found." */
- #define MMSF_NodeDown ((unsigned)0x000B005A)
- /* "LNN %d unavailable." */
- #define MMSF_NotImpl ((unsigned)0x000B0062)
- /* "Service not implemented." */
- #define MMSF_QOvfl ((unsigned)0x000B006A)
- /* "Queue is full." */
- #define MMSF_BadConfig ((unsigned)0x000B0072)
- /* "Invalid module config." */
- #define MMSF_TimeOut ((unsigned)0x000B007A)
- /* "Message reception timeout." */
- #define MMSF_NotAvail ((unsigned)0x000B0082)
- /* "Service not available." */
- #define MMSF_NoPhysHost ((unsigned)0x000B008A)
- /* "No Such Physical Host." */
- #define MMSF_NoService ((unsigned)0x000B0092)
- /* "Service not found in Unix database." */
- #define MMSF_EndOfHostList ((unsigned)0x000B009A)
- /* "Host list in Unix database exhausted." */
-
- /*
- * Related to managing ports (as opposed to messages).
- */
- #define MMSF_BadName ((unsigned)0x000B00A2)
- /* "Port name too long: %s." */
- #define MMSF_DuplName ((unsigned)0x000B00AA)
- /* "Duplicate port name: %s." */
- #define MMSF_InUse ((unsigned)0x000B00B2)
- /* "Port still in use: %s." */
- #define MMSF_NoSuchPort ((unsigned)0x000B00BA)
- /* "Unknown port: %s." */
- #define MMSF_CantUnName ((unsigned)0x000B00C2)
- /* "Can't remove portname: %s." */
- /*
- * Related to IPC facilities. Note that IPC functions return a -1
- * for failure and leave a further code in the global variable `errno'.
- * Therefore, the codes returned by MMS as given below must be
- * constructed from the value of errno by the following algorithm.
- * The values in errno (which is a byte) are returned as negative
- * numbers starting at -128 and increasing. Thus the values below
- * are in REVERSE order from those defined in <cmuipc.h>
- */
-
- #define mIPC(ferrno) ( (ferrno) < -114 && (ferrno) > -129 )
-
- #define mIPCError(ferrno) \
- ((FAC_MsgModule << 16) + (-(ferrno) * 8 ) + FAILURE)
-
- #define MMSF_IPCSpace ((unsigned)0x000B039A)
- /* "Out of IPC space." */
- #define MMSF_IPCMsg ((unsigned)0x000B03A2)
- /* "Bad IPC message: %8.8x." */
- #define MMSF_IPCChild ((unsigned)0x000B03AA)
- /* "Port not a child: %8.8x." */
- #define MMSF_IPCRights ((unsigned)0x000B03B2)
- /* "Insufficient rights." */
- #define MMSF_IPCTooBig ((unsigned)0x000B03BA)
- /* "Msg exceeds max IPC size: %d." */
- #define MMSF_IPCName ((unsigned)0x000B03C2)
- /* "Bad IPC name: %s." */
- #define MMSF_IPCType ((unsigned)0x000B03CA)
- /* "Bad IPC message type: %8.8x." */
- #define MMSF_IPCCall ((unsigned)0x000B03D2)
- /* "Invalid IPC call: %d." */
- #define MMSF_IPCOvfl ((unsigned)0x000B03DA)
- /* "Maximum ports exceeded." */
- #define MMSF_IPCNoRoom ((unsigned)0x000B03E2)
- /* "Not enough room for IPC message." */
- #define MMSF_IPCUnkType ((unsigned)0x000B03EA)
- /* "Unknown IPC message type: %8.8x." */
- #define MMSF_IPCFull ((unsigned)0x000B03F2)
- /* "Port full." */
- #define MMSF_IPCReceiver ((unsigned)0x000B03FA)
- /* "No receive rights on port." */
- #define MMSF_IPCPort ((unsigned)0x000B0402)
- /* "Invalid port." */
-
- /* Upcall handler error codes */
-
- #define MMSF_BadEventID ((unsigned)0x000B040A)
- /* "Invalid Upcall event ID" */
- #define MMSF_DefaultHOTSNotInitialized ((unsigned)0x000B0412)
- /* "Default HOTS Entry not initialized" */
-
- /* Miscellaneous additional error codes. Added here in order to
- * minimize impact on other codes.
- */
-
- #define MMSF_NoIPCMsg ((unsigned)0x000B041A)
- /* "Missing IPC message." */
- #define MMSF_BadMsgId ((unsigned)0x000B0422)
- /* "Invalid IPC message id." */
- #define MMSF_UnNormal ((unsigned)0x000B042A)
- /* "Normal message on DATAPORT." */
- #define MMSF_UnEmergency ((unsigned)0x000B0432)
- /* "Emergency message on normal port." */
- #define MMSF_BadVersion ((unsigned)0x000B043A)
- /* "Incompatible MM version." */
- #define MMSF_SendTimeOut ((unsigned)0x000B0442)
- /* "Message transmission timeout." */
-
- /*
- * Server error codes, since they indicate we are bumping up against
- * the underlying Unix system.
- */
- #define MMSK_NoMem ((unsigned)0x000B0004)
- /* "No memory available." */
-
- /*
- * Message Module message subtypes
- *
- */
- #define MMSM_AllocStatus ((unsigned)0x000B0005)
- /* "Allocate buffer status message." */
- #define MMSM_NegativeAck ((unsigned)0x000B000D)
- /* "Negative acknowledgement message." */
- #define MMSM_CompStatus ((unsigned)0x000B0015)
- /* "Completion status message." */
-
-
- #endif
-
-