summaryrefslogtreecommitdiff
path: root/source4/torture
diff options
context:
space:
mode:
Diffstat (limited to 'source4/torture')
-rw-r--r--source4/torture/ldap/cldap.c25
1 files changed, 23 insertions, 2 deletions
diff --git a/source4/torture/ldap/cldap.c b/source4/torture/ldap/cldap.c
index 5f6ef3f649..b22dc7b47c 100644
--- a/source4/torture/ldap/cldap.c
+++ b/source4/torture/ldap/cldap.c
@@ -80,6 +80,7 @@ static BOOL test_cldap_netlogon(TALLOC_CTX *mem_ctx, const char *dest)
CHECK_STATUS(status, NT_STATUS_OK);
printf("Trying with a GUID\n");
+ search.in.realm = NULL;
search.in.domain_guid = GUID_string(mem_ctx, &n1.logon4.domain_uuid);
status = cldap_netlogon(cldap, mem_ctx, &search);
CHECK_STATUS(status, NT_STATUS_OK);
@@ -89,11 +90,17 @@ static BOOL test_cldap_netlogon(TALLOC_CTX *mem_ctx, const char *dest)
search.in.user = NULL;
search.in.domain_guid = GUID_string(mem_ctx, &guid);
status = cldap_netlogon(cldap, mem_ctx, &search);
+ CHECK_STATUS(status, NT_STATUS_NOT_FOUND);
+
+ printf("Trying with a incorrect domain and correct guid\n");
+ search.in.realm = "test.example.com";
+ search.in.domain_guid = GUID_string(mem_ctx, &n1.logon4.domain_uuid);
+ status = cldap_netlogon(cldap, mem_ctx, &search);
CHECK_STATUS(status, NT_STATUS_OK);
- printf("Trying with a incorrect domain\n");
+ printf("Trying with a incorrect domain and incorrect guid\n");
search.in.realm = "test.example.com";
- search.in.domain_guid = NULL;
+ search.in.domain_guid = GUID_string(mem_ctx, &guid);
status = cldap_netlogon(cldap, mem_ctx, &search);
CHECK_STATUS(status, NT_STATUS_NOT_FOUND);
@@ -109,6 +116,20 @@ static BOOL test_cldap_netlogon(TALLOC_CTX *mem_ctx, const char *dest)
status = cldap_netlogon(cldap, mem_ctx, &search);
CHECK_STATUS(status, NT_STATUS_OK);
+ printf("Trying with a user only\n");
+ search.in.acct_control = -1;
+ search.in.user = "Administrator";
+ search.in.realm = NULL;
+ search.in.domain_guid = NULL;
+ status = cldap_netlogon(cldap, mem_ctx, &search);
+ CHECK_STATUS(status, NT_STATUS_OK);
+
+ printf("Trying without any attributes\n");
+ search.in.user = NULL;
+ search.in.host = NULL;
+ status = cldap_netlogon(cldap, mem_ctx, &search);
+ CHECK_STATUS(status, NT_STATUS_OK);
+
done:
return ret;
}