|
|
1.1 root 1: /* oid.h - object identifier stuff */
2:
3: /*
4: * $Header: /f/osi/h/quipu/RCS/oid.h,v 7.1 90/07/09 14:38:37 mrose Exp $
5: *
6: *
7: * $Log: oid.h,v $
8: * Revision 7.1 90/07/09 14:38:37 mrose
9: * sync
10: *
11: * Revision 7.0 89/11/23 21:56:41 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 QUIPUOID
28: #define QUIPUOID
29:
30: #include "psap.h"
31:
32: /* Definitions of OID's the DSA needs to know */
33: /* X500 defined attributes */
34: #define OBJECTCLASS_OID "2.5.4.0"
35: #define ALIAS_OID "2.5.4.1"
36: #define CN_OID "2.5.4.3"
37: #define DSAADDRESS_OID "2.5.4.29"
38: #define APPLCTX_OID "2.5.4.30"
39: #define PASSWORD_OID "2.5.4.35"
40: #define CERTIFICATE_OID "2.5.4.36"
41: /* QUIPU defined attributes */
42: #define SCHEMA_OID "0.9.2342.19200300.99.1.1"
43: #define ACL_OID "0.9.2342.19200300.99.1.2"
44: #define EDBINFO_OID "0.9.2342.19200300.99.1.3"
45: #define MASTERDSA_OID "0.9.2342.19200300.99.1.4"
46: #define SLAVEDSA_OID "0.9.2342.19200300.99.1.5"
47: #define CONTROL_OID "0.9.2342.19200300.99.1.15"
48: #define VERSION_OID "0.9.2342.19200300.99.1.16"
49: #define PROTECTED_OID "0.9.2342.19200300.99.1.17"
50: /* THORN defined attribute */
51: #define MANAGER_OID "0.9.2342.19200300.100.1.10"
52: #define LAST_MOD_OID "0.9.2342.19200300.100.1.23"
53: #define MOD_BY_OID "0.9.2342.19200300.100.1.24"
54: /* NON leaf object class */
55: #define QUIPU_DSA "0.9.2342.19200300.99.3.1"
56: #define NONLEAFOBJECT "0.9.2342.19200300.99.3.6"
57: /* alias objectclass */
58: #define ALIAS_OC "2.5.6.1"
59: #define TOP_OC "2.5.6.0"
60:
61: /* X500 defined protocol oids */
62: #ifdef USE_BUILTIN_OIDS
63: #define DIR_ACCESS_AC str2oid("2.5.3.1")
64: #define DIR_SYSTEM_AC str2oid("2.5.3.2")
65: #define DIR_QUIPU_AC str2oid("0.9.2342.19200300.99.4")
66: #define DIR_ACCESS_AS str2oid("2.5.9.1")
67: #define DIR_SYSTEM_AS str2oid("2.5.9.2")
68: #define DIR_QUIPU_AS str2oid("0.9.2342.19200300.99.5")
69: #define DIR_ACSE str2oid("2.2.1.0.1")
70: #else /* use isobjects */
71: #define DIR_ACCESS_AC ode2oid("directory directoryAccessAC")
72: #define DIR_SYSTEM_AC ode2oid("directory directorySystemAC")
73: #define DIR_QUIPU_AC str2oid("0.9.2342.19200300.99.4")
74: #define DIR_ACCESS_AS ode2oid("directory directoryAccessAS")
75: #define DIR_SYSTEM_AS ode2oid("directory directorySystemAS")
76: #define DIR_QUIPU_AS str2oid("0.9.2342.19200300.99.5")
77: #define DIR_ACSE ode2oid("acse pci version 1")
78: #endif
79:
80: /* Wrong file for the following, but they are connected to the above so... */
81: #define DIR_ACCESS_PC_ID 1
82: #define DIR_SYSTEM_PC_ID 1
83: #define DIR_QUIPU_PC_ID 1
84: #define DIR_ACSE_PC_ID 3
85:
86: /* oid table lookup definitions */
87: #define SEPERATOR ':'
88: #define DOT '.'
89: #define COMMA ','
90: #define COMMENT '#'
91:
92: #define BUFSIZE 40
93: #define TABLESIZE 300
94:
95: #define OIDPART 1
96: #define OIDFULL 2
97: #define OIDNUM 3
98:
99: typedef struct {
100: char ot_name [BUFSIZE];
101: char ot_stroid [BUFSIZE];
102: OID ot_oid;
103: } oid_table;
104: #define NULLTABLE ((oid_table * )0)
105:
106: typedef struct {
107: oid_table oa_ot;
108: short oa_syntax;
109: } oid_table_attr;
110: #define NULLTABLE_ATTR ((oid_table_attr *)0)
111:
112:
113: typedef struct seq_tab {
114: oid_table_attr * ts_oa;
115: struct seq_tab * ts_next;
116: } * table_seq;
117: #define NULLTABLE_SEQ ((table_seq)0)
118:
119: typedef struct {
120: oid_table oc_ot;
121: struct oid_seq * oc_hierachy;
122: table_seq oc_must;
123: table_seq oc_may;
124: } objectclass;
125: #define NULLOBJECTCLASS ((objectclass * )0)
126:
127: oid_table_attr * oid2attr();
128: oid_table_attr * name2attr();
129: char * attr2name();
130:
131: objectclass * oid2oc();
132: objectclass * name2oc();
133: char * oc2name();
134:
135: char * oid2name(); /* find oid wherever it is hiding !!! */
136: OID name2oid();
137:
138: char * SkipSpace ();
139: void StripSpace ();
140:
141: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.