|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T d
Length: 5029 (0x13a5) Types: TextFile Names: »ds_error.h«
└─⟦3d0c2be1b⟧ Bits:30001254 ISODE-5.0 Tape └─⟦eba4602b1⟧ »./isode-5.0.tar.Z« └─⟦d3ac74d73⟧ └─⟦this⟧ »isode-5.0/h/quipu/ds_error.h«
/* ds_error.h - directory service errors */ /* * $Header: /f/osi/h/quipu/RCS/ds_error.h,v 6.0 89/03/18 23:32:50 mrose Rel $ * * * $Log: ds_error.h,v $ * Revision 6.0 89/03/18 23:32:50 mrose * Release 5.0 * */ /* * NOTICE * * Acquisition, use, and distribution of this module and related * materials are subject to the restrictions of a license agreement. * Consult the Preface in the User's Manual for the full terms of * this agreement. * */ #ifndef DSERRORH #define DSERRORH #include "quipu/dsp.h" struct DSE_abandon_fail { int DSE_ab_problem; #define DSE_AB_NOSUCHOPERATION 1 #define DSE_AB_TOOLATE 2 #define DSE_AB_CANNOTABANDON 3 int DSE_ab_invokeid; }; struct DSE_at_problem { int DSE_at_what; #define DSE_AT_NOSUCHATTRIBUTE 1 #define DSE_AT_INVALIDATTRIBUTESYNTAX 2 #define DSE_AT_UNDEFINEDATTRIBUTETYPE 3 #define DSE_AT_INAPPROPRIATEMATCHING 4 #define DSE_AT_CONSTRAINTVIOLATION 5 #define DSE_AT_TYPEORVALUEEXISTS 6 AttributeType DSE_at_type; AttributeValue DSE_at_value; struct DSE_at_problem *dse_at_next; }; #define DSE_AT_NOPROBLEM ((struct DSE_at_problem*)0) struct DSE_attribute { DN DSE_at_name; struct DSE_at_problem DSE_at_plist; } ; struct DSE_name { int DSE_na_problem; #define DSE_NA_NOSUCHOBJECT 1 #define DSE_NA_ALIASPROBLEM 2 #define DSE_NA_INVALIDATTRIBUTESYNTAX 3 #define DSE_NA_ALIASDEREFERENCE 4 DN DSE_na_matched; }; struct DSE_referral { ContinuationRef DSE_ref_candidates; DN DSE_ref_prefix; /* Context prefix only in DSP */ }; struct DSE_security { int DSE_sc_problem; #define DSE_SC_AUTHENTICATION 1 #define DSE_SC_INVALIDCREDENTIALS 2 #define DSE_SC_ACCESSRIGHTS 3 #define DSE_SC_INVALIDSIGNATURE 4 #define DSE_SC_PROTECTIONREQUIRED 5 #define DSE_SC_NOINFORMATION 6 }; struct DSE_service { int DSE_sv_problem; #define DSE_SV_BUSY 1 #define DSE_SV_UNAVAILABLE 2 #define DSE_SV_UNWILLINGTOPERFORM 3 #define DSE_SV_CHAININGREQUIRED 4 #define DSE_SV_UNABLETOPROCEED 5 #define DSE_SV_INVALIDREFERENCE 6 /* DSP ONLY */ #define DSE_SV_TIMELIMITEXCEEDED 7 #define DSE_SV_ADMINLIMITEXCEEDED 8 #define DSE_SV_LOOPDETECT 9 #define DSE_SV_UNAVAILABLECRITICALEXTENSION 10 #define DSE_SV_OUTOFSCOPE 11 #define DSE_SV_DITERROR 12 }; struct DSE_update { int DSE_up_problem; #define DSE_UP_NAMINGVIOLATION 1 #define DSE_UP_OBJECTCLASSVIOLATION 2 #define DSE_UP_NOTONNONLEAF 3 #define DSE_UP_NOTONRDN 4 #define DSE_UP_ALREADYEXISTS 5 #define DSE_UP_AFFECTSMULTIPLEDSAS 6 #define DSE_UP_NOOBJECTCLASSMODS 7 }; struct DSError { int dse_type; #define DSE_LOCALERROR -2 #define DSE_REMOTEERROR -1 #define DSE_NOERROR 0 #define DSE_ATTRIBUTEERROR 1 #define DSE_NAMEERROR 2 #define DSE_SERVICEERROR 3 #define DSE_REFERRAL 4 #define DSE_ABANDONED 5 /* Abandoned does not have any parameter and */ /* so there is no struct for this value */ #define DSE_SECURITYERROR 6 #define DSE_ABANDON_FAILED 7 #define DSE_UPDATEERROR 8 #define DSE_DSAREFERRAL 9 #define ds_recog_err(a) ((a >= DSE_ATTRIBUTEERROR) && (a <= DSE_DSAREFERRAL)) union { struct DSE_attribute dse_un_attribute; struct DSE_name dse_un_name; struct DSE_service dse_un_service; struct DSE_referral dse_un_referral; struct DSE_security dse_un_security; struct DSE_abandon_fail dse_un_abandon_fail; struct DSE_update dse_un_update; } dse_un; }; /* THIS SECTION DEFINES THE PROCEDURE CALLS */ /* All of the DUA calls are SYNCHRONOUS, with no access to referrals */ /* A DUA can access lower level hooks if if needs to be more clever */ /* Each call has a single structure fore each direction, as defined */ /* All routines return integer values with the following possible values */ #define DS_OK 0 /* Success */ #define DS_ERROR_LOCAL -1 /* Error within the DUA module */ #define DS_ERROR_CONNECT -2 /* Failed to connect to a remote DSA */ #define DS_ERROR_PROVIDER -3 /* Other OSI provider error */ #define DS_ERROR_REMOTE -4 /* Remote error. Further details will */ /* be in the error parameter */ #define DS_CONTINUE -5 /* operation not finished... continuing */ #define ERR_ABANDON_FAIL dse_un.dse_un_abandon_fail #define ERR_ATTRIBUTE dse_un.dse_un_attribute #define ERR_NAME dse_un.dse_un_name #define ERR_REFERRAL dse_un.dse_un_referral #define ERR_SECURITY dse_un.dse_un_security #define ERR_SERVICE dse_un.dse_un_service #define ERR_UPDATE dse_un.dse_un_update #define ERR_ALIAS dse_un.dse_un_alias #endif