#ifdef AIX_PROD
/* @(#)53	1.4  src/rpc/sys_idl/rpcexc.h, rpc.idl.src, os2dce21.dss, 960602a.1  1/30/96  15:06:19 */
/*
 * COMPONENT_NAME:  rpc.idl.src
 *
 * FUNCTIONS:
 *
 * ORIGINS: 72
 *
 */
#endif /* AIX_PROD */
/*
 * @OSF_COPYRIGHT@
 * COPYRIGHT NOTICE
 * Copyright (c) 1990, 1991, 1992, 1993 Open Software Foundation, Inc.
 * ALL RIGHTS RESERVED (DCE).  See the file named COPYRIGHT.DCE in the
 * src directory for the full copyright text.
 */
/*
 * HISTORY
 * $Log: rpcexc.h,v $
 * Revision 1.1.539.3  1994/08/23  20:19:15  tom
 *      Add exception: rpc_x_ss_codeset_conv_error (OT 10410)
 *      [1994/08/23  20:17:33  tom]
 *
 * Revision 1.1.539.2  1994/02/18  13:07:12  rico
 * 	Add new exception rpc_x_stub_protocol_error.
 * 	[1994/02/17  12:48:11  rico]
 *
 * Revision 1.1.539.1  1994/01/21  22:40:06  cbrooks
 * 	RPC Code Cleanup - Initial Submission
 * 	[1994/01/21  20:30:53  cbrooks]
 * 
 * Revision 1.1.4.2  1993/07/07  20:12:49  ganni
 * 	reduced stub idl sources
 * 	[1993/07/07  19:40:44  ganni]
 * 
 * $EndLog$
 */
/*
**  Copyright (c) 1990, 1991, 1993 by
**	Hewlett-Packard Company, Palo Alto, Ca. &
**  Digital Equipment Corporation, Maynard, Mass.
**  All Rights Reserved.  Unpublished rights reserved
**  under the copyright laws of the United States.
**
**  RESTRICTED RIGHTS LEGEND   Use, duplication, or
**  disclosure by the U.S. Government is subject to
**  restrictions as set forth in Subparagraph (c)(1)(ii)
**  of DFARS 252.227-7013, or in FAR 52.227-19, as
**  applicable.
**
**
**  NAME:
**
**	rpcexc.h
**
**  FACILITY:
**
**	Remote Procedure Call
**
**  ABSTRACT:
**
**	Include file to make NIDL exceptions visible to user code
**
**  %a%private_begin
**
**  MODIFICATION HISTORY:
**
**  07-Jun-93 A.I.Hinxman  Change exception for type vector mismatch
**  17-May-93 A.I.Hinxman  International character support
**  04-Jan-93 A.I.Hinxman  Add exceptions for IDL encoding services
**  12-Nov-91 harrow	   Remove rpc_x_call_failed, obsolete.
**  23-Oct-91 harrow	   Remove exceptions runtime removed in RPC5c
**  21-aug-91 mishkin	   cma_exception.h => exc_handling.h
**  09-Aug-91 harrow	   Add macro for referencing global exceptions
**  07-Aug-91 harrow	   rpc_x_ss_report_error nolonger exists
**  07-Aug-91 harrow	   Specially mark exceptions as globals
**  24-Jul-91 A.I.Hinxman  Add authentication exceptions
**  13-jun-91 labossiere   fix include syntax for krpc
**  13-Jun-91 A.I.Hinxman  Remove obsolete exceptions/error codes
**  04-Jun-91 A.I.Hinxman  Extended error code/exception list
**  16-May-91 mishkin	   Tweak #includes
**  15-Feb-91 harrow	   Add an exception to report a failing status
**			   and remove unused exception for too many nodes.
**  29-jan-91 nacey	   Make inclusion of cma_exception conditional
**  17-Jan-91 A.I.Hinxman  rpc_s_asyntax_unsupported replaced by rpc_s_unknown_if
**  17-Dec-90 A.I.Hinxman  Include cma_exception.h instead of cma.h
**  05-Dec-90 A.I.Hinxman  Complete exception handling
**  29-nov-90	woodbury    change #include paths for IBM
**  26-Nov-90 A.I.Hinxman  call_cancelled and ASCII/EBCDIC translate file errors
**  14-Nov-90 A.I.Hinxman  Changes to CN error codes
**  05-Nov-90 A.I.Hinxman  Exceptions for DG errors
**  31-Oct-90 A.I.Hinxman  rpc_x_no_more_entries -> rpc_x_no_more_bindings
**  29-Oct-90 A.I.Hinxman  rpc_s_proto_error should have been rpc_s_protocol_error.
**  25-Oct-90 A.I.Hinxman  Exceptions for NS import routine errors
**  17-Oct-90 A.I.Hinxman  alert->cancel, add CN errors
**  10-Jul-90 A.I.Hinxman  [auto_handle], alerts
**  04-May-90 A.I.Hinxman  Original version.
**
**  %a%private_end
**
*/

#ifndef RPCEXC_H
#define RPCEXC_H 	1

#if defined(VMS) || defined(__VMS)
#pragma nostandard
#if defined(__DECC) || defined(__cplusplus)
#pragma extern_model __save
#pragma extern_model __strict_refdef
#endif
#endif


#ifndef _KERNEL
#ifdef DOS_FILENAME_RESTRICTIONS
#  include <dce/exc_hand.h>
#else
#  include <dce/exc_handling.h>
#endif /* MS-DOS */
#else
#  include <dce/ker/exc_handling.h>
#endif /* ! defined(_KERNEL)  */

#if defined(__BORLANDC__) && defined(IBMOS2)   /* MULTI-COMPILER SUPPORT */
#define DCEIMPORTEDSYM __pascal
#else
#define DCEIMPORTEDSYM
#endif

#ifndef HAS_GLOBALDEFS
#ifdef IBMOS2
#define RPC_EXTERN_EXCEPTION extern DCEIMPORTEDSYM EXCEPTION
#else
#define RPC_EXTERN_EXCEPTION extern EXCEPTION
#endif
#else
#define RPC_EXTERN_EXCEPTION globalref EXCEPTION
#endif /* HAS_GLOBALDEFS */

/* DG and common errors */

RPC_EXTERN_EXCEPTION rpc_x_assoc_grp_not_found;
RPC_EXTERN_EXCEPTION rpc_x_call_timeout;
RPC_EXTERN_EXCEPTION rpc_x_cancel_timeout;
RPC_EXTERN_EXCEPTION rpc_x_coding_error;
RPC_EXTERN_EXCEPTION rpc_x_comm_failure;
RPC_EXTERN_EXCEPTION rpc_x_context_id_not_found;
RPC_EXTERN_EXCEPTION rpc_x_endpoint_not_found;
RPC_EXTERN_EXCEPTION rpc_x_in_args_too_big;
RPC_EXTERN_EXCEPTION rpc_x_invalid_binding;
RPC_EXTERN_EXCEPTION rpc_x_invalid_bound;
RPC_EXTERN_EXCEPTION rpc_x_invalid_call_opt;
RPC_EXTERN_EXCEPTION rpc_x_invalid_naf_id;
RPC_EXTERN_EXCEPTION rpc_x_invalid_rpc_protseq;
RPC_EXTERN_EXCEPTION rpc_x_invalid_tag;
RPC_EXTERN_EXCEPTION rpc_x_invalid_timeout;
RPC_EXTERN_EXCEPTION rpc_x_manager_not_entered;
RPC_EXTERN_EXCEPTION rpc_x_max_descs_exceeded;
RPC_EXTERN_EXCEPTION rpc_x_no_fault;
RPC_EXTERN_EXCEPTION rpc_x_no_memory;
RPC_EXTERN_EXCEPTION rpc_x_not_rpc_tower;
RPC_EXTERN_EXCEPTION rpc_x_object_not_found;
RPC_EXTERN_EXCEPTION rpc_x_op_rng_error;
RPC_EXTERN_EXCEPTION rpc_x_protocol_error;
RPC_EXTERN_EXCEPTION rpc_x_protseq_not_supported;
RPC_EXTERN_EXCEPTION rpc_x_rpcd_comm_failure;
RPC_EXTERN_EXCEPTION rpc_x_server_too_busy;
RPC_EXTERN_EXCEPTION rpc_x_unknown_if;
RPC_EXTERN_EXCEPTION rpc_x_unknown_error;
RPC_EXTERN_EXCEPTION rpc_x_unknown_mgr_type;
RPC_EXTERN_EXCEPTION rpc_x_unknown_reject;
RPC_EXTERN_EXCEPTION rpc_x_unknown_remote_fault;
RPC_EXTERN_EXCEPTION rpc_x_unsupported_type;
RPC_EXTERN_EXCEPTION rpc_x_who_are_you_failed;
RPC_EXTERN_EXCEPTION rpc_x_wrong_boot_time;
RPC_EXTERN_EXCEPTION rpc_x_wrong_kind_of_binding;
RPC_EXTERN_EXCEPTION uuid_x_getconf_failure;
RPC_EXTERN_EXCEPTION uuid_x_internal_error;
RPC_EXTERN_EXCEPTION uuid_x_no_address;
RPC_EXTERN_EXCEPTION uuid_x_socket_failure;

/* CN errors */

RPC_EXTERN_EXCEPTION rpc_x_access_control_info_inv;
RPC_EXTERN_EXCEPTION rpc_x_assoc_grp_max_exceeded;
RPC_EXTERN_EXCEPTION rpc_x_assoc_shutdown;
RPC_EXTERN_EXCEPTION rpc_x_cannot_accept;
RPC_EXTERN_EXCEPTION rpc_x_cannot_connect;
RPC_EXTERN_EXCEPTION rpc_x_cant_inq_socket;
RPC_EXTERN_EXCEPTION rpc_x_connect_closed_by_rem;
RPC_EXTERN_EXCEPTION rpc_x_connect_no_resources;
RPC_EXTERN_EXCEPTION rpc_x_connect_rejected;
RPC_EXTERN_EXCEPTION rpc_x_connect_timed_out;
RPC_EXTERN_EXCEPTION rpc_x_connection_aborted;
RPC_EXTERN_EXCEPTION rpc_x_connection_closed;
RPC_EXTERN_EXCEPTION rpc_x_host_unreachable;
RPC_EXTERN_EXCEPTION rpc_x_invalid_endpoint_format;
RPC_EXTERN_EXCEPTION rpc_x_loc_connect_aborted;
RPC_EXTERN_EXCEPTION rpc_x_network_unreachable;
RPC_EXTERN_EXCEPTION rpc_x_no_rem_endpoint;
RPC_EXTERN_EXCEPTION rpc_x_rem_host_crashed;
RPC_EXTERN_EXCEPTION rpc_x_rem_host_down;
RPC_EXTERN_EXCEPTION rpc_x_rem_network_shutdown;
RPC_EXTERN_EXCEPTION rpc_x_rpc_prot_version_mismatch;
RPC_EXTERN_EXCEPTION rpc_x_string_too_long;
RPC_EXTERN_EXCEPTION rpc_x_too_many_rem_connects;
RPC_EXTERN_EXCEPTION rpc_x_tsyntaxes_unsupported;

/* NS import routine errors */

RPC_EXTERN_EXCEPTION rpc_x_binding_vector_full;
RPC_EXTERN_EXCEPTION rpc_x_entry_not_found;
RPC_EXTERN_EXCEPTION rpc_x_group_not_found;
RPC_EXTERN_EXCEPTION rpc_x_incomplete_name;
RPC_EXTERN_EXCEPTION rpc_x_invalid_arg;
RPC_EXTERN_EXCEPTION rpc_x_invalid_import_context;
RPC_EXTERN_EXCEPTION rpc_x_invalid_inquiry_context;
RPC_EXTERN_EXCEPTION rpc_x_invalid_inquiry_type;
RPC_EXTERN_EXCEPTION rpc_x_invalid_lookup_context;
RPC_EXTERN_EXCEPTION rpc_x_invalid_name_syntax;
RPC_EXTERN_EXCEPTION rpc_x_invalid_object;
RPC_EXTERN_EXCEPTION rpc_x_invalid_vers_option;
RPC_EXTERN_EXCEPTION rpc_x_name_service_unavailable;
RPC_EXTERN_EXCEPTION rpc_x_no_env_setup;
RPC_EXTERN_EXCEPTION rpc_x_no_more_bindings;
RPC_EXTERN_EXCEPTION rpc_x_no_more_elements;
RPC_EXTERN_EXCEPTION rpc_x_not_found;
RPC_EXTERN_EXCEPTION rpc_x_not_rpc_entry;
RPC_EXTERN_EXCEPTION rpc_x_obj_uuid_not_found;
RPC_EXTERN_EXCEPTION rpc_x_profile_not_found;
RPC_EXTERN_EXCEPTION rpc_x_unsupported_name_syntax;

/* Authentication errors */

RPC_EXTERN_EXCEPTION rpc_x_auth_bad_integrity;
RPC_EXTERN_EXCEPTION rpc_x_auth_badaddr;
RPC_EXTERN_EXCEPTION rpc_x_auth_baddirection;
RPC_EXTERN_EXCEPTION rpc_x_auth_badkeyver;
RPC_EXTERN_EXCEPTION rpc_x_auth_badmatch;
RPC_EXTERN_EXCEPTION rpc_x_auth_badorder;
RPC_EXTERN_EXCEPTION rpc_x_auth_badseq;
RPC_EXTERN_EXCEPTION rpc_x_auth_badversion;
RPC_EXTERN_EXCEPTION rpc_x_auth_field_toolong;
RPC_EXTERN_EXCEPTION rpc_x_auth_inapp_cksum;
RPC_EXTERN_EXCEPTION rpc_x_auth_method;
RPC_EXTERN_EXCEPTION rpc_x_auth_msg_type;
RPC_EXTERN_EXCEPTION rpc_x_auth_modified;
RPC_EXTERN_EXCEPTION rpc_x_auth_mut_fail;
RPC_EXTERN_EXCEPTION rpc_x_auth_nokey;
RPC_EXTERN_EXCEPTION rpc_x_auth_not_us;
RPC_EXTERN_EXCEPTION rpc_x_auth_repeat;
RPC_EXTERN_EXCEPTION rpc_x_auth_skew;
RPC_EXTERN_EXCEPTION rpc_x_auth_tkt_expired;
RPC_EXTERN_EXCEPTION rpc_x_auth_tkt_nyv;
RPC_EXTERN_EXCEPTION rpc_x_call_id_not_found;
RPC_EXTERN_EXCEPTION rpc_x_credentials_too_large;
RPC_EXTERN_EXCEPTION rpc_x_invalid_checksum;
RPC_EXTERN_EXCEPTION rpc_x_invalid_crc;
RPC_EXTERN_EXCEPTION rpc_x_invalid_credentials;
RPC_EXTERN_EXCEPTION rpc_x_key_id_not_found;

/* Stub support errors */

RPC_EXTERN_EXCEPTION rpc_x_ss_char_trans_open_fail;
RPC_EXTERN_EXCEPTION rpc_x_ss_char_trans_short_file;
RPC_EXTERN_EXCEPTION rpc_x_ss_context_damaged;
RPC_EXTERN_EXCEPTION rpc_x_ss_context_mismatch;
RPC_EXTERN_EXCEPTION rpc_x_ss_in_null_context;
RPC_EXTERN_EXCEPTION rpc_x_ss_pipe_closed;
RPC_EXTERN_EXCEPTION rpc_x_ss_pipe_comm_error;
RPC_EXTERN_EXCEPTION rpc_x_ss_pipe_discipline_error;
RPC_EXTERN_EXCEPTION rpc_x_ss_pipe_empty;
RPC_EXTERN_EXCEPTION rpc_x_ss_pipe_memory;
RPC_EXTERN_EXCEPTION rpc_x_ss_pipe_order;
RPC_EXTERN_EXCEPTION rpc_x_ss_remote_comm_failure;
RPC_EXTERN_EXCEPTION rpc_x_ss_remote_no_memory;
RPC_EXTERN_EXCEPTION rpc_x_ss_bad_buffer;
RPC_EXTERN_EXCEPTION rpc_x_ss_bad_es_action;
RPC_EXTERN_EXCEPTION rpc_x_ss_wrong_es_version;
RPC_EXTERN_EXCEPTION rpc_x_ss_incompatible_codesets;
RPC_EXTERN_EXCEPTION rpc_x_stub_protocol_error;
RPC_EXTERN_EXCEPTION rpc_x_unknown_stub_rtl_if_vers;
RPC_EXTERN_EXCEPTION rpc_x_ss_codeset_conv_error;

#if defined(VMS) || defined(__VMS)
#if defined(__DECC) || defined(__cplusplus)
#pragma extern_model __restore
#endif /* DEC C or C++ */

#pragma standard

#endif /* VMS */

#endif /* _RPCEXC_H */
