|
|
1.1 root 1: /* dserr_enc.c - ds error encoder */
2:
3: #ifndef lint
4: static char *rcsid = "$Header: /f/osi/dsap/x500as/RCS/dserr_enc.c,v 7.0 89/11/23 21:50:35 mrose Rel $";
5: #endif
6:
7: /*
8: * $Header: /f/osi/dsap/x500as/RCS/dserr_enc.c,v 7.0 89/11/23 21:50:35 mrose Rel $
9: *
10: *
11: * $Log: dserr_enc.c,v $
12: * Revision 7.0 89/11/23 21:50:35 mrose
13: * Release 6.0
14: *
15: */
16:
17: /*
18: * NOTICE
19: *
20: * Acquisition, use, and distribution of this module and related
21: * materials are subject to the restrictions of a license agreement.
22: * Consult the Preface in the User's Manual for the full terms of
23: * this agreement.
24: *
25: */
26:
27:
28: /* LINTLIBRARY */
29:
30: #include "psap.h"
31: #include "quipu/util.h"
32: #include "quipu/common.h"
33:
34: extern LLog * log_dsap;
35:
36: int encode_OPError(pep, typep, err)
37: PE *pep;
38: int *typep;
39: struct DSError *err;
40: {
41: int success;
42:
43: switch(*typep = err->dse_type)
44: {
45: case DSE_NOERROR :
46: LLOG(log_dsap, LLOG_EXCEPTIONS, ("encode_error called with no error"));
47: (*pep) = NULLPE;
48: success = NOTOK;
49: break;
50: case DSE_ABANDON_FAILED :
51: success = encode_DAS_AbandonFailedParm(pep,0,0,NULLCP,&(err->dse_un.dse_un_abandon_fail));
52: break;
53: case DSE_ATTRIBUTEERROR :
54: success = encode_DAS_AttributeErrorParm(pep,0,0,NULLCP,&(err->dse_un.dse_un_attribute));
55: break;
56: case DSE_NAMEERROR :
57: success = encode_DAS_NameErrorParm(pep,0,0,NULLCP,&(err->dse_un.dse_un_name));
58: break;
59: case DSE_REFERRAL :
60: success = encode_DAS_ReferralParm(pep,0,0,NULLCP,&(err->dse_un.dse_un_referral));
61: break;
62: case DSE_SECURITYERROR :
63: success = encode_DAS_SecurityErrorParm(pep,0,0,NULLCP,&(err->dse_un.dse_un_security));
64: break;
65: case DSE_SERVICEERROR :
66: success = encode_DAS_ServiceErrorParm(pep,0,0,NULLCP,&(err->dse_un.dse_un_service));
67: break;
68: case DSE_UPDATEERROR :
69: success = encode_DAS_UpdateErrorParm(pep,0,0,NULLCP,&(err->dse_un.dse_un_update));
70: break;
71: case DSE_ABANDONED :
72: (*pep) = NULLPE;
73: success = OK;
74: break;
75: case DSE_DSAREFERRAL :
76: success = encode_DO_DSAReferralParm(pep,0,0,NULLCP,&(err->dse_un.dse_un_referral));
77: break;
78: default :
79: (*pep) = NULLPE;
80: success = NOTOK;
81: LLOG(log_dsap, LLOG_EXCEPTIONS, ("encode_OPError unknown error %d", err->dse_type));
82: break;
83: }
84:
85: return(success);
86: }
87:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.