|
|
1.1 ! root 1: -- das-enc.py - manually augmented DirectoryAbstractService module ! 2: ! 3: -- $Header: /f/osi/dsap/x500as/RCS/das-enc.py,v 7.0 89/11/23 21:50:14 mrose Rel $ ! 4: -- ! 5: -- ! 6: -- $Log: das-enc.py,v $ ! 7: -- Revision 7.0 89/11/23 21:50:14 mrose ! 8: -- Release 6.0 ! 9: -- ! 10: ! 11: -- ! 12: -- NOTICE ! 13: -- ! 14: -- Acquisition, use, and distribution of this module and related ! 15: -- materials are subject to the restrictions of a license agreement. ! 16: -- Consult the Preface in the User's Manual for the full terms of ! 17: -- this agreement. ! 18: -- ! 19: -- ! 20: ! 21: ! 22: DAS ! 23: { ! 24: joint-iso-ccitt ! 25: ds(5) ! 26: modules(1) ! 27: directoryAbstractService(2) ! 28: } ! 29: ! 30: DEFINITIONS ::= ! 31: ! 32: %{ ! 33: #include "quipu/util.h" ! 34: #include "quipu/entry.h" ! 35: #include "quipu/common.h" ! 36: ! 37: extern LLog * log_dsap; ! 38: ! 39: #define encode_UNIV_UTCTime build_UNIV_UTCTime ! 40: %} ! 41: ! 42: PREFIXES encode decode print ! 43: ! 44: BEGIN ! 45: ! 46: -- EXPORTS ! 47: -- DirectoryBindArgument , ! 48: -- ReadArgument , ! 49: -- ReadResult , ! 50: -- AbandonArgument , ! 51: -- AbandonResult , ! 52: -- CompareArgument , ! 53: -- CompareResult , ! 54: -- ListArgument , ! 55: -- ListResult , ! 56: -- SearchArgument , ! 57: -- SearchResult , ! 58: -- AddEntryArgument , ! 59: -- AddEntryResult , ! 60: -- RemoveEntryArgument , ! 61: -- RemoveEntryResult , ! 62: -- ModifyEntryArgument , ! 63: -- ModifyEntryResult , ! 64: -- ModifyRDNArgument , ! 65: -- ModifyRDNResult , ! 66: -- AbandonFailedParm , ! 67: -- AttributeErrorParm , ! 68: -- NameErrorParm , ! 69: -- ReferralParm , ! 70: -- SecurityErrorParm , ! 71: -- ServiceErrorParm , ! 72: -- UpdateErrorParm; ! 73: ! 74: IMPORTS ! 75: Attribute , ! 76: AttributeType , ! 77: AttributeValue , ! 78: AttributeValueAssertion , ! 79: DistinguishedName , ! 80: Name , ! 81: RelativeDistinguishedName ! 82: FROM IF ! 83: { ! 84: joint-iso-ccitt ! 85: ds(5) ! 86: modules(1) ! 87: informationFramework(1) ! 88: } ! 89: ! 90: OperationProgress , ! 91: ContinuationReference , ! 92: InvokeID ! 93: FROM DO ! 94: { ! 95: joint-iso-ccitt ! 96: ds(5) ! 97: modules(1) ! 98: distributedOperations(3) ! 99: } ! 100: ! 101: Certificate , ! 102: CertificationPath , ! 103: AlgorithmIdentifier ! 104: FROM AF ! 105: { ! 106: joint-iso-ccitt ! 107: ds(5) ! 108: modules(1) ! 109: authenticationFramework(7) ! 110: }; ! 111: ! 112: ENCODER encode ! 113: ! 114: SimpleCredentials [[P struct ds_bind_arg *]] ! 115: %{ ! 116: %} ! 117: ::= ! 118: %{ ! 119: DLOG(log_dsap, LLOG_TRACE, ("About to encode SimpleCredentials (DAS)")); ! 120: %} ! 121: SEQUENCE ! 122: { ! 123: name ! 124: [0] DistinguishedName [[p parm->dba_dn]] ! 125: %{ ! 126: %} , ! 127: validity ! 128: [1] SET ! 129: %{ ! 130: %} ! 131: { ! 132: time1 ! 133: [0] UTCTime [[s parm -> dba_time1]] ! 134: %{ ! 135: %} OPTIONAL <<parm -> dba_time1>> , ! 136: time2 ! 137: [1] UTCTime [[s parm -> dba_time2]] ! 138: %{ ! 139: %} OPTIONAL <<parm -> dba_time2>> , ! 140: random1 ! 141: [2] BIT STRING [[x parm->dba_r1.value $ parm->dba_r1.n_bits]] ! 142: %{ ! 143: %} OPTIONAL <<parm->dba_r1.value != NULLCP>> , ! 144: random2 ! 145: [3] BIT STRING [[x parm->dba_r2.value $ parm->dba_r2.n_bits]] ! 146: %{ ! 147: %} OPTIONAL <<parm->dba_r2.value != NULLCP>> ! 148: } ! 149: %{ ! 150: %} OPTIONAL <<parm -> dba_auth_type > DBA_AUTH_SIMPLE>> , ! 151: password ! 152: [2] OCTET STRING [[o parm->dba_passwd $ parm->dba_passwd_len]] ! 153: %{ ! 154: %} ! 155: OPTIONAL <<parm->dba_auth_type != DBA_AUTH_NONE>> ! 156: } ! 157: %{ ! 158: DLOG(log_dsap, LLOG_TRACE, ("Done encode SimpleCredentials (DAS)")); ! 159: %} ! 160: ! 161: TokenToSign [[P struct ds_bind_arg *]] ! 162: %{ ! 163: %} ! 164: ::= ! 165: %{ ! 166: DLOG(log_dsap, LLOG_TRACE, ("About to encode TokenToSign (DAS)")); ! 167: %} ! 168: SEQUENCE ! 169: { ! 170: algorithm ! 171: [0] AlgorithmIdentifier [[p &(parm->dba_sig->alg)]], ! 172: name ! 173: [1] DistinguishedName [[p parm->dba_dn]] , ! 174: time ! 175: [2] UTCTime [[s parm->dba_time1]], ! 176: random ! 177: [3] BIT STRING [[x parm->dba_r1.value $ parm->dba_r1.n_bits]] ! 178: } ! 179: %{ ! 180: DLOG(log_dsap, LLOG_TRACE, ("Done encode TokenToSign (DAS)")); ! 181: %} ! 182: ! 183: Token [[P struct ds_bind_arg *]] ! 184: ::= ! 185: %{ ! 186: DLOG(log_dsap, LLOG_TRACE, ("About to encode Token (DAS)")); ! 187: %} ! 188: SEQUENCE ! 189: { ! 190: TokenToSign [[p parm]], ! 191: AlgorithmIdentifier [[p &(parm->dba_sig->alg)]], ! 192: BIT STRING [[x parm->dba_sig->encrypted $ parm->dba_sig->n_bits]] ! 193: } ! 194: %{ ! 195: DLOG(log_dsap, LLOG_TRACE, ("Done encode Token (DAS)")); ! 196: %} ! 197: ! 198: StrongCredentials [[P struct ds_bind_arg *]] ! 199: ::= ! 200: %{ ! 201: DLOG(log_dsap, LLOG_TRACE, ("About to encode StrongCredentials (DAS)")); ! 202: %} ! 203: SET ! 204: { ! 205: certificationPath ! 206: [0] CertificationPath [[p parm->dba_cpath]] ! 207: OPTIONAL <<parm->dba_cpath>>, ! 208: bindToken ! 209: [1] Token [[p parm]] ! 210: } ! 211: %{ ! 212: DLOG(log_dsap, LLOG_TRACE, ("Done encode StrongCredentials (DAS)")); ! 213: %} ! 214: ! 215: Credentials [[P struct ds_bind_arg *]] ! 216: %{ ! 217: %} ! 218: ::= ! 219: %{ ! 220: DLOG(log_dsap, LLOG_TRACE, ("About to encode Credentials (DAS)")); ! 221: %} ! 222: CHOICE ! 223: <<(parm->dba_auth_type == DBA_AUTH_STRONG)?2:1>> ! 224: { ! 225: simple ! 226: [0] SimpleCredentials [[p parm]] ! 227: %{ ! 228: %} , ! 229: strong ! 230: [1] StrongCredentials [[p parm]] ! 231: %{ ! 232: %} , ! 233: externalProcedure ! 234: [2] EXTERNAL ! 235: } ! 236: %{ ! 237: DLOG(log_dsap, LLOG_TRACE, ("Done encode Credentials (DAS)")); ! 238: %} ! 239: ! 240: Versions [[P int]] ! 241: %{ ! 242: int ver_len = 1; ! 243: char *ver_bits = int2strb(parm,ver_len); ! 244: %} ! 245: ::= ! 246: %{ ! 247: DLOG(log_dsap, LLOG_TRACE, ("About to encode Versions (DAS)")); ! 248: %} ! 249: BIT STRING [[x ver_bits $ ver_len]] ! 250: { ! 251: v1988(0) ! 252: } ! 253: %{ ! 254: DLOG(log_dsap, LLOG_TRACE, ("Done encode Versions (DAS)")); ! 255: %} ! 256: ! 257: SecurityProblem [[P int]] ! 258: %{ ! 259: %} ! 260: ::= ! 261: %{ ! 262: DLOG(log_dsap, LLOG_TRACE, ("About to encode SecurityProblem (DAS)")); ! 263: %} ! 264: INTEGER [[i parm]] ! 265: { ! 266: inappropriateAuthentication(1) , ! 267: invalidCredentials(2) , ! 268: insufficientAccessRights(3) , ! 269: invalidSignature(4) , ! 270: protectionRequired(5) , ! 271: noInformation(6) ! 272: } ! 273: %{ ! 274: DLOG(log_dsap, LLOG_TRACE, ("Done encode SecurityProblem (DAS)")); ! 275: %} ! 276: ! 277: ServiceProblem [[P int]] ! 278: %{ ! 279: %} ! 280: ::= ! 281: %{ ! 282: DLOG(log_dsap, LLOG_TRACE, ("About to encode ServiceProblem (DAS)")); ! 283: %} ! 284: INTEGER [[i parm]] ! 285: { ! 286: busy(1) , ! 287: unavailable(2) , ! 288: unwillingToPerform(3) , ! 289: chainingRequired(4) , ! 290: unableToProceed(5) , ! 291: invalidReference(6) , ! 292: timeLimitExceeded(7) , ! 293: administrativeLimitExceeded(8) , ! 294: loopDetected(9) , ! 295: unavailableCriticalExtension(10) , ! 296: outOfScope(11) , ! 297: ditError(12) ! 298: } ! 299: %{ ! 300: DLOG(log_dsap, LLOG_TRACE, ("Done encode ServiceProblem (DAS)")); ! 301: %} ! 302: ! 303: EntryInformationSelection [[P struct entryinfoselection *]] ! 304: %{ ! 305: Attr_Sequence attr_temp; ! 306: %} ! 307: ::= ! 308: %{ ! 309: DLOG(log_dsap, LLOG_TRACE, ("About to encode EntryInformationSelection (DAS)")); ! 310: %} ! 311: SET ! 312: { ! 313: attributeTypes ! 314: CHOICE ! 315: <<(parm->eis_allattributes ? 1 : 2)>> ! 316: { ! 317: allAttributes ! 318: [0] NULL , ! 319: select ! 320: [1] SET OF ! 321: %{ ! 322: %} ! 323: <<attr_temp=parm->eis_select;attr_temp!=NULLATTR;attr_temp=attr_temp->attr_link>> ! 324: AttributeType [[p attr_temp->attr_type]] ! 325: %{ ! 326: %} ! 327: %{ ! 328: %} ! 329: } ! 330: %{ ! 331: %} ! 332: -- DEFAULT allAttributes NULL <<parm->eis_allattributes != TRUE>> , ! 333: OPTIONAL <<parm->eis_allattributes != TRUE>> , ! 334: infoTypes ! 335: [2] INTEGER [[i parm->eis_infotypes]] ! 336: { ! 337: attributeTypesOnly(0) , ! 338: attributeTypesAndValues(1) ! 339: } ! 340: %{ ! 341: %} ! 342: -- DEFAULT attributeTypesAndValues <<parm->eis_infotypes != EIS_ATTRIBUTESANDVALUES>> ! 343: OPTIONAL <<parm->eis_infotypes != EIS_ATTRIBUTESANDVALUES>> ! 344: } ! 345: %{ ! 346: DLOG(log_dsap, LLOG_TRACE, ("Done encode EntryInformationSelection (DAS)")); ! 347: %} ! 348: ! 349: ServiceControls [[P struct svccontrol *]] ! 350: %{ ! 351: int opt_len = 5; ! 352: char *opt_bits; ! 353: %} ! 354: ::= ! 355: %{ ! 356: DLOG(log_dsap, LLOG_TRACE, ("About to encode ServiceControls (DAS)")); ! 357: opt_bits = int2strb(parm->svc_options,opt_len); ! 358: %} ! 359: SET ! 360: { ! 361: options ! 362: [0] BIT STRING [[x opt_bits $ opt_len]] ! 363: { ! 364: preferChaining(0) , ! 365: chainingProhibited(1) , ! 366: localScope(2) , ! 367: dontUseCopy(3) , ! 368: dontDereferenceAliases(4) ! 369: } ! 370: %{ ! 371: %} ! 372: -- DEFAULT {} <<parm->svc_options != 0>> , ! 373: OPTIONAL <<parm->svc_options != 0>> , ! 374: priority ! 375: [1] INTEGER [[i parm->svc_prio]] ! 376: { ! 377: low(0) , ! 378: medium(1) , ! 379: high(2) ! 380: } ! 381: %{ ! 382: %} ! 383: -- DEFAULT medium <<parm->svc_prio != SVC_PRIO_MED>> , ! 384: OPTIONAL <<parm->svc_prio != SVC_PRIO_MED>> , ! 385: timeLimit ! 386: [2] INTEGER [[i parm->svc_timelimit]] ! 387: %{ ! 388: %} ! 389: OPTIONAL <<parm->svc_timelimit != SVC_NOTIMELIMIT>> , ! 390: sizeLimit ! 391: [3] INTEGER [[i parm->svc_sizelimit]] ! 392: %{ ! 393: %} ! 394: OPTIONAL <<parm->svc_sizelimit != SVC_NOSIZELIMIT>> , ! 395: scopeOfReferral ! 396: [4] INTEGER [[i parm->svc_scopeofreferral]] ! 397: { ! 398: dmd(0) , ! 399: country(1) ! 400: } ! 401: OPTIONAL <<parm->svc_scopeofreferral != SVC_REFSCOPE_NONE>> ! 402: } ! 403: %{ ! 404: DLOG(log_dsap, LLOG_TRACE, ("Done encode ServiceControls (DAS)")); ! 405: %} ! 406: ! 407: ProtectionRequest [[P int]] ! 408: ::= ! 409: %{ ! 410: DLOG(log_dsap, LLOG_TRACE, ("About to encode ProtectionRequest (DAS)")); ! 411: %} ! 412: INTEGER [[i parm]] ! 413: { ! 414: none (0) , ! 415: signed (1) ! 416: } ! 417: %{ ! 418: DLOG(log_dsap, LLOG_TRACE, ("Done encode ProtectionRequest (DAS)")); ! 419: %} ! 420: ! 421: SecurityParameters [[P struct security_parms *]] ! 422: ::= ! 423: %{ ! 424: DLOG(log_dsap, LLOG_TRACE, ("About to encode SecurityParameters (DAS)")); ! 425: %} ! 426: SET ! 427: { ! 428: certificationPath ! 429: [0] CertificationPath [[p parm->sp_path]] ! 430: OPTIONAL <<parm->sp_path>> , ! 431: name ! 432: [1] DistinguishedName [[p parm->sp_name]] ! 433: OPTIONAL <<parm->sp_name>> , ! 434: time ! 435: [2] UTCTime [[s parm->sp_time]] ! 436: OPTIONAL <<parm->sp_time>> , ! 437: random ! 438: [3] BIT STRING [[x parm->sp_random->value $ parm->sp_random->n_bits]] ! 439: OPTIONAL <<parm->sp_random>> , ! 440: target ! 441: [4] ProtectionRequest [[p ((int) parm->sp_target)]] ! 442: OPTIONAL <<parm->sp_target != '\0'>> ! 443: } ! 444: %{ ! 445: DLOG(log_dsap, LLOG_TRACE, ("Done encode SecurityParameters (DAS)")); ! 446: %} ! 447: ! 448: Extension [[P struct extension *]] ! 449: ::= ! 450: %{ ! 451: DLOG(log_dsap, LLOG_TRACE, ("About to encode Extension (DAS)")); ! 452: %} ! 453: SET ! 454: { ! 455: identifier ! 456: [0] INTEGER [[i parm->ext_id]] , ! 457: critical ! 458: [1] BOOLEAN [[b parm->ext_critical]] ! 459: -- DEFAULT FALSE , ! 460: OPTIONAL <<parm->ext_critical != FALSE>> , ! 461: item ! 462: [2] ANY DEFINED BY identifier [[a parm->ext_item]] ! 463: } ! 464: %{ ! 465: DLOG(log_dsap, LLOG_TRACE, ("Done encode Extension (DAS)")); ! 466: %} ! 467: ! 468: EntryInformation [[P struct entrystruct *]] ! 469: %{ ! 470: Attr_Sequence attr_temp; ! 471: %} ! 472: ::= ! 473: %{ ! 474: DLOG(log_dsap, LLOG_TRACE, ("About to encode EntryInformation (DAS)")); ! 475: %} ! 476: SEQUENCE ! 477: { ! 478: DistinguishedName [[p parm->ent_dn]] ! 479: %{ ! 480: %} , ! 481: fromEntry ! 482: BOOLEAN [[b (parm->ent_iscopy == E_DATA_MASTER)]] ! 483: %{ ! 484: %} ! 485: -- DEFAULT TRUE <<parm->ent_iscopy != E_DATA_MASTER>> , ! 486: OPTIONAL <<parm->ent_iscopy != E_DATA_MASTER>> , ! 487: SET OF ! 488: %{ ! 489: %} ! 490: <<attr_temp=parm->ent_attr;attr_temp!=NULLATTR;attr_temp=attr_temp->attr_link>> ! 491: CHOICE ! 492: <<((attr_temp->attr_value == NULLAV) ? 1 : 2)>> ! 493: { ! 494: AttributeType [[p attr_temp->attr_type]] ! 495: %{ ! 496: %} , ! 497: Attribute [[p attr_temp]] ! 498: %{ ! 499: %} ! 500: } ! 501: %{ ! 502: %} ! 503: %{ ! 504: %} ! 505: OPTIONAL <<parm->ent_attr != NULLATTR>> ! 506: } ! 507: %{ ! 508: DLOG(log_dsap, LLOG_TRACE, ("Done encode EntryInformation (DAS)")); ! 509: %} ! 510: ! 511: LimitProblem [[P int]] ! 512: %{ ! 513: %} ! 514: ::= ! 515: %{ ! 516: DLOG(log_dsap, LLOG_TRACE, ("About to encode LimitProblem (DAS)")); ! 517: %} ! 518: INTEGER [[i parm]] ! 519: { ! 520: timeLimitExceeded(0) , ! 521: sizeLimitExceeded(1) , ! 522: administrativeLimitExceeded(2) ! 523: } ! 524: %{ ! 525: DLOG(log_dsap, LLOG_TRACE, ("Done encode LimitProblem (DAS)")); ! 526: %} ! 527: ! 528: PartialOutcomeQualifier [[P struct part_outcome *]] ! 529: %{ ! 530: ContinuationRef crefp; ! 531: %} ! 532: ::= ! 533: %{ ! 534: DLOG(log_dsap, LLOG_TRACE, ("About to encode PartialOutcomeQualifier (DAS)")); ! 535: %} ! 536: SET ! 537: { ! 538: limitProblem ! 539: [0] LimitProblem [[p parm->poq_limitproblem]] ! 540: %{ ! 541: %} ! 542: OPTIONAL <<parm->poq_limitproblem != LSR_NOLIMITPROBLEM>> , ! 543: unexplored ! 544: [1] SET OF ! 545: %{ ! 546: %} ! 547: <<crefp=parm->poq_cref;crefp!=NULLCONTINUATIONREF;crefp=crefp->cr_next>> ! 548: ContinuationReference [[p crefp]] ! 549: %{ ! 550: %} ! 551: %{ ! 552: %} ! 553: OPTIONAL <<parm->poq_cref != NULLCONTINUATIONREF>> , ! 554: unavailableCriticalExtensions ! 555: [2] BOOLEAN ! 556: -- DEFAULT FALSE <<FALSE>> ! 557: -- OPTIONAL <<FALSE>> ! 558: OPTIONAL ! 559: } ! 560: %{ ! 561: DLOG(log_dsap, LLOG_TRACE, ("Done encode PartialOutcomeQualifier (DAS)")); ! 562: %} ! 563: ! 564: FilterItem [[P struct filter_item *]] ! 565: %{ ! 566: int subs_type; ! 567: AV_Sequence avs_temp; ! 568: Filter_Substrings *subs_temp; ! 569: %} ! 570: ::= ! 571: %{ ! 572: DLOG(log_dsap, LLOG_TRACE, ("About to encode FilterItem (DAS)")); ! 573: %} ! 574: CHOICE ! 575: <<(parm->fi_type + 1)>> ! 576: { ! 577: equality ! 578: [0] AttributeValueAssertion [[p &(parm->fi_un.fi_un_ava)]] ! 579: %{ ! 580: %} , ! 581: substrings ! 582: %{ ! 583: subs_temp = &(parm->UNSUB); ! 584: subs_type = 1; ! 585: if((avs_temp = subs_temp->fi_sub_initial) == NULLAV) ! 586: { ! 587: ++subs_type; ! 588: if((avs_temp = subs_temp->fi_sub_any) == NULLAV) ! 589: { ! 590: ++subs_type; ! 591: avs_temp = subs_temp->fi_sub_final; ! 592: } ! 593: } ! 594: %} ! 595: [1] SEQUENCE ! 596: { ! 597: type ! 598: AttributeType [[p subs_temp->fi_sub_type]] ! 599: %{ ! 600: %} , ! 601: strings ! 602: SEQUENCE OF ! 603: %{ ! 604: %} ! 605: <<; avs_temp != NULLAV;>> ! 606: CHOICE ! 607: <<subs_type>> ! 608: { ! 609: initial ! 610: [0] AttributeValue [[p &avs_temp->avseq_av]] ! 611: %{ ! 612: if((avs_temp = avs_temp->avseq_next) == NULLAV) ! 613: { ! 614: ++subs_type; ! 615: if((avs_temp = subs_temp->fi_sub_any) == NULLAV) ! 616: { ! 617: ++subs_type; ! 618: avs_temp = subs_temp->fi_sub_final; ! 619: } ! 620: } ! 621: %} , ! 622: any ! 623: [1] AttributeValue [[p &avs_temp->avseq_av]] ! 624: %{ ! 625: if((avs_temp = avs_temp->avseq_next) == NULLAV) ! 626: { ! 627: ++subs_type; ! 628: avs_temp = subs_temp->fi_sub_final; ! 629: } ! 630: %} , ! 631: final ! 632: [2] AttributeValue [[p &avs_temp->avseq_av]] ! 633: %{ ! 634: avs_temp = avs_temp->avseq_next; ! 635: %} ! 636: } ! 637: %{ ! 638: %} ! 639: %{ ! 640: %} ! 641: } ! 642: %{ ! 643: %} , ! 644: greaterOrEqual ! 645: [2] AttributeValueAssertion [[p &(parm->fi_un.fi_un_ava)]] ! 646: %{ ! 647: %} , ! 648: lessOrEqual ! 649: [3] AttributeValueAssertion [[p &(parm->fi_un.fi_un_ava)]] ! 650: %{ ! 651: %} , ! 652: present ! 653: [4] AttributeType [[p parm->fi_un.fi_un_type]] ! 654: %{ ! 655: %} , ! 656: approximateMatch ! 657: [5] AttributeValueAssertion [[p &(parm->fi_un.fi_un_ava)]] ! 658: %{ ! 659: %} ! 660: } ! 661: %{ ! 662: DLOG(log_dsap, LLOG_TRACE, ("Done encode FilterItem (DAS)")); ! 663: %} ! 664: ! 665: Filter [[P struct filter *]] ! 666: %{ ! 667: Filter flt_temp; ! 668: %} ! 669: ::= ! 670: %{ ! 671: DLOG(log_dsap, LLOG_TRACE, ("About to encode Filter PE")); ! 672: %} ! 673: CHOICE ! 674: <<(parm->flt_type + 1)>> ! 675: { ! 676: item ! 677: [0] FilterItem [[p &(parm->flt_un.flt_un_item)]] ! 678: %{ ! 679: %} , ! 680: and ! 681: [1] SET OF ! 682: %{ ! 683: %} ! 684: <<flt_temp=parm->flt_un.flt_un_filter;flt_temp!=NULL;flt_temp=flt_temp->flt_next>> ! 685: Filter [[p flt_temp]] ! 686: %{ ! 687: %} ! 688: %{ ! 689: %} , ! 690: or ! 691: [2] SET OF ! 692: %{ ! 693: %} ! 694: <<flt_temp=parm->flt_un.flt_un_filter;flt_temp!=NULL;flt_temp=flt_temp->flt_next>> ! 695: Filter [[p flt_temp]] ! 696: %{ ! 697: %} ! 698: %{ ! 699: %} , ! 700: not ! 701: [3] Filter [[p parm->flt_un.flt_un_filter]] ! 702: %{ ! 703: %} ! 704: } ! 705: %{ ! 706: DLOG(log_dsap, LLOG_TRACE, ("Done encode Filter PE")); ! 707: %} ! 708: ! 709: EntryModification [[P struct entrymod *]] ! 710: %{ ! 711: %} ! 712: ::= ! 713: %{ ! 714: DLOG(log_dsap, LLOG_TRACE, ("About to encode EntryModification PE")); ! 715: %} ! 716: CHOICE ! 717: <<(parm->em_type + 1)>> ! 718: { ! 719: addAttribute ! 720: [0] Attribute [[p parm->em_what]] ! 721: %{ ! 722: %} , ! 723: removeAttribute ! 724: [1] AttributeType [[p parm->em_what->attr_type]] ! 725: %{ ! 726: %} , ! 727: addValues ! 728: [2] Attribute [[p parm->em_what]] ! 729: %{ ! 730: %} , ! 731: removeValues ! 732: [3] Attribute [[p parm->em_what]] ! 733: %{ ! 734: %} ! 735: } ! 736: %{ ! 737: DLOG(log_dsap, LLOG_TRACE, ("Done encode EntryModification PE")); ! 738: %} ! 739: ! 740: AbandonProblem [[P int]] ! 741: %{ ! 742: %} ! 743: ::= ! 744: %{ ! 745: DLOG(log_dsap, LLOG_TRACE, ("About to encode AbandonProblem PE")); ! 746: %} ! 747: INTEGER [[i parm]] ! 748: { ! 749: noSuchOperation(1) , ! 750: tooLate(2) , ! 751: cannotAbandon(3) ! 752: } ! 753: %{ ! 754: DLOG(log_dsap, LLOG_TRACE, ("Done encode AbandonProblem PE")); ! 755: %} ! 756: ! 757: AttributeProblem [[P int]] ! 758: %{ ! 759: %} ! 760: ::= ! 761: %{ ! 762: DLOG(log_dsap, LLOG_TRACE, ("About to encode AttributeProblem PE")); ! 763: %} ! 764: INTEGER [[i parm]] ! 765: { ! 766: noSuchAttributeOrValue(1) , ! 767: invalidAttributeSyntax(2) , ! 768: undefinedAttributeType(3) , ! 769: inappropriateMatching(4) , ! 770: constraintViolation(5) , ! 771: attributeOrValueAlreadyExists(6) ! 772: } ! 773: %{ ! 774: DLOG(log_dsap, LLOG_TRACE, ("Done encode AttributeProblem PE")); ! 775: %} ! 776: ! 777: NameProblem [[P int]] ! 778: %{ ! 779: %} ! 780: ::= ! 781: %{ ! 782: DLOG(log_dsap, LLOG_TRACE, ("About to encode NameProblem PE")); ! 783: %} ! 784: INTEGER [[i parm]] ! 785: { ! 786: noSuchObject(1) , ! 787: aliasProblem(2) , ! 788: invalidAttributeSyntax(3) , ! 789: aliasDereferencingProblem(4) ! 790: } ! 791: %{ ! 792: DLOG(log_dsap, LLOG_TRACE, ("Done encode NameProblem PE")); ! 793: %} ! 794: ! 795: UpdateProblem [[P int]] ! 796: %{ ! 797: %} ! 798: ::= ! 799: %{ ! 800: DLOG(log_dsap, LLOG_TRACE, ("About to encode UpdateProblem PE")); ! 801: %} ! 802: INTEGER [[i parm]] ! 803: { ! 804: namingViolation(1) , ! 805: objectClassViolation(2) , ! 806: notAllowedOnNonLeaf(3) , ! 807: notAllowedOnRDN(4) , ! 808: entryAlreadyExists(5) , ! 809: affectsMultipleDSAs(6) , ! 810: objectClassModificationProhibited(7) ! 811: } ! 812: %{ ! 813: DLOG(log_dsap, LLOG_TRACE, ("Done encode UpdateProblem PE")); ! 814: %} ! 815: ! 816: DirectoryBindArgument [[P struct ds_bind_arg *]] ! 817: %{ ! 818: /* Not used !!! ! 819: USC usc_s; ! 820: USC * usc = &(usc_s); ! 821: */ ! 822: %} ! 823: ::= ! 824: %{ ! 825: DLOG(log_dsap, LLOG_TRACE, ("About to encode DirectoryBindArgument")); ! 826: /* Not used !!! ! 827: * usc->usc_dn = parm->dba_dn; ! 828: * usc->usc_time1 = parm->dba_time1; ! 829: * usc->usc_time2 = parm->dba_time2; ! 830: * if((usc->usc_passwd_len = parm->dba_passwd_len) != 0) ! 831: * { ! 832: * usc->usc_passwd = strdup(parm->dba_passwd); ! 833: * } ! 834: * else ! 835: * { ! 836: * usc->usc_passwd = NULL; ! 837: * } ! 838: */ ! 839: %} ! 840: SET ! 841: { ! 842: credentials ! 843: [0] Credentials [[p parm]] ! 844: %{ ! 845: %} ! 846: OPTIONAL <<(parm->dba_auth_type != DBA_AUTH_NONE) || (parm->dba_dn != NULLDN)>> , ! 847: versions ! 848: [1] Versions [[p parm->dba_version]] ! 849: %{ ! 850: %} ! 851: -- DEFAULT v1988 <<parm->dba_version != DBA_VERSION_V1988>> ! 852: OPTIONAL <<parm->dba_version != DBA_VERSION_V1988>> ! 853: } ! 854: %{ ! 855: DLOG(log_dsap, LLOG_TRACE, ("Done encode DirectoryBindArgument")); ! 856: %} ! 857: ! 858: DirectoryBindResult [[P struct ds_bind_arg *]] ! 859: %{ ! 860: %} ! 861: ::= ! 862: %{ ! 863: DLOG(log_dsap, LLOG_TRACE, ("About to encode DirectoryBindResult")); ! 864: %} ! 865: DirectoryBindArgument [[p parm]] ! 866: %{ ! 867: DLOG(log_dsap, LLOG_TRACE, ("Done encode DirectoryBindResult")); ! 868: %} ! 869: ! 870: ReadArgumentData [[P struct ds_read_arg *]] ! 871: %{ ! 872: struct common_args * ca; ! 873: struct extension * extp; ! 874: %} ! 875: ::= ! 876: %{ ! 877: DLOG(log_dsap, LLOG_TRACE, ("About to encode ReadArgumentData PE")); ! 878: ca = &(parm->rda_common); ! 879: %} ! 880: SET ! 881: { ! 882: object ! 883: [0] Name [[p parm->rda_object]] ! 884: %{ ! 885: %} , ! 886: selection ! 887: [1] EntryInformationSelection [[p &(parm->rda_eis)]] ! 888: %{ ! 889: %} ! 890: -- DEFAULT {} , ! 891: OPTIONAL <<TRUE>> , ! 892: [30] ServiceControls [[p &(ca->ca_servicecontrol)]] ! 893: %{ ! 894: %} ! 895: -- DEFAULT {} , ! 896: OPTIONAL <<TRUE>> , ! 897: [29] SecurityParameters [[p ca->ca_security]] ! 898: -- DEFAULT {} , ! 899: OPTIONAL <<ca->ca_security>> , ! 900: requestor ! 901: [28] DistinguishedName [[p ca->ca_requestor]] ! 902: %{ ! 903: %} ! 904: OPTIONAL <<ca->ca_requestor != NULLDN>> , ! 905: [27] OperationProgress [[p &(ca->ca_progress)]] ! 906: %{ ! 907: %} ! 908: OPTIONAL <<TRUE>> , ! 909: aliasedRDNs ! 910: [26] INTEGER [[i ca->ca_aliased_rdns]] ! 911: OPTIONAL <<ca->ca_aliased_rdns != CA_NO_ALIASDEREFERENCED>> , ! 912: extensions ! 913: [25] SET OF ! 914: <<extp=ca->ca_extensions; extp!=NULLEXT; extp=extp->ext_next>> ! 915: Extension [[p extp]] ! 916: OPTIONAL <<ca->ca_extensions != NULLEXT>> ! 917: } ! 918: %{ ! 919: DLOG(log_dsap, LLOG_TRACE, ("Done encode ReadArgumentData PE")); ! 920: %} ! 921: ! 922: ReadArgument [[P struct ds_read_arg *]] ! 923: ::= ! 924: %{ ! 925: DLOG(log_dsap, LLOG_TRACE, ("At encode ReadArgument")); ! 926: %} ! 927: CHOICE ! 928: <<(parm->rda_common.ca_sig == (struct signature *) 0)? 1:2>> ! 929: { ! 930: ReadArgumentData [[p parm]] , ! 931: SEQUENCE ! 932: { ! 933: ReadArgumentData [[p parm]] , ! 934: AlgorithmIdentifier ! 935: [[p &(parm->rda_common.ca_sig->alg)]], ! 936: BIT STRING ! 937: [[x (parm->rda_common.ca_sig->encrypted) $ ! 938: (parm->rda_common.ca_sig->n_bits) ]] ! 939: } ! 940: } ! 941: %{ ! 942: DLOG(log_dsap, LLOG_TRACE, ("Done encode ReadArgument")); ! 943: %} ! 944: ! 945: ReadResultData [[P struct ds_read_result *]] ! 946: %{ ! 947: %} ! 948: ::= ! 949: %{ ! 950: DLOG(log_dsap, LLOG_TRACE, ("About to encode ReadResultData PE")); ! 951: %} ! 952: SET ! 953: { ! 954: entry ! 955: [0] EntryInformation [[p &(parm->rdr_entry)]] ! 956: %{ ! 957: %} , ! 958: [30] SecurityParameters [[p (struct security_parms *)0 ]] ! 959: -- OPTIONAL <<FALSE>> , ! 960: OPTIONAL , ! 961: performer ! 962: [29] DistinguishedName [[p parm->rdr_common.cr_requestor]] ! 963: %{ ! 964: %} ! 965: OPTIONAL <<parm->rdr_common.cr_requestor != NULLDN>> , ! 966: aliasDereferenced ! 967: [28] BOOLEAN [[b parm->rdr_common.cr_aliasdereferenced]] ! 968: %{ ! 969: %} ! 970: -- DEFAULT FALSE <<parm->rdr_common.cr_aliasdereferenced != FALSE>> ! 971: OPTIONAL <<parm->rdr_common.cr_aliasdereferenced != FALSE>> ! 972: } ! 973: %{ ! 974: DLOG(log_dsap, LLOG_TRACE, ("Done encode ReadResultData PE")); ! 975: %} ! 976: ! 977: ReadResult [[P struct ds_read_result *]] ! 978: ::= ! 979: %{ ! 980: DLOG(log_dsap, LLOG_TRACE, ("At encode ReadResult")); ! 981: %} ! 982: CHOICE ! 983: <<1>> ! 984: { ! 985: ReadResultData [[p parm]] , ! 986: SEQUENCE ! 987: { ! 988: ReadResultData [[p parm]] , ! 989: AlgorithmIdentifier [[p (struct alg_id *)0 ]], ! 990: BIT STRING ! 991: } ! 992: } ! 993: %{ ! 994: DLOG(log_dsap, LLOG_TRACE, ("Done encode ReadResult")); ! 995: %} ! 996: ! 997: CompareArgumentData [[P struct ds_compare_arg *]] ! 998: %{ ! 999: struct common_args * ca; ! 1000: struct extension * extp; ! 1001: %} ! 1002: ::= ! 1003: %{ ! 1004: DLOG(log_dsap, LLOG_TRACE, ("About to encode CompareArgumentData PE")); ! 1005: ca = &(parm->cma_common); ! 1006: %} ! 1007: SET ! 1008: { ! 1009: object ! 1010: [0] Name [[p parm->cma_object]] ! 1011: %{ ! 1012: %} , ! 1013: purported ! 1014: [1] AttributeValueAssertion [[p &(parm->cma_purported)]] ! 1015: %{ ! 1016: %} , ! 1017: [30] ServiceControls [[p &(ca->ca_servicecontrol)]] ! 1018: %{ ! 1019: %} ! 1020: -- DEFAULT {} , ! 1021: OPTIONAL <<TRUE>> , ! 1022: [29] SecurityParameters [[p ca->ca_security]] ! 1023: -- DEFAULT {} , ! 1024: OPTIONAL <<ca->ca_security>> , ! 1025: requestor ! 1026: [28] DistinguishedName [[p ca->ca_requestor]] ! 1027: %{ ! 1028: %} ! 1029: OPTIONAL <<ca->ca_requestor != NULLDN>> , ! 1030: [27] OperationProgress [[p &(ca->ca_progress)]] ! 1031: %{ ! 1032: %} ! 1033: OPTIONAL <<TRUE>> , ! 1034: aliasedRDNs ! 1035: [26] INTEGER [[i ca->ca_aliased_rdns]] ! 1036: OPTIONAL <<ca->ca_aliased_rdns != CA_NO_ALIASDEREFERENCED>> , ! 1037: extensions ! 1038: [25] SET OF ! 1039: <<extp=ca->ca_extensions; extp!=NULLEXT; extp=extp->ext_next>> ! 1040: Extension [[p extp]] ! 1041: OPTIONAL <<ca->ca_extensions != NULLEXT>> ! 1042: } ! 1043: %{ ! 1044: DLOG(log_dsap, LLOG_TRACE, ("Done encode CompareArgumentData PE")); ! 1045: %} ! 1046: ! 1047: CompareArgument [[P struct ds_compare_arg *]] ! 1048: ::= ! 1049: %{ ! 1050: DLOG(log_dsap, LLOG_TRACE, ("At encode CompareArgument")); ! 1051: %} ! 1052: CHOICE ! 1053: <<(parm->cma_common.ca_sig == (struct signature *) 0)? 1:2>> ! 1054: { ! 1055: CompareArgumentData [[p parm]] , ! 1056: SEQUENCE ! 1057: { ! 1058: CompareArgumentData [[p parm]] , ! 1059: AlgorithmIdentifier ! 1060: [[p &(parm->cma_common.ca_sig->alg)]], ! 1061: BIT STRING ! 1062: [[x (parm->cma_common.ca_sig->encrypted) $ ! 1063: (parm->cma_common.ca_sig->n_bits) ]] ! 1064: } ! 1065: } ! 1066: %{ ! 1067: DLOG(log_dsap, LLOG_TRACE, ("Done encode CompareArgument")); ! 1068: %} ! 1069: ! 1070: CompareResultData [[P struct ds_compare_result *]] ! 1071: %{ ! 1072: %} ! 1073: ::= ! 1074: %{ ! 1075: DLOG(log_dsap, LLOG_TRACE, ("About to encode CompareResultData PE")); ! 1076: %} ! 1077: SET ! 1078: { ! 1079: DistinguishedName [[p parm->cmr_object]] ! 1080: %{ ! 1081: %} ! 1082: OPTIONAL <<parm->cmr_object != NULLDN>> , ! 1083: matched ! 1084: [0] BOOLEAN [[b parm->cmr_matched]] ! 1085: %{ ! 1086: %} , ! 1087: fromEntry ! 1088: [1] BOOLEAN [[b (parm->cmr_iscopy == E_DATA_MASTER)]] ! 1089: %{ ! 1090: %} ! 1091: -- DEFAULT TRUE <<parm->cmr_iscopy != TRUE>> , ! 1092: OPTIONAL <<parm->cmr_iscopy != E_DATA_MASTER>> , ! 1093: [30] SecurityParameters [[p (struct security_parms *)0 ]] ! 1094: -- OPTIONAL <<FALSE>> , ! 1095: OPTIONAL , ! 1096: performer ! 1097: [29] DistinguishedName [[p parm->cmr_common.cr_requestor]] ! 1098: %{ ! 1099: %} ! 1100: OPTIONAL <<parm->cmr_common.cr_requestor != NULLDN>> , ! 1101: aliasDereferenced ! 1102: [28] BOOLEAN [[b parm->cmr_common.cr_aliasdereferenced]] ! 1103: %{ ! 1104: %} ! 1105: -- DEFAULT FALSE <<parm->cmr_common.cr_aliasdereferenced != FALSE>> ! 1106: OPTIONAL <<parm->cmr_common.cr_aliasdereferenced != FALSE>> ! 1107: } ! 1108: %{ ! 1109: DLOG(log_dsap, LLOG_TRACE, ("Done encode CompareResultData PE")); ! 1110: %} ! 1111: ! 1112: CompareResult [[P struct ds_compare_result *]] ! 1113: ::= ! 1114: %{ ! 1115: DLOG(log_dsap, LLOG_TRACE, ("At encode CompareResult")); ! 1116: %} ! 1117: CHOICE ! 1118: <<1>> ! 1119: { ! 1120: CompareResultData [[p parm]] , ! 1121: SEQUENCE ! 1122: { ! 1123: CompareResultData [[p parm]] , ! 1124: AlgorithmIdentifier [[p (struct alg_id *)0 ]], ! 1125: BIT STRING ! 1126: } ! 1127: } ! 1128: %{ ! 1129: DLOG(log_dsap, LLOG_TRACE, ("Done encode CompareResult")); ! 1130: %} ! 1131: ! 1132: AbandonArgument [[P struct ds_abandon_arg *]] ! 1133: %{ ! 1134: %} ! 1135: ::= ! 1136: %{ ! 1137: DLOG(log_dsap, LLOG_TRACE, ("About to encode AbandonArgument PE")); ! 1138: %} ! 1139: SEQUENCE ! 1140: { ! 1141: invokeID ! 1142: [0] InvokeID [[p parm->aba_invokeid]] ! 1143: %{ ! 1144: %} ! 1145: } ! 1146: %{ ! 1147: DLOG(log_dsap, LLOG_TRACE, ("Done encode AbandonArgument PE")); ! 1148: %} ! 1149: ! 1150: AbandonResult ::= NULL ! 1151: ! 1152: ListArgumentData [[P struct ds_list_arg *]] ! 1153: %{ ! 1154: struct common_args * ca; ! 1155: struct extension * extp; ! 1156: %} ! 1157: ::= ! 1158: %{ ! 1159: DLOG(log_dsap, LLOG_TRACE, ("About to encode ListArgumentData PE")); ! 1160: ca = &(parm->lsa_common); ! 1161: %} ! 1162: SET ! 1163: { ! 1164: object ! 1165: [0] Name [[p parm->lsa_object]] ! 1166: %{ ! 1167: %} , ! 1168: [30] ServiceControls [[p &(ca->ca_servicecontrol)]] ! 1169: %{ ! 1170: %} ! 1171: -- DEFAULT {} , ! 1172: OPTIONAL <<TRUE>> , ! 1173: [29] SecurityParameters [[p ca->ca_security]] ! 1174: -- DEFAULT {} , ! 1175: OPTIONAL <<ca->ca_security>> , ! 1176: requestor ! 1177: [28] DistinguishedName [[p ca->ca_requestor]] ! 1178: %{ ! 1179: %} ! 1180: OPTIONAL <<ca->ca_requestor != NULLDN>> , ! 1181: [27] OperationProgress [[p &(ca->ca_progress)]] ! 1182: %{ ! 1183: %} ! 1184: OPTIONAL <<TRUE>> , ! 1185: aliasedRDNs ! 1186: [26] INTEGER [[i ca->ca_aliased_rdns]] ! 1187: OPTIONAL <<ca->ca_aliased_rdns != CA_NO_ALIASDEREFERENCED>> , ! 1188: extensions ! 1189: [25] SET OF ! 1190: <<extp=ca->ca_extensions; extp!=NULLEXT; extp=extp->ext_next>> ! 1191: Extension [[p extp]] ! 1192: OPTIONAL <<ca->ca_extensions != NULLEXT>> ! 1193: } ! 1194: %{ ! 1195: DLOG(log_dsap, LLOG_TRACE, ("Done encode ListArgumentData PE")); ! 1196: %} ! 1197: ! 1198: ListArgument [[P struct ds_list_arg *]] ! 1199: ::= ! 1200: %{ ! 1201: DLOG(log_dsap, LLOG_TRACE, ("At encode ListArgument")); ! 1202: %} ! 1203: CHOICE ! 1204: <<(parm->lsa_common.ca_sig == (struct signature *) 0)? 1:2>> ! 1205: { ! 1206: ListArgumentData [[p parm]] , ! 1207: SEQUENCE ! 1208: { ! 1209: ListArgumentData [[p parm]] , ! 1210: AlgorithmIdentifier ! 1211: [[p &(parm->lsa_common.ca_sig->alg) ]], ! 1212: BIT STRING ! 1213: [[x (parm->lsa_common.ca_sig->encrypted) $ ! 1214: (parm->lsa_common.ca_sig->n_bits) ]] ! 1215: } ! 1216: } ! 1217: %{ ! 1218: DLOG(log_dsap, LLOG_TRACE, ("Done encode ListArgument")); ! 1219: %} ! 1220: ! 1221: ListResultData [[P struct ds_list_result *]] ! 1222: %{ ! 1223: struct subordinate *sub_temp; ! 1224: POQ poq_s; ! 1225: POQ * poq = &(poq_s); ! 1226: %} ! 1227: ::= ! 1228: %{ ! 1229: DLOG(log_dsap, LLOG_TRACE, ("About to encode ListResultData PE")); ! 1230: poq->poq_limitproblem = parm->lsr_limitproblem; ! 1231: poq->poq_cref = parm->lsr_cr; ! 1232: %} ! 1233: CHOICE ! 1234: <<1>> ! 1235: { ! 1236: listInfo ! 1237: SET ! 1238: { ! 1239: DistinguishedName [[p parm->lsr_object]] ! 1240: %{ ! 1241: %} ! 1242: OPTIONAL <<parm->lsr_object != NULLDN>> , ! 1243: subordinates ! 1244: [1] SET OF ! 1245: %{ ! 1246: %} ! 1247: <<sub_temp=parm->lsr_subordinates;sub_temp!=NULL;sub_temp=sub_temp->sub_next>> ! 1248: SEQUENCE ! 1249: { ! 1250: RelativeDistinguishedName [[p sub_temp->sub_rdn]] ! 1251: %{ ! 1252: %} , ! 1253: aliasEntry ! 1254: [0] BOOLEAN [[b sub_temp->sub_aliasentry]] ! 1255: %{ ! 1256: %} ! 1257: -- DEFAULT FALSE <<sub_temp->sub_aliasentry != FALSE>> , ! 1258: OPTIONAL <<sub_temp->sub_aliasentry != FALSE>> , ! 1259: fromEntry ! 1260: [1] BOOLEAN [[b (sub_temp->sub_copy == E_DATA_MASTER)]] ! 1261: %{ ! 1262: %} ! 1263: -- DEFAULT TRUE <<sub_temp->sub_copy != E_DATA_MASTER>> ! 1264: OPTIONAL <<sub_temp->sub_copy != E_DATA_MASTER>> ! 1265: } ! 1266: %{ ! 1267: %} ! 1268: %{ ! 1269: %} , ! 1270: partialOutcomeQualifier ! 1271: [2] PartialOutcomeQualifier [[p poq]] ! 1272: %{ ! 1273: %} ! 1274: OPTIONAL <<((poq->poq_limitproblem != LSR_NOLIMITPROBLEM) || (poq->poq_cref != NULLCONTINUATIONREF))>> , ! 1275: [30] SecurityParameters [[p (struct security_parms *)0 ]] ! 1276: -- OPTIONAL <<FALSE>> , ! 1277: OPTIONAL , ! 1278: performer ! 1279: [29] DistinguishedName [[p parm->lsr_common.cr_requestor]] ! 1280: %{ ! 1281: %} ! 1282: OPTIONAL <<parm->lsr_common.cr_requestor != NULLDN>> , ! 1283: aliasDereferenced ! 1284: [28] BOOLEAN [[b parm->lsr_common.cr_aliasdereferenced]] ! 1285: %{ ! 1286: %} ! 1287: -- DEFAULT FALSE <<parm->lsr_common.cr_aliasdereferenced != FALSE>> ! 1288: OPTIONAL <<parm->lsr_common.cr_aliasdereferenced != FALSE>> ! 1289: } ! 1290: %{ ! 1291: %} , ! 1292: uncorrelatedListInfo ! 1293: [0] SET OF ! 1294: ListResult [[p ((struct ds_list_result *) 0)]] ! 1295: } ! 1296: %{ ! 1297: DLOG(log_dsap, LLOG_TRACE, ("Done encode ListResultData PE")); ! 1298: %} ! 1299: ! 1300: ListResult [[P struct ds_list_result *]] ! 1301: ::= ! 1302: %{ ! 1303: DLOG(log_dsap, LLOG_TRACE, ("At encode ListResult")); ! 1304: %} ! 1305: CHOICE ! 1306: <<1>> ! 1307: { ! 1308: ListResultData [[p parm]] , ! 1309: SEQUENCE ! 1310: { ! 1311: ListResultData [[p parm]] , ! 1312: AlgorithmIdentifier [[p (struct alg_id *)0 ]], ! 1313: BIT STRING ! 1314: } ! 1315: } ! 1316: %{ ! 1317: DLOG(log_dsap, LLOG_TRACE, ("Done encode ListResult")); ! 1318: %} ! 1319: ! 1320: SearchArgumentData [[P struct ds_search_arg *]] ! 1321: %{ ! 1322: struct common_args * ca; ! 1323: struct extension * extp; ! 1324: %} ! 1325: ::= ! 1326: %{ ! 1327: DLOG(log_dsap, LLOG_TRACE, ("About to encode SearchArgumentData PE")); ! 1328: ca = &(parm->sra_common); ! 1329: %} ! 1330: SET ! 1331: { ! 1332: baseObject ! 1333: [0] Name [[p parm->sra_baseobject]] ! 1334: %{ ! 1335: %} , ! 1336: subset ! 1337: [1] INTEGER [[i parm->sra_subset]] ! 1338: { ! 1339: baseObject(0) , ! 1340: oneLevel(1) , ! 1341: wholeSubtree(2) ! 1342: } ! 1343: %{ ! 1344: %} ! 1345: -- DEFAULT baseObject <<parm->sra_subset != SRA_BASEOBJECT>> , ! 1346: OPTIONAL <<parm->sra_subset != SRA_BASEOBJECT>> , ! 1347: filter ! 1348: [2] Filter [[p parm->sra_filter]] ! 1349: %{ ! 1350: %} ! 1351: -- DEFAULT and {} , ! 1352: OPTIONAL <<TRUE>> , ! 1353: searchAliases ! 1354: [3] BOOLEAN [[b parm->sra_searchaliases]] ! 1355: -- DEFAULT TRUE , ! 1356: OPTIONAL <<parm->sra_searchaliases != TRUE>> , ! 1357: selection ! 1358: [4] EntryInformationSelection [[p &(parm->sra_eis)]] ! 1359: %{ ! 1360: %} ! 1361: -- DEFAULT {} , ! 1362: OPTIONAL <<TRUE>> , ! 1363: [30] ServiceControls [[p &(ca->ca_servicecontrol)]] ! 1364: %{ ! 1365: %} ! 1366: -- DEFAULT {} , ! 1367: OPTIONAL <<TRUE>> , ! 1368: [29] SecurityParameters [[p ca->ca_security]] ! 1369: -- DEFAULT {} , ! 1370: OPTIONAL <<ca->ca_security>> , ! 1371: requestor ! 1372: [28] DistinguishedName [[p ca->ca_requestor]] ! 1373: %{ ! 1374: %} ! 1375: OPTIONAL <<ca->ca_requestor != NULLDN>> , ! 1376: [27] OperationProgress [[p &(ca->ca_progress)]] ! 1377: %{ ! 1378: %} ! 1379: OPTIONAL <<TRUE>> , ! 1380: aliasedRDNs ! 1381: [26] INTEGER [[i ca->ca_aliased_rdns]] ! 1382: OPTIONAL <<ca->ca_aliased_rdns != CA_NO_ALIASDEREFERENCED>> , ! 1383: extensions ! 1384: [25] SET OF ! 1385: <<extp=ca->ca_extensions; extp!=NULLEXT; extp=extp->ext_next>> ! 1386: Extension [[p extp]] ! 1387: OPTIONAL <<ca->ca_extensions != NULLEXT>> ! 1388: } ! 1389: %{ ! 1390: DLOG(log_dsap, LLOG_TRACE, ("Done encode SearchArgumentData PE")); ! 1391: %} ! 1392: ! 1393: SearchArgument [[P struct ds_search_arg *]] ! 1394: ::= ! 1395: %{ ! 1396: DLOG(log_dsap, LLOG_TRACE, ("About to encode SearchArgument (DAS)")); ! 1397: %} ! 1398: CHOICE ! 1399: <<(parm->sra_common.ca_sig == (struct signature *) 0)? 1:2>> ! 1400: { ! 1401: SearchArgumentData [[p parm]] , ! 1402: SEQUENCE ! 1403: { ! 1404: SearchArgumentData [[p parm]] , ! 1405: AlgorithmIdentifier ! 1406: [[p &(parm->sra_common.ca_sig->alg) ]], ! 1407: BIT STRING ! 1408: [[x (parm->sra_common.ca_sig->encrypted) $ ! 1409: (parm->sra_common.ca_sig->n_bits) ]] ! 1410: } ! 1411: } ! 1412: %{ ! 1413: DLOG(log_dsap, LLOG_TRACE, ("Done encode SearchArgument (DAS)")); ! 1414: %} ! 1415: ! 1416: SearchResultData [[P struct ds_search_result *]] ! 1417: %{ ! 1418: struct ds_search_result *srr_temp; ! 1419: EntryInfo *ent_temp; ! 1420: POQ poq_s; ! 1421: POQ * poq = &(poq_s); ! 1422: %} ! 1423: ::= ! 1424: %{ ! 1425: DLOG(log_dsap, LLOG_TRACE, ("About to encode SearchResultData PE")); ! 1426: %} ! 1427: CHOICE ! 1428: <<((parm->srr_correlated == FALSE) ? 2 : 1)>> ! 1429: { ! 1430: searchInfo ! 1431: %{ ! 1432: poq->poq_limitproblem = parm->CSR_limitproblem; ! 1433: poq->poq_cref = parm->CSR_cr; ! 1434: %} ! 1435: SET ! 1436: { ! 1437: DistinguishedName [[p parm->CSR_object]] ! 1438: %{ ! 1439: %} ! 1440: OPTIONAL <<parm->CSR_object != NULLDN>> , ! 1441: entries ! 1442: [0] SET OF ! 1443: %{ ! 1444: %} ! 1445: <<ent_temp=parm->CSR_entries;ent_temp!=NULLENTRYINFO;ent_temp=ent_temp->ent_next>> ! 1446: EntryInformation [[p ent_temp]] ! 1447: %{ ! 1448: %} ! 1449: %{ ! 1450: %} , ! 1451: partialOutcomeQualifier ! 1452: [2] PartialOutcomeQualifier [[p poq]] ! 1453: %{ ! 1454: %} ! 1455: OPTIONAL <<((poq->poq_limitproblem != LSR_NOLIMITPROBLEM) || (poq->poq_cref != NULLCONTINUATIONREF))>> , ! 1456: [30] SecurityParameters [[p (struct security_parms *)0 ]] ! 1457: -- OPTIONAL <<FALSE>> , ! 1458: OPTIONAL , ! 1459: performer ! 1460: [29] DistinguishedName [[p parm->CSR_common.cr_requestor]] ! 1461: %{ ! 1462: %} ! 1463: OPTIONAL <<parm->CSR_common.cr_requestor != NULLDN>> , ! 1464: aliasDereferenced ! 1465: [28] BOOLEAN [[b parm->CSR_common.cr_aliasdereferenced]] ! 1466: %{ ! 1467: %} ! 1468: -- DEFAULT FALSE <<parm->CSR_common.cr_aliasdereferenced != FALSE>> ! 1469: OPTIONAL <<parm->CSR_common.cr_aliasdereferenced != FALSE>> ! 1470: } ! 1471: %{ ! 1472: %} , ! 1473: uncorrelatedSearchInfo ! 1474: [0] SET OF ! 1475: %{ ! 1476: %} ! 1477: <<srr_temp=parm->srr_un.srr_parts;srr_temp!=NULLSRR;srr_temp=srr_temp->srr_next>> ! 1478: SearchResult [[p srr_temp]] ! 1479: %{ ! 1480: %} ! 1481: %{ ! 1482: %} ! 1483: } ! 1484: %{ ! 1485: DLOG(log_dsap, LLOG_TRACE, ("Done encode SearchResultData PE")); ! 1486: %} ! 1487: ! 1488: SearchResult [[P struct ds_search_result *]] ! 1489: ::= ! 1490: %{ ! 1491: DLOG(log_dsap, LLOG_TRACE, ("At encode SearchResult")); ! 1492: %} ! 1493: CHOICE ! 1494: <<1>> ! 1495: { ! 1496: SearchResultData [[p parm]] , ! 1497: SEQUENCE ! 1498: { ! 1499: SearchResultData [[p parm]] , ! 1500: AlgorithmIdentifier [[p (struct alg_id *)0 ]], ! 1501: BIT STRING ! 1502: } ! 1503: } ! 1504: %{ ! 1505: DLOG(log_dsap, LLOG_TRACE, ("Done encode SearchResult")); ! 1506: %} ! 1507: ! 1508: AddEntryArgumentData [[P struct ds_addentry_arg *]] ! 1509: %{ ! 1510: struct common_args * ca; ! 1511: struct extension * extp; ! 1512: Attr_Sequence attr_temp; ! 1513: %} ! 1514: ::= ! 1515: %{ ! 1516: DLOG(log_dsap, LLOG_TRACE, ("About to encode AddEntryArgumentData PE")); ! 1517: ca = &(parm->ada_common); ! 1518: %} ! 1519: SET ! 1520: { ! 1521: object ! 1522: [0] DistinguishedName [[p parm->ada_object]] ! 1523: %{ ! 1524: %} , ! 1525: entry ! 1526: [1] SET OF ! 1527: %{ ! 1528: %} ! 1529: <<attr_temp=parm->ada_entry;attr_temp!=NULLATTR;attr_temp=attr_temp->attr_link>> ! 1530: Attribute [[p attr_temp]] ! 1531: %{ ! 1532: %} ! 1533: %{ ! 1534: %} , ! 1535: [30] ServiceControls [[p &(ca->ca_servicecontrol)]] ! 1536: %{ ! 1537: %} ! 1538: -- DEFAULT {} , ! 1539: OPTIONAL <<TRUE>> , ! 1540: [29] SecurityParameters [[p ca->ca_security]] ! 1541: -- DEFAULT {} , ! 1542: OPTIONAL <<ca->ca_security>> , ! 1543: requestor ! 1544: [28] DistinguishedName [[p ca->ca_requestor]] ! 1545: %{ ! 1546: %} ! 1547: OPTIONAL <<ca->ca_requestor != NULLDN>> , ! 1548: [27] OperationProgress [[p &(ca->ca_progress)]] ! 1549: %{ ! 1550: %} ! 1551: OPTIONAL <<TRUE>> , ! 1552: aliasedRDNs ! 1553: [26] INTEGER [[i ca->ca_aliased_rdns]] ! 1554: OPTIONAL <<ca->ca_aliased_rdns != CA_NO_ALIASDEREFERENCED>> , ! 1555: extensions ! 1556: [25] SET OF ! 1557: <<extp=ca->ca_extensions; extp!=NULLEXT; extp=extp->ext_next>> ! 1558: Extension [[p extp]] ! 1559: OPTIONAL <<ca->ca_extensions != NULLEXT>> ! 1560: } ! 1561: %{ ! 1562: DLOG(log_dsap, LLOG_TRACE, ("Done encode AddEntryArgumentData PE")); ! 1563: %} ! 1564: ! 1565: AddEntryArgument [[P struct ds_addentry_arg *]] ! 1566: ::= ! 1567: %{ ! 1568: DLOG(log_dsap, LLOG_TRACE, ("At encode AddEntryArgument")); ! 1569: %} ! 1570: CHOICE ! 1571: <<(parm->ada_common.ca_sig == (struct signature *) 0)? 1:2>> ! 1572: { ! 1573: AddEntryArgumentData [[p parm]] , ! 1574: SEQUENCE ! 1575: { ! 1576: AddEntryArgumentData [[p parm]] , ! 1577: AlgorithmIdentifier ! 1578: [[p &(parm->ada_common.ca_sig->alg) ]], ! 1579: BIT STRING ! 1580: [[x (parm->ada_common.ca_sig->encrypted) $ ! 1581: (parm->ada_common.ca_sig->n_bits) ]] ! 1582: } ! 1583: } ! 1584: %{ ! 1585: DLOG(log_dsap, LLOG_TRACE, ("Done encode AddEntryArgument")); ! 1586: %} ! 1587: ! 1588: AddEntryResult ::= NULL ! 1589: ! 1590: RemoveEntryArgumentData [[P struct ds_removeentry_arg *]] ! 1591: %{ ! 1592: struct common_args * ca; ! 1593: struct extension * extp; ! 1594: %} ! 1595: ::= ! 1596: %{ ! 1597: DLOG(log_dsap, LLOG_TRACE, ("About to encode RemoveEntryArgumentData PE")); ! 1598: ca = &(parm->rma_common); ! 1599: %} ! 1600: SET ! 1601: { ! 1602: object ! 1603: [0] DistinguishedName [[p parm->rma_object]] ! 1604: %{ ! 1605: %} , ! 1606: [30] ServiceControls [[p &(ca->ca_servicecontrol)]] ! 1607: %{ ! 1608: %} ! 1609: -- DEFAULT {} , ! 1610: OPTIONAL <<TRUE>> , ! 1611: [29] SecurityParameters [[p ca->ca_security]] ! 1612: -- DEFAULT {} , ! 1613: OPTIONAL <<ca->ca_security>> , ! 1614: requestor ! 1615: [28] DistinguishedName [[p ca->ca_requestor]] ! 1616: %{ ! 1617: %} ! 1618: OPTIONAL <<ca->ca_requestor != NULLDN>> , ! 1619: [27] OperationProgress [[p &(ca->ca_progress)]] ! 1620: %{ ! 1621: %} ! 1622: OPTIONAL <<TRUE>> , ! 1623: aliasedRDNs ! 1624: [26] INTEGER [[i ca->ca_aliased_rdns]] ! 1625: OPTIONAL <<ca->ca_aliased_rdns != CA_NO_ALIASDEREFERENCED>> , ! 1626: extensions ! 1627: [25] SET OF ! 1628: <<extp=ca->ca_extensions; extp!=NULLEXT; extp=extp->ext_next>> ! 1629: Extension [[p extp]] ! 1630: OPTIONAL <<ca->ca_extensions != NULLEXT>> ! 1631: } ! 1632: %{ ! 1633: DLOG(log_dsap, LLOG_TRACE, ("Done encode RemoveEntryArgumentData PE")); ! 1634: %} ! 1635: ! 1636: RemoveEntryArgument [[P struct ds_removeentry_arg *]] ! 1637: ::= ! 1638: %{ ! 1639: DLOG(log_dsap, LLOG_TRACE, ("At encode RemoveEntryArgument")); ! 1640: %} ! 1641: CHOICE ! 1642: <<(parm->rma_common.ca_sig == (struct signature *) 0)? 1:2>> ! 1643: { ! 1644: RemoveEntryArgumentData [[p parm]] , ! 1645: SEQUENCE ! 1646: { ! 1647: RemoveEntryArgumentData [[p parm]] , ! 1648: AlgorithmIdentifier ! 1649: [[p &(parm->rma_common.ca_sig->alg) ]], ! 1650: BIT STRING ! 1651: [[x (parm->rma_common.ca_sig->encrypted) $ ! 1652: (parm->rma_common.ca_sig->n_bits) ]] ! 1653: } ! 1654: } ! 1655: %{ ! 1656: DLOG(log_dsap, LLOG_TRACE, ("Done encode RemoveEntryArgument")); ! 1657: %} ! 1658: ! 1659: RemoveEntryResult ::= NULL ! 1660: ! 1661: ModifyEntryArgumentData [[P struct ds_modifyentry_arg *]] ! 1662: %{ ! 1663: struct common_args * ca; ! 1664: struct extension * extp; ! 1665: struct entrymod *em_temp; ! 1666: %} ! 1667: ::= ! 1668: %{ ! 1669: DLOG(log_dsap, LLOG_TRACE, ("About to encode ModifyEntryArgumentData PE")); ! 1670: ca = &(parm->mea_common); ! 1671: %} ! 1672: SET ! 1673: { ! 1674: object ! 1675: [0] DistinguishedName [[p parm->mea_object]] ! 1676: %{ ! 1677: %} , ! 1678: changes ! 1679: [1] SEQUENCE OF ! 1680: %{ ! 1681: %} ! 1682: <<em_temp=parm->mea_changes;em_temp!=NULL;em_temp=em_temp->em_next>> ! 1683: EntryModification [[p em_temp]] ! 1684: %{ ! 1685: %} ! 1686: %{ ! 1687: %} , ! 1688: [30] ServiceControls [[p &(ca->ca_servicecontrol)]] ! 1689: %{ ! 1690: %} ! 1691: -- DEFAULT {} , ! 1692: OPTIONAL <<TRUE>> , ! 1693: [29] SecurityParameters [[p ca->ca_security]] ! 1694: -- DEFAULT {} , ! 1695: OPTIONAL <<ca->ca_security>> , ! 1696: requestor ! 1697: [28] DistinguishedName [[p ca->ca_requestor]] ! 1698: %{ ! 1699: %} ! 1700: OPTIONAL <<ca->ca_requestor != NULLDN>> , ! 1701: [27] OperationProgress [[p &(ca->ca_progress)]] ! 1702: %{ ! 1703: %} ! 1704: OPTIONAL <<TRUE>> , ! 1705: aliasedRDNs ! 1706: [26] INTEGER [[i ca->ca_aliased_rdns]] ! 1707: OPTIONAL <<ca->ca_aliased_rdns != CA_NO_ALIASDEREFERENCED>> , ! 1708: extensions ! 1709: [25] SET OF ! 1710: <<extp=ca->ca_extensions; extp!=NULLEXT; extp=extp->ext_next>> ! 1711: Extension [[p extp]] ! 1712: OPTIONAL <<ca->ca_extensions != NULLEXT>> ! 1713: } ! 1714: %{ ! 1715: DLOG(log_dsap, LLOG_TRACE, ("Done encode ModifyEntryArgumentData PE")); ! 1716: %} ! 1717: ! 1718: ModifyEntryArgument [[P struct ds_modifyentry_arg *]] ! 1719: ::= ! 1720: %{ ! 1721: DLOG(log_dsap, LLOG_TRACE, ("At encode ModifyEntryArgument")); ! 1722: %} ! 1723: CHOICE ! 1724: <<(parm->mea_common.ca_sig == (struct signature *) 0) ? 1 : 2>> ! 1725: { ! 1726: ModifyEntryArgumentData [[p parm]] , ! 1727: SEQUENCE ! 1728: { ! 1729: ModifyEntryArgumentData [[p parm]] , ! 1730: AlgorithmIdentifier [[p &(parm->mea_common.ca_sig->alg)]], ! 1731: BIT STRING [[x (parm->mea_common.ca_sig->encrypted) $ (parm->mea_common.ca_sig->n_bits) ]] ! 1732: } ! 1733: } ! 1734: %{ ! 1735: DLOG(log_dsap, LLOG_TRACE, ("Done encode ModifyEntryArgument")); ! 1736: %} ! 1737: ! 1738: ModifyEntryResult ::= NULL ! 1739: ! 1740: ModifyRDNArgumentData [[P struct ds_modifyrdn_arg *]] ! 1741: %{ ! 1742: struct common_args * ca; ! 1743: struct extension * extp; ! 1744: %} ! 1745: ::= ! 1746: %{ ! 1747: DLOG(log_dsap, LLOG_TRACE, ("About to encode ModifyRDNArgumentData PE")); ! 1748: ca = &(parm->mra_common); ! 1749: %} ! 1750: SET ! 1751: { ! 1752: object ! 1753: [0] DistinguishedName [[p parm->mra_object]] ! 1754: %{ ! 1755: %} , ! 1756: newRDN ! 1757: [1] RelativeDistinguishedName [[p parm->mra_newrdn]] ! 1758: %{ ! 1759: %} , ! 1760: deleteRDN ! 1761: [2] BOOLEAN [[b parm->deleterdn]] ! 1762: %{ ! 1763: %} ! 1764: -- DEFAULT FALSE <<parm->deleterdn != FALSE>> , ! 1765: OPTIONAL <<parm->deleterdn != FALSE>> , ! 1766: [30] ServiceControls [[p &(ca->ca_servicecontrol)]] ! 1767: %{ ! 1768: %} ! 1769: -- DEFAULT {} , ! 1770: OPTIONAL <<TRUE>> , ! 1771: [29] SecurityParameters [[p ca->ca_security]] ! 1772: -- DEFAULT {} , ! 1773: OPTIONAL <<ca->ca_security>> , ! 1774: requestor ! 1775: [28] DistinguishedName [[p ca->ca_requestor]] ! 1776: %{ ! 1777: %} ! 1778: OPTIONAL <<ca->ca_requestor != NULLDN>> , ! 1779: [27] OperationProgress [[p &(ca->ca_progress)]] ! 1780: %{ ! 1781: %} ! 1782: OPTIONAL <<TRUE>> , ! 1783: aliasedRDNs ! 1784: [26] INTEGER [[i ca->ca_aliased_rdns]] ! 1785: OPTIONAL <<ca->ca_aliased_rdns != CA_NO_ALIASDEREFERENCED>> , ! 1786: extensions ! 1787: [25] SET OF ! 1788: <<extp=ca->ca_extensions; extp!=NULLEXT; extp=extp->ext_next>> ! 1789: Extension [[p extp]] ! 1790: OPTIONAL <<ca->ca_extensions != NULLEXT>> ! 1791: } ! 1792: %{ ! 1793: DLOG(log_dsap, LLOG_TRACE, ("Done encode ModifyRDNArgumentData PE")); ! 1794: %} ! 1795: ! 1796: ModifyRDNArgument [[P struct ds_modifyrdn_arg *]] ! 1797: ::= ! 1798: %{ ! 1799: DLOG(log_dsap, LLOG_TRACE, ("At encode ModifyRDNArgument")); ! 1800: %} ! 1801: CHOICE ! 1802: <<(parm->mra_common.ca_sig == (struct signature *) 0)? 1:2>> ! 1803: { ! 1804: ModifyRDNArgumentData [[p parm]] , ! 1805: SEQUENCE ! 1806: { ! 1807: ModifyRDNArgumentData [[p parm]] , ! 1808: AlgorithmIdentifier ! 1809: [[p &(parm->mra_common.ca_sig->alg)]], ! 1810: BIT STRING [[x (parm->mra_common.ca_sig->encrypted) $ ! 1811: (parm->mra_common.ca_sig->n_bits) ]] ! 1812: } ! 1813: } ! 1814: %{ ! 1815: DLOG(log_dsap, LLOG_TRACE, ("Done encode ModifyRDNArgument")); ! 1816: %} ! 1817: ! 1818: ModifyRDNResult ::= NULL ! 1819: ! 1820: DirectoryBindError [[P struct ds_bind_error *]] ! 1821: %{ ! 1822: %} ! 1823: ::= ! 1824: %{ ! 1825: DLOG(log_dsap, LLOG_TRACE, ("About to encode DirectoryBindError")); ! 1826: %} ! 1827: SET ! 1828: { ! 1829: versions ! 1830: [0] Versions [[p parm->dbe_version]] ! 1831: %{ ! 1832: %} ! 1833: -- DEFAULT v1988 <<parm->dbe_version != DBA_VERSION_V1988>> , ! 1834: OPTIONAL <<parm->dbe_version != DBA_VERSION_V1988>> , ! 1835: CHOICE ! 1836: <<(parm->dbe_type + 1)>> ! 1837: { ! 1838: serviceError ! 1839: [1] ServiceProblem [[p parm->dbe_value]] ! 1840: %{ ! 1841: %} , ! 1842: securityError ! 1843: [2] SecurityProblem [[p parm->dbe_value]] ! 1844: %{ ! 1845: %} ! 1846: } ! 1847: %{ ! 1848: %} ! 1849: } ! 1850: %{ ! 1851: DLOG(log_dsap, LLOG_TRACE, ("Done encode DirectoryBindError")); ! 1852: %} ! 1853: ! 1854: AbandonFailedParm [[P struct DSE_abandon_fail *]] ! 1855: %{ ! 1856: %} ! 1857: ::= ! 1858: %{ ! 1859: DLOG(log_dsap, LLOG_TRACE, ("About to encode AbandonFailedParm PE")); ! 1860: %} ! 1861: SET ! 1862: %{ ! 1863: %} ! 1864: { ! 1865: problem ! 1866: [0] AbandonProblem [[p parm->DSE_ab_problem]] ! 1867: %{ ! 1868: %} , ! 1869: operation ! 1870: [1] InvokeID [[p parm->DSE_ab_invokeid]] ! 1871: %{ ! 1872: %} ! 1873: } ! 1874: %{ ! 1875: DLOG(log_dsap, LLOG_TRACE, ("Done encode AbandonFailedParm PE")); ! 1876: %} ! 1877: ! 1878: AttributeErrorParm [[P struct DSE_attribute *]] ! 1879: %{ ! 1880: struct DSE_at_problem *atp; ! 1881: %} ! 1882: ::= ! 1883: %{ ! 1884: DLOG(log_dsap, LLOG_TRACE, ("About to encode AttributeErrorParm PE")); ! 1885: %} ! 1886: SET ! 1887: %{ ! 1888: %} ! 1889: { ! 1890: object ! 1891: [0] Name [[p parm->DSE_at_name]] ! 1892: %{ ! 1893: %} , ! 1894: problems ! 1895: [1] SET OF ! 1896: %{ ! 1897: %} ! 1898: <<atp = &(parm->DSE_at_plist);(atp!=DSE_AT_NOPROBLEM) && atp->DSE_at_what;atp=atp->dse_at_next>> ! 1899: SEQUENCE ! 1900: %{ ! 1901: %} ! 1902: { ! 1903: problem ! 1904: [0] AttributeProblem [[p atp->DSE_at_what]] ! 1905: %{ ! 1906: %} , ! 1907: type ! 1908: [1] AttributeType [[p atp->DSE_at_type]] ! 1909: %{ ! 1910: %} , ! 1911: value ! 1912: [2] AttributeValue [[p atp->DSE_at_value]] ! 1913: %{ ! 1914: %} ! 1915: OPTIONAL <<atp->DSE_at_value != NULLAttrV>> ! 1916: } ! 1917: %{ ! 1918: %} ! 1919: %{ ! 1920: %} ! 1921: } ! 1922: %{ ! 1923: DLOG(log_dsap, LLOG_TRACE, ("Done encode AttributeErrorParm PE")); ! 1924: %} ! 1925: ! 1926: NameErrorParm [[P struct DSE_name *]] ! 1927: %{ ! 1928: %} ! 1929: ::= ! 1930: %{ ! 1931: DLOG(log_dsap, LLOG_TRACE, ("About to encode NameErrorParm PE")); ! 1932: %} ! 1933: SET ! 1934: %{ ! 1935: %} ! 1936: { ! 1937: problem ! 1938: [0] NameProblem [[p parm->DSE_na_problem]] ! 1939: %{ ! 1940: %} , ! 1941: matched ! 1942: [1] Name [[p parm->DSE_na_matched]] ! 1943: %{ ! 1944: %} ! 1945: } ! 1946: %{ ! 1947: DLOG(log_dsap, LLOG_TRACE, ("Done encode NameErrorParm PE")); ! 1948: %} ! 1949: ! 1950: ReferralParm [[P struct DSE_referral *]] ! 1951: %{ ! 1952: %} ! 1953: ::= ! 1954: %{ ! 1955: DLOG(log_dsap, LLOG_TRACE, ("About to encode ReferralParm PE")); ! 1956: %} ! 1957: SET ! 1958: %{ ! 1959: %} ! 1960: { ! 1961: candidate ! 1962: [0] ContinuationReference [[p parm->DSE_ref_candidates]] ! 1963: %{ ! 1964: %} ! 1965: } ! 1966: %{ ! 1967: DLOG(log_dsap, LLOG_TRACE, ("Done encode ReferralParm PE")); ! 1968: %} ! 1969: ! 1970: SecurityErrorParm [[P struct DSE_security *]] ! 1971: %{ ! 1972: %} ! 1973: ::= ! 1974: %{ ! 1975: DLOG(log_dsap, LLOG_TRACE, ("About to encode SecurityErrorParm PE")); ! 1976: %} ! 1977: SET ! 1978: %{ ! 1979: %} ! 1980: { ! 1981: problem ! 1982: [0] SecurityProblem [[p parm->DSE_sc_problem]] ! 1983: %{ ! 1984: %} ! 1985: } ! 1986: %{ ! 1987: DLOG(log_dsap, LLOG_TRACE, ("Done encode SecurityErrorParm PE")); ! 1988: %} ! 1989: ! 1990: ServiceErrorParm [[P struct DSE_service *]] ! 1991: %{ ! 1992: %} ! 1993: ::= ! 1994: %{ ! 1995: DLOG(log_dsap, LLOG_TRACE, ("About to encode ServiceErrorParm PE")); ! 1996: %} ! 1997: SET ! 1998: %{ ! 1999: %} ! 2000: { ! 2001: problem ! 2002: [0] ServiceProblem [[p parm->DSE_sv_problem]] ! 2003: %{ ! 2004: %} ! 2005: } ! 2006: %{ ! 2007: DLOG(log_dsap, LLOG_TRACE, ("Done encode ServiceErrorParm PE")); ! 2008: %} ! 2009: ! 2010: UpdateErrorParm [[P struct DSE_update *]] ! 2011: %{ ! 2012: %} ! 2013: ::= ! 2014: %{ ! 2015: DLOG(log_dsap, LLOG_TRACE, ("About to encode UpdateErrorParm PE")); ! 2016: %} ! 2017: SET ! 2018: %{ ! 2019: %} ! 2020: { ! 2021: problem ! 2022: [0] UpdateProblem [[p parm->DSE_up_problem]] ! 2023: %{ ! 2024: %} ! 2025: } ! 2026: %{ ! 2027: DLOG(log_dsap, LLOG_TRACE, ("Done encode UpdateErrorParm PE")); ! 2028: %} ! 2029: ! 2030: END
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.