|
|
1.1 ! root 1: /* dsargument.h - structures for argument and result */ ! 2: ! 3: /* ! 4: * $Header: /f/osi/h/quipu/RCS/dsargument.h,v 7.1 90/07/09 14:38:30 mrose Exp $ ! 5: * ! 6: * ! 7: * $Log: dsargument.h,v $ ! 8: * Revision 7.1 90/07/09 14:38:30 mrose ! 9: * sync ! 10: * ! 11: * Revision 7.0 89/11/23 21:56:32 mrose ! 12: * Release 6.0 ! 13: * ! 14: */ ! 15: ! 16: /* ! 17: * NOTICE ! 18: * ! 19: * Acquisition, use, and distribution of this module and related ! 20: * materials are subject to the restrictions of a license agreement. ! 21: * Consult the Preface in the User's Manual for the full terms of ! 22: * this agreement. ! 23: * ! 24: */ ! 25: ! 26: ! 27: #ifndef QUIPUDSARG ! 28: #define QUIPUDSARG ! 29: ! 30: #include "quipu/entry.h" /* for getedb stuff */ ! 31: ! 32: /* CN_CTX values used by high level decoders */ ! 33: #define CN_CTX_UNKNOWN 0 ! 34: #define CN_CTX_X500_DAP 1 ! 35: #define CN_CTX_X500_DSP 2 ! 36: #define CN_CTX_QUIPU_DSP 3 ! 37: ! 38: ! 39: struct DSArgument { ! 40: int arg_type; ! 41: #define OP_READ 1 ! 42: #define OP_COMPARE 2 ! 43: #define OP_ABANDON 3 ! 44: #define OP_LIST 4 ! 45: #define OP_SEARCH 5 ! 46: #define OP_ADDENTRY 6 ! 47: #define OP_REMOVEENTRY 7 ! 48: #define OP_MODIFYENTRY 8 ! 49: #define OP_MODIFYRDN 9 ! 50: #define OP_GETEDB 10 ! 51: #define ds_recog_op(a) ((a >= OP_READ) && (a <= OP_MODIFYRDN)) ! 52: #define qu_recog_op(a) ((a >= OP_READ) && (a <= OP_GETEDB)) ! 53: union { ! 54: struct ds_read_arg arg_un_read; ! 55: struct ds_compare_arg arg_un_compare; ! 56: struct ds_abandon_arg arg_un_abandon; ! 57: struct ds_list_arg arg_un_list; ! 58: struct ds_search_arg arg_un_search; ! 59: struct ds_addentry_arg arg_un_addentry; ! 60: struct ds_removeentry_arg arg_un_removeentry; ! 61: struct ds_modifyentry_arg arg_un_modifyentry; ! 62: struct ds_modifyrdn_arg arg_un_modifyrdn; ! 63: struct getedb_arg arg_un_getedb; ! 64: } arg_un; ! 65: #define arg_rd arg_un.arg_un_read ! 66: #define arg_cm arg_un.arg_un_compare ! 67: #define arg_ab arg_un.arg_un_abandon ! 68: #define arg_ls arg_un.arg_un_list ! 69: #define arg_sr arg_un.arg_un_search ! 70: #define arg_ad arg_un.arg_un_addentry ! 71: #define arg_rm arg_un.arg_un_removeentry ! 72: #define arg_me arg_un.arg_un_modifyentry ! 73: #define arg_mr arg_un.arg_un_modifyrdn ! 74: #define arg_ge arg_un.arg_un_getedb ! 75: }; ! 76: ! 77: struct DSResult { ! 78: int result_type; /* same values as for DSArgument */ ! 79: union { ! 80: struct ds_read_result result_un_read; ! 81: struct ds_compare_result result_un_compare; ! 82: struct ds_list_result result_un_list; ! 83: struct ds_search_result result_un_search; ! 84: struct getedb_result result_un_getedb; ! 85: } result_un; ! 86: #define res_rd result_un.result_un_read ! 87: #define res_cm result_un.result_un_compare ! 88: #define res_ls result_un.result_un_list ! 89: #define res_sr result_un.result_un_search ! 90: #define res_ge result_un.result_un_getedb ! 91: }; ! 92: ! 93: typedef struct cross_ref ! 94: { ! 95: DN xref_dn; ! 96: struct access_point * xref_ap; ! 97: struct cross_ref * xref_next; ! 98: } CrossRefs; ! 99: #define NULLXREF ((struct cross_ref *) NULL) ! 100: ! 101: typedef struct chain_arg ! 102: { ! 103: DN cha_originator; ! 104: DN cha_target; ! 105: struct op_progress cha_progress; ! 106: struct trace_info * cha_trace; ! 107: char cha_aliasderef; ! 108: int cha_aliasedrdns; ! 109: char cha_entryonly; ! 110: int cha_returnrefs; ! 111: int cha_reftype; ! 112: PE cha_domaininfo; ! 113: char * cha_timelimit; ! 114: } * ChainingArg; ! 115: ! 116: typedef struct chain_res ! 117: { ! 118: PE chr_domaininfo; ! 119: struct cross_ref * chr_crossrefs; ! 120: } * ChainingRes; ! 121: ! 122: typedef struct ds_op_arg ! 123: { ! 124: struct chain_arg dca_charg; ! 125: struct DSArgument dca_dsarg; ! 126: } OPArgument; ! 127: ! 128: typedef struct ds_op_res ! 129: { ! 130: struct chain_res dcr_chres; ! 131: struct DSResult dcr_dsres; ! 132: } OPResult; ! 133: ! 134: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.