2006-10-24 05:25:09 +04:00
#!/bin/sh
2007-04-30 00:37:59 +04:00
. selftest/test_functions.sh
2006-10-24 05:25:09 +04:00
2007-04-30 00:37:59 +04:00
. selftest/win/wintest_functions.sh
2006-10-24 05:25:09 +04:00
# This variable is defined in the per-hosts .fns file.
. $WINTESTCONF
if [ $# -lt 4 ] ; then
2022-02-23 14:02:44 +03:00
cat <<EOF
2006-10-24 05:25:09 +04:00
Usage: test_rpc.sh SERVER USERNAME PASSWORD DOMAIN
EOF
2022-02-23 14:02:44 +03:00
exit 1
2006-10-24 05:25:09 +04:00
fi
server = " $1 "
username = " $2 "
password = " $3 "
domain = " $4 "
shift 4
ncacn_np_tests = "RPC-SRVSVC RPC-UNIXINFO RPC-ECHO RPC-DSSETUP RPC-ALTERCONTEXT RPC-MULTIBIND"
# These tests fail on ncacn_np: RPC-SPOOLSS RPC-SCHANNEL RPC-JOIN RPC-LSA
# RPC-NETLOGON
ncalrpc_tests = "RPC-UNIXINFO RPC-ECHO"
# These tests fail on ncalrpc: RPC-SCHANNEL RPC-JOIN RPC-LSA RPC-DSSETUP
# RPC-ALTERCONTEXT RPC-MULTIBIND RPC-NETLOGON
ncacn_ip_tcp_tests = "RPC-UNIXINFO RPC-ECHO"
# These tests fail on ncacn_ip_tcp: RPC-SCHANNEL RPC-JOIN RPC-LSA RPC-DSSETUP
# RPC-ALTERCONTEXT RPC-MULTIBIND RPC-NETLOGON
bind_options = "seal,padcheck bigendian"
test_type = "ncalrpc ncacn_np ncacn_ip_tcp"
all_errs = 0
2007-02-22 01:50:55 +03:00
2022-02-23 14:02:44 +03:00
on_error( )
{
2007-02-22 01:50:55 +03:00
errstr = $1
2022-02-23 14:02:44 +03:00
all_errs = $( expr $all_errs + 1)
2007-02-22 01:50:55 +03:00
2007-02-23 21:01:18 +03:00
restore_snapshot " $errstr " " $VM_CFG_PATH "
2007-02-22 01:50:55 +03:00
}
2006-10-24 05:25:09 +04:00
for o in $bind_options ; do
for transport in $test_type ; do
case $transport in
2022-02-23 14:02:44 +03:00
ncalrpc) rpc_test = $ncalrpc_tests ; ;
ncacn_np) rpc_test = $ncacn_np_tests ; ;
ncacn_ip_tcp) rpc_test = $ncacn_ip_tcp_tests ; ;
2006-10-24 05:25:09 +04:00
esac
for t in $rpc_test ; do
test_name = " $t on $transport with $o "
2007-02-22 01:50:55 +03:00
$SMBTORTURE_BIN_PATH -U $username %$password \
-W $domain $transport :$server [ $o ] \
$t || on_error " \n $test_name failed. "
2006-10-24 05:25:09 +04:00
done
done
done
2007-02-22 01:50:55 +03:00
exit $all_errs