]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/component.h
1) <select> and <content> type component reference support
[openldap] / servers / slapd / component.h
index e7ce72e957fa12ecd1d8fa40be76c33ed4903dab..876e96b7998d2c4659b81f44caa7b7ff5785b4e8 100644 (file)
@@ -4,12 +4,12 @@
 #include "portable.h"
 #include <ac/string.h>
 #include <ac/socket.h>
-#include "ldap_pvt.h"
+#include <ldap_pvt.h>
 #include "lutil.h"
 #include <ldap.h>
 #include "slap.h"
 
-typedef enum {ASN_BASIC, ASN_COMPOSITE } AsnType;
+typedef enum { ASN_BASIC, ASN_COMPOSITE } AsnType;
 /*
  * Decoder Modes
  * Different operation is required to handle Decoding(2), Extracted Component
@@ -34,5 +34,25 @@ typedef enum {ASN_BASIC, ASN_COMPOSITE } AsnType;
 #define DEC_ALLOC_MODE_2        0x04
 #define CALL_TAG_DECODER        0x08
 #define CALL_CONTENT_DECODER    ~0x08
+/*
+ * For Attribute Aliasing
+ */
+#define MAX_ALIASING_ENTRY 128
+typedef struct comp_attribute_aliasing {
+        AttributeDescription*  aa_aliasing_ad;
+        AttributeDescription*  aa_aliased_ad;
+        ComponentFilter*       aa_cf;
+       MatchingRule*           aa_mr;
+       char*                   aa_cf_str;
+} AttributeAliasing;
+                                                                                 
+typedef struct comp_matchingrule_aliasing {
+        MatchingRule*  mra_aliasing_attr;
+        MatchingRule*  mra_aliased_attr;
+        AttributeDescription*  mra_attr;
+        ComponentFilter*       mra_cf;
+       MatchingRule*           mra_mr;
+       char*                   aa_cf_str;
+} MatchingRuleAliasing;
 
 #endif