1
0
mirror of https://github.com/samba-team/samba.git synced 2025-12-23 00:23:53 +03:00

tests: Replace PREFIX_ABS with PREFIX

Signed-off-by: Pavel Filipenský <pfilipensky@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
This commit is contained in:
Pavel Filipenský
2025-07-03 23:07:37 +02:00
committed by Andreas Schneider
parent 70c2b66fad
commit b36a64289c
32 changed files with 370 additions and 371 deletions

View File

@@ -131,7 +131,7 @@ class Bug13653Tests(BlackboxTestCase):
super().setUp() super().setUp()
self.env = os.environ["TEST_ENV"] self.env = os.environ["TEST_ENV"]
self.server = os.environ["SERVER"] self.server = os.environ["SERVER"]
self.prefix = os.environ["PREFIX_ABS"] self.prefix = os.environ["PREFIX"]
lp = env_loadparm() lp = env_loadparm()
creds = Credentials() creds = Credentials()
session = system_session() session = system_session()

View File

@@ -37,7 +37,7 @@ class Smb3UnixTests(samba.tests.libsmb.LibsmbTests):
super().setUp() super().setUp()
self.samsid = os.environ["SAMSID"] self.samsid = os.environ["SAMSID"]
prefix_abs = os.environ["PREFIX_ABS"] prefix_abs = os.environ["PREFIX"]
p = subprocess.run(['stat', '-f', '-c', '%T', prefix_abs], capture_output=True, text=True) p = subprocess.run(['stat', '-f', '-c', '%T', prefix_abs], capture_output=True, text=True)
self.fstype = p.stdout.strip().lower() self.fstype = p.stdout.strip().lower()

View File

@@ -71,7 +71,7 @@ plantestsuite_loadlist("samba4.ldb.multi_connect.python(ad_dc_ntvfs)",
"ad_dc_ntvfs", "ad_dc_ntvfs",
[python, os.path.join(samba4srcdir, [python, os.path.join(samba4srcdir,
"dsdb/tests/python/ad_dc_multi_bind.py"), "dsdb/tests/python/ad_dc_multi_bind.py"),
'tdb://$PREFIX_ABS/ad_dc_ntvfs/private/sam.ldb', 'tdb://$PREFIX/ad_dc_ntvfs/private/sam.ldb',
'$LOADLIST', '$LISTOPT']) '$LOADLIST', '$LISTOPT'])
plantestsuite_loadlist("samba4.ldap.vlv.python(ad_dc_ntvfs)", "ad_dc_ntvfs", plantestsuite_loadlist("samba4.ldap.vlv.python(ad_dc_ntvfs)", "ad_dc_ntvfs",

View File

@@ -241,99 +241,99 @@ def cmdline(script, *args):
plantestsuite( plantestsuite(
"samba4.blackbox.demote-saveddb", "none", "samba4.blackbox.demote-saveddb", "none",
cmdline('demote-saveddb.sh', '$PREFIX_ABS/demote')) cmdline('demote-saveddb.sh', '$PREFIX/demote'))
plantestsuite( plantestsuite(
"samba4.blackbox.dbcheck.alpha13", "none", "samba4.blackbox.dbcheck.alpha13", "none",
cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision', cmdline('dbcheck-oldrelease.sh', '$PREFIX/provision',
'alpha13')) 'alpha13'))
# same test as above but skip member link checks # same test as above but skip member link checks
plantestsuite( plantestsuite(
"samba4.blackbox.dbcheck.alpha13.quick", "none", "samba4.blackbox.dbcheck.alpha13.quick", "none",
cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision', cmdline('dbcheck-oldrelease.sh', '$PREFIX/provision',
'alpha13', '--quick-membership-checks')) 'alpha13', '--quick-membership-checks'))
plantestsuite( plantestsuite(
"samba4.blackbox.dbcheck.release-4-0-0", "none", "samba4.blackbox.dbcheck.release-4-0-0", "none",
cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision', cmdline('dbcheck-oldrelease.sh', '$PREFIX/provision',
'release-4-0-0')) 'release-4-0-0'))
# same test as above but skip member link checks # same test as above but skip member link checks
plantestsuite( plantestsuite(
"samba4.blackbox.dbcheck.release-4-0-0.quick", "none", "samba4.blackbox.dbcheck.release-4-0-0.quick", "none",
cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision', cmdline('dbcheck-oldrelease.sh', '$PREFIX/provision',
'release-4-0-0', '--quick-membership-checks')) 'release-4-0-0', '--quick-membership-checks'))
plantestsuite( plantestsuite(
"samba4.blackbox.dbcheck.release-4-1-0rc3", "none", "samba4.blackbox.dbcheck.release-4-1-0rc3", "none",
cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision', cmdline('dbcheck-oldrelease.sh', '$PREFIX/provision',
'release-4-1-0rc3')) 'release-4-1-0rc3'))
# same test as above but skip member link checks # same test as above but skip member link checks
plantestsuite( plantestsuite(
"samba4.blackbox.dbcheck.release-4-1-0rc3.quick", "none", "samba4.blackbox.dbcheck.release-4-1-0rc3.quick", "none",
cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision', cmdline('dbcheck-oldrelease.sh', '$PREFIX/provision',
'release-4-1-0rc3', '--quick-membership-checks')) 'release-4-1-0rc3', '--quick-membership-checks'))
plantestsuite( plantestsuite(
"samba4.blackbox.dbcheck.release-4-1-6-partial-object", "none", "samba4.blackbox.dbcheck.release-4-1-6-partial-object", "none",
cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision', cmdline('dbcheck-oldrelease.sh', '$PREFIX/provision',
'release-4-1-6-partial-object')) 'release-4-1-6-partial-object'))
# same test as above but skip member link checks # same test as above but skip member link checks
plantestsuite( plantestsuite(
"samba4.blackbox.dbcheck.release-4-1-6-partial-object.quick", "none", "samba4.blackbox.dbcheck.release-4-1-6-partial-object.quick", "none",
cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision', cmdline('dbcheck-oldrelease.sh', '$PREFIX/provision',
'release-4-1-6-partial-object', '--quick-membership-checks')) 'release-4-1-6-partial-object', '--quick-membership-checks'))
plantestsuite( plantestsuite(
"samba4.blackbox.dbcheck.release-4-5-0-pre1", "none", "samba4.blackbox.dbcheck.release-4-5-0-pre1", "none",
cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision', cmdline('dbcheck-oldrelease.sh', '$PREFIX/provision',
'release-4-5-0-pre1')) 'release-4-5-0-pre1'))
# same test as above but skip member link checks # same test as above but skip member link checks
plantestsuite( plantestsuite(
"samba4.blackbox.dbcheck.release-4-5-0-pre1.quick", "none", "samba4.blackbox.dbcheck.release-4-5-0-pre1.quick", "none",
cmdline('dbcheck-oldrelease.sh', '$PREFIX_ABS/provision', cmdline('dbcheck-oldrelease.sh', '$PREFIX/provision',
'release-4-5-0-pre1', '--quick-membership-checks')) 'release-4-5-0-pre1', '--quick-membership-checks'))
plantestsuite( plantestsuite(
"samba4.blackbox.upgradeprovision.alpha13", "none", "samba4.blackbox.upgradeprovision.alpha13", "none",
cmdline('upgradeprovision-oldrelease.sh', '$PREFIX_ABS/provision', cmdline('upgradeprovision-oldrelease.sh', '$PREFIX/provision',
'alpha13')) 'alpha13'))
plantestsuite( plantestsuite(
"samba4.blackbox.upgradeprovision.release-4-0-0", "none", "samba4.blackbox.upgradeprovision.release-4-0-0", "none",
cmdline('upgradeprovision-oldrelease.sh', '$PREFIX_ABS/provision', cmdline('upgradeprovision-oldrelease.sh', '$PREFIX/provision',
'release-4-0-0')) 'release-4-0-0'))
plantestsuite( plantestsuite(
"samba4.blackbox.tombstones-expunge.release-4-5-0-pre1", "none", "samba4.blackbox.tombstones-expunge.release-4-5-0-pre1", "none",
cmdline('tombstones-expunge.sh', '$PREFIX_ABS/provision', cmdline('tombstones-expunge.sh', '$PREFIX/provision',
'release-4-5-0-pre1')) 'release-4-5-0-pre1'))
plantestsuite( plantestsuite(
"samba4.blackbox.dbcheck-links.release-4-5-0-pre1", "none", "samba4.blackbox.dbcheck-links.release-4-5-0-pre1", "none",
cmdline('dbcheck-links.sh', '$PREFIX_ABS/provision', cmdline('dbcheck-links.sh', '$PREFIX/provision',
'release-4-5-0-pre1')) 'release-4-5-0-pre1'))
plantestsuite( plantestsuite(
"samba4.blackbox.runtime-links.release-4-5-0-pre1", "none", "samba4.blackbox.runtime-links.release-4-5-0-pre1", "none",
cmdline('runtime-links.sh', '$PREFIX_ABS/provision', cmdline('runtime-links.sh', '$PREFIX/provision',
'release-4-5-0-pre1')) 'release-4-5-0-pre1'))
plantestsuite( plantestsuite(
"samba4.blackbox.schemaupgrade", "none", "samba4.blackbox.schemaupgrade", "none",
cmdline('schemaupgrade.sh', '$PREFIX_ABS/provision')) cmdline('schemaupgrade.sh', '$PREFIX/provision'))
plantestsuite( plantestsuite(
"samba4.blackbox.functionalprep", "none", "samba4.blackbox.functionalprep", "none",
cmdline('functionalprep.sh', '$PREFIX_ABS/provision')) cmdline('functionalprep.sh', '$PREFIX/provision'))
plantestsuite( plantestsuite(
"samba4.blackbox.test_special_group", "none", "samba4.blackbox.test_special_group", "none",
cmdline('test_special_group.sh', '$PREFIX_ABS/provision')) cmdline('test_special_group.sh', '$PREFIX/provision'))
planpythontestsuite("fileserver", "samba.tests.blackbox.http_content") planpythontestsuite("fileserver", "samba.tests.blackbox.http_content")
planpythontestsuite("fileserver", "samba.tests.blackbox.http_chunk") planpythontestsuite("fileserver", "samba.tests.blackbox.http_chunk")

View File

@@ -28,8 +28,6 @@ shift 1
TESTENV=${1} TESTENV=${1}
shift 1 shift 1
PREFIX_ABS="$(readlink -f "${PREFIX}")"
# Do not let deprecated option warnings muck this up # Do not let deprecated option warnings muck this up
SAMBA_DEPRECATED_SUPPRESS=1 SAMBA_DEPRECATED_SUPPRESS=1
export SAMBA_DEPRECATED_SUPPRESS export SAMBA_DEPRECATED_SUPPRESS
@@ -56,10 +54,10 @@ ${SMBCLIENT} //${SERVER}/${SHARE} ${CONF} -U${USER}%${PASSWORD} \
<smbclient-stdin >smbclient-stdout 2>smbclient-stderr & <smbclient-stdin >smbclient-stdout 2>smbclient-stderr &
CLIENT_PID=$! CLIENT_PID=$!
log_file="${PREFIX_ABS}/${TESTENV}/smbd_test.log" log_file="${PREFIX}/${TESTENV}/smbd_test.log"
# Add support for "SMBD_DONT_LOG_STDOUT=1" # Add support for "SMBD_DONT_LOG_STDOUT=1"
if [ -r "${PREFIX_ABS}/${TESTENV}/logs/log.smbd" ]; then if [ -r "${PREFIX}/${TESTENV}/logs/log.smbd" ]; then
log_file="${PREFIX_ABS}/${TESTENV}/logs/log.smbd" log_file="${PREFIX}/${TESTENV}/logs/log.smbd"
fi fi
# Count the number of chdir_current_service: vfs_ChDir.*failed: Permission denied # Count the number of chdir_current_service: vfs_ChDir.*failed: Permission denied

View File

@@ -191,7 +191,7 @@ test_smbcquotas()
mproto="-m SMB1" mproto="-m SMB1"
fi fi
smbcquotas_stderr="$(mktemp "${PREFIX_ABS}/smbcquotas.XXXXXXXXXX")" smbcquotas_stderr="$(mktemp "${PREFIX}/smbcquotas.XXXXXXXXXX")"
output=$($VALGRIND $smbcquotas $mproto //$SERVER/dfq "$@" 2>"${smbcquotas_stderr}") output=$($VALGRIND $smbcquotas $mproto //$SERVER/dfq "$@" 2>"${smbcquotas_stderr}")
status=$? status=$?

View File

@@ -21,7 +21,7 @@ treport()
TBASE=$TNOW TBASE=$TNOW
} }
rm -f $PREFIX_ABS/var/locks/group_mapping.?db rm -f $PREFIX/var/locks/group_mapping.?db
NLOCAL=12 NLOCAL=12
NGROUP=11 NGROUP=11

View File

@@ -105,7 +105,7 @@ test_smbspool_authinforequired_unknown()
# #
test_vlp_verify() test_vlp_verify()
{ {
tdbfile="$PREFIX_ABS/$TARGET_ENV/lockdir/vlp.tdb" tdbfile="$PREFIX/$TARGET_ENV/lockdir/vlp.tdb"
if [ ! -w $tdbfile ]; then if [ ! -w $tdbfile ]; then
echo "vlp tdbfile $tdbfile doesn't exist or is not writeable!" echo "vlp tdbfile $tdbfile doesn't exist or is not writeable!"
return 1 return 1
@@ -128,7 +128,7 @@ test_vlp_verify()
fi fi
file=$(echo "$out" | awk '/[0-9]+/ { print $6 };') file=$(echo "$out" | awk '/[0-9]+/ { print $6 };')
if [ ! -r $PREFIX_ABS/$TARGET_ENV/share/$file ]; then if [ ! -r $PREFIX/$TARGET_ENV/share/$file ]; then
echo "$file doesn't exist" echo "$file doesn't exist"
echo "$out" echo "$out"
return 1 return 1
@@ -144,7 +144,7 @@ test_vlp_verify()
test_delete_on_close() test_delete_on_close()
{ {
tdbfile="$PREFIX_ABS/$TARGET_ENV/lockdir/vlp.tdb" tdbfile="$PREFIX/$TARGET_ENV/lockdir/vlp.tdb"
if [ ! -w $tdbfile ]; then if [ ! -w $tdbfile ]; then
echo "vlp tdbfile $tdbfile doesn't exist or is not writeable!" echo "vlp tdbfile $tdbfile doesn't exist or is not writeable!"
return 1 return 1

View File

@@ -43,7 +43,7 @@ test_smbstatus()
What a Wurst! What a Wurst!
EOF EOF
cat >$cmdfile <<EOF cat >$cmdfile <<EOF
lcd $PREFIX_ABS lcd $PREFIX
put $file put $file
open $file open $file
!UID_WRAPPER_INITIAL_RUID=0 UID_WRAPPER_INITIAL_EUID=0 $SMBSTATUS !UID_WRAPPER_INITIAL_RUID=0 UID_WRAPPER_INITIAL_EUID=0 $SMBSTATUS
@@ -100,7 +100,7 @@ test_smbstatus_resolve_uids()
What a Wurst! What a Wurst!
EOF EOF
cat >$cmdfile <<EOF cat >$cmdfile <<EOF
lcd $PREFIX_ABS lcd $PREFIX
put $file put $file
open $file open $file
!UID_WRAPPER_INITIAL_RUID=0 UID_WRAPPER_INITIAL_EUID=0 $SMBSTATUS --resolve-uids !UID_WRAPPER_INITIAL_RUID=0 UID_WRAPPER_INITIAL_EUID=0 $SMBSTATUS --resolve-uids
@@ -157,7 +157,7 @@ test_smbstatus_output()
Hello World! Hello World!
EOF EOF
cat >$cmdfile <<EOF cat >$cmdfile <<EOF
lcd $PREFIX_ABS lcd $PREFIX
put $file put $file
open $file open $file
!UID_WRAPPER_INITIAL_RUID=0 UID_WRAPPER_INITIAL_EUID=0 $SMBSTATUS --shares > $status_shares !UID_WRAPPER_INITIAL_RUID=0 UID_WRAPPER_INITIAL_EUID=0 $SMBSTATUS --shares > $status_shares
@@ -249,7 +249,7 @@ test_smbstatus_json()
Hello World! Hello World!
EOF EOF
cat > $cmdfile <<EOF cat > $cmdfile <<EOF
lcd $PREFIX_ABS lcd $PREFIX
put $file put $file
open $file open $file
posix posix

View File

@@ -469,7 +469,7 @@ test_pwd_change()
shift shift
# get biggest vno before password change from keytab1k # get biggest vno before password change from keytab1k
get_biggest_vno "$PREFIX_ABS/ad_member_idmap_nss/keytab1k" get_biggest_vno "$PREFIX/ad_member_idmap_nss/keytab1k"
old_vno=$vno old_vno=$vno
if [ ! "$old_vno" -gt 0 ] ; then if [ ! "$old_vno" -gt 0 ] ; then
@@ -502,7 +502,7 @@ test_pwd_change()
fi fi
# if keytab was updated the bigest vno should be incremented by one # if keytab was updated the bigest vno should be incremented by one
get_biggest_vno "$PREFIX_ABS/ad_member_idmap_nss/keytab1k" get_biggest_vno "$PREFIX/ad_member_idmap_nss/keytab1k"
if [ ! "$vno" -eq $((old_vno + 1)) ] ; then if [ ! "$vno" -eq $((old_vno + 1)) ] ; then
echo "Old vno=$old_vno, new vno=$vno. Increment by one failed." echo "Old vno=$old_vno, new vno=$vno. Increment by one failed."
@@ -512,7 +512,7 @@ test_pwd_change()
# Store keytabs in the tmp dir # Store keytabs in the tmp dir
for keytab in $keytabs_all for keytab in $keytabs_all
do do
$samba_net ads keytab list "$PREFIX_ABS/ad_member_idmap_nss/$keytab" | grep -v "^Vno\|^Warning\|^$" > "$TMPDIR/${keytab}_${testname}" $samba_net ads keytab list "$PREFIX/ad_member_idmap_nss/$keytab" | grep -v "^Vno\|^Warning\|^$" > "$TMPDIR/${keytab}_${testname}"
done done
# Compare keytabs that do not sync kvno # Compare keytabs that do not sync kvno
@@ -540,7 +540,7 @@ test_pwd_change()
# Create tmp dir # Create tmp dir
TMPDIR=$(mktemp -d "$PREFIX_ABS/ad_member_idmap_nss/keytab_dir_XXXXXX") TMPDIR=$(mktemp -d "$PREFIX/ad_member_idmap_nss/keytab_dir_XXXXXX")
# Create template files using the variables defined above # Create template files using the variables defined above
printf '%s' "$keytab0" > "$TMPDIR/keytab0_template" printf '%s' "$keytab0" > "$TMPDIR/keytab0_template"
@@ -563,7 +563,7 @@ printf '%s' "$keytab4k" > "$TMPDIR/keytab4k_template"
# Remove all keytabs # Remove all keytabs
for keytab in $keytabs_all for keytab in $keytabs_all
do do
rm -f "$PREFIX_ABS/ad_member_idmap_nss/$keytab" rm -f "$PREFIX/ad_member_idmap_nss/$keytab"
done done
DC_DNSNAME="${DC_SERVER}.${REALM}" DC_DNSNAME="${DC_SERVER}.${REALM}"

View File

@@ -66,11 +66,11 @@ test_pwd_change()
local cmd="$*"; local cmd="$*";
# get biggest vno before password change # get biggest vno before password change
get_biggest_vno "$PREFIX_ABS/clusteredmember/node.0/keytab0" get_biggest_vno "$PREFIX/clusteredmember/node.0/keytab0"
old_vno_node0=$vno old_vno_node0=$vno
get_biggest_vno "$PREFIX_ABS/clusteredmember/node.1/keytab0" get_biggest_vno "$PREFIX/clusteredmember/node.1/keytab0"
old_vno_node1=$vno old_vno_node1=$vno
get_biggest_vno "$PREFIX_ABS/clusteredmember/node.2/keytab0" get_biggest_vno "$PREFIX/clusteredmember/node.2/keytab0"
old_vno_node2=$vno old_vno_node2=$vno
if [ ! "$old_vno_node0" -gt 0 ] ; then if [ ! "$old_vno_node0" -gt 0 ] ; then
@@ -106,11 +106,11 @@ test_pwd_change()
fi fi
# if keytab was updated the bigest vno should be incremented by one # if keytab was updated the bigest vno should be incremented by one
get_biggest_vno "$PREFIX_ABS/clusteredmember/node.0/keytab0" get_biggest_vno "$PREFIX/clusteredmember/node.0/keytab0"
new_vno_node0=$vno new_vno_node0=$vno
get_biggest_vno "$PREFIX_ABS/clusteredmember/node.0/keytab0" get_biggest_vno "$PREFIX/clusteredmember/node.0/keytab0"
new_vno_node1=$vno new_vno_node1=$vno
get_biggest_vno "$PREFIX_ABS/clusteredmember/node.0/keytab0" get_biggest_vno "$PREFIX/clusteredmember/node.0/keytab0"
new_vno_node2=$vno new_vno_node2=$vno
if [ ! "$new_vno_node0" -eq $((old_vno_node0 + 1)) ] ; then if [ ! "$new_vno_node0" -eq $((old_vno_node0 + 1)) ] ; then
@@ -134,9 +134,9 @@ test_keytab_create()
DC_DNSNAME="${DC_SERVER}.${REALM}" DC_DNSNAME="${DC_SERVER}.${REALM}"
SMBCLIENT_UNC="//${DC_DNSNAME}/tmp" SMBCLIENT_UNC="//${DC_DNSNAME}/tmp"
install source3/script/updatekeytab_test.sh "$PREFIX_ABS/clusteredmember/updatekeytab.sh" install source3/script/updatekeytab_test.sh "$PREFIX/clusteredmember/updatekeytab.sh"
global_inject_conf=$(dirname $SMB_CONF_PATH)/global_inject.conf global_inject_conf=$(dirname $SMB_CONF_PATH)/global_inject.conf
echo "sync machine password script = $PREFIX_ABS/clusteredmember/updatekeytab.sh" >$global_inject_conf echo "sync machine password script = $PREFIX/clusteredmember/updatekeytab.sh" >$global_inject_conf
UID_WRAPPER_ROOT=1 $smbcontrol winbindd reload-config UID_WRAPPER_ROOT=1 $smbcontrol winbindd reload-config
testit "net_ads_testjoin_initial" check_net_ads_testjoin || failed=$((failed + 1)) testit "net_ads_testjoin_initial" check_net_ads_testjoin || failed=$((failed + 1))

View File

@@ -33,7 +33,7 @@ incdir=$(dirname "$0")/../../../testprogs/blackbox
failed=0 failed=0
TMPDIR=${PREFIX_ABS}/$(basename "${0}") TMPDIR=${PREFIX}/$(basename "${0}")
mkdir -p "${TMPDIR}" || exit 1 mkdir -p "${TMPDIR}" || exit 1
cd "${TMPDIR}" || exit 1 cd "${TMPDIR}" || exit 1
@@ -298,6 +298,6 @@ testit "per-user" test_per_user || failed=$(("$failed" + 1))
do_cleanup do_cleanup
cd "${PREFIX_ABS}" && rm -rf ${TMPDIR} cd "${PREFIX}" && rm -rf ${TMPDIR}
exit "$failed" exit "$failed"

View File

@@ -19,14 +19,13 @@ incdir=$(dirname "$0")/../../../testprogs/blackbox
failed=0 failed=0
PREFIX_ABS="$(readlink -f "${PREFIX}")"
# Strip from TESTENV the ':local' if present # Strip from TESTENV the ':local' if present
TESTENV_SUBDIR=${TESTENV%:*} TESTENV_SUBDIR=${TESTENV%:*}
LOGFILE="${PREFIX_ABS}/${TESTENV_SUBDIR}/logs/log.winbindd" LOGFILE="${PREFIX}/${TESTENV_SUBDIR}/logs/log.winbindd"
# Add support for "WINBINDD_DONT_LOG_STDOUT=1" # Add support for "WINBINDD_DONT_LOG_STDOUT=1"
if [ ! -r "${LOGFILE}" ]; then if [ ! -r "${LOGFILE}" ]; then
TEST_LOGFILE="${PREFIX_ABS}/${TESTENV_SUBDIR}/winbindd_test.log" TEST_LOGFILE="${PREFIX}/${TESTENV_SUBDIR}/winbindd_test.log"
subunit_start_test "test winbind call depth trace" subunit_start_test "test winbind call depth trace"
subunit_skip_test "test winbind call depth trace" <<EOF subunit_skip_test "test winbind call depth trace" <<EOF
Test is skipped, we need $LOGFILE but have only $TEST_LOGFILE which is missing debug headers (they are not printed to stdout). Test is skipped, we need $LOGFILE but have only $TEST_LOGFILE which is missing debug headers (they are not printed to stdout).

View File

@@ -1,3 +1,3 @@
#!/bin/sh #!/bin/sh
./ctdb/tests/local_daemons.sh "$PREFIX_ABS/clusteredmember" onnode all 'net ads keytab create --option="sync machine password script=" --configfile=$CTDB_BASE/lib/server.conf' ./ctdb/tests/local_daemons.sh "$PREFIX/clusteredmember" onnode all 'net ads keytab create --option="sync machine password script=" --configfile=$CTDB_BASE/lib/server.conf'

View File

@@ -212,11 +212,11 @@ for env in ["ad_dc_ntvfs", "fl2008r2dc", "fl2003dc"]:
envraw = "fl2008r2dc" envraw = "fl2008r2dc"
env = "%s:local" % envraw env = "%s:local" % envraw
plantestsuite("samba4.ldap_tls_reload(%s)" % (env), env, plantestsuite("samba4.ldap_tls_reload(%s)" % (env), env,
"%s/test_ldap_tls_reload.sh $PREFIX_ABS $PREFIX_ABS/%s/private/tls $SERVER.$REALM" % (bbdir, envraw)) "%s/test_ldap_tls_reload.sh $PREFIX $PREFIX/%s/private/tls $SERVER.$REALM" % (bbdir, envraw))
for options in ['-U"$USERNAME%$PASSWORD"']: for options in ['-U"$USERNAME%$PASSWORD"']:
plantestsuite("samba4.ldb.ldapi with options %s(ad_dc_ntvfs:local)" % options, "ad_dc_ntvfs:local", plantestsuite("samba4.ldb.ldapi with options %s(ad_dc_ntvfs:local)" % options, "ad_dc_ntvfs:local",
"%s/test_ldb.sh ldapi $PREFIX_ABS/ad_dc_ntvfs/private/ldapi %s" % (bbdir, options)) "%s/test_ldb.sh ldapi $PREFIX/ad_dc_ntvfs/private/ldapi %s" % (bbdir, options))
for t in smbtorture4_testsuites("ldap."): for t in smbtorture4_testsuites("ldap."):
if t == "ldap.nested-search": if t == "ldap.nested-search":
@@ -237,7 +237,7 @@ for t in smbtorture4_testsuites("dsdb."):
plantestsuite_loadlist("samba4.tests.attr_from_server.python(ad_dc_ntvfs)", plantestsuite_loadlist("samba4.tests.attr_from_server.python(ad_dc_ntvfs)",
"ad_dc_ntvfs:local", "ad_dc_ntvfs:local",
[python, os.path.join(DSDB_PYTEST_DIR, "attr_from_server.py"), [python, os.path.join(DSDB_PYTEST_DIR, "attr_from_server.py"),
'$PREFIX_ABS/ad_dc_ntvfs/private/sam.ldb', '$LOADLIST', '$LISTOPT']) '$PREFIX/ad_dc_ntvfs/private/sam.ldb', '$LOADLIST', '$LISTOPT'])
# Tests for RPC # Tests for RPC
@@ -636,11 +636,11 @@ for env in ["ad_member", "ad_dc_ntvfs", "chgdcpass"]:
plantestsuite("samba4.blackbox.samba_tool(ad_dc_default:local)", "ad_dc_default:local", [os.path.join(samba4srcdir, "utils/tests/test_samba_tool.sh"), '$SERVER', '$SERVER_IP', '$USERNAME', '$PASSWORD', '$DOMAIN', smbclient3]) plantestsuite("samba4.blackbox.samba_tool(ad_dc_default:local)", "ad_dc_default:local", [os.path.join(samba4srcdir, "utils/tests/test_samba_tool.sh"), '$SERVER', '$SERVER_IP', '$USERNAME', '$PASSWORD', '$DOMAIN', smbclient3])
plantestsuite("samba4.blackbox.net_rpc_user(ad_dc)", "ad_dc", [os.path.join(bbdir, "test_net_rpc_user.sh"), '$SERVER', '$USERNAME', '$PASSWORD', '$DOMAIN']) plantestsuite("samba4.blackbox.net_rpc_user(ad_dc)", "ad_dc", [os.path.join(bbdir, "test_net_rpc_user.sh"), '$SERVER', '$USERNAME', '$PASSWORD', '$DOMAIN'])
plantestsuite("samba4.blackbox.test_primary_group", "ad_dc:local", [os.path.join(bbdir, "test_primary_group.sh"), '$SERVER', '$USERNAME', '$PASSWORD', '$DOMAIN', '$PREFIX_ABS']) plantestsuite("samba4.blackbox.test_primary_group", "ad_dc:local", [os.path.join(bbdir, "test_primary_group.sh"), '$SERVER', '$USERNAME', '$PASSWORD', '$DOMAIN', '$PREFIX'])
plantestsuite("samba4.blackbox.test_alias_membership", "ad_member_idmap_rid:local", [os.path.join(bbdir, "test_alias_membership.sh"), '$PREFIX_ABS']) plantestsuite("samba4.blackbox.test_alias_membership", "ad_member_idmap_rid:local", [os.path.join(bbdir, "test_alias_membership.sh"), '$PREFIX'])
plantestsuite("samba4.blackbox.test_old_enctypes", "fl2003dc:local", [os.path.join(bbdir, "test_old_enctypes.sh"), '$SERVER', '$USERNAME', '$PASSWORD', '$NETBIOSNAME', '$PREFIX_ABS']) plantestsuite("samba4.blackbox.test_old_enctypes", "fl2003dc:local", [os.path.join(bbdir, "test_old_enctypes.sh"), '$SERVER', '$USERNAME', '$PASSWORD', '$NETBIOSNAME', '$PREFIX'])
planpythontestsuite("ad_dc_default", "samba.tests.blackbox.claims") planpythontestsuite("ad_dc_default", "samba.tests.blackbox.claims")
@@ -821,7 +821,7 @@ plantestsuite("samba4.blackbox.pkinit_pac",
'$PREFIX/ad_dc', '$PREFIX/ad_dc',
configuration]) configuration])
plantestsuite("samba.blackbox.client_kerberos", "ad_dc", [os.path.join(bbdir, "test_client_kerberos.sh"), '$DOMAIN', '$REALM', '$USERNAME', '$PASSWORD', '$SERVER', '$PREFIX_ABS', '$SMB_CONF_PATH']) plantestsuite("samba.blackbox.client_kerberos", "ad_dc", [os.path.join(bbdir, "test_client_kerberos.sh"), '$DOMAIN', '$REALM', '$USERNAME', '$PASSWORD', '$SERVER', '$PREFIX', '$SMB_CONF_PATH'])
env="ad_member:local" env="ad_member:local"
plantestsuite("samba.blackbox.rpcclient_schannel", plantestsuite("samba.blackbox.rpcclient_schannel",
@@ -832,7 +832,7 @@ plantestsuite("samba.blackbox.rpcclient_schannel",
'$DC_USERNAME', '$DC_USERNAME',
'$DC_PASSWORD', '$DC_PASSWORD',
'$DC_SERVER', '$DC_SERVER',
'$PREFIX_ABS', '$PREFIX',
'$SMB_CONF_PATH', '$SMB_CONF_PATH',
env]) env])
env="ad_member_fips:local" env="ad_member_fips:local"
@@ -844,7 +844,7 @@ plantestsuite("samba.blackbox.rpcclient_schannel",
'$DC_USERNAME', '$DC_USERNAME',
'$DC_PASSWORD', '$DC_PASSWORD',
'$DC_SERVER', '$DC_SERVER',
'$PREFIX_ABS', '$PREFIX',
'$SMB_CONF_PATH', '$SMB_CONF_PATH',
env], env],
environ={'GNUTLS_FORCE_FIPS_MODE': '1', environ={'GNUTLS_FORCE_FIPS_MODE': '1',
@@ -901,11 +901,11 @@ plantestsuite("samba4.blackbox.rfc2307_mapping",
]) ])
plantestsuite("samba4.blackbox.chgdcpass", "chgdcpass", [os.path.join(bbdir, "test_chgdcpass.sh"), '$SERVER', r"CHGDCPASS\$", '$REALM', '$DOMAIN', '$PREFIX/chgdcpass', "aes256-cts-hmac-sha1-96", '$PREFIX/chgdcpass', smbclient3]) plantestsuite("samba4.blackbox.chgdcpass", "chgdcpass", [os.path.join(bbdir, "test_chgdcpass.sh"), '$SERVER', r"CHGDCPASS\$", '$REALM', '$DOMAIN', '$PREFIX/chgdcpass', "aes256-cts-hmac-sha1-96", '$PREFIX/chgdcpass', smbclient3])
plantestsuite("samba4.blackbox.samba_upgradedns(chgdcpass:local)", "chgdcpass:local", [os.path.join(bbdir, "test_samba_upgradedns.sh"), '$SERVER', '$REALM', '$PREFIX', '$SELFTEST_PREFIX/chgdcpass']) plantestsuite("samba4.blackbox.samba_upgradedns(chgdcpass:local)", "chgdcpass:local", [os.path.join(bbdir, "test_samba_upgradedns.sh"), '$SERVER', '$REALM', '$PREFIX', '$SELFTEST_PREFIX/chgdcpass'])
plantestsuite("samba4.blackbox.net_ads", "ad_dc:client", [os.path.join(bbdir, "test_net_ads.sh"), '$DC_SERVER', '$DC_USERNAME', '$DC_PASSWORD', '$PREFIX_ABS']) plantestsuite("samba4.blackbox.net_ads", "ad_dc:client", [os.path.join(bbdir, "test_net_ads.sh"), '$DC_SERVER', '$DC_USERNAME', '$DC_PASSWORD', '$PREFIX'])
plantestsuite("samba4.blackbox.net_offlinejoin", "ad_dc:client", [os.path.join(bbdir, "test_net_offline.sh"), '$DC_SERVER', '$DC_USERNAME', '$DC_PASSWORD', '$PREFIX_ABS']) plantestsuite("samba4.blackbox.net_offlinejoin", "ad_dc:client", [os.path.join(bbdir, "test_net_offline.sh"), '$DC_SERVER', '$DC_USERNAME', '$DC_PASSWORD', '$PREFIX'])
plantestsuite("samba4.blackbox.client_etypes_all(ad_dc:client)", "ad_dc:client", [os.path.join(bbdir, "test_client_etypes.sh"), '$DC_SERVER', '$DC_USERNAME', '$DC_PASSWORD', '$PREFIX_ABS', 'all', '17_18_23']) plantestsuite("samba4.blackbox.client_etypes_all(ad_dc:client)", "ad_dc:client", [os.path.join(bbdir, "test_client_etypes.sh"), '$DC_SERVER', '$DC_USERNAME', '$DC_PASSWORD', '$PREFIX', 'all', '17_18_23'])
plantestsuite("samba4.blackbox.client_etypes_legacy(ad_dc:client)", "ad_dc:client", [os.path.join(bbdir, "test_client_etypes.sh"), '$DC_SERVER', '$DC_USERNAME', '$DC_PASSWORD', '$PREFIX_ABS', 'legacy', '23']) plantestsuite("samba4.blackbox.client_etypes_legacy(ad_dc:client)", "ad_dc:client", [os.path.join(bbdir, "test_client_etypes.sh"), '$DC_SERVER', '$DC_USERNAME', '$DC_PASSWORD', '$PREFIX', 'legacy', '23'])
plantestsuite("samba4.blackbox.client_etypes_strong(ad_dc:client)", "ad_dc:client", [os.path.join(bbdir, "test_client_etypes.sh"), '$DC_SERVER', '$DC_USERNAME', '$DC_PASSWORD', '$PREFIX_ABS', 'strong', '17_18']) plantestsuite("samba4.blackbox.client_etypes_strong(ad_dc:client)", "ad_dc:client", [os.path.join(bbdir, "test_client_etypes.sh"), '$DC_SERVER', '$DC_USERNAME', '$DC_PASSWORD', '$PREFIX', 'strong', '17_18'])
plantestsuite("samba4.blackbox.net_ads_dns(ad_member:local)", "ad_member:local", [os.path.join(bbdir, "test_net_ads_dns.sh"), '$DC_SERVER', '$DC_USERNAME', '$DC_PASSWORD', '$REALM', '$USERNAME', '$PASSWORD']) plantestsuite("samba4.blackbox.net_ads_dns(ad_member:local)", "ad_member:local", [os.path.join(bbdir, "test_net_ads_dns.sh"), '$DC_SERVER', '$DC_USERNAME', '$DC_PASSWORD', '$REALM', '$USERNAME', '$PASSWORD'])
plantestsuite("samba4.blackbox.samba-tool_ntacl(ad_member:local)", "ad_member:local", [os.path.join(bbdir, "test_samba-tool_ntacl.sh"), '$PREFIX', '$DOMSID', configuration]) plantestsuite("samba4.blackbox.samba-tool_ntacl(ad_member:local)", "ad_member:local", [os.path.join(bbdir, "test_samba-tool_ntacl.sh"), '$PREFIX', '$DOMSID', configuration])
@@ -944,7 +944,7 @@ if have_gnutls_fips_mode_support:
'$DC_SERVER', '$DC_SERVER',
'$DC_USERNAME', '$DC_USERNAME',
'$DC_PASSWORD', '$DC_PASSWORD',
'$PREFIX_ABS'], '$PREFIX'],
environ={'GNUTLS_FORCE_FIPS_MODE': '1', environ={'GNUTLS_FORCE_FIPS_MODE': '1',
'OPENSSL_FORCE_FIPS_MODE': '1'}) 'OPENSSL_FORCE_FIPS_MODE': '1'})
@@ -1615,9 +1615,9 @@ for env in ['ad_dc_default:local', 'schema_dc:local']:
planpythontestsuite(env, "samba.tests.dsdb_schema_attributes") planpythontestsuite(env, "samba.tests.dsdb_schema_attributes")
plantestsuite_loadlist("samba4.urgent_replication.python(ad_dc_ntvfs)", "ad_dc_ntvfs:local", [python, os.path.join(DSDB_PYTEST_DIR, "urgent_replication.py"), '$PREFIX_ABS/ad_dc_ntvfs/private/sam.ldb', '$LOADLIST', '$LISTOPT']) plantestsuite_loadlist("samba4.urgent_replication.python(ad_dc_ntvfs)", "ad_dc_ntvfs:local", [python, os.path.join(DSDB_PYTEST_DIR, "urgent_replication.py"), '$PREFIX/ad_dc_ntvfs/private/sam.ldb', '$LOADLIST', '$LISTOPT'])
plantestsuite_loadlist("samba4.ldap.dirsync.python(ad_dc_ntvfs)", "ad_dc_ntvfs", [python, os.path.join(DSDB_PYTEST_DIR, "dirsync.py"), '$SERVER', '-U"$USERNAME%$PASSWORD"', '--workgroup=$DOMAIN', '$LOADLIST', '$LISTOPT']) plantestsuite_loadlist("samba4.ldap.dirsync.python(ad_dc_ntvfs)", "ad_dc_ntvfs", [python, os.path.join(DSDB_PYTEST_DIR, "dirsync.py"), '$SERVER', '-U"$USERNAME%$PASSWORD"', '--workgroup=$DOMAIN', '$LOADLIST', '$LISTOPT'])
plantestsuite_loadlist("samba4.ldap.match_rules.python", "ad_dc_ntvfs", [python, os.path.join(srcdir(), "lib/ldb-samba/tests/match_rules.py"), '$PREFIX_ABS/ad_dc_ntvfs/private/sam.ldb', '-U"$USERNAME%$PASSWORD"', '--workgroup=$DOMAIN', '$LOADLIST', '$LISTOPT']) plantestsuite_loadlist("samba4.ldap.match_rules.python", "ad_dc_ntvfs", [python, os.path.join(srcdir(), "lib/ldb-samba/tests/match_rules.py"), '$PREFIX/ad_dc_ntvfs/private/sam.ldb', '-U"$USERNAME%$PASSWORD"', '--workgroup=$DOMAIN', '$LOADLIST', '$LISTOPT'])
plantestsuite_loadlist("samba4.ldap.match_rules.python", "ad_dc_ntvfs", [python, os.path.join(srcdir(), "lib/ldb-samba/tests/match_rules_remote.py"), '$SERVER', '-U"$USERNAME%$PASSWORD"', '--workgroup=$DOMAIN', '$LOADLIST', '$LISTOPT']) plantestsuite_loadlist("samba4.ldap.match_rules.python", "ad_dc_ntvfs", [python, os.path.join(srcdir(), "lib/ldb-samba/tests/match_rules_remote.py"), '$SERVER', '-U"$USERNAME%$PASSWORD"', '--workgroup=$DOMAIN', '$LOADLIST', '$LISTOPT'])
plantestsuite("samba4.ldap.index.python", "none", [python, os.path.join(srcdir(), "lib/ldb-samba/tests/index.py")]) plantestsuite("samba4.ldap.index.python", "none", [python, os.path.join(srcdir(), "lib/ldb-samba/tests/index.py")])
plantestsuite_loadlist("samba4.ldap.notification.python(ad_dc_ntvfs)", "ad_dc_ntvfs", [python, os.path.join(DSDB_PYTEST_DIR, "notification.py"), '$SERVER', '-U"$USERNAME%$PASSWORD"', '--workgroup=$DOMAIN', '$LOADLIST', '$LISTOPT']) plantestsuite_loadlist("samba4.ldap.notification.python(ad_dc_ntvfs)", "ad_dc_ntvfs", [python, os.path.join(DSDB_PYTEST_DIR, "notification.py"), '$SERVER', '-U"$USERNAME%$PASSWORD"', '--workgroup=$DOMAIN', '$LOADLIST', '$LISTOPT'])
@@ -1641,13 +1641,13 @@ plantestsuite_loadlist("samba4.ldap.large_ldap.straight_ldap.python(%s)" % env,
planoldpythontestsuite("ad_dc_default", "sort", environ={'SERVER' : '$SERVER', 'DATA_DIR' : os.path.join(samba4srcdir, 'dsdb/tests/python/testdata/')}, name="samba4.ldap.sort.python", extra_path=[os.path.join(samba4srcdir, 'dsdb/tests/python')], extra_args=['-U"$USERNAME%$PASSWORD"', '--workgroup=$DOMAIN']) planoldpythontestsuite("ad_dc_default", "sort", environ={'SERVER' : '$SERVER', 'DATA_DIR' : os.path.join(samba4srcdir, 'dsdb/tests/python/testdata/')}, name="samba4.ldap.sort.python", extra_path=[os.path.join(samba4srcdir, 'dsdb/tests/python')], extra_args=['-U"$USERNAME%$PASSWORD"', '--workgroup=$DOMAIN'])
plantestsuite_loadlist("samba4.ldap.linked_attributes.python(ad_dc)", "ad_dc:local", [python, os.path.join(DSDB_PYTEST_DIR, "linked_attributes.py"), '$PREFIX_ABS/ad_dc/private/sam.ldb', '-U"$USERNAME%$PASSWORD"', '--workgroup=$DOMAIN', '$LOADLIST', '$LISTOPT']) plantestsuite_loadlist("samba4.ldap.linked_attributes.python(ad_dc)", "ad_dc:local", [python, os.path.join(DSDB_PYTEST_DIR, "linked_attributes.py"), '$PREFIX/ad_dc/private/sam.ldb', '-U"$USERNAME%$PASSWORD"', '--workgroup=$DOMAIN', '$LOADLIST', '$LISTOPT'])
plantestsuite_loadlist("samba4.ldap.subtree_rename.python(ad_dc_ntvfs)", plantestsuite_loadlist("samba4.ldap.subtree_rename.python(ad_dc_ntvfs)",
"ad_dc_ntvfs:local", "ad_dc_ntvfs:local",
[python, os.path.join(samba4srcdir, [python, os.path.join(samba4srcdir,
"dsdb/tests/python/subtree_rename.py"), "dsdb/tests/python/subtree_rename.py"),
'$PREFIX_ABS/ad_dc_ntvfs/private/sam.ldb', '$PREFIX/ad_dc_ntvfs/private/sam.ldb',
'-U"$USERNAME%$PASSWORD"', '-U"$USERNAME%$PASSWORD"',
'--workgroup=$DOMAIN', '--workgroup=$DOMAIN',
'$LOADLIST', '$LOADLIST',
@@ -1668,7 +1668,7 @@ for env in ['offlinebackupdc', 'restoredc', 'renamedc', 'labdc']:
plantestsuite("samba4.blackbox.ldapcmp_restore", env, plantestsuite("samba4.blackbox.ldapcmp_restore", env,
["PYTHON=%s" % python, ["PYTHON=%s" % python,
os.path.join(bbdir, "ldapcmp_restoredc.sh"), os.path.join(bbdir, "ldapcmp_restoredc.sh"),
'$PREFIX_ABS/backupfromdc', '$PREFIX_ABS/%s' % env]) '$PREFIX/backupfromdc', '$PREFIX/%s' % env])
# we also test joining backupfromdc here, as it's a bit special in that it # we also test joining backupfromdc here, as it's a bit special in that it
# doesn't have Default-First-Site-Name # doesn't have Default-First-Site-Name

View File

@@ -11,25 +11,25 @@ samba_undump="$SRCDIR_ABS/source4/selftest/provisions/undump.sh"
undump() undump()
{ {
$samba_undump $release_dir $PREFIX_ABS/$RELEASE $samba_tdbrestore $samba_undump $release_dir $PREFIX/$RELEASE $samba_tdbrestore
} }
add_dangling_link() add_dangling_link()
{ {
ldif=$release_dir/add-dangling-forwardlink-user.ldif ldif=$release_dir/add-dangling-forwardlink-user.ldif
TZ=UTC $ldbadd -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif TZ=UTC $ldbadd -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
ldif=$release_dir/add-initially-normal-link.ldif ldif=$release_dir/add-initially-normal-link.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
ldif=$release_dir/delete-only-backlink.ldif ldif=$release_dir/delete-only-backlink.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -38,13 +38,13 @@ add_dangling_link()
add_dangling_backlink() add_dangling_backlink()
{ {
ldif=$release_dir/add-dangling-backlink-user.ldif ldif=$release_dir/add-dangling-backlink-user.ldif
TZ=UTC $ldbadd -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif TZ=UTC $ldbadd -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
ldif=$release_dir/add-dangling-backlink.ldif ldif=$release_dir/add-dangling-backlink.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -53,13 +53,13 @@ add_dangling_backlink()
add_deleted_dangling_backlink() add_deleted_dangling_backlink()
{ {
ldif=$release_dir/add-deleted-backlink-user.ldif ldif=$release_dir/add-deleted-backlink-user.ldif
TZ=UTC $ldbadd -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif TZ=UTC $ldbadd -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
ldif=$release_dir/add-deleted-backlink.ldif ldif=$release_dir/add-deleted-backlink.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -68,13 +68,13 @@ add_deleted_dangling_backlink()
add_deleted_target_backlink() add_deleted_target_backlink()
{ {
ldif=$release_dir/add-deleted-target-backlink-user.ldif ldif=$release_dir/add-deleted-target-backlink-user.ldif
TZ=UTC $ldbadd -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif TZ=UTC $ldbadd -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
ldif=$release_dir/add-deleted-target-backlink.ldif ldif=$release_dir/add-deleted-target-backlink.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -83,7 +83,7 @@ add_deleted_target_backlink()
revive_links_on_deleted_group() revive_links_on_deleted_group()
{ {
ldif=$release_dir/revive-links-on-deleted-group.ldif ldif=$release_dir/revive-links-on-deleted-group.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -92,7 +92,7 @@ revive_links_on_deleted_group()
revive_backlink_on_deleted_group() revive_backlink_on_deleted_group()
{ {
ldif=$release_dir/revive-backlink-on-deleted-group.ldif ldif=$release_dir/revive-backlink-on-deleted-group.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -101,7 +101,7 @@ revive_backlink_on_deleted_group()
add_deleted_target_link() add_deleted_target_link()
{ {
ldif=$release_dir/add-dangling-deleted-link.ldif ldif=$release_dir/add-dangling-deleted-link.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -110,7 +110,7 @@ add_deleted_target_link()
add_two_more_users() add_two_more_users()
{ {
ldif=$release_dir/add-two-more-users.ldif ldif=$release_dir/add-two-more-users.ldif
TZ=UTC $ldbadd -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif TZ=UTC $ldbadd -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -119,7 +119,7 @@ add_two_more_users()
add_four_more_links() add_four_more_links()
{ {
ldif=$release_dir/add-four-more-links.ldif ldif=$release_dir/add-four-more-links.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -128,7 +128,7 @@ add_four_more_links()
remove_one_link() remove_one_link()
{ {
ldif=$release_dir/remove-one-more-link.ldif ldif=$release_dir/remove-one-more-link.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -137,7 +137,7 @@ remove_one_link()
remove_one_user() remove_one_user()
{ {
ldif=$release_dir/remove-one-more-user.ldif ldif=$release_dir/remove-one-more-user.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -145,7 +145,7 @@ remove_one_user()
move_one_user() move_one_user()
{ {
TZ=UTC $ldbrename -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb 'cn=user1,cn=users,DC=release-4-5-0-pre1,DC=samba,DC=corp' 'cn=user1x,cn=users,DC=release-4-5-0-pre1,DC=samba,DC=corp' TZ=UTC $ldbrename -H tdb://$PREFIX/${RELEASE}/private/sam.ldb 'cn=user1,cn=users,DC=release-4-5-0-pre1,DC=samba,DC=corp' 'cn=user1x,cn=users,DC=release-4-5-0-pre1,DC=samba,DC=corp'
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -154,7 +154,7 @@ move_one_user()
dangling_one_way_dn() dangling_one_way_dn()
{ {
ldif=$release_dir/dangling-one-way-dn.ldif ldif=$release_dir/dangling-one-way-dn.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -163,7 +163,7 @@ dangling_one_way_dn()
deleted_one_way_dn() deleted_one_way_dn()
{ {
ldif=$release_dir/deleted-one-way-dn.ldif ldif=$release_dir/deleted-one-way-dn.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -172,7 +172,7 @@ deleted_one_way_dn()
dangling_one_way_link() dangling_one_way_link()
{ {
ldif=$release_dir/dangling-one-way-link.ldif ldif=$release_dir/dangling-one-way-link.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/CN%3DCONFIGURATION,DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/CN%3DCONFIGURATION,DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -186,25 +186,25 @@ add_dangling_multi_valued()
# Administrator - Has 2 too many backlinks # Administrator - Has 2 too many backlinks
# multi5 - Has 2 backlinks but no forward links # multi5 - Has 2 backlinks but no forward links
ldif=$release_dir/add-dangling-multilink-users.ldif ldif=$release_dir/add-dangling-multilink-users.ldif
TZ=UTC $ldbadd -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif TZ=UTC $ldbadd -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
ldif=$release_dir/add-initially-normal-multilink.ldif ldif=$release_dir/add-initially-normal-multilink.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
ldif=$release_dir/delete-only-multi-backlink.ldif ldif=$release_dir/delete-only-multi-backlink.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
ldif=$release_dir/add-dangling-multi-backlink.ldif ldif=$release_dir/add-dangling-multi-backlink.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi

View File

@@ -7,7 +7,9 @@ EOF
exit 1 exit 1
fi fi
PREFIX_ABS="$1" set -x
PREFIX="$1"
RELEASE="$2" RELEASE="$2"
shift 2 shift 2
@@ -34,12 +36,12 @@ fi
dbcheck() dbcheck()
{ {
tmpfile=$PREFIX_ABS/$RELEASE/expected-dbcheck-link-output${1}.txt.tmp tmpfile=$PREFIX/$RELEASE/expected-dbcheck-link-output${1}.txt.tmp
tmpldif1=$PREFIX_ABS/$RELEASE/expected-dbcheck-output${1}2.txt.tmp1 tmpldif1=$PREFIX/$RELEASE/expected-dbcheck-output${1}2.txt.tmp1
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN >$tmpldif1 TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN >$tmpldif1
$PYTHON $BINDIR/samba-tool dbcheck -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $3 --fix --yes >$tmpfile $PYTHON $BINDIR/samba-tool dbcheck -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $3 --fix --yes >$tmpfile
if [ "$?" != "$2" ]; then if [ "$?" != "$2" ]; then
return 1 return 1
fi fi
@@ -50,8 +52,8 @@ dbcheck()
return 1 return 1
fi fi
tmpldif2=$PREFIX_ABS/$RELEASE/expected-dbcheck-output${1}2.txt.tmp2 tmpldif2=$PREFIX/$RELEASE/expected-dbcheck-output${1}2.txt.tmp2
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN >$tmpldif2 TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN >$tmpldif2
diff -u $tmpldif1 $tmpldif2 diff -u $tmpldif1 $tmpldif2
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
@@ -61,12 +63,12 @@ dbcheck()
dbcheck_acl_reset() dbcheck_acl_reset()
{ {
$PYTHON $BINDIR/samba-tool dbcheck -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --cross-ncs --fix --yes --attrs=nTSecurityDescriptor $PYTHON $BINDIR/samba-tool dbcheck -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --cross-ncs --fix --yes --attrs=nTSecurityDescriptor
} }
dbcheck_acl_clean() dbcheck_acl_clean()
{ {
$PYTHON $BINDIR/samba-tool dbcheck -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --cross-ncs --attrs=nTSecurityDescriptor $PYTHON $BINDIR/samba-tool dbcheck -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --cross-ncs --attrs=nTSecurityDescriptor
} }
dbcheck_dangling() dbcheck_dangling()
@@ -83,16 +85,16 @@ dbcheck_one_way()
dbcheck_clean() dbcheck_clean()
{ {
tmpldif1=$PREFIX_ABS/$RELEASE/expected-dbcheck-output2.txt.tmp1 tmpldif1=$PREFIX/$RELEASE/expected-dbcheck-output2.txt.tmp1
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN >$tmpldif1 TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN >$tmpldif1
$PYTHON $BINDIR/samba-tool dbcheck -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $PYTHON $BINDIR/samba-tool dbcheck -H tdb://$PREFIX/${RELEASE}/private/sam.ldb
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
tmpldif2=$PREFIX_ABS/$RELEASE/expected-dbcheck-output2.txt.tmp2 tmpldif2=$PREFIX/$RELEASE/expected-dbcheck-output2.txt.tmp2
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN >$tmpldif2 TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN >$tmpldif2
diff -u $tmpldif1 $tmpldif2 diff -u $tmpldif1 $tmpldif2
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
@@ -102,8 +104,8 @@ dbcheck_clean()
check_expected_after_links() check_expected_after_links()
{ {
tmpldif=$PREFIX_ABS/$RELEASE/expected-links-after-link-dbcheck.ldif.tmp tmpldif=$PREFIX/$RELEASE/expected-links-after-link-dbcheck.ldif.tmp
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(|(cn=swimmers)(cn=leaders)(cn=helpers))' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --sorted member >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(|(cn=swimmers)(cn=leaders)(cn=helpers))' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --sorted member >$tmpldif
diff -u $tmpldif $release_dir/expected-links-after-link-dbcheck.ldif diff -u $tmpldif $release_dir/expected-links-after-link-dbcheck.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
@@ -112,8 +114,8 @@ check_expected_after_links()
check_expected_after_deleted_links() check_expected_after_deleted_links()
{ {
tmpldif=$PREFIX_ABS/$RELEASE/expected-deleted-links-after-link-dbcheck.ldif.tmp tmpldif=$PREFIX/$RELEASE/expected-deleted-links-after-link-dbcheck.ldif.tmp
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(|(cn=swimmers)(cn=leaders)(cn=helpers))' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted member >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(|(cn=swimmers)(cn=leaders)(cn=helpers))' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted member >$tmpldif
diff -u $tmpldif $release_dir/expected-deleted-links-after-link-dbcheck.ldif diff -u $tmpldif $release_dir/expected-deleted-links-after-link-dbcheck.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
@@ -122,8 +124,8 @@ check_expected_after_deleted_links()
check_expected_after_objects() check_expected_after_objects()
{ {
tmpldif=$PREFIX_ABS/$RELEASE/expected-objects-after-link-dbcheck.ldif.tmp tmpldif=$PREFIX/$RELEASE/expected-objects-after-link-dbcheck.ldif.tmp
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(|(samaccountname=fred)(samaccountname=ddg)(samaccountname=usg)(samaccountname=user1)(samaccountname=user1x)(samaccountname=user2))' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted samAccountName | grep sAMAccountName >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(|(samaccountname=fred)(samaccountname=ddg)(samaccountname=usg)(samaccountname=user1)(samaccountname=user1x)(samaccountname=user2))' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted samAccountName | grep sAMAccountName >$tmpldif
diff -u $tmpldif $release_dir/expected-objects-after-link-dbcheck.ldif diff -u $tmpldif $release_dir/expected-objects-after-link-dbcheck.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
@@ -134,10 +136,10 @@ duplicate_member()
{ {
# We use an existing group so we have a stable GUID in the # We use an existing group so we have a stable GUID in the
# dbcheck output # dbcheck output
LDIF1=$(TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb -b 'CN=Enterprise Admins,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp' --scope=base --reveal --extended-dn member) LDIF1=$(TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb -b 'CN=Enterprise Admins,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp' --scope=base --reveal --extended-dn member)
DN=$(echo "${LDIF1}" | grep '^dn: ') DN=$(echo "${LDIF1}" | grep '^dn: ')
MSG=$(echo "${LDIF1}" | grep -v '^dn: ' | grep -v '^#' | grep -v '^$') MSG=$(echo "${LDIF1}" | grep -v '^dn: ' | grep -v '^#' | grep -v '^$')
ldif=$PREFIX_ABS/${RELEASE}/duplicate-member-multi.ldif ldif=$PREFIX/${RELEASE}/duplicate-member-multi.ldif
{ {
echo "${DN}" echo "${DN}"
echo "changetype: modify" echo "changetype: modify"
@@ -146,7 +148,7 @@ duplicate_member()
echo "${MSG}" | sed -e 's!RMD_LOCAL_USN=[1-9][0-9]*!RMD_LOCAL_USN=0!' echo "${MSG}" | sed -e 's!RMD_LOCAL_USN=[1-9][0-9]*!RMD_LOCAL_USN=0!'
} >$ldif } >$ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -160,8 +162,8 @@ dbcheck_duplicate_member()
check_expected_after_duplicate_links() check_expected_after_duplicate_links()
{ {
tmpldif=$PREFIX_ABS/$RELEASE/expected-duplicates-after-link-dbcheck.ldif.tmp tmpldif=$PREFIX/$RELEASE/expected-duplicates-after-link-dbcheck.ldif.tmp
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(|(cn=administrator)(cn=enterprise admins))' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --sorted memberOf member >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(|(cn=administrator)(cn=enterprise admins))' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --sorted memberOf member >$tmpldif
diff -u $tmpldif $release_dir/expected-duplicates-after-link-dbcheck.ldif diff -u $tmpldif $release_dir/expected-duplicates-after-link-dbcheck.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
@@ -172,7 +174,7 @@ missing_link_sid_corruption()
{ {
# Step1: add user "missingsidu1" # Step1: add user "missingsidu1"
# #
ldif=$PREFIX_ABS/${RELEASE}/missing_link_sid_corruption1.ldif ldif=$PREFIX/${RELEASE}/missing_link_sid_corruption1.ldif
cat >$ldif <<EOF cat >$ldif <<EOF
dn: CN=missingsidu1,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp dn: CN=missingsidu1,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp
changetype: add changetype: add
@@ -182,7 +184,7 @@ objectGUID: 0da8f25e-d110-11e8-80b7-3c970ec68461
objectSid: S-1-5-21-4177067393-1453636373-93818738-771 objectSid: S-1-5-21-4177067393-1453636373-93818738-771
EOF EOF
out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --relax $ldif) out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --relax $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbmodify returned:\n$out" echo "ldbmodify returned:\n$out"
return 1 return 1
@@ -190,7 +192,7 @@ EOF
# Step2: add user "missingsidu2" # Step2: add user "missingsidu2"
# #
ldif=$PREFIX_ABS/${RELEASE}/missing_link_sid_corruption2.ldif ldif=$PREFIX/${RELEASE}/missing_link_sid_corruption2.ldif
cat >$ldif <<EOF cat >$ldif <<EOF
dn: CN=missingsidu2,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp dn: CN=missingsidu2,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp
changetype: add changetype: add
@@ -200,7 +202,7 @@ objectGUID: 66eb8f52-d110-11e8-ab9b-3c970ec68461
objectSid: S-1-5-21-4177067393-1453636373-93818738-772 objectSid: S-1-5-21-4177067393-1453636373-93818738-772
EOF EOF
out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --relax $ldif) out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --relax $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbmodify returned:\n$out" echo "ldbmodify returned:\n$out"
return 1 return 1
@@ -208,7 +210,7 @@ EOF
# Step3: add group "missingsidg3" and add users as members # Step3: add group "missingsidg3" and add users as members
# #
ldif=$PREFIX_ABS/${RELEASE}/missing_link_sid_corruption3.ldif ldif=$PREFIX/${RELEASE}/missing_link_sid_corruption3.ldif
cat >$ldif <<EOF cat >$ldif <<EOF
dn: CN=missingsidg3,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp dn: CN=missingsidg3,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp
changetype: add changetype: add
@@ -220,7 +222,7 @@ member: CN=missingsidu1,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp
member: CN=missingsidu2,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp member: CN=missingsidu2,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp
EOF EOF
out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --relax $ldif) out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --relax $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbmodify returned:\n$out" echo "ldbmodify returned:\n$out"
return 1 return 1
@@ -228,7 +230,7 @@ EOF
# Step4: remove one user again, so that we have one deleted link # Step4: remove one user again, so that we have one deleted link
# #
ldif=$PREFIX_ABS/${RELEASE}/missing_link_sid_corruption4.ldif ldif=$PREFIX/${RELEASE}/missing_link_sid_corruption4.ldif
cat >$ldif <<EOF cat >$ldif <<EOF
dn: CN=missingsidg3,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp dn: CN=missingsidg3,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp
changetype: modify changetype: modify
@@ -236,7 +238,7 @@ delete: member
member: CN=missingsidu1,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp member: CN=missingsidu1,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp
EOF EOF
out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --relax $ldif) out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --relax $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbmodify returned:\n$out" echo "ldbmodify returned:\n$out"
return 1 return 1
@@ -245,10 +247,10 @@ EOF
# #
# Step5: remove the SIDS from the links # Step5: remove the SIDS from the links
# #
LDIF1=$(TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb -b 'CN=missingsidg3,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp' --scope=base --reveal --extended-dn --show-binary member) LDIF1=$(TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb -b 'CN=missingsidg3,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp' --scope=base --reveal --extended-dn --show-binary member)
DN=$(echo "${LDIF1}" | grep '^dn: ') DN=$(echo "${LDIF1}" | grep '^dn: ')
MSG=$(echo "${LDIF1}" | grep -v '^dn: ' | grep -v '^#' | grep -v '^$') MSG=$(echo "${LDIF1}" | grep -v '^dn: ' | grep -v '^#' | grep -v '^$')
ldif=$PREFIX_ABS/${RELEASE}/missing_link_sid_corruption5.ldif ldif=$PREFIX/${RELEASE}/missing_link_sid_corruption5.ldif
{ {
echo "${DN}" echo "${DN}"
echo "changetype: modify" echo "changetype: modify"
@@ -262,7 +264,7 @@ EOF
cat cat
} >$ldif } >$ldif
out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif) out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbmodify returned:\n$out" echo "ldbmodify returned:\n$out"
return 1 return 1
@@ -279,7 +281,7 @@ dbcheck_missing_link_sid_corruption()
add_lost_deleted_user1() add_lost_deleted_user1()
{ {
ldif=$PREFIX_ABS/${RELEASE}/add_lost_deleted_user1.ldif ldif=$PREFIX/${RELEASE}/add_lost_deleted_user1.ldif
cat >$ldif <<EOF cat >$ldif <<EOF
dn: CN=fred\0ADEL:2301a64c-1234-5678-851e-12d4a711cfb4,OU=removed,DC=release-4-5-0-pre1,DC=samba,DC=corp dn: CN=fred\0ADEL:2301a64c-1234-5678-851e-12d4a711cfb4,OU=removed,DC=release-4-5-0-pre1,DC=samba,DC=corp
objectClass: top objectClass: top
@@ -362,7 +364,7 @@ nTSecurityDescriptor:: AQAXjBQAAAAwAAAATAAAAMQAAAABBQAAAAAABRUAAACB/fj4FbukVnK
GAC9AQ8AAQIAAAAAAAUgAAAAIAIAAA== GAC9AQ8AAQIAAAAAAAUgAAAAIAIAAA==
EOF EOF
out=$(TZ=UTC $ldbadd -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif) out=$(TZ=UTC $ldbadd -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbadd returned:\n$out" echo "ldbadd returned:\n$out"
return 1 return 1
@@ -379,7 +381,7 @@ dbcheck_lost_deleted_user1()
remove_lost_deleted_user1() remove_lost_deleted_user1()
{ {
out=$(TZ=UTC $ldbdel -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb "<GUID=2301a64c-1234-5678-851e-12d4a711cfb4>" --show-recycled --relax) out=$(TZ=UTC $ldbdel -H tdb://$PREFIX/${RELEASE}/private/sam.ldb "<GUID=2301a64c-1234-5678-851e-12d4a711cfb4>" --show-recycled --relax)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbdel returned:\n$out" echo "ldbdel returned:\n$out"
return 1 return 1
@@ -390,7 +392,7 @@ remove_lost_deleted_user1()
add_lost_deleted_user2() add_lost_deleted_user2()
{ {
ldif=$PREFIX_ABS/${RELEASE}/add_lost_deleted_user2.ldif ldif=$PREFIX/${RELEASE}/add_lost_deleted_user2.ldif
cat >$ldif <<EOF cat >$ldif <<EOF
dn: CN=fred\0ADEL:2301a64c-8765-4321-851e-12d4a711cfb4,CN=LostAndFound,DC=release-4-5-0-pre1,DC=samba,DC=corp dn: CN=fred\0ADEL:2301a64c-8765-4321-851e-12d4a711cfb4,CN=LostAndFound,DC=release-4-5-0-pre1,DC=samba,DC=corp
objectClass: top objectClass: top
@@ -472,7 +474,7 @@ nTSecurityDescriptor:: AQAXjBQAAAAwAAAATAAAAMQAAAABBQAAAAAABRUAAACB/fj4FbukVnK
GAC9AQ8AAQIAAAAAAAUgAAAAIAIAAA== GAC9AQ8AAQIAAAAAAAUgAAAAIAIAAA==
EOF EOF
out=$(TZ=UTC $ldbadd -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif) out=$(TZ=UTC $ldbadd -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbadd returned:\n$out" echo "ldbadd returned:\n$out"
return 1 return 1
@@ -489,7 +491,7 @@ dbcheck_lost_deleted_user2()
add_lost_deleted_user3() add_lost_deleted_user3()
{ {
ldif=$PREFIX_ABS/${RELEASE}/add_lost_deleted_user3.ldif ldif=$PREFIX/${RELEASE}/add_lost_deleted_user3.ldif
cat >$ldif <<EOF cat >$ldif <<EOF
dn: CN=fred\0ADEL:2301a64c-1122-5566-851e-12d4a711cfb4,OU=removed,DC=release-4-5-0-pre1,DC=samba,DC=corp dn: CN=fred\0ADEL:2301a64c-1122-5566-851e-12d4a711cfb4,OU=removed,DC=release-4-5-0-pre1,DC=samba,DC=corp
objectClass: top objectClass: top
@@ -572,7 +574,7 @@ nTSecurityDescriptor:: AQAXjBQAAAAwAAAATAAAAMQAAAABBQAAAAAABRUAAACB/fj4FbukVnK
GAC9AQ8AAQIAAAAAAAUgAAAAIAIAAA== GAC9AQ8AAQIAAAAAAAUgAAAAIAIAAA==
EOF EOF
out=$(TZ=UTC $ldbadd -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif) out=$(TZ=UTC $ldbadd -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbadd returned:\n$out" echo "ldbadd returned:\n$out"
return 1 return 1
@@ -591,7 +593,7 @@ dbcheck_lost_deleted_user3()
remove_lost_deleted_user3() remove_lost_deleted_user3()
{ {
out=$(TZ=UTC $ldbdel -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb "<GUID=2301a64c-1122-5566-851e-12d4a711cfb4>" --show-recycled --relax) out=$(TZ=UTC $ldbdel -H tdb://$PREFIX/${RELEASE}/private/sam.ldb "<GUID=2301a64c-1122-5566-851e-12d4a711cfb4>" --show-recycled --relax)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbdel returned:\n$out" echo "ldbdel returned:\n$out"
return 1 return 1
@@ -606,10 +608,10 @@ forward_link_corruption()
# Step1: add a duplicate forward link from # Step1: add a duplicate forward link from
# "CN=Enterprise Admins" to "CN=Administrator" # "CN=Enterprise Admins" to "CN=Administrator"
# #
LDIF1=$(TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb -b 'CN=Enterprise Admins,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp' --scope=base --reveal --extended-dn member) LDIF1=$(TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb -b 'CN=Enterprise Admins,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp' --scope=base --reveal --extended-dn member)
DN=$(echo "${LDIF1}" | grep '^dn: ') DN=$(echo "${LDIF1}" | grep '^dn: ')
MSG=$(echo "${LDIF1}" | grep -v '^dn: ' | grep -v '^#' | grep -v '^$') MSG=$(echo "${LDIF1}" | grep -v '^dn: ' | grep -v '^#' | grep -v '^$')
ldif=$PREFIX_ABS/${RELEASE}/forward_link_corruption1.ldif ldif=$PREFIX/${RELEASE}/forward_link_corruption1.ldif
{ {
echo "${DN}" echo "${DN}"
echo "changetype: modify" echo "changetype: modify"
@@ -618,7 +620,7 @@ forward_link_corruption()
echo "${MSG}" | sed -e 's!RMD_LOCAL_USN=[1-9][0-9]*!RMD_LOCAL_USN=0!' echo "${MSG}" | sed -e 's!RMD_LOCAL_USN=[1-9][0-9]*!RMD_LOCAL_USN=0!'
} >$ldif } >$ldif
out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif) out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbmodify returned:\n$out" echo "ldbmodify returned:\n$out"
return 1 return 1
@@ -627,7 +629,7 @@ forward_link_corruption()
# #
# Step2: add user "dangling" # Step2: add user "dangling"
# #
ldif=$PREFIX_ABS/${RELEASE}/forward_link_corruption2.ldif ldif=$PREFIX/${RELEASE}/forward_link_corruption2.ldif
cat >$ldif <<EOF cat >$ldif <<EOF
dn: CN=dangling,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp dn: CN=dangling,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp
changetype: add changetype: add
@@ -636,7 +638,7 @@ samaccountname: dangling
objectGUID: fd8a04ac-cea0-4921-b1a6-c173e1155c22 objectGUID: fd8a04ac-cea0-4921-b1a6-c173e1155c22
EOF EOF
out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --relax $ldif) out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --relax $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbmodify returned:\n$out" echo "ldbmodify returned:\n$out"
return 1 return 1
@@ -646,7 +648,7 @@ EOF
# Step3: add a dangling backlink from # Step3: add a dangling backlink from
# "CN=dangling" to "CN=Enterprise Admins" # "CN=dangling" to "CN=Enterprise Admins"
# #
ldif=$PREFIX_ABS/${RELEASE}/forward_link_corruption3.ldif ldif=$PREFIX/${RELEASE}/forward_link_corruption3.ldif
{ {
echo "dn: CN=dangling,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp" echo "dn: CN=dangling,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp"
echo "changetype: modify" echo "changetype: modify"
@@ -654,7 +656,7 @@ EOF
echo "memberOf: <GUID=304ad703-468b-465e-9787-470b3dfd7d75>;<SID=S-1-5-21-4177067393-1453636373-93818738-519>;CN=Enterprise Admins,CN=Users,DC=release-4-5-0-pre1,DC=samba,DC=corp" echo "memberOf: <GUID=304ad703-468b-465e-9787-470b3dfd7d75>;<SID=S-1-5-21-4177067393-1453636373-93818738-519>;CN=Enterprise Admins,CN=Users,DC=release-4-5-0-pre1,DC=samba,DC=corp"
} >$ldif } >$ldif
out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif) out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbmodify returned:\n$out" echo "ldbmodify returned:\n$out"
return 1 return 1
@@ -669,8 +671,8 @@ dbcheck_forward_link_corruption()
check_expected_after_dbcheck_forward_link_corruption() check_expected_after_dbcheck_forward_link_corruption()
{ {
tmpldif=$PREFIX_ABS/$RELEASE/expected-after-dbcheck-forward-link-corruption.ldif.tmp tmpldif=$PREFIX/$RELEASE/expected-after-dbcheck-forward-link-corruption.ldif.tmp
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(|(cn=dangling)(cn=enterprise admins))' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --sorted memberOf member >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(|(cn=dangling)(cn=enterprise admins))' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --sorted memberOf member >$tmpldif
diff -u $tmpldif $release_dir/expected-after-dbcheck-forward-link-corruption.ldif diff -u $tmpldif $release_dir/expected-after-dbcheck-forward-link-corruption.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
@@ -682,7 +684,7 @@ oneway_link_corruption()
# #
# Step1: add OU "dangling-ou" # Step1: add OU "dangling-ou"
# #
ldif=$PREFIX_ABS/${RELEASE}/oneway_link_corruption.ldif ldif=$PREFIX/${RELEASE}/oneway_link_corruption.ldif
cat >$ldif <<EOF cat >$ldif <<EOF
dn: OU=dangling-ou,DC=release-4-5-0-pre1,DC=samba,DC=corp dn: OU=dangling-ou,DC=release-4-5-0-pre1,DC=samba,DC=corp
changetype: add changetype: add
@@ -690,7 +692,7 @@ objectclass: organizationalUnit
objectGUID: 20600e7c-92bb-492e-9552-f3ed7f8a2cad objectGUID: 20600e7c-92bb-492e-9552-f3ed7f8a2cad
EOF EOF
out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --relax $ldif) out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --relax $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbmodify returned:\n$out" echo "ldbmodify returned:\n$out"
return 1 return 1
@@ -699,7 +701,7 @@ EOF
# #
# Step2: add msExchConfigurationContainer "dangling-msexch" # Step2: add msExchConfigurationContainer "dangling-msexch"
# #
ldif=$PREFIX_ABS/${RELEASE}/oneway_link_corruption2.ldif ldif=$PREFIX/${RELEASE}/oneway_link_corruption2.ldif
cat >$ldif <<EOF cat >$ldif <<EOF
dn: OU=dangling-from,DC=release-4-5-0-pre1,DC=samba,DC=corp dn: OU=dangling-from,DC=release-4-5-0-pre1,DC=samba,DC=corp
changetype: add changetype: add
@@ -707,7 +709,7 @@ objectclass: organizationalUnit
seeAlso: OU=dangling-ou,DC=release-4-5-0-pre1,DC=samba,DC=corp seeAlso: OU=dangling-ou,DC=release-4-5-0-pre1,DC=samba,DC=corp
EOF EOF
out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif) out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbmodify returned:\n$out" echo "ldbmodify returned:\n$out"
return 1 return 1
@@ -718,7 +720,7 @@ EOF
# #
# Because this is a one-way link we don't fix it at runtime # Because this is a one-way link we don't fix it at runtime
# #
out=$(TZ=UTC $ldbrename -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb OU=dangling-ou,DC=release-4-5-0-pre1,DC=samba,DC=corp OU=dangling-ou2,DC=release-4-5-0-pre1,DC=samba,DC=corp) out=$(TZ=UTC $ldbrename -H tdb://$PREFIX/${RELEASE}/private/sam.ldb OU=dangling-ou,DC=release-4-5-0-pre1,DC=samba,DC=corp OU=dangling-ou2,DC=release-4-5-0-pre1,DC=samba,DC=corp)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbmodify returned:\n$out" echo "ldbmodify returned:\n$out"
return 1 return 1
@@ -733,8 +735,8 @@ dbcheck_oneway_link_corruption()
check_expected_after_dbcheck_oneway_link_corruption() check_expected_after_dbcheck_oneway_link_corruption()
{ {
tmpldif=$PREFIX_ABS/$RELEASE/expected-after-dbcheck-oneway-link-corruption.ldif.tmp tmpldif=$PREFIX/$RELEASE/expected-after-dbcheck-oneway-link-corruption.ldif.tmp
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(|(ou=dangling-ou)(ou=dangling-ou2)(ou=dangling-from))' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --sorted seeAlso >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(|(ou=dangling-ou)(ou=dangling-ou2)(ou=dangling-from))' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --sorted seeAlso >$tmpldif
diff -u $tmpldif $release_dir/expected-after-dbcheck-oneway-link-corruption.ldif diff -u $tmpldif $release_dir/expected-after-dbcheck-oneway-link-corruption.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
@@ -744,7 +746,7 @@ check_expected_after_dbcheck_oneway_link_corruption()
dbcheck_dangling_multi_valued() dbcheck_dangling_multi_valued()
{ {
$PYTHON $BINDIR/samba-tool dbcheck -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --selftest-check-expired-tombstones --fix --yes $PYTHON $BINDIR/samba-tool dbcheck -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --selftest-check-expired-tombstones --fix --yes
if [ "$?" != "1" ]; then if [ "$?" != "1" ]; then
return 1 return 1
fi fi
@@ -752,12 +754,12 @@ dbcheck_dangling_multi_valued()
dangling_multi_valued_check_missing() dangling_multi_valued_check_missing()
{ {
WORDS=$(TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(samaccountname=dangling-multi2)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted msDS-RevealedDSAs | grep msDS-RevealedDSAs | wc -l) WORDS=$(TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(samaccountname=dangling-multi2)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted msDS-RevealedDSAs | grep msDS-RevealedDSAs | wc -l)
if [ $WORDS -ne 4 ]; then if [ $WORDS -ne 4 ]; then
echo Got only $WORDS links for dangling-multi2 echo Got only $WORDS links for dangling-multi2
return 1 return 1
fi fi
WORDS=$(TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(samaccountname=dangling-multi3)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted msDS-RevealedDSAs | grep msDS-RevealedDSAs | wc -l) WORDS=$(TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(samaccountname=dangling-multi3)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted msDS-RevealedDSAs | grep msDS-RevealedDSAs | wc -l)
if [ $WORDS -ne 4 ]; then if [ $WORDS -ne 4 ]; then
echo Got only $WORDS links for dangling-multi3 echo Got only $WORDS links for dangling-multi3
return 1 return 1
@@ -766,20 +768,20 @@ dangling_multi_valued_check_missing()
dangling_multi_valued_check_equal_or_too_many() dangling_multi_valued_check_equal_or_too_many()
{ {
WORDS=$(TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(samaccountname=dangling-multi1)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted msDS-RevealedDSAs | grep msDS-RevealedDSAs | wc -l) WORDS=$(TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(samaccountname=dangling-multi1)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted msDS-RevealedDSAs | grep msDS-RevealedDSAs | wc -l)
if [ $WORDS -ne 4 ]; then if [ $WORDS -ne 4 ]; then
echo Got $WORDS links for dangling-multi1 echo Got $WORDS links for dangling-multi1
return 1 return 1
fi fi
WORDS=$(TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(samaccountname=dangling-multi5)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted msDS-RevealedDSAs | grep msDS-RevealedDSAs | wc -l) WORDS=$(TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(samaccountname=dangling-multi5)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted msDS-RevealedDSAs | grep msDS-RevealedDSAs | wc -l)
if [ $WORDS -ne 0 ]; then if [ $WORDS -ne 0 ]; then
echo Got $WORDS links for dangling-multi5 echo Got $WORDS links for dangling-multi5
return 1 return 1
fi fi
WORDS=$(TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(samaccountname=Administrator)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted msDS-RevealedDSAs | grep msDS-RevealedDSAs | wc -l) WORDS=$(TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(samaccountname=Administrator)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted msDS-RevealedDSAs | grep msDS-RevealedDSAs | wc -l)
if [ $WORDS -ne 2 ]; then if [ $WORDS -ne 2 ]; then
echo Got $WORDS links for Administrator echo Got $WORDS links for Administrator
@@ -793,7 +795,7 @@ dangling_link_does_not_prevent_delete()
# #
# Step1: add user "dangling" # Step1: add user "dangling"
# #
ldif=$PREFIX_ABS/${RELEASE}/backlink_can_be_vanished1.ldif ldif=$PREFIX/${RELEASE}/backlink_can_be_vanished1.ldif
dn='CN=dangling-for-vanish,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp' dn='CN=dangling-for-vanish,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp'
cat >$ldif <<EOF cat >$ldif <<EOF
dn: $dn dn: $dn
@@ -803,7 +805,7 @@ samaccountname: dangling-v
objectGUID: fd8a04ac-cea0-4921-b1a6-c173e1155c23 objectGUID: fd8a04ac-cea0-4921-b1a6-c173e1155c23
EOF EOF
out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --relax $ldif) out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --relax $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbmodify returned:\n$out" echo "ldbmodify returned:\n$out"
return 1 return 1
@@ -813,7 +815,7 @@ EOF
# Step2: add a dangling backlink from # Step2: add a dangling backlink from
# "CN=dangling-for-vanish" to "CN=Enterprise Admins" # "CN=dangling-for-vanish" to "CN=Enterprise Admins"
# #
ldif=$PREFIX_ABS/${RELEASE}/backlink_can_be_vanished2.ldif ldif=$PREFIX/${RELEASE}/backlink_can_be_vanished2.ldif
{ {
echo "dn: $dn" echo "dn: $dn"
echo "changetype: modify" echo "changetype: modify"
@@ -821,13 +823,13 @@ EOF
echo "memberOf: <GUID=304ad703-468b-465e-9787-470b3dfd7d75>;<SID=S-1-5-21-4177067393-1453636373-93818738-519>;CN=Enterprise Admins,CN=Users,DC=release-4-5-0-pre1,DC=samba,DC=corp" echo "memberOf: <GUID=304ad703-468b-465e-9787-470b3dfd7d75>;<SID=S-1-5-21-4177067393-1453636373-93818738-519>;CN=Enterprise Admins,CN=Users,DC=release-4-5-0-pre1,DC=samba,DC=corp"
} >$ldif } >$ldif
out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif) out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbmodify returned:\n$out" echo "ldbmodify returned:\n$out"
return 1 return 1
fi fi
out=$(TZ=UTC $ldbdel -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb "$dn") out=$(TZ=UTC $ldbdel -H tdb://$PREFIX/${RELEASE}/private/sam.ldb "$dn")
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbdel returned:\n$out" echo "ldbdel returned:\n$out"
return 1 return 1
@@ -840,7 +842,7 @@ dangling_link_to_unknown_does_not_prevent_delete()
# #
# Step1: add user "dangling" # Step1: add user "dangling"
# #
ldif=$PREFIX_ABS/${RELEASE}/backlink_can_be_vanished1.ldif ldif=$PREFIX/${RELEASE}/backlink_can_be_vanished1.ldif
dn='CN=dangling-for-vanish,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp' dn='CN=dangling-for-vanish,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp'
cat >$ldif <<EOF cat >$ldif <<EOF
dn: $dn dn: $dn
@@ -850,7 +852,7 @@ samaccountname: dangling-v
objectGUID: a4090081-ac2a-410c-8924-b255375160e8 objectGUID: a4090081-ac2a-410c-8924-b255375160e8
EOF EOF
out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --relax $ldif) out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --relax $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbmodify returned:\n$out" echo "ldbmodify returned:\n$out"
return 1 return 1
@@ -860,7 +862,7 @@ EOF
# Step2: add a dangling backlink from # Step2: add a dangling backlink from
# "CN=dangling-for-vanish" to "CN=NOT Enterprise Admins" # "CN=dangling-for-vanish" to "CN=NOT Enterprise Admins"
# #
ldif=$PREFIX_ABS/${RELEASE}/backlink_can_be_vanished2.ldif ldif=$PREFIX/${RELEASE}/backlink_can_be_vanished2.ldif
{ {
echo "dn: $dn" echo "dn: $dn"
echo "changetype: modify" echo "changetype: modify"
@@ -868,13 +870,13 @@ EOF
echo "memberOf: <GUID=09a47bff-0227-44e1-a8e4-63f9e726515d>;<SID=S-1-5-21-4177067393-1453636373-93818738-588>;CN=NOT Enterprise Admins,CN=Users,DC=release-4-5-0-pre1,DC=samba,DC=corp" echo "memberOf: <GUID=09a47bff-0227-44e1-a8e4-63f9e726515d>;<SID=S-1-5-21-4177067393-1453636373-93818738-588>;CN=NOT Enterprise Admins,CN=Users,DC=release-4-5-0-pre1,DC=samba,DC=corp"
} >$ldif } >$ldif
out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif) out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbmodify returned:\n$out" echo "ldbmodify returned:\n$out"
return 1 return 1
fi fi
out=$(TZ=UTC $ldbdel -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb "$dn") out=$(TZ=UTC $ldbdel -H tdb://$PREFIX/${RELEASE}/private/sam.ldb "$dn")
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbdel returned:\n$out" echo "ldbdel returned:\n$out"
return 1 return 1
@@ -887,7 +889,7 @@ dangling_link_to_known_and_unknown_does_not_prevent_delete()
# #
# Step1: add user "dangling" # Step1: add user "dangling"
# #
ldif=$PREFIX_ABS/${RELEASE}/backlink_can_be_vanished1.ldif ldif=$PREFIX/${RELEASE}/backlink_can_be_vanished1.ldif
dn='CN=dangling-for-vanish,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp' dn='CN=dangling-for-vanish,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp'
cat >$ldif <<EOF cat >$ldif <<EOF
dn: $dn dn: $dn
@@ -897,7 +899,7 @@ samaccountname: dangling-v
objectGUID: 2882ffb1-31c3-485e-a7fc-184dfafc32d4 objectGUID: 2882ffb1-31c3-485e-a7fc-184dfafc32d4
EOF EOF
out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --relax $ldif) out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --relax $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbmodify returned:\n$out" echo "ldbmodify returned:\n$out"
return 1 return 1
@@ -909,7 +911,7 @@ EOF
# "CN=dangling-for-vanish" to "CN=NOT Enterprise Admins" and # "CN=dangling-for-vanish" to "CN=NOT Enterprise Admins" and
# back to ourselves # back to ourselves
# #
ldif=$PREFIX_ABS/${RELEASE}/backlink_can_be_vanished2.ldif ldif=$PREFIX/${RELEASE}/backlink_can_be_vanished2.ldif
{ {
echo "dn: $dn" echo "dn: $dn"
echo "changetype: modify" echo "changetype: modify"
@@ -919,20 +921,20 @@ EOF
echo "memberOf: <GUID=2882ffb1-31c3-485e-a7fc-184dfafc32d4>;CN=dangling-for-vanish,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp" echo "memberOf: <GUID=2882ffb1-31c3-485e-a7fc-184dfafc32d4>;CN=dangling-for-vanish,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp"
} >$ldif } >$ldif
out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif) out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbmodify returned:\n$out" echo "ldbmodify returned:\n$out"
return 1 return 1
fi fi
out=$(TZ=UTC $ldbdel -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb "$dn") out=$(TZ=UTC $ldbdel -H tdb://$PREFIX/${RELEASE}/private/sam.ldb "$dn")
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
echo "ldbdel returned:\n$out" echo "ldbdel returned:\n$out"
return 1 return 1
fi fi
} }
remove_directory $PREFIX_ABS/${RELEASE} remove_directory $PREFIX/${RELEASE}
testit $RELEASE undump || failed=$(expr $failed + 1) testit $RELEASE undump || failed=$(expr $failed + 1)
testit_expect_failure "dbcheck_acl_reset" dbcheck_acl_reset || failed=$(expr $failed + 1) testit_expect_failure "dbcheck_acl_reset" dbcheck_acl_reset || failed=$(expr $failed + 1)
@@ -998,6 +1000,6 @@ testit "dangling_link_does_not_prevent_delete" dangling_link_does_not_prevent_de
testit "dangling_link_to_unknown_does_not_prevent_delete" dangling_link_to_unknown_does_not_prevent_delete || failed=$(expr $failed + 1) testit "dangling_link_to_unknown_does_not_prevent_delete" dangling_link_to_unknown_does_not_prevent_delete || failed=$(expr $failed + 1)
testit "dangling_link_to_known_and_unknown_does_not_prevent_delete" dangling_link_to_known_and_unknown_does_not_prevent_delete || failed=$(expr $failed + 1) testit "dangling_link_to_known_and_unknown_does_not_prevent_delete" dangling_link_to_known_and_unknown_does_not_prevent_delete || failed=$(expr $failed + 1)
remove_directory $PREFIX_ABS/${RELEASE} remove_directory $PREFIX/${RELEASE}
exit $failed exit $failed

View File

@@ -7,7 +7,7 @@ EOF
exit 1 exit 1
fi fi
PREFIX_ABS="$1" PREFIX="$1"
RELEASE="$2" RELEASE="$2"
shift 2 shift 2
@@ -108,13 +108,13 @@ fi
undump() undump()
{ {
$samba_undump $release_dir $PREFIX_ABS/$RELEASE $samba_tdbrestore $samba_undump $release_dir $PREFIX/$RELEASE $samba_tdbrestore
} }
add_userparameters0() add_userparameters0()
{ {
if [ x$RELEASE = x"release-4-1-0rc3" ]; then if [ x$RELEASE = x"release-4-1-0rc3" ]; then
$ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb <<EOF $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb <<EOF
dn: cn=localdc,cn=domain controllers,dc=release-4-1-0rc3,dc=samba,dc=corp dn: cn=localdc,cn=domain controllers,dc=release-4-1-0rc3,dc=samba,dc=corp
changetype: modify changetype: modify
replace: userParameters replace: userParameters
@@ -142,7 +142,7 @@ EOF
add_userparameters1() add_userparameters1()
{ {
if [ x$RELEASE = x"release-4-1-0rc3" ]; then if [ x$RELEASE = x"release-4-1-0rc3" ]; then
$ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb <<EOF $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb <<EOF
dn: cn=administrator,cn=users,dc=release-4-1-0rc3,dc=samba,dc=corp dn: cn=administrator,cn=users,dc=release-4-1-0rc3,dc=samba,dc=corp
changetype: modify changetype: modify
replace: userParameters replace: userParameters
@@ -170,7 +170,7 @@ EOF
add_userparameters2() add_userparameters2()
{ {
if [ x$RELEASE = x"release-4-1-0rc3" ]; then if [ x$RELEASE = x"release-4-1-0rc3" ]; then
$ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb <<EOF $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb <<EOF
dn: cn=krbtgt,cn=users,dc=release-4-1-0rc3,dc=samba,dc=corp dn: cn=krbtgt,cn=users,dc=release-4-1-0rc3,dc=samba,dc=corp
changetype: modify changetype: modify
replace: userParameters replace: userParameters
@@ -189,7 +189,7 @@ EOF
add_userparameters3() add_userparameters3()
{ {
if [ x$RELEASE = x"release-4-1-0rc3" ]; then if [ x$RELEASE = x"release-4-1-0rc3" ]; then
$ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb <<EOF $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb <<EOF
dn: cn=guest,cn=users,dc=release-4-1-0rc3,dc=samba,dc=corp dn: cn=guest,cn=users,dc=release-4-1-0rc3,dc=samba,dc=corp
changetype: modify changetype: modify
replace: userParameters replace: userParameters
@@ -221,8 +221,8 @@ EOF
check_expected_userparameters() check_expected_userparameters()
{ {
if [ x$RELEASE = x"release-4-1-0rc3" ]; then if [ x$RELEASE = x"release-4-1-0rc3" ]; then
tmpldif=$PREFIX_ABS/$RELEASE/expected-userParameters-after-dbcheck.ldif.tmp tmpldif=$PREFIX/$RELEASE/expected-userParameters-after-dbcheck.ldif.tmp
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb userParameters=* --scope=sub -b DC=release-4-1-0rc3,DC=samba,DC=corp userParameters --sorted | grep -v \# >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb userParameters=* --scope=sub -b DC=release-4-1-0rc3,DC=samba,DC=corp userParameters --sorted | grep -v \# >$tmpldif
diff -u $tmpldif $release_dir/expected-userParameters-after-dbcheck.ldif diff -u $tmpldif $release_dir/expected-userParameters-after-dbcheck.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
@@ -233,7 +233,7 @@ check_expected_userparameters()
reindex() reindex()
{ {
$PYTHON $BINDIR/samba-tool dbcheck --reindex -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb "$@" $PYTHON $BINDIR/samba-tool dbcheck --reindex -H tdb://$PREFIX/${RELEASE}/private/sam.ldb "$@"
} }
do_current_version_mod() do_current_version_mod()
@@ -243,7 +243,7 @@ do_current_version_mod()
# changing the attribute with current Samba fixes it, and that # changing the attribute with current Samba fixes it, and that
# a fixed attriute isn't unfixed by dbcheck. # a fixed attriute isn't unfixed by dbcheck.
tmpldif=$release_dir/sudoers2-mod.ldif tmpldif=$release_dir/sudoers2-mod.ldif
$ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $tmpldif $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $tmpldif
fi fi
return 0 return 0
} }
@@ -251,14 +251,14 @@ do_current_version_mod()
check_expected_before_values() check_expected_before_values()
{ {
if [ x$RELEASE = x"release-4-1-0rc3" ]; then if [ x$RELEASE = x"release-4-1-0rc3" ]; then
tmpldif=$PREFIX_ABS/$RELEASE/expected-replpropertymetadata-before-dbcheck.ldif.tmp tmpldif=$PREFIX/$RELEASE/expected-replpropertymetadata-before-dbcheck.ldif.tmp
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb cn=ops_run_anything --scope=one -b OU=SUDOers,DC=release-4-1-0rc3,DC=samba,DC=corp \* replpropertymetadata --sorted --show-binary >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb cn=ops_run_anything --scope=one -b OU=SUDOers,DC=release-4-1-0rc3,DC=samba,DC=corp \* replpropertymetadata --sorted --show-binary >$tmpldif
diff -u $tmpldif $release_dir/expected-replpropertymetadata-before-dbcheck.ldif diff -u $tmpldif $release_dir/expected-replpropertymetadata-before-dbcheck.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb cn=ops_run_anything2 --scope=one -b OU=SUDOers,DC=release-4-1-0rc3,DC=samba,DC=corp \* replpropertymetadata --sorted --show-binary | grep -v originating_change_time | grep -v whenChanged >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb cn=ops_run_anything2 --scope=one -b OU=SUDOers,DC=release-4-1-0rc3,DC=samba,DC=corp \* replpropertymetadata --sorted --show-binary | grep -v originating_change_time | grep -v whenChanged >$tmpldif
# Here we remove originating_change_time and whenChanged as # Here we remove originating_change_time and whenChanged as
# these are time-dependent, caused by the ldbmodify above. # these are time-dependent, caused by the ldbmodify above.
@@ -268,14 +268,14 @@ check_expected_before_values()
return 1 return 1
fi fi
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb cn=ops_run_anything3 --scope=one -b OU=SUDOers,DC=release-4-1-0rc3,DC=samba,DC=corp \* replpropertymetadata --sorted --show-binary >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb cn=ops_run_anything3 --scope=one -b OU=SUDOers,DC=release-4-1-0rc3,DC=samba,DC=corp \* replpropertymetadata --sorted --show-binary >$tmpldif
diff -u $tmpldif $release_dir/expected-replpropertymetadata-before-dbcheck3.ldif diff -u $tmpldif $release_dir/expected-replpropertymetadata-before-dbcheck3.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
elif [ x$RELEASE = x"release-4-5-0-pre1" ]; then elif [ x$RELEASE = x"release-4-5-0-pre1" ]; then
tmpldif=$PREFIX_ABS/$RELEASE/rootdse-version.initial.txt.tmp tmpldif=$PREFIX/$RELEASE/rootdse-version.initial.txt.tmp
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN >$tmpldif
diff -u $tmpldif $release_dir/rootdse-version.initial.txt diff -u $tmpldif $release_dir/rootdse-version.initial.txt
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
@@ -288,7 +288,7 @@ check_expected_before_values()
dbcheck_objectclass() dbcheck_objectclass()
{ {
if [ x$RELEASE = x"release-4-1-6-partial-object" ]; then if [ x$RELEASE = x"release-4-1-6-partial-object" ]; then
$PYTHON $BINDIR/samba-tool dbcheck --selftest-check-expired-tombstones --cross-ncs --fix --yes -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --attrs=objectclass "$@" $PYTHON $BINDIR/samba-tool dbcheck --selftest-check-expired-tombstones --cross-ncs --fix --yes -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --attrs=objectclass "$@"
else else
return 1 return 1
fi fi
@@ -298,9 +298,9 @@ dbcheck_objectclass()
dbcheck_deleted_objects() dbcheck_deleted_objects()
{ {
if [ x$RELEASE = x"alpha13" ]; then if [ x$RELEASE = x"alpha13" ]; then
basedn=$($ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --scope base -b "" defaultNamingContext | grep -i defaultNamingContext | cut -d\ -f 2) basedn=$($ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --scope base -b "" defaultNamingContext | grep -i defaultNamingContext | cut -d\ -f 2)
$PYTHON $BINDIR/samba-tool dbcheck -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb "cn=deleted objects,$basedn" --scope base "$@" $PYTHON $BINDIR/samba-tool dbcheck -H tdb://$PREFIX/${RELEASE}/private/sam.ldb "cn=deleted objects,$basedn" --scope base "$@"
else else
return 1 return 1
fi fi
@@ -309,45 +309,45 @@ dbcheck_deleted_objects()
# This should 'fail', because it returns the number of modified records # This should 'fail', because it returns the number of modified records
dbcheck() dbcheck()
{ {
$PYTHON $BINDIR/samba-tool dbcheck --selftest-check-expired-tombstones --cross-ncs --fix --yes -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb "$@" $PYTHON $BINDIR/samba-tool dbcheck --selftest-check-expired-tombstones --cross-ncs --fix --yes -H tdb://$PREFIX/${RELEASE}/private/sam.ldb "$@"
} }
check_expected_after_values() check_expected_after_values()
{ {
if [ x$RELEASE = x"release-4-1-0rc3" ]; then if [ x$RELEASE = x"release-4-1-0rc3" ]; then
tmpldif=$PREFIX_ABS/$RELEASE/expected-replpropertymetadata-after-dbcheck.ldif.tmp tmpldif=$PREFIX/$RELEASE/expected-replpropertymetadata-after-dbcheck.ldif.tmp
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb cn=ops_run_anything --scope=one -b OU=SUDOers,DC=release-4-1-0rc3,DC=samba,DC=corp \* replpropertymetadata --sorted --show-binary >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb cn=ops_run_anything --scope=one -b OU=SUDOers,DC=release-4-1-0rc3,DC=samba,DC=corp \* replpropertymetadata --sorted --show-binary >$tmpldif
diff -u $tmpldif $release_dir/expected-replpropertymetadata-after-dbcheck.ldif diff -u $tmpldif $release_dir/expected-replpropertymetadata-after-dbcheck.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb cn=ops_run_anything2 --scope=one -b OU=SUDOers,DC=release-4-1-0rc3,DC=samba,DC=corp \* replpropertymetadata --sorted --show-binary | grep -v originating_change_time | grep -v whenChanged >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb cn=ops_run_anything2 --scope=one -b OU=SUDOers,DC=release-4-1-0rc3,DC=samba,DC=corp \* replpropertymetadata --sorted --show-binary | grep -v originating_change_time | grep -v whenChanged >$tmpldif
diff -u $tmpldif $release_dir/expected-replpropertymetadata-after-dbcheck2.ldif diff -u $tmpldif $release_dir/expected-replpropertymetadata-after-dbcheck2.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb cn=ops_run_anything3 --scope=one -b OU=SUDOers,DC=release-4-1-0rc3,DC=samba,DC=corp \* replpropertymetadata --sorted --show-binary >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb cn=ops_run_anything3 --scope=one -b OU=SUDOers,DC=release-4-1-0rc3,DC=samba,DC=corp \* replpropertymetadata --sorted --show-binary >$tmpldif
diff -u $tmpldif $release_dir/expected-replpropertymetadata-after-dbcheck3.ldif diff -u $tmpldif $release_dir/expected-replpropertymetadata-after-dbcheck3.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
# Check DomainDNS partition for replica locations # Check DomainDNS partition for replica locations
tmpldif=$PREFIX_ABS/$RELEASE/expected-replica-locations-after-dbcheck.ldif.tmp tmpldif=$PREFIX/$RELEASE/expected-replica-locations-after-dbcheck.ldif.tmp
$ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb cn=49a69498-9a85-48af-9be4-aa0b3e0054f9 --scope=one -b CN=Partitions,CN=Configuration,DC=release-4-1-0rc3,DC=samba,DC=corp msDS-NC-Replica-Locations >$tmpldif $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb cn=49a69498-9a85-48af-9be4-aa0b3e0054f9 --scope=one -b CN=Partitions,CN=Configuration,DC=release-4-1-0rc3,DC=samba,DC=corp msDS-NC-Replica-Locations >$tmpldif
diff -u $tmpldif $release_dir/expected-replica-locations-after-dbcheck.ldif diff -u $tmpldif $release_dir/expected-replica-locations-after-dbcheck.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
# Check ForestDNS partition for replica locations # Check ForestDNS partition for replica locations
$ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb cn=7d2a15af-c0d4-487c-847e-e036292bcc65 --scope=one -b CN=Partitions,CN=Configuration,DC=release-4-1-0rc3,DC=samba,DC=corp msDS-NC-Replica-Locations >$tmpldif $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb cn=7d2a15af-c0d4-487c-847e-e036292bcc65 --scope=one -b CN=Partitions,CN=Configuration,DC=release-4-1-0rc3,DC=samba,DC=corp msDS-NC-Replica-Locations >$tmpldif
diff -u $tmpldif $release_dir/expected-replica-locations-after-dbcheck2.ldif diff -u $tmpldif $release_dir/expected-replica-locations-after-dbcheck2.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
elif [ x$RELEASE = x"release-4-5-0-pre1" ]; then elif [ x$RELEASE = x"release-4-5-0-pre1" ]; then
echo $RELEASE checking after values echo $RELEASE checking after values
tmpldif=$PREFIX_ABS/$RELEASE/expected-links-after-dbcheck.ldif.tmp tmpldif=$PREFIX/$RELEASE/expected-links-after-dbcheck.ldif.tmp
$ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --show-recycled --show-deleted --show-deactivated-link --reveal member memberOf lastKnownParent objectCategory lastKnownParent wellKnownObjects legacyExchangeDN sAMAccountType uSNChanged --sorted >$tmpldif $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --show-recycled --show-deleted --show-deactivated-link --reveal member memberOf lastKnownParent objectCategory lastKnownParent wellKnownObjects legacyExchangeDN sAMAccountType uSNChanged --sorted >$tmpldif
diff -u $tmpldif $release_dir/expected-links-after-dbcheck.ldif diff -u $tmpldif $release_dir/expected-links-after-dbcheck.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
@@ -355,8 +355,8 @@ check_expected_after_values()
# If in the future dbcheck has to make a change recorded in replPropertyMetadata, # If in the future dbcheck has to make a change recorded in replPropertyMetadata,
# this test will fail and can be removed. # this test will fail and can be removed.
tmpversion=$PREFIX_ABS/$RELEASE/rootdse-version.final.txt.tmp tmpversion=$PREFIX/$RELEASE/rootdse-version.final.txt.tmp
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN >$tmpversion TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN >$tmpversion
diff -u $tmpversion $release_dir/rootdse-version.final.txt diff -u $tmpversion $release_dir/rootdse-version.final.txt
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
@@ -369,7 +369,7 @@ check_forced_duplicate_values()
{ {
if [ x$RELEASE = x"release-4-1-0rc3" ]; then if [ x$RELEASE = x"release-4-1-0rc3" ]; then
ldif=$release_dir/forced-duplicate-value-for-dbcheck.ldif ldif=$release_dir/forced-duplicate-value-for-dbcheck.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-1-0RC3,DC%3DSAMBA,DC%3DCORP.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-1-0RC3,DC%3DSAMBA,DC%3DCORP.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -382,7 +382,7 @@ check_forced_duplicate_values()
dbcheck_after_dup() dbcheck_after_dup()
{ {
if [ x$RELEASE = x"release-4-1-0rc3" ]; then if [ x$RELEASE = x"release-4-1-0rc3" ]; then
$PYTHON $BINDIR/samba-tool dbcheck --selftest-check-expired-tombstones --fix --yes -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb cn=administrator,cn=users,DC=release-4-1-0rc3,DC=samba,DC=corp "$@" $PYTHON $BINDIR/samba-tool dbcheck --selftest-check-expired-tombstones --fix --yes -H tdb://$PREFIX/${RELEASE}/private/sam.ldb cn=administrator,cn=users,DC=release-4-1-0rc3,DC=samba,DC=corp "$@"
else else
return 1 return 1
fi fi
@@ -391,8 +391,8 @@ dbcheck_after_dup()
check_expected_after_dup_values() check_expected_after_dup_values()
{ {
if [ x$RELEASE = x"release-4-1-0rc3" ]; then if [ x$RELEASE = x"release-4-1-0rc3" ]; then
tmpldif=$PREFIX_ABS/$RELEASE/expected-otherphone-after-dbcheck.ldif.tmp tmpldif=$PREFIX/$RELEASE/expected-otherphone-after-dbcheck.ldif.tmp
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb cn=administrator --scope=base -b cn=administrator,cn=users,DC=release-4-1-0rc3,DC=samba,DC=corp otherHomePhone --sorted --show-binary | grep -v \# | sort >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb cn=administrator --scope=base -b cn=administrator,cn=users,DC=release-4-1-0rc3,DC=samba,DC=corp otherHomePhone --sorted --show-binary | grep -v \# | sort >$tmpldif
diff -u $tmpldif $release_dir/expected-otherphone-after-dbcheck.ldif diff -u $tmpldif $release_dir/expected-otherphone-after-dbcheck.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
@@ -404,21 +404,21 @@ check_expected_after_dup_values()
# But having fixed it all up, this should pass # But having fixed it all up, this should pass
dbcheck_clean() dbcheck_clean()
{ {
$PYTHON $BINDIR/samba-tool dbcheck --cross-ncs -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb "$@" $PYTHON $BINDIR/samba-tool dbcheck --cross-ncs -H tdb://$PREFIX/${RELEASE}/private/sam.ldb "$@"
} }
# This should 'fail', because it returns the number of modified records. # This should 'fail', because it returns the number of modified records.
# We need to run this against all versions without adprep 2016 (before Samba 4.19) # We need to run this against all versions without adprep 2016 (before Samba 4.19)
dbcheck_acl_reset() dbcheck_acl_reset()
{ {
$PYTHON $BINDIR/samba-tool dbcheck --reset-well-known-acls --cross-ncs --fix --yes -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb "$@" $PYTHON $BINDIR/samba-tool dbcheck --reset-well-known-acls --cross-ncs --fix --yes -H tdb://$PREFIX/${RELEASE}/private/sam.ldb "$@"
} }
# But having fixed it all up, this should pass. # But having fixed it all up, this should pass.
# We don't need to run this against 4.1.0rc3 # We don't need to run this against 4.1.0rc3
dbcheck_acl_reset_clean() dbcheck_acl_reset_clean()
{ {
if [ x$RELEASE != x"release-4-1-0rc3" ]; then if [ x$RELEASE != x"release-4-1-0rc3" ]; then
$PYTHON $BINDIR/samba-tool dbcheck --reset-well-known-acls --cross-ncs -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb "$@" $PYTHON $BINDIR/samba-tool dbcheck --reset-well-known-acls --cross-ncs -H tdb://$PREFIX/${RELEASE}/private/sam.ldb "$@"
fi fi
} }
@@ -426,7 +426,7 @@ dbcheck_acl_reset_clean()
dbcheck2() dbcheck2()
{ {
if [ x$RELEASE = x"release-4-1-0rc3" ]; then if [ x$RELEASE = x"release-4-1-0rc3" ]; then
$PYTHON $BINDIR/samba-tool dbcheck --selftest-check-expired-tombstones --cross-ncs --fix --yes -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb "$@" $PYTHON $BINDIR/samba-tool dbcheck --selftest-check-expired-tombstones --cross-ncs --fix --yes -H tdb://$PREFIX/${RELEASE}/private/sam.ldb "$@"
else else
exit 1 exit 1
fi fi
@@ -435,14 +435,14 @@ dbcheck2()
dbcheck_clean2() dbcheck_clean2()
{ {
if [ x$RELEASE = x"release-4-1-0rc3" ]; then if [ x$RELEASE = x"release-4-1-0rc3" ]; then
$PYTHON $BINDIR/samba-tool dbcheck --selftest-check-expired-tombstones --cross-ncs -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb "$@" $PYTHON $BINDIR/samba-tool dbcheck --selftest-check-expired-tombstones --cross-ncs -H tdb://$PREFIX/${RELEASE}/private/sam.ldb "$@"
fi fi
} }
rm_deleted_objects() rm_deleted_objects()
{ {
if [ x$RELEASE = x"release-4-1-0rc3" ]; then if [ x$RELEASE = x"release-4-1-0rc3" ]; then
TZ=UTC $ldbdel -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-1-0RC3,DC%3DSAMBA,DC%3DCORP.ldb 'CN=Deleted Objects,DC=RELEASE-4-1-0RC3,DC=SAMBA,DC=CORP' TZ=UTC $ldbdel -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-1-0RC3,DC%3DSAMBA,DC%3DCORP.ldb 'CN=Deleted Objects,DC=RELEASE-4-1-0RC3,DC=SAMBA,DC=CORP'
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -454,7 +454,7 @@ rm_deleted_objects()
dbcheck3() dbcheck3()
{ {
if [ x$RELEASE = x"release-4-1-0rc3" ]; then if [ x$RELEASE = x"release-4-1-0rc3" ]; then
$PYTHON $BINDIR/samba-tool dbcheck --selftest-check-expired-tombstones --cross-ncs --fix --yes -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb "$@" $PYTHON $BINDIR/samba-tool dbcheck --selftest-check-expired-tombstones --cross-ncs --fix --yes -H tdb://$PREFIX/${RELEASE}/private/sam.ldb "$@"
else else
exit 1 exit 1
fi fi
@@ -463,15 +463,15 @@ dbcheck3()
dbcheck_clean3() dbcheck_clean3()
{ {
if [ x$RELEASE = x"release-4-1-0rc3" ]; then if [ x$RELEASE = x"release-4-1-0rc3" ]; then
$PYTHON $BINDIR/samba-tool dbcheck --selftest-check-expired-tombstones --cross-ncs -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb "$@" $PYTHON $BINDIR/samba-tool dbcheck --selftest-check-expired-tombstones --cross-ncs -H tdb://$PREFIX/${RELEASE}/private/sam.ldb "$@"
fi fi
} }
check_expected_after_deleted_objects() check_expected_after_deleted_objects()
{ {
if [ x$RELEASE = x"release-4-1-0rc3" ]; then if [ x$RELEASE = x"release-4-1-0rc3" ]; then
tmpldif=$PREFIX_ABS/$RELEASE/expected-deleted_objects-after-dbcheck.ldif.tmp tmpldif=$PREFIX/$RELEASE/expected-deleted_objects-after-dbcheck.ldif.tmp
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb cn=deleted\ objects --scope=base -b cn=deleted\ objects,DC=release-4-1-0rc3,DC=samba,DC=corp objectClass description isDeleted isCriticalSystemObject objectGUID showInAdvancedViewOnly systemFlags --sorted --show-binary --show-deleted | grep -v \# | sort >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb cn=deleted\ objects --scope=base -b cn=deleted\ objects,DC=release-4-1-0rc3,DC=samba,DC=corp objectClass description isDeleted isCriticalSystemObject objectGUID showInAdvancedViewOnly systemFlags --sorted --show-binary --show-deleted | grep -v \# | sort >$tmpldif
diff -u $tmpldif $release_dir/expected-deleted_objects-after-dbcheck.ldif diff -u $tmpldif $release_dir/expected-deleted_objects-after-dbcheck.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
@@ -483,28 +483,28 @@ check_expected_after_deleted_objects()
referenceprovision() referenceprovision()
{ {
if [ x$RELEASE = x"release-4-0-0" ]; then if [ x$RELEASE = x"release-4-0-0" ]; then
$PYTHON $BINDIR/samba-tool domain provision --server-role="dc" --domain=SAMBA --host-name=ares --realm=${RELEASE}.samba.corp --targetdir=$PREFIX_ABS/${RELEASE}_reference --use-ntvfs --host-ip=127.0.0.1 --host-ip6=::1 --function-level=2003 --base-schema=2008_R2_old $PYTHON $BINDIR/samba-tool domain provision --server-role="dc" --domain=SAMBA --host-name=ares --realm=${RELEASE}.samba.corp --targetdir=$PREFIX/${RELEASE}_reference --use-ntvfs --host-ip=127.0.0.1 --host-ip6=::1 --function-level=2003 --base-schema=2008_R2_old
# on top of this, also apply 2008R2 changes we accidentally missed in the past # on top of this, also apply 2008R2 changes we accidentally missed in the past
$PYTHON $BINDIR/samba-tool domain schemaupgrade -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --ldf-file=samba-4.7-missing-for-schema45.ldif,fix-forest-rev.ldf $PYTHON $BINDIR/samba-tool domain schemaupgrade -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --ldf-file=samba-4.7-missing-for-schema45.ldif,fix-forest-rev.ldf
fi fi
} }
ldapcmp() ldapcmp()
{ {
if [ x$RELEASE = x"release-4-0-0" ]; then if [ x$RELEASE = x"release-4-0-0" ]; then
$PYTHON $BINDIR/samba-tool ldapcmp tdb://$PREFIX_ABS/${RELEASE}_reference/private/sam.ldb tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --two --skip-missing-dn --filter=dnsRecord,displayName,msDS-SupportedEncryptionTypes,servicePrincipalName $PYTHON $BINDIR/samba-tool ldapcmp tdb://$PREFIX/${RELEASE}_reference/private/sam.ldb tdb://$PREFIX/${RELEASE}/private/sam.ldb --two --skip-missing-dn --filter=dnsRecord,displayName,msDS-SupportedEncryptionTypes,servicePrincipalName
fi fi
} }
ldapcmp_sd() ldapcmp_sd()
{ {
if [ x$RELEASE = x"release-4-0-0" ]; then if [ x$RELEASE = x"release-4-0-0" ]; then
$PYTHON $BINDIR/samba-tool ldapcmp tdb://$PREFIX_ABS/${RELEASE}_reference/private/sam.ldb tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --two --sd --skip-missing-dn --filter=servicePrincipalName $PYTHON $BINDIR/samba-tool ldapcmp tdb://$PREFIX/${RELEASE}_reference/private/sam.ldb tdb://$PREFIX/${RELEASE}/private/sam.ldb --two --sd --skip-missing-dn --filter=servicePrincipalName
fi fi
} }
remove_directory $PREFIX_ABS/${RELEASE}_reference remove_directory $PREFIX/${RELEASE}_reference
testit $RELEASE undump || failed=$(expr $failed + 1) testit $RELEASE undump || failed=$(expr $failed + 1)
testit "reindex" reindex || failed=$(expr $failed + 1) testit "reindex" reindex || failed=$(expr $failed + 1)
@@ -538,10 +538,10 @@ testit "referenceprovision" referenceprovision || failed=$(expr $failed + 1)
testit "ldapcmp" ldapcmp || failed=$(expr $failed + 1) testit "ldapcmp" ldapcmp || failed=$(expr $failed + 1)
testit "ldapcmp_sd" ldapcmp_sd || failed=$(expr $failed + 1) testit "ldapcmp_sd" ldapcmp_sd || failed=$(expr $failed + 1)
if [ -d $PREFIX_ABS/${RELEASE} ]; then if [ -d $PREFIX/${RELEASE} ]; then
rm -fr $PREFIX_ABS/${RELEASE} rm -fr $PREFIX/${RELEASE}
fi fi
remove_directory $PREFIX_ABS/${RELEASE}_reference remove_directory $PREFIX/${RELEASE}_reference
exit $failed exit $failed

View File

@@ -7,7 +7,7 @@ EOF
exit 1 exit 1
fi fi
PREFIX_ABS="$1" PREFIX="$1"
shift 1 shift 1
failed=0 failed=0
@@ -54,15 +54,15 @@ fi
undump() undump()
{ {
$SRCDIR_ABS/source4/selftest/provisions/undump.sh $samba_tree_dir $PREFIX_ABS $samba_tdbrestore $SRCDIR_ABS/source4/selftest/provisions/undump.sh $samba_tree_dir $PREFIX $samba_tdbrestore
} }
demote() demote()
{ {
$PYTHON $BINDIR/samba-tool domain demote -H tdb://$PREFIX_ABS/private/sam.ldb --remove-other-dead-server=$1 $PYTHON $BINDIR/samba-tool domain demote -H tdb://$PREFIX/private/sam.ldb --remove-other-dead-server=$1
} }
remove_directory $PREFIX_ABS remove_directory $PREFIX
testit "undump" undump || failed=$(expr $failed + 1) testit "undump" undump || failed=$(expr $failed + 1)
testit "demote-q-0-0" demote "q-0-0" || failed=$(expr $failed + 1) testit "demote-q-0-0" demote "q-0-0" || failed=$(expr $failed + 1)
@@ -72,6 +72,6 @@ testit_expect_failure "demote-q-0-1" demote "q-0-1" || failed=$(expr $failed + 1
testit "demote-q-1-0" demote "q-1-0" || failed=$(expr $failed + 1) testit "demote-q-1-0" demote "q-1-0" || failed=$(expr $failed + 1)
testit "demote-q-1-1" demote "q-1-1" || failed=$(expr $failed + 1) testit "demote-q-1-1" demote "q-1-1" || failed=$(expr $failed + 1)
remove_directory $PREFIX_ABS remove_directory $PREFIX
exit $failed exit $failed

View File

@@ -7,7 +7,7 @@ EOF
exit 1 exit 1
fi fi
PREFIX_ABS="$1" PREFIX="$1"
shift 1 shift 1
failed=0 failed=0
@@ -46,39 +46,39 @@ fi
cleanup_output_directories() cleanup_output_directories()
{ {
remove_directory $PREFIX_ABS/2012R2_schema remove_directory $PREFIX/2012R2_schema
remove_directory $PREFIX_ABS/2019_schema remove_directory $PREFIX/2019_schema
remove_directory $PREFIX_ABS/$RELEASE remove_directory $PREFIX/$RELEASE
remove_directory $PREFIX_ABS/$OLD_RELEASE remove_directory $PREFIX/$OLD_RELEASE
} }
undump() undump()
{ {
$samba_undump $release_dir $PREFIX_ABS/$RELEASE $samba_tdbrestore $samba_undump $release_dir $PREFIX/$RELEASE $samba_tdbrestore
} }
undump_old() undump_old()
{ {
$samba_undump $old_release_dir $PREFIX_ABS/$OLD_RELEASE $samba_tdbrestore $samba_undump $old_release_dir $PREFIX/$OLD_RELEASE $samba_tdbrestore
} }
PROVISION_OPTS="--use-ntvfs --host-ip6=::1 --host-ip=127.0.0.1" PROVISION_OPTS="--use-ntvfs --host-ip6=::1 --host-ip=127.0.0.1"
provision_schema_2019_prep_skip() provision_schema_2019_prep_skip()
{ {
$PYTHON $BINDIR/samba-tool domain provision $PROVISION_OPTS --domain=REALM --realm=REALM.COM --targetdir=$PREFIX_ABS/2019_schema --base-schema=2019 --adprep-level=SKIP --host-name=FLPREP $PYTHON $BINDIR/samba-tool domain provision $PROVISION_OPTS --domain=REALM --realm=REALM.COM --targetdir=$PREFIX/2019_schema --base-schema=2019 --adprep-level=SKIP --host-name=FLPREP
} }
provision_2012r2() provision_2012r2()
{ {
$PYTHON $BINDIR/samba-tool domain provision $PROVISION_OPTS --domain=REALM --realm=REALM.COM --targetdir=$PREFIX_ABS/2012R2_schema --base-schema=2012_R2 --host-name=FLPREP $PYTHON $BINDIR/samba-tool domain provision $PROVISION_OPTS --domain=REALM --realm=REALM.COM --targetdir=$PREFIX/2012R2_schema --base-schema=2012_R2 --host-name=FLPREP
} }
ldapcmp_ignore() ldapcmp_ignore()
{ {
# At some point we will need to ignore, but right now, it should be perfect # At some point we will need to ignore, but right now, it should be perfect
IGNORE_ATTRS=$1 IGNORE_ATTRS=$1
$PYTHON $BINDIR/samba-tool ldapcmp tdb://$PREFIX_ABS/$2/private/sam.ldb tdb://$PREFIX_ABS/$3/private/sam.ldb --two --skip-missing-dn --filter msDS-SupportedEncryptionTypes,servicePrincipalName $PYTHON $BINDIR/samba-tool ldapcmp tdb://$PREFIX/$2/private/sam.ldb tdb://$PREFIX/$3/private/sam.ldb --two --skip-missing-dn --filter msDS-SupportedEncryptionTypes,servicePrincipalName
} }
ldapcmp() ldapcmp()
@@ -90,13 +90,13 @@ ldapcmp()
functional_prep_2016() functional_prep_2016()
{ {
$PYTHON $BINDIR/samba-tool domain functionalprep -H tdb://$PREFIX_ABS/2019_schema/private/sam.ldb --function-level=2016 $PYTHON $BINDIR/samba-tool domain functionalprep -H tdb://$PREFIX/2019_schema/private/sam.ldb --function-level=2016
} }
level_raise_2012R2() level_raise_2012R2()
{ {
$PYTHON $BINDIR/samba-tool domain level raise \ $PYTHON $BINDIR/samba-tool domain level raise \
-H tdb://$PREFIX_ABS/2019_schema/private/sam.ldb \ -H tdb://$PREFIX/2019_schema/private/sam.ldb \
--option="ad dc functional level = 2012_R2" \ --option="ad dc functional level = 2012_R2" \
--domain-level=2012_R2 --forest-level=2012_R2 --domain-level=2012_R2 --forest-level=2012_R2
} }
@@ -104,41 +104,41 @@ level_raise_2012R2()
level_raise_2016() level_raise_2016()
{ {
$PYTHON $BINDIR/samba-tool domain level raise \ $PYTHON $BINDIR/samba-tool domain level raise \
-H tdb://$PREFIX_ABS/2019_schema/private/sam.ldb \ -H tdb://$PREFIX/2019_schema/private/sam.ldb \
--option="ad dc functional level = 2016" \ --option="ad dc functional level = 2016" \
--domain-level=2016 --forest-level=2016 --domain-level=2016 --forest-level=2016
} }
functional_prep_2012R2() functional_prep_2012R2()
{ {
$PYTHON $BINDIR/samba-tool domain functionalprep -H tdb://$PREFIX_ABS/2012R2_schema/private/sam.ldb --function-level=2012_R2 $PYTHON $BINDIR/samba-tool domain functionalprep -H tdb://$PREFIX/2012R2_schema/private/sam.ldb --function-level=2012_R2
} }
functional_prep_2012R2_old() functional_prep_2012R2_old()
{ {
$PYTHON $BINDIR/samba-tool domain functionalprep -H tdb://$PREFIX_ABS/$OLD_RELEASE/private/sam.ldb --function-level=2012_R2 $PYTHON $BINDIR/samba-tool domain functionalprep -H tdb://$PREFIX/$OLD_RELEASE/private/sam.ldb --function-level=2012_R2
} }
functional_prep_2016_old() functional_prep_2016_old()
{ {
$PYTHON $BINDIR/samba-tool domain functionalprep -H tdb://$PREFIX_ABS/$OLD_RELEASE/private/sam.ldb --function-level=2016 $PYTHON $BINDIR/samba-tool domain functionalprep -H tdb://$PREFIX/$OLD_RELEASE/private/sam.ldb --function-level=2016
} }
steal_roles() steal_roles()
{ {
# Must steal schema master and infrastructure roles first # Must steal schema master and infrastructure roles first
$PYTHON $BINDIR/samba-tool fsmo seize --role=schema -H tdb://$PREFIX_ABS/$OLD_RELEASE/private/sam.ldb --force $PYTHON $BINDIR/samba-tool fsmo seize --role=schema -H tdb://$PREFIX/$OLD_RELEASE/private/sam.ldb --force
$PYTHON $BINDIR/samba-tool fsmo seize --role=infrastructure -H tdb://$PREFIX_ABS/$OLD_RELEASE/private/sam.ldb --force $PYTHON $BINDIR/samba-tool fsmo seize --role=infrastructure -H tdb://$PREFIX/$OLD_RELEASE/private/sam.ldb --force
} }
schema_upgrade_2012R2_old() schema_upgrade_2012R2_old()
{ {
$PYTHON $BINDIR/samba-tool domain schemaupgrade -H tdb://$PREFIX_ABS/$OLD_RELEASE/private/sam.ldb --schema=2012_R2 $PYTHON $BINDIR/samba-tool domain schemaupgrade -H tdb://$PREFIX/$OLD_RELEASE/private/sam.ldb --schema=2012_R2
} }
schema_upgrade_2019_old() schema_upgrade_2019_old()
{ {
$PYTHON $BINDIR/samba-tool domain schemaupgrade -H tdb://$PREFIX_ABS/$OLD_RELEASE/private/sam.ldb --schema=2019 $PYTHON $BINDIR/samba-tool domain schemaupgrade -H tdb://$PREFIX/$OLD_RELEASE/private/sam.ldb --schema=2019
} }
# double-check we cleaned up from the last test run # double-check we cleaned up from the last test run

View File

@@ -3,7 +3,7 @@
. $(dirname $0)/subunit.sh . $(dirname $0)/subunit.sh
TARGET_DIR="$PREFIX_ABS/join_$SERVER" TARGET_DIR="$PREFIX/join_$SERVER"
cleanup_output_dir() cleanup_output_dir()
{ {
@@ -28,7 +28,7 @@ demote_joined_dc()
ldapcmp_result() ldapcmp_result()
{ {
DB1_PATH="tdb://$PREFIX_ABS/$SERVER/private/sam.ldb" DB1_PATH="tdb://$PREFIX/$SERVER/private/sam.ldb"
DB2_PATH="tdb://$TARGET_DIR/private/sam.ldb" DB2_PATH="tdb://$TARGET_DIR/private/sam.ldb"
# interSiteTopologyGenerator gets periodically updated. With the restored # interSiteTopologyGenerator gets periodically updated. With the restored

View File

@@ -9,8 +9,8 @@ EOF
exit 1 exit 1
fi fi
ORIG_DC_PREFIX_ABS="$1" ORIG_DC_PREFIX="$1"
RESTORED_DC_PREFIX_ABS="$2" RESTORED_DC_PREFIX="$2"
shift 2 shift 2
. $(dirname $0)/subunit.sh . $(dirname $0)/subunit.sh
@@ -27,8 +27,8 @@ basedn()
ldapcmp_with_orig() ldapcmp_with_orig()
{ {
DB1_PATH="tdb://$ORIG_DC_PREFIX_ABS/private/sam.ldb" DB1_PATH="tdb://$ORIG_DC_PREFIX/private/sam.ldb"
DB2_PATH="tdb://$RESTORED_DC_PREFIX_ABS/private/sam.ldb" DB2_PATH="tdb://$RESTORED_DC_PREFIX/private/sam.ldb"
# check if the 2 DCs are in different domains # check if the 2 DCs are in different domains
DC1_BASEDN=$(basedn $DB1_PATH) DC1_BASEDN=$(basedn $DB1_PATH)

View File

@@ -7,7 +7,7 @@ EOF
exit 1 exit 1
fi fi
PREFIX_ABS="$1" PREFIX="$1"
RELEASE="$2" RELEASE="$2"
shift 2 shift 2
@@ -35,7 +35,7 @@ fi
delete_member_of_deleted_group() delete_member_of_deleted_group()
{ {
TZ=UTC $ldbdel -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb 'CN=User1 UT. Tester,CN=Users,DC=release-4-5-0-pre1,DC=samba,DC=corp' TZ=UTC $ldbdel -H tdb://$PREFIX/${RELEASE}/private/sam.ldb 'CN=User1 UT. Tester,CN=Users,DC=release-4-5-0-pre1,DC=samba,DC=corp'
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -43,7 +43,7 @@ delete_member_of_deleted_group()
delete_backlink_memberof_deleted_group() delete_backlink_memberof_deleted_group()
{ {
TZ=UTC $ldbdel -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb 'CN=User UT. Tester,CN=Users,DC=release-4-5-0-pre1,DC=samba,DC=corp' TZ=UTC $ldbdel -H tdb://$PREFIX/${RELEASE}/private/sam.ldb 'CN=User UT. Tester,CN=Users,DC=release-4-5-0-pre1,DC=samba,DC=corp'
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -51,13 +51,13 @@ delete_backlink_memberof_deleted_group()
delete_dangling_backlink_memberof_group() delete_dangling_backlink_memberof_group()
{ {
TZ=UTC $ldbdel -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb 'CN=dangling-back,CN=Users,DC=release-4-5-0-pre1,DC=samba,DC=corp' TZ=UTC $ldbdel -H tdb://$PREFIX/${RELEASE}/private/sam.ldb 'CN=dangling-back,CN=Users,DC=release-4-5-0-pre1,DC=samba,DC=corp'
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
} }
remove_directory $PREFIX_ABS/${RELEASE} remove_directory $PREFIX/${RELEASE}
testit $RELEASE undump || failed=$(expr $failed + 1) testit $RELEASE undump || failed=$(expr $failed + 1)
testit "add_dangling_link" add_dangling_link || failed=$(expr $failed + 1) testit "add_dangling_link" add_dangling_link || failed=$(expr $failed + 1)
@@ -77,6 +77,6 @@ testit "delete_member_of_deleted_group" delete_member_of_deleted_group || failed
testit "delete_backlink_memberof_deleted_group" delete_backlink_memberof_deleted_group || failed=$(expr $failed + 1) testit "delete_backlink_memberof_deleted_group" delete_backlink_memberof_deleted_group || failed=$(expr $failed + 1)
testit "delete_dangling_backlink_memberof_group" delete_dangling_backlink_memberof_group || failed=$(expr $failed + 1) testit "delete_dangling_backlink_memberof_group" delete_dangling_backlink_memberof_group || failed=$(expr $failed + 1)
remove_directory $PREFIX_ABS/${RELEASE} remove_directory $PREFIX/${RELEASE}
exit $failed exit $failed

View File

@@ -7,19 +7,19 @@ EOF
exit 1 exit 1
fi fi
PREFIX_ABS="$1" PREFIX="$1"
shift 1 shift 1
. $(dirname $0)/subunit.sh . $(dirname $0)/subunit.sh
cleanup_output_directories() cleanup_output_directories()
{ {
if [ -d $PREFIX_ABS/2012R2_schema ]; then if [ -d $PREFIX/2012R2_schema ]; then
rm -fr $PREFIX_ABS/2012R2_schema rm -fr $PREFIX/2012R2_schema
fi fi
if [ -d $PREFIX_ABS/2008R2_schema ]; then if [ -d $PREFIX/2008R2_schema ]; then
rm -fr $PREFIX_ABS/2008R2_schema rm -fr $PREFIX/2008R2_schema
fi fi
} }
@@ -27,17 +27,17 @@ PROVISION_OPTS="--use-ntvfs --host-ip6=::1 --host-ip=127.0.0.1"
provision_2012r2() provision_2012r2()
{ {
$PYTHON $BINDIR/samba-tool domain provision $PROVISION_OPTS --domain=SAMBA --realm=w2012r2.samba.corp --targetdir=$PREFIX_ABS/2012R2_schema --base-schema=2012_R2 --adprep-level=SKIP $PYTHON $BINDIR/samba-tool domain provision $PROVISION_OPTS --domain=SAMBA --realm=w2012r2.samba.corp --targetdir=$PREFIX/2012R2_schema --base-schema=2012_R2 --adprep-level=SKIP
} }
provision_2008r2() provision_2008r2()
{ {
$PYTHON $BINDIR/samba-tool domain provision $PROVISION_OPTS --domain=SAMBA --realm=w2008r2.samba.corp --targetdir=$PREFIX_ABS/2008R2_schema --base-schema=2008_R2 $PYTHON $BINDIR/samba-tool domain provision $PROVISION_OPTS --domain=SAMBA --realm=w2008r2.samba.corp --targetdir=$PREFIX/2008R2_schema --base-schema=2008_R2
} }
provision_2008r2_old() provision_2008r2_old()
{ {
$PYTHON $BINDIR/samba-tool domain provision $PROVISION_OPTS --domain=SAMBA --realm=w2008r2.samba.corp --targetdir=$PREFIX_ABS/2008R2_old_schema --base-schema=2008_R2_old $PYTHON $BINDIR/samba-tool domain provision $PROVISION_OPTS --domain=SAMBA --realm=w2008r2.samba.corp --targetdir=$PREFIX/2008R2_old_schema --base-schema=2008_R2_old
} }
ldapcmp_ignore() ldapcmp_ignore()
@@ -54,7 +54,7 @@ ldapcmp_ignore()
# objects, but we don't have the 2012 DisplaySpecifiers documentation... # objects, but we don't have the 2012 DisplaySpecifiers documentation...
IGNORE_ATTRS="$IGNORE_ATTRS,adminContextMenu,adminPropertyPages" IGNORE_ATTRS="$IGNORE_ATTRS,adminContextMenu,adminPropertyPages"
$PYTHON $BINDIR/samba-tool ldapcmp tdb://$PREFIX_ABS/$2_schema/private/sam.ldb tdb://$PREFIX_ABS/$3_schema/private/sam.ldb --two --filter=$IGNORE_ATTRS --skip-missing-dn $PYTHON $BINDIR/samba-tool ldapcmp tdb://$PREFIX/$2_schema/private/sam.ldb tdb://$PREFIX/$3_schema/private/sam.ldb --two --filter=$IGNORE_ATTRS --skip-missing-dn
} }
ldapcmp_old() ldapcmp_old()
@@ -92,12 +92,12 @@ ldapcmp_2008R2_2008R2_old()
schema_upgrade() schema_upgrade()
{ {
$PYTHON $BINDIR/samba-tool domain schemaupgrade -H tdb://$PREFIX_ABS/2008R2_schema/private/sam.ldb --schema=2012_R2 $PYTHON $BINDIR/samba-tool domain schemaupgrade -H tdb://$PREFIX/2008R2_schema/private/sam.ldb --schema=2012_R2
} }
schema_upgrade_old() schema_upgrade_old()
{ {
$PYTHON $BINDIR/samba-tool domain schemaupgrade -H tdb://$PREFIX_ABS/2008R2_old_schema/private/sam.ldb --schema=2012_R2 $PYTHON $BINDIR/samba-tool domain schemaupgrade -H tdb://$PREFIX/2008R2_old_schema/private/sam.ldb --schema=2012_R2
} }
# double-check we cleaned up from the last test run # double-check we cleaned up from the last test run

View File

@@ -1,6 +1,6 @@
if [ $# -lt 6 ]; then if [ $# -lt 6 ]; then
cat <<EOF cat <<EOF
Usage: test_client_etypes.sh DC_SERVER DC_USERNAME DC_PASSWORD PREFIX_ABS ETYPE_CONF EXPECTED Usage: test_client_etypes.sh DC_SERVER DC_USERNAME DC_PASSWORD PREFIX ETYPE_CONF EXPECTED
EOF EOF
exit 1 exit 1
fi fi

View File

@@ -1,6 +1,6 @@
if [ $# -lt 4 ]; then if [ $# -lt 4 ]; then
cat <<EOF cat <<EOF
Usage: test_net_ads_fips.sh DC_SERVER DC_USERNAME DC_PASSWORD PREFIX_ABS Usage: test_net_ads_fips.sh DC_SERVER DC_USERNAME DC_PASSWORD PREFIX
EOF EOF
exit 1 exit 1
fi fi

View File

@@ -1,6 +1,6 @@
if [ $# -lt 4 ]; then if [ $# -lt 4 ]; then
cat <<EOF cat <<EOF
Usage: test_net_offline.sh DC_SERVER DC_USERNAME DC_PASSWORD PREFIX_ABS Usage: test_net_offline.sh DC_SERVER DC_USERNAME DC_PASSWORD PREFIX
EOF EOF
exit 1 exit 1
fi fi

View File

@@ -2,7 +2,7 @@
if [ $# -lt 5 ]; then if [ $# -lt 5 ]; then
cat <<EOF cat <<EOF
Usage: test_old_enctypes.sh SERVER USERNAME PASSWORD NETBIOSNAME PREFIX_ABS Usage: test_old_enctypes.sh SERVER USERNAME PASSWORD NETBIOSNAME PREFIX
EOF EOF
exit 1 exit 1
fi fi
@@ -11,7 +11,7 @@ SERVER=$1
USERNAME=$2 USERNAME=$2
PASSWORD=$3 PASSWORD=$3
NETBIOSNAME=$4 NETBIOSNAME=$4
PREFIX_ABS=$5 PREFIX=$5
shift 5 shift 5
failed=0 failed=0
@@ -26,7 +26,7 @@ samba_tool="$samba4bindir/samba-tool"
ldbmodify=$(system_or_builddir_binary ldbmodify "${BINDIR}") ldbmodify=$(system_or_builddir_binary ldbmodify "${BINDIR}")
ldbsearch=$(system_or_builddir_binary ldbsearch "${BINDIR}") ldbsearch=$(system_or_builddir_binary ldbsearch "${BINDIR}")
out="${PREFIX_ABS}/tmpldbsearch.out" out="${PREFIX}/tmpldbsearch.out"
$ldbsearch -H ldap://$SERVER -U$USERNAME%$PASSWORD -d0 sAMAccountName="$NETBIOSNAME\$" dn msDS-SupportedEncryptionTypes >$out $ldbsearch -H ldap://$SERVER -U$USERNAME%$PASSWORD -d0 sAMAccountName="$NETBIOSNAME\$" dn msDS-SupportedEncryptionTypes >$out
testit_grep "find my dn" msDS-SupportedEncryptionTypes cat $out || failed=$(expr $failed + 1) testit_grep "find my dn" msDS-SupportedEncryptionTypes cat $out || failed=$(expr $failed + 1)
@@ -34,7 +34,7 @@ my_dn=$(cat $out | sed -n 's/^dn: //p')
my_encs=$(cat $out | sed -n 's/^msDS-SupportedEncryptionTypes: //p') my_encs=$(cat $out | sed -n 's/^msDS-SupportedEncryptionTypes: //p')
my_test_encs=$(expr $my_encs + 3) my_test_encs=$(expr $my_encs + 3)
ldif="${PREFIX_ABS}/tmpldbmodify.ldif" ldif="${PREFIX}/tmpldbmodify.ldif"
cat >$ldif <<EOF cat >$ldif <<EOF
dn: $my_dn dn: $my_dn
@@ -44,7 +44,7 @@ msDS-SupportedEncryptionTypes: $my_test_encs
EOF EOF
testit "Change msDS-SupportedEncryptionTypes to $my_test_encs" $VALGRIND $ldbmodify -H ldap://$SERVER -U$USERNAME%$PASSWORD -d0 <$ldif || failed=$(expr $failed + 1) testit "Change msDS-SupportedEncryptionTypes to $my_test_encs" $VALGRIND $ldbmodify -H ldap://$SERVER -U$USERNAME%$PASSWORD -d0 <$ldif || failed=$(expr $failed + 1)
kt=${PREFIX_ABS}/tmp_host_out_keytab kt=${PREFIX}/tmp_host_out_keytab
testit "Export keytab while old enctypes are supported" $samba_tool domain exportkeytab --principal=$NETBIOSNAME\$ $kt testit "Export keytab while old enctypes are supported" $samba_tool domain exportkeytab --principal=$NETBIOSNAME\$ $kt
cat >$ldif <<EOF cat >$ldif <<EOF

View File

@@ -2,7 +2,7 @@
if [ $# -lt 5 ]; then if [ $# -lt 5 ]; then
cat <<EOF cat <<EOF
Usage: test_primary_group.sh SERVER USERNAME PASSWORD DOMAIN PREFIX_ABS Usage: test_primary_group.sh SERVER USERNAME PASSWORD DOMAIN PREFIX
EOF EOF
exit 1 exit 1
fi fi
@@ -11,11 +11,11 @@ SERVER=$1
USERNAME=$2 USERNAME=$2
PASSWORD=$3 PASSWORD=$3
DOMAIN=$4 DOMAIN=$4
PREFIX_ABS=$5 PREFIX=$5
shift 5 shift 5
failed=0 failed=0
TMPDIR="$PREFIX_ABS/$(basename $0)" TMPDIR="$PREFIX/$(basename $0)"
export TMPDIR export TMPDIR
. $(dirname $0)/subunit.sh . $(dirname $0)/subunit.sh

View File

@@ -7,7 +7,7 @@ EOF
exit 1 exit 1
fi fi
PREFIX_ABS="$1" PREFIX="$1"
shift 1 shift 1
failed=0 failed=0
@@ -31,17 +31,17 @@ fi
cleanup_output_directories() cleanup_output_directories()
{ {
remove_directory $PREFIX_ABS/$OLD_RELEASE remove_directory $PREFIX/$OLD_RELEASE
} }
undump_old() undump_old()
{ {
$samba_undump $old_release_dir $PREFIX_ABS/$OLD_RELEASE $samba_tdbrestore $samba_undump $old_release_dir $PREFIX/$OLD_RELEASE $samba_tdbrestore
} }
add_special_group() add_special_group()
{ {
$PYTHON $BINDIR/samba-tool group add 'protected users' --special -H tdb://$PREFIX_ABS/$OLD_RELEASE/private/sam.ldb $PYTHON $BINDIR/samba-tool group add 'protected users' --special -H tdb://$PREFIX/$OLD_RELEASE/private/sam.ldb
} }
# double-check we cleaned up from the last test run # double-check we cleaned up from the last test run

View File

@@ -7,7 +7,7 @@ EOF
exit 1 exit 1
fi fi
PREFIX_ABS="$1" PREFIX="$1"
RELEASE="$2" RELEASE="$2"
shift 2 shift 2
@@ -40,17 +40,17 @@ fi
undump() undump()
{ {
$samba_undump $release_dir $PREFIX_ABS/$RELEASE $samba_tdbrestore $samba_undump $release_dir $PREFIX/$RELEASE $samba_tdbrestore
} }
tombstones_expunge() tombstones_expunge()
{ {
tmpfile=$PREFIX_ABS/$RELEASE/expected-expunge-output.txt.tmp tmpfile=$PREFIX/$RELEASE/expected-expunge-output.txt.tmp
tmpldif1=$PREFIX_ABS/$RELEASE/expected-expunge-output2.txt.tmp1 tmpldif1=$PREFIX/$RELEASE/expected-expunge-output2.txt.tmp1
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN >$tmpldif1 TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN >$tmpldif1
$PYTHON $BINDIR/samba-tool domain tombstones expunge -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --current-time=2016-07-30 --tombstone-lifetime=4 >$tmpfile $PYTHON $BINDIR/samba-tool domain tombstones expunge -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --current-time=2016-07-30 --tombstone-lifetime=4 >$tmpfile
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -59,8 +59,8 @@ tombstones_expunge()
return 1 return 1
fi fi
tmpldif2=$PREFIX_ABS/$RELEASE/expected-expunge-output2.txt.tmp2 tmpldif2=$PREFIX/$RELEASE/expected-expunge-output2.txt.tmp2
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN >$tmpldif2 TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN >$tmpldif2
diff -u $tmpldif1 $tmpldif2 diff -u $tmpldif1 $tmpldif2
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
@@ -71,7 +71,7 @@ tombstones_expunge()
add_dangling_link() add_dangling_link()
{ {
ldif=$release_dir/add-dangling-link.ldif ldif=$release_dir/add-dangling-link.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -80,7 +80,7 @@ add_dangling_link()
add_two_more_users() add_two_more_users()
{ {
ldif=$release_dir/add-two-more-users.ldif ldif=$release_dir/add-two-more-users.ldif
TZ=UTC $ldbadd -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif TZ=UTC $ldbadd -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -89,7 +89,7 @@ add_two_more_users()
add_four_more_links() add_four_more_links()
{ {
ldif=$release_dir/add-four-more-links.ldif ldif=$release_dir/add-four-more-links.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -98,12 +98,12 @@ add_four_more_links()
add_unsorted_links() add_unsorted_links()
{ {
ldif=$release_dir/add-unsorted-links-step1.ldif ldif=$release_dir/add-unsorted-links-step1.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif --relax TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif --relax
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
ldif=$release_dir/add-unsorted-links-step2.ldif ldif=$release_dir/add-unsorted-links-step2.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb.d/DC%3DRELEASE-4-5-0-PRE1,DC%3DSAMBA,DC%3DCORP.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -112,7 +112,7 @@ add_unsorted_links()
remove_one_link() remove_one_link()
{ {
ldif=$release_dir/remove-one-more-link.ldif ldif=$release_dir/remove-one-more-link.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -121,7 +121,7 @@ remove_one_link()
remove_one_user() remove_one_user()
{ {
ldif=$release_dir/remove-one-more-user.ldif ldif=$release_dir/remove-one-more-user.ldif
TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $ldif TZ=UTC $ldbmodify -H tdb://$PREFIX/${RELEASE}/private/sam.ldb $ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
@@ -129,8 +129,8 @@ remove_one_user()
check_match_rule_links() check_match_rule_links()
{ {
tmpldif=$PREFIX_ABS/$RELEASE/expected-match-rule-links.ldif.tmp tmpldif=$PREFIX/$RELEASE/expected-match-rule-links.ldif.tmp
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(member:1.3.6.1.4.1.7165.4.5.2:=131139216000000000)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted no_attrs >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(member:1.3.6.1.4.1.7165.4.5.2:=131139216000000000)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted no_attrs >$tmpldif
diff -u $tmpldif $release_dir/expected-match-rule-links.ldif diff -u $tmpldif $release_dir/expected-match-rule-links.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
@@ -139,48 +139,48 @@ check_match_rule_links()
check_match_rule_links_negative() check_match_rule_links_negative()
{ {
$ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(member:1.3.6.1.4.1.7165.4.5.2:=-131139216000000000)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted member $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(member:1.3.6.1.4.1.7165.4.5.2:=-131139216000000000)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted member
} }
check_match_rule_links_overflow() check_match_rule_links_overflow()
{ {
$ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(member:1.3.6.1.4.1.7165.4.5.2:=18446744073709551617)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted member $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(member:1.3.6.1.4.1.7165.4.5.2:=18446744073709551617)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted member
} }
check_match_rule_links_null() check_match_rule_links_null()
{ {
$ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(member:1.3.6.1.4.1.7165.4.5.2:=18446744\073709551617)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted member $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(member:1.3.6.1.4.1.7165.4.5.2:=18446744\073709551617)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted member
} }
check_match_rule_links_hex() check_match_rule_links_hex()
{ {
$ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(member:1.3.6.1.4.1.7165.4.5.2:=abcd)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted member $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(member:1.3.6.1.4.1.7165.4.5.2:=abcd)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted member
} }
check_match_rule_links_hex2() check_match_rule_links_hex2()
{ {
$ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(member:1.3.6.1.4.1.7165.4.5.2:=0xabcd)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted member $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(member:1.3.6.1.4.1.7165.4.5.2:=0xabcd)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted member
} }
check_match_rule_links_decimal() check_match_rule_links_decimal()
{ {
$ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(member:1.3.6.1.4.1.7165.4.5.2:=131139216000000000.00)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted member $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(member:1.3.6.1.4.1.7165.4.5.2:=131139216000000000.00)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted member
} }
check_match_rule_links_backlink() check_match_rule_links_backlink()
{ {
$ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(memberOf:1.3.6.1.4.1.7165.4.5.2:=131139216000000000)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted memberOf $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(memberOf:1.3.6.1.4.1.7165.4.5.2:=131139216000000000)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted memberOf
} }
check_match_rule_links_notlink() check_match_rule_links_notlink()
{ {
$ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(samAccountName:1.3.6.1.4.1.7165.4.5.2:=131139216000000000)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted samAccountName $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(samAccountName:1.3.6.1.4.1.7165.4.5.2:=131139216000000000)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted samAccountName
} }
check_expected_after_links() check_expected_after_links()
{ {
tmpldif=$PREFIX_ABS/$RELEASE/expected-links-after-expunge.ldif.tmp tmpldif=$PREFIX/$RELEASE/expected-links-after-expunge.ldif.tmp
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(|(cn=swimmers)(cn=leaders)(cn=helpers))' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --sorted member >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(|(cn=swimmers)(cn=leaders)(cn=helpers))' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --sorted member >$tmpldif
diff -u $tmpldif $release_dir/expected-links-after-expunge.ldif diff -u $tmpldif $release_dir/expected-links-after-expunge.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
@@ -189,8 +189,8 @@ check_expected_after_links()
check_expected_after_deleted_links() check_expected_after_deleted_links()
{ {
tmpldif=$PREFIX_ABS/$RELEASE/expected-deleted-links-after-expunge.ldif.tmp tmpldif=$PREFIX/$RELEASE/expected-deleted-links-after-expunge.ldif.tmp
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(|(cn=swimmers)(cn=leaders)(cn=helpers))' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted member >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(|(cn=swimmers)(cn=leaders)(cn=helpers))' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted member >$tmpldif
diff -u $tmpldif $release_dir/expected-deleted-links-after-expunge.ldif diff -u $tmpldif $release_dir/expected-deleted-links-after-expunge.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
@@ -199,8 +199,8 @@ check_expected_after_deleted_links()
check_expected_after_objects() check_expected_after_objects()
{ {
tmpldif=$PREFIX_ABS/$RELEASE/expected-objects-after-expunge.ldif.tmp tmpldif=$PREFIX/$RELEASE/expected-objects-after-expunge.ldif.tmp
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(|(samaccountname=fred)(samaccountname=ddg)(samaccountname=usg)(samaccountname=user1)(samaccountname=user2))' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted samAccountName | grep sAMAccountName >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(|(samaccountname=fred)(samaccountname=ddg)(samaccountname=usg)(samaccountname=user1)(samaccountname=user2))' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted samAccountName | grep sAMAccountName >$tmpldif
diff -u $tmpldif $release_dir/expected-objects-after-expunge.ldif diff -u $tmpldif $release_dir/expected-objects-after-expunge.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
@@ -209,15 +209,15 @@ check_expected_after_objects()
check_expected_unsorted_links() check_expected_unsorted_links()
{ {
tmpldif=$PREFIX_ABS/$RELEASE/expected-unsorted-links-after-expunge.ldif.tmp tmpldif=$PREFIX/$RELEASE/expected-unsorted-links-after-expunge.ldif.tmp
TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb '(name=unsorted-g)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted member >$tmpldif TZ=UTC $ldbsearch -H tdb://$PREFIX/${RELEASE}/private/sam.ldb '(name=unsorted-g)' --scope=sub -b DC=release-4-5-0-pre1,DC=samba,DC=corp --show-deleted --reveal --sorted member >$tmpldif
diff -u $tmpldif $release_dir/expected-unsorted-links-after-expunge.ldif diff -u $tmpldif $release_dir/expected-unsorted-links-after-expunge.ldif
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
return 1 return 1
fi fi
} }
remove_directory $PREFIX_ABS/${RELEASE} remove_directory $PREFIX/${RELEASE}
testit $RELEASE undump || failed=$(expr $failed + 1) testit $RELEASE undump || failed=$(expr $failed + 1)
testit "add_two_more_users" add_two_more_users || failed=$(expr $failed + 1) testit "add_two_more_users" add_two_more_users || failed=$(expr $failed + 1)
@@ -241,6 +241,6 @@ testit "check_expected_after_links" check_expected_after_links || failed=$(expr
testit "check_expected_after_objects" check_expected_after_objects || failed=$(expr $failed + 1) testit "check_expected_after_objects" check_expected_after_objects || failed=$(expr $failed + 1)
testit "check_expected_unsorted_links" check_expected_unsorted_links || failed=$(expr $failed + 1) testit "check_expected_unsorted_links" check_expected_unsorted_links || failed=$(expr $failed + 1)
remove_directory $PREFIX_ABS/${RELEASE} remove_directory $PREFIX/${RELEASE}
exit $failed exit $failed

View File

@@ -7,7 +7,7 @@ EOF
exit 1 exit 1
fi fi
PREFIX_ABS="$1" PREFIX="$1"
RELEASE="$2" RELEASE="$2"
shift 2 shift 2
@@ -98,118 +98,118 @@ fi
undump() undump()
{ {
$samba_undump $release_dir $PREFIX_ABS/${RELEASE}_upgrade $samba_tdbrestore $samba_undump $release_dir $PREFIX/${RELEASE}_upgrade $samba_tdbrestore
$samba_undump $release_dir $PREFIX_ABS/${RELEASE}_upgrade_full $samba_tdbrestore $samba_undump $release_dir $PREFIX/${RELEASE}_upgrade_full $samba_tdbrestore
cp -a $release_dir/private/*.keytab $PREFIX_ABS/${RELEASE}_upgrade/private/ cp -a $release_dir/private/*.keytab $PREFIX/${RELEASE}_upgrade/private/
cp -a $release_dir/sysvol $PREFIX_ABS/${RELEASE}_upgrade/ cp -a $release_dir/sysvol $PREFIX/${RELEASE}_upgrade/
mkdir $PREFIX_ABS/${RELEASE}_upgrade/etc/ mkdir $PREFIX/${RELEASE}_upgrade/etc/
sed -e "s|@@PREFIX@@|$PREFIX_ABS/${RELEASE}_upgrade|g" $release_dir/etc/smb.conf.template \ sed -e "s|@@PREFIX@@|$PREFIX/${RELEASE}_upgrade|g" $release_dir/etc/smb.conf.template \
>$PREFIX_ABS/${RELEASE}_upgrade/etc/smb.conf >$PREFIX/${RELEASE}_upgrade/etc/smb.conf
cp -a $release_dir/private/*.keytab $PREFIX_ABS/${RELEASE}_upgrade_full/private/ cp -a $release_dir/private/*.keytab $PREFIX/${RELEASE}_upgrade_full/private/
cp -a $release_dir/sysvol $PREFIX_ABS/${RELEASE}_upgrade_full/ cp -a $release_dir/sysvol $PREFIX/${RELEASE}_upgrade_full/
mkdir $PREFIX_ABS/${RELEASE}_upgrade_full/etc/ mkdir $PREFIX/${RELEASE}_upgrade_full/etc/
sed -e "s|@@PREFIX@@|$PREFIX_ABS/${RELEASE}_upgrade_full|g" $release_dir/etc/smb.conf.template \ sed -e "s|@@PREFIX@@|$PREFIX/${RELEASE}_upgrade_full|g" $release_dir/etc/smb.conf.template \
>$PREFIX_ABS/${RELEASE}_upgrade_full/etc/smb.conf >$PREFIX/${RELEASE}_upgrade_full/etc/smb.conf
} }
remove_dns_user() remove_dns_user()
{ {
if [ x$RELEASE != x"release-4-0-0" ]; then if [ x$RELEASE != x"release-4-0-0" ]; then
# This is done, because otherwise the upgrdeprovision will not run without --full # This is done, because otherwise the upgrdeprovision will not run without --full
${ldbdel} -H tdb://$PREFIX_ABS/${RELEASE}_upgrade/private/sam.ldb cn=dns,cn=users,dc=${RELEASE},dc=samba,dc=corp ${ldbdel} -H tdb://$PREFIX/${RELEASE}_upgrade/private/sam.ldb cn=dns,cn=users,dc=${RELEASE},dc=samba,dc=corp
fi fi
} }
reindex() reindex()
{ {
$PYTHON $BINDIR/samba-tool dbcheck --reindex -H tdb://$PREFIX_ABS/${RELEASE}_upgrade/private/sam.ldb "$@" $PYTHON $BINDIR/samba-tool dbcheck --reindex -H tdb://$PREFIX/${RELEASE}_upgrade/private/sam.ldb "$@"
} }
# This should 'fail', because it returns the number of modified records # This should 'fail', because it returns the number of modified records
dbcheck() dbcheck()
{ {
$PYTHON $BINDIR/samba-tool dbcheck --cross-ncs --fix --yes -H tdb://$PREFIX_ABS/${RELEASE}_upgrade/private/sam.ldb "$@" $PYTHON $BINDIR/samba-tool dbcheck --cross-ncs --fix --yes -H tdb://$PREFIX/${RELEASE}_upgrade/private/sam.ldb "$@"
} }
dbcheck_clean() dbcheck_clean()
{ {
$PYTHON $BINDIR/samba-tool dbcheck --cross-ncs -H tdb://$PREFIX_ABS/${RELEASE}_upgrade/private/sam.ldb "$@" $PYTHON $BINDIR/samba-tool dbcheck --cross-ncs -H tdb://$PREFIX/${RELEASE}_upgrade/private/sam.ldb "$@"
} }
# This should 'fail', because it returns the number of modified records # This should 'fail', because it returns the number of modified records
dbcheck_full() dbcheck_full()
{ {
$PYTHON $BINDIR/samba-tool dbcheck --cross-ncs --fix --yes -H tdb://$PREFIX_ABS/${RELEASE}_upgrade_full/private/sam.ldb "$@" $PYTHON $BINDIR/samba-tool dbcheck --cross-ncs --fix --yes -H tdb://$PREFIX/${RELEASE}_upgrade_full/private/sam.ldb "$@"
} }
dbcheck_full_clean() dbcheck_full_clean()
{ {
$PYTHON $BINDIR/samba-tool dbcheck --cross-ncs -H tdb://$PREFIX_ABS/${RELEASE}_upgrade_full/private/sam.ldb "$@" $PYTHON $BINDIR/samba-tool dbcheck --cross-ncs -H tdb://$PREFIX/${RELEASE}_upgrade_full/private/sam.ldb "$@"
} }
# This checks that after the upgrade, the well known ACLs are correct, so this reset should not want to do anything # This checks that after the upgrade, the well known ACLs are correct, so this reset should not want to do anything
dbcheck_full_clean_well_known_acls() dbcheck_full_clean_well_known_acls()
{ {
$PYTHON $BINDIR/samba-tool dbcheck --reset-well-known-acls --cross-ncs -H tdb://$PREFIX_ABS/${RELEASE}_upgrade_full/private/sam.ldb "$@" $PYTHON $BINDIR/samba-tool dbcheck --reset-well-known-acls --cross-ncs -H tdb://$PREFIX/${RELEASE}_upgrade_full/private/sam.ldb "$@"
} }
upgradeprovision() upgradeprovision()
{ {
# bring the really old Samba schema in line with a more recent 2008R2 schema # bring the really old Samba schema in line with a more recent 2008R2 schema
$PYTHON $BINDIR/samba_upgradeprovision --configfile="$PREFIX_ABS/${RELEASE}_upgrade/etc/smb.conf" --debugchange $PYTHON $BINDIR/samba_upgradeprovision --configfile="$PREFIX/${RELEASE}_upgrade/etc/smb.conf" --debugchange
# on top of this, also apply 2008R2 changes we accidentally missed in the past # on top of this, also apply 2008R2 changes we accidentally missed in the past
$PYTHON $BINDIR/samba-tool domain schemaupgrade -H tdb://$PREFIX_ABS/${RELEASE}_upgrade/private/sam.ldb --ldf-file=samba-4.7-missing-for-schema45.ldif,fix-forest-rev.ldf $PYTHON $BINDIR/samba-tool domain schemaupgrade -H tdb://$PREFIX/${RELEASE}_upgrade/private/sam.ldb --ldf-file=samba-4.7-missing-for-schema45.ldif,fix-forest-rev.ldf
# add missing domain prep for 2008R2 # add missing domain prep for 2008R2
$PYTHON $BINDIR/samba-tool domain functionalprep -H tdb://$PREFIX_ABS/${RELEASE}_upgrade/private/sam.ldb --domain --function-level 2008_R2 $PYTHON $BINDIR/samba-tool domain functionalprep -H tdb://$PREFIX/${RELEASE}_upgrade/private/sam.ldb --domain --function-level 2008_R2
} }
upgradeprovision_full() upgradeprovision_full()
{ {
# add missing domain prep for 2008R2 # add missing domain prep for 2008R2
$PYTHON $BINDIR/samba-tool domain functionalprep -H tdb://$PREFIX_ABS/${RELEASE}_upgrade_full/private/sam.ldb --domain --function-level 2008_R2 $PYTHON $BINDIR/samba-tool domain functionalprep -H tdb://$PREFIX/${RELEASE}_upgrade_full/private/sam.ldb --domain --function-level 2008_R2
$PYTHON $BINDIR/samba_upgradeprovision --configfile="$PREFIX_ABS/${RELEASE}_upgrade_full/etc/smb.conf" --full --debugchange $PYTHON $BINDIR/samba_upgradeprovision --configfile="$PREFIX/${RELEASE}_upgrade_full/etc/smb.conf" --full --debugchange
} }
samba_upgradedns() samba_upgradedns()
{ {
$PYTHON $BINDIR/samba_upgradedns --dns-backend=SAMBA_INTERNAL --configfile="$PREFIX_ABS/${RELEASE}_upgrade_full/etc/smb.conf" $PYTHON $BINDIR/samba_upgradedns --dns-backend=SAMBA_INTERNAL --configfile="$PREFIX/${RELEASE}_upgrade_full/etc/smb.conf"
} }
referenceprovision() referenceprovision()
{ {
$PYTHON $BINDIR/samba-tool domain provision --server-role="dc" --domain=SAMBA --host-name=ares --realm=${RELEASE}.samba.corp --targetdir=$PREFIX_ABS/${RELEASE}_upgrade_reference --use-ntvfs --host-ip=127.0.0.1 --host-ip6=::1 --function-level=2003 --base-schema=2008_R2_old $PYTHON $BINDIR/samba-tool domain provision --server-role="dc" --domain=SAMBA --host-name=ares --realm=${RELEASE}.samba.corp --targetdir=$PREFIX/${RELEASE}_upgrade_reference --use-ntvfs --host-ip=127.0.0.1 --host-ip6=::1 --function-level=2003 --base-schema=2008_R2_old
} }
ldapcmp() ldapcmp()
{ {
if [ x$RELEASE != x"alpha13" ]; then if [ x$RELEASE != x"alpha13" ]; then
$PYTHON $BINDIR/samba-tool ldapcmp tdb://$PREFIX_ABS/${RELEASE}_upgrade_reference/private/sam.ldb tdb://$PREFIX_ABS/${RELEASE}_upgrade/private/sam.ldb --two --skip-missing-dn --filter=dnsRecord,displayName,msDS-SupportedEncryptionTypes,servicePrincipalName $PYTHON $BINDIR/samba-tool ldapcmp tdb://$PREFIX/${RELEASE}_upgrade_reference/private/sam.ldb tdb://$PREFIX/${RELEASE}_upgrade/private/sam.ldb --two --skip-missing-dn --filter=dnsRecord,displayName,msDS-SupportedEncryptionTypes,servicePrincipalName
fi fi
} }
ldapcmp_full() ldapcmp_full()
{ {
$PYTHON $BINDIR/samba-tool ldapcmp tdb://$PREFIX_ABS/${RELEASE}_upgrade_reference/private/sam.ldb tdb://$PREFIX_ABS/${RELEASE}_upgrade_full/private/sam.ldb --two --filter=dNSProperty,dnsRecord,cn,displayName,versionNumber,systemFlags,msDS-HasInstantiatedNCs,servicePrincipalName --skip-missing-dn $PYTHON $BINDIR/samba-tool ldapcmp tdb://$PREFIX/${RELEASE}_upgrade_reference/private/sam.ldb tdb://$PREFIX/${RELEASE}_upgrade_full/private/sam.ldb --two --filter=dNSProperty,dnsRecord,cn,displayName,versionNumber,systemFlags,msDS-HasInstantiatedNCs,servicePrincipalName --skip-missing-dn
} }
ldapcmp_sd() ldapcmp_sd()
{ {
$PYTHON $BINDIR/samba-tool ldapcmp tdb://$PREFIX_ABS/${RELEASE}_upgrade_reference/private/sam.ldb tdb://$PREFIX_ABS/${RELEASE}_upgrade/private/sam.ldb --two --sd --skip-missing-dn $PYTHON $BINDIR/samba-tool ldapcmp tdb://$PREFIX/${RELEASE}_upgrade_reference/private/sam.ldb tdb://$PREFIX/${RELEASE}_upgrade/private/sam.ldb --two --sd --skip-missing-dn
} }
ldapcmp_full_sd() ldapcmp_full_sd()
{ {
$PYTHON $BINDIR/samba-tool ldapcmp tdb://$PREFIX_ABS/${RELEASE}_upgrade_reference/private/sam.ldb tdb://$PREFIX_ABS/${RELEASE}_upgrade_full/private/sam.ldb --two --sd --skip-missing-dn $PYTHON $BINDIR/samba-tool ldapcmp tdb://$PREFIX/${RELEASE}_upgrade_reference/private/sam.ldb tdb://$PREFIX/${RELEASE}_upgrade_full/private/sam.ldb --two --sd --skip-missing-dn
} }
remove_directory $PREFIX_ABS/${RELEASE}_upgrade remove_directory $PREFIX/${RELEASE}_upgrade
remove_directory $PREFIX_ABS/${RELEASE}_upgrade_full remove_directory $PREFIX/${RELEASE}_upgrade_full
remove_directory $PREFIX_ABS/${RELEASE}_upgrade_reference remove_directory $PREFIX/${RELEASE}_upgrade_reference
testit $RELEASE undump || failed=$(expr $failed + 1) testit $RELEASE undump || failed=$(expr $failed + 1)
testit "remove_dns_user" remove_dns_user || failed=$(expr $failed + 1) testit "remove_dns_user" remove_dns_user || failed=$(expr $failed + 1)
@@ -227,8 +227,8 @@ testit "ldapcmp" ldapcmp || failed=$(expr $failed + 1)
testit "ldapcmp_sd" ldapcmp_sd || failed=$(expr $failed + 1) testit "ldapcmp_sd" ldapcmp_sd || failed=$(expr $failed + 1)
testit "ldapcmp_full_sd" ldapcmp_full_sd || failed=$(expr $failed + 1) testit "ldapcmp_full_sd" ldapcmp_full_sd || failed=$(expr $failed + 1)
remove_directory $PREFIX_ABS/${RELEASE}_upgrade remove_directory $PREFIX/${RELEASE}_upgrade
remove_directory $PREFIX_ABS/${RELEASE}_upgrade_full remove_directory $PREFIX/${RELEASE}_upgrade_full
remove_directory $PREFIX_ABS/${RELEASE}_upgrade_reference remove_directory $PREFIX/${RELEASE}_upgrade_reference
exit $failed exit $failed