summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/libcli/ldap/ldap_controls.c40
1 files changed, 40 insertions, 0 deletions
diff --git a/source4/libcli/ldap/ldap_controls.c b/source4/libcli/ldap/ldap_controls.c
index 48ac5424a0..aef775fab5 100644
--- a/source4/libcli/ldap/ldap_controls.c
+++ b/source4/libcli/ldap/ldap_controls.c
@@ -454,6 +454,24 @@ static bool decode_show_deleted_request(void *mem_ctx, DATA_BLOB in, void *_out)
return true;
}
+static bool decode_show_recycled_request(void *mem_ctx, DATA_BLOB in, void *_out)
+{
+ if (in.length != 0) {
+ return false;
+ }
+
+ return true;
+}
+
+static bool decode_show_deactivated_link_request(void *mem_ctx, DATA_BLOB in, void *_out)
+{
+ if (in.length != 0) {
+ return false;
+ }
+
+ return true;
+}
+
static bool decode_permissive_modify_request(void *mem_ctx, DATA_BLOB in, void *_out)
{
if (in.length != 0) {
@@ -961,6 +979,26 @@ static bool encode_show_deleted_request(void *mem_ctx, void *in, DATA_BLOB *out)
return true;
}
+static bool encode_show_recycled_request(void *mem_ctx, void *in, DATA_BLOB *out)
+{
+ if (in) {
+ return false;
+ }
+
+ *out = data_blob(NULL, 0);
+ return true;
+}
+
+static bool encode_show_deactivated_link_request(void *mem_ctx, void *in, DATA_BLOB *out)
+{
+ if (in) {
+ return false;
+ }
+
+ *out = data_blob(NULL, 0);
+ return true;
+}
+
static bool encode_permissive_modify_request(void *mem_ctx, void *in, DATA_BLOB *out)
{
if (in) {
@@ -1222,6 +1260,8 @@ static const struct ldap_control_handler ldap_known_controls[] = {
{ "1.2.840.113556.1.4.841", decode_dirsync_request, encode_dirsync_request },
{ "1.2.840.113556.1.4.528", decode_notification_request, encode_notification_request },
{ "1.2.840.113556.1.4.417", decode_show_deleted_request, encode_show_deleted_request },
+ { "1.2.840.113556.1.4.2064", decode_show_recycled_request, encode_show_recycled_request },
+ { "1.2.840.113556.1.4.2065", decode_show_deactivated_link_request, encode_show_deactivated_link_request },
{ "1.2.840.113556.1.4.1413", decode_permissive_modify_request, encode_permissive_modify_request },
{ "1.2.840.113556.1.4.801", decode_sd_flags_request, encode_sd_flags_request },
{ "1.2.840.113556.1.4.1339", decode_domain_scope_request, encode_domain_scope_request },