LDAP-CLDAP: demonstrate that pdc name is an unc path
authorStefan Metzmacher <metze@samba.org>
Wed, 4 Jan 2012 10:46:47 +0000 (11:46 +0100)
committerStefan Metzmacher <metze@samba.org>
Wed, 4 Jan 2012 12:37:42 +0000 (13:37 +0100)
For LOGON_SAM_LOGON_RESPONSE and LOGON_SAM_LOGON_USER_UNKNOWN,
I assume all levels without _EX in the name, pdc name is
in unc path form.

[MS-ADTS] 7.3.1.* uses UnicodeLogonServer, which seems to be in unc form,
while NetbiosComputerName is not in unc form.

metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Wed Jan  4 13:37:42 CET 2012 on sn-devel-104

source4/torture/ldap/cldap.c

index 6de33b8597cf4e63c0afdf815b7ee62edd57ffde..b3f62762cfb8a7dbd40768f9093fa81a611ffc85 100644 (file)
@@ -123,6 +123,9 @@ static bool test_cldap_netlogon(struct torture_context *tctx, const char *dest)
        CHECK_STATUS(status, NT_STATUS_OK);
        CHECK_VAL(search.out.netlogon.data.nt5_ex.command, LOGON_SAM_LOGON_RESPONSE);
        CHECK_STRING(search.out.netlogon.data.nt5_ex.user_name, "");
+       torture_assert(tctx,
+                      strstr(search.out.netlogon.data.nt5_ex.pdc_name, "\\\\") != NULL,
+                      "PDC name should be in UNC form");
 
        printf("Trying with User=Administrator\n");
        search.in.user = "Administrator";
@@ -130,6 +133,9 @@ static bool test_cldap_netlogon(struct torture_context *tctx, const char *dest)
        CHECK_STATUS(status, NT_STATUS_OK);
        CHECK_VAL(search.out.netlogon.data.nt5_ex.command, LOGON_SAM_LOGON_USER_UNKNOWN);
        CHECK_STRING(search.out.netlogon.data.nt5_ex.user_name, search.in.user);
+       torture_assert(tctx,
+                      strstr(search.out.netlogon.data.nt5_ex.pdc_name, "\\\\") != NULL,
+                      "PDC name should be in UNC form");
 
        search.in.version = NETLOGON_NT_VERSION_5 | NETLOGON_NT_VERSION_5EX;