]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
Introduce the notion of experimental features
authorOndřej Kuzník <okuznik@symas.com>
Mon, 8 Apr 2019 16:19:28 +0000 (17:19 +0100)
committerOndřej Kuzník <okuznik@symas.com>
Tue, 17 Nov 2020 17:58:15 +0000 (17:58 +0000)
servers/lloadd/config.c
servers/lloadd/lload.h

index 638c167b70f5bdcd1d38f3662b6217f9c5db7e03..69b74b65e91bc8e7628840c0a05c39cbc2712421 100644 (file)
@@ -1890,6 +1890,19 @@ config_feature( ConfigArgs *c )
                 c->argv[0], c->argv[i] );
         return 1;
     }
+
+    if ( mask & ~LLOAD_FEATURE_SUPPORTED_MASK ) {
+        for ( i = 1; i < c->argc; i++ ) {
+            int j = verb_to_mask( c->argv[i], features );
+            if ( features[j].mask & ~LLOAD_FEATURE_SUPPORTED_MASK ) {
+                Debug( LDAP_DEBUG_ANY, "%s: <%s> "
+                        "experimental feature %s is undocumented, unsupported "
+                        "and can change or disappear at any time!\n",
+                        c->log, c->argv[0], c->argv[i] );
+            }
+        }
+    }
+
     lload_features |= mask;
     return 0;
 }
index 72c34511723dcfb8ec5df7b5185152418c92a1a9..c5a694055988c711ae48e131e58d290cc99b32fa 100644 (file)
@@ -177,6 +177,10 @@ typedef enum {
     LLOAD_FEATURE_PAUSE = 1 << 2,
 } lload_features_t;
 
+#define LLOAD_FEATURE_SUPPORTED_MASK ( \
+    LLOAD_FEATURE_PROXYAUTHZ | \
+    0 )
+
 #ifdef BALANCER_MODULE
 #define LLOAD_TLS_CTX ( lload_use_slap_tls_ctx ? slap_tls_ctx : lload_tls_ctx )
 #else