svn commit: samba r7684 - in branches/SAMBA_4_0/source: script/tests torture torture/rpc

abartlet at samba.org abartlet at samba.org
Fri Jun 17 11:48:01 GMT 2005


Author: abartlet
Date: 2005-06-17 11:48:01 +0000 (Fri, 17 Jun 2005)
New Revision: 7684

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=7684

Log:
Add a test aimed at checking we have agreement between client and
server as to the CIFS session key.

JRA had pain with this being wrong against NT4 (without spnego), hence
this specific test.

Andrew Bartlett

Added:
   branches/SAMBA_4_0/source/script/tests/test_session_key.sh
Modified:
   branches/SAMBA_4_0/source/script/tests/selftest.sh
   branches/SAMBA_4_0/source/script/tests/test_rpc.sh
   branches/SAMBA_4_0/source/torture/rpc/lsa.c
   branches/SAMBA_4_0/source/torture/torture.c


Changeset:
Modified: branches/SAMBA_4_0/source/script/tests/selftest.sh
===================================================================
--- branches/SAMBA_4_0/source/script/tests/selftest.sh	2005-06-17 11:05:08 UTC (rev 7683)
+++ branches/SAMBA_4_0/source/script/tests/selftest.sh	2005-06-17 11:48:01 UTC (rev 7684)
@@ -87,6 +87,7 @@
  failed=0
  $SRCDIR/script/tests/test_ldap.sh localhost || failed=`expr $failed + $?`
  $SRCDIR/script/tests/test_rpc.sh localhost $USERNAME $PASSWORD $DOMAIN $ADDARG || failed=`expr $failed + $?`
+ $SRCDIR/script/tests/test_session_key.sh localhost $USERNAME $PASSWORD $DOMAIN $ADDARG || failed=`expr $failed + $?`
  $SRCDIR/script/tests/test_binding_string.sh localhost $USERNAME $PASSWORD $DOMAIN $ADDARG || failed=`expr $failed + $?`
  $SRCDIR/script/tests/test_echo.sh localhost $USERNAME $PASSWORD $DOMAIN $ADDARG || failed=`expr $failed + $?`
  $SRCDIR/script/tests/test_posix.sh //localhost/tmp $USERNAME $PASSWORD "" $ADDARG || failed=`expr $failed + $?`

Modified: branches/SAMBA_4_0/source/script/tests/test_rpc.sh
===================================================================
--- branches/SAMBA_4_0/source/script/tests/test_rpc.sh	2005-06-17 11:05:08 UTC (rev 7683)
+++ branches/SAMBA_4_0/source/script/tests/test_rpc.sh	2005-06-17 11:48:01 UTC (rev 7684)
@@ -5,6 +5,9 @@
 ncacn_np_tests="RPC-SPOOLSS RPC-SCHANNEL RPC-ECHO RPC-DSSETUP RPC-ALTERCONTEXT RPC-MULTIBIND"
 ncalrpc_tests="RPC-SCHANNEL RPC-ECHO RPC-DSSETUP RPC-ALTERCONTEXT RPC-MULTIBIND"
 ncacn_ip_tcp_tests="RPC-SCHANNEL RPC-ECHO RPC-DSSETUP RPC-ALTERCONTEXT RPC-MULTIBIND"
+slow_ncacn_np_tests="RPC-SAMLOGON"
+slow_ncalrpc_tests="RPC-SAMLOGON"
+slow_ncacn_ip_tcp_tests="RPC-SAMLOGON"
 
 if [ $# -lt 4 ]; then
 cat <<EOF
@@ -42,3 +45,18 @@
 done
 
 testok $0 $failed
+
+#for bindoptions in connect validate padcheck bigendian bigendian,seal; do
+# for transport in ncalrpc ncacn_np ncacn_ip_tcp; do
+#     case $transport in
+#	 ncalrpc) tests=$slow_ncalrpc_tests ;;
+#	 ncacn_np) tests=$slow_ncacn_np_tests ;;
+#	 ncacn_ip_tcp) tests=$slow_ncacn_ip_tcp_tests ;;
+#     esac
+#   for t in $tests; do
+#    name="$t on $transport with $bindoptions"
+#    testit "$name" $VALGRIND bin/smbtorture $TORTURE_OPTIONS $transport:"$server[$bindoptions]" -U"$username"%"$password" -W $domain $t "$*" || failed=`expr $failed + 1`
+#   done
+# done
+#done
+

Added: branches/SAMBA_4_0/source/script/tests/test_session_key.sh
===================================================================
--- branches/SAMBA_4_0/source/script/tests/test_session_key.sh	2005-06-17 11:05:08 UTC (rev 7683)
+++ branches/SAMBA_4_0/source/script/tests/test_session_key.sh	2005-06-17 11:48:01 UTC (rev 7684)
@@ -0,0 +1,33 @@
+#!/bin/sh
+
+if [ $# -lt 4 ]; then
+cat <<EOF
+Usage: test_session_key.sh SERVER USERNAME PASSWORD DOMAIN
+EOF
+exit 1;
+fi
+
+server="$1"
+username="$2"
+password="$3"
+domain="$4"
+shift 4
+
+incdir=`dirname $0`
+. $incdir/test_functions.sh
+
+failed=0
+transport="ncacn_np"
+  for ntlmoptions in \
+        "--option=usespnego=yes --option=ntlmssp_client:ntlm2=yes" \
+        "--option=usespnego=yes --option=ntlmssp_client:ntlm2=no" \
+        "--option=usespnego=yes --option=ntlmssp_client:ntlm2=yes --option=ntlmssp_client:128bit=no" \
+        "--option=usespnego=yes--option=ntlmssp_client:ntlm2=no  --option=ntlmssp_client:128bit=no" \
+        "--option=usespnego=yes --option=ntlmssp_client:ntlm2=yes --option=ntlmssp_client:keyexchange=no" \
+        "--option=usespnego=yes --option=ntlmssp_client:ntlm2=no  --option=ntlmssp_client:keyexchange=no" \
+        "--option=usespnego=no" \
+    ; do
+   name="$transport with $ntlmoptions"
+   testit "$name" bin/smbtorture $TORTURE_OPTIONS $transport:"$server[$bindoptions]" $ntlmoptions -U"$username"%"$password" -W $domain RPC-SECRETS "$*" || failed=`expr $failed + 1`
+  done
+testok $0 $failed


Property changes on: branches/SAMBA_4_0/source/script/tests/test_session_key.sh
___________________________________________________________________
Name: svn:executable
   + *

Modified: branches/SAMBA_4_0/source/torture/rpc/lsa.c
===================================================================
--- branches/SAMBA_4_0/source/torture/rpc/lsa.c	2005-06-17 11:05:08 UTC (rev 7683)
+++ branches/SAMBA_4_0/source/torture/rpc/lsa.c	2005-06-17 11:48:01 UTC (rev 7684)
@@ -1680,3 +1680,37 @@
 
 	return ret;
 }
+
+
+BOOL torture_rpc_lsa_secrets(void) 
+{
+        NTSTATUS status;
+        struct dcerpc_pipe *p;
+	TALLOC_CTX *mem_ctx;
+	BOOL ret = True;
+	struct policy_handle handle;
+
+	mem_ctx = talloc_init("torture_rpc_lsa_secrets");
+
+	status = torture_rpc_connection(mem_ctx, 
+					&p, 
+					DCERPC_LSARPC_NAME, 
+					DCERPC_LSARPC_UUID, 
+					DCERPC_LSARPC_VERSION);
+	if (!NT_STATUS_IS_OK(status)) {
+		talloc_free(mem_ctx);
+		return False;
+	}
+
+	if (!test_lsa_OpenPolicy2(p, mem_ctx, &handle)) {
+		ret = False;
+	}
+
+	if (!test_CreateSecret(p, mem_ctx, &handle)) {
+		ret = False;
+	}
+
+	talloc_free(mem_ctx);
+
+	return ret;
+}

Modified: branches/SAMBA_4_0/source/torture/torture.c
===================================================================
--- branches/SAMBA_4_0/source/torture/torture.c	2005-06-17 11:05:08 UTC (rev 7683)
+++ branches/SAMBA_4_0/source/torture/torture.c	2005-06-17 11:48:01 UTC (rev 7684)
@@ -2280,6 +2280,7 @@
 
 	/* rpc testers */
         {"RPC-LSA", torture_rpc_lsa, 0},
+        {"RPC-SECRETS", torture_rpc_lsa_secrets, 0},
         {"RPC-ECHO", torture_rpc_echo, 0},
         {"RPC-DFS", torture_rpc_dfs, 0},
         {"RPC-SPOOLSS", torture_rpc_spoolss, 0},



More information about the samba-cvs mailing list