The branch, master has been updated via 0cdd204693b testprogs: Reformat dbcheck.sh via ae3452244de testprogs: Reformat dbcheck-oldrelease.sh via 9757229b2b0 testprogs: Reformat dbcheck-links.sh from 61c6a00f550 mdssvc: check if the user closed the query before trying to read the HTTP response from Elasticsearch
https://git.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit 0cdd204693bbf2f7dd102791a9614672fc6c2e8c Author: Andreas Schneider <a...@samba.org> Date: Fri Apr 22 15:46:04 2022 +0200 testprogs: Reformat dbcheck.sh shfmt -w -p -i 0 -fn testprogs/blackbox/dbcheck.sh Signed-off-by: Andreas Schneider <a...@samba.org> Reviewed-by: Pavel Filipenský <pfilipen...@samba.org> Autobuild-User(master): Pavel Filipensky <pfilipen...@samba.org> Autobuild-Date(master): Thu Aug 4 10:11:30 UTC 2022 on sn-devel-184 commit ae3452244de69b8b2f31d41e3c9405d9d4e01bb1 Author: Andreas Schneider <a...@samba.org> Date: Fri Apr 22 15:46:04 2022 +0200 testprogs: Reformat dbcheck-oldrelease.sh shfmt -w -p -i 0 -fn testprogs/blackbox/dbcheck-oldrelease.sh Signed-off-by: Andreas Schneider <a...@samba.org> Reviewed-by: Pavel Filipenský <pfilipen...@samba.org> commit 9757229b2b0d80a61c86c3ac2966642b4074a30c Author: Andreas Schneider <a...@samba.org> Date: Fri Apr 22 15:46:04 2022 +0200 testprogs: Reformat dbcheck-links.sh shfmt -w -p -i 0 -fn testprogs/blackbox/dbcheck-links.sh Signed-off-by: Andreas Schneider <a...@samba.org> Reviewed-by: Pavel Filipenský <pfilipen...@samba.org> ----------------------------------------------------------------------- Summary of changes: testprogs/blackbox/dbcheck-links.sh | 1224 +++++++++++++++--------------- testprogs/blackbox/dbcheck-oldrelease.sh | 624 +++++++-------- testprogs/blackbox/dbcheck.sh | 30 +- 3 files changed, 973 insertions(+), 905 deletions(-) Changeset truncated at 500 lines: diff --git a/testprogs/blackbox/dbcheck-links.sh b/testprogs/blackbox/dbcheck-links.sh index 8f73fb86124..29fb5b85abc 100755 --- a/testprogs/blackbox/dbcheck-links.sh +++ b/testprogs/blackbox/dbcheck-links.sh @@ -1,158 +1,169 @@ #!/bin/sh if [ $# -lt 1 ]; then -cat <<EOF + cat <<EOF Usage: dbcheck-links.sh PREFIX RELEASE EOF -exit 1; + exit 1 fi PREFIX_ABS="$1" RELEASE="$2" shift 2 -. `dirname $0`/subunit.sh +. $(dirname $0)/subunit.sh -. `dirname $0`/common-links.sh -. `dirname $0`/common_test_fns.inc +. $(dirname $0)/common-links.sh +. $(dirname $0)/common_test_fns.inc failed=0 if [ ! -x $samba_undump ] || [ ! -d $release_dir ]; then - subunit_start_test $RELEASE - subunit_skip_test $RELEASE <<EOF + subunit_start_test $RELEASE + subunit_skip_test $RELEASE <<EOF no test provision EOF - subunit_start_test "tombstones_expunge" - subunit_skip_test "tombstones_expunge" <<EOF + subunit_start_test "tombstones_expunge" + subunit_skip_test "tombstones_expunge" <<EOF no test provision EOF - exit 0 + exit 0 fi -dbcheck() { - tmpfile=$PREFIX_ABS/$RELEASE/expected-dbcheck-link-output${1}.txt.tmp - tmpldif1=$PREFIX_ABS/$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 - - $PYTHON $BINDIR/samba-tool dbcheck -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $3 --fix --yes > $tmpfile - if [ "$?" != "$2" ]; then - return 1 - fi - sort $tmpfile | grep -v "^INFO:" > $tmpfile.sorted - sort $release_dir/expected-dbcheck-link-output${1}.txt > $tmpfile.expected - diff -u $tmpfile.sorted $tmpfile.expected - if [ "$?" != "0" ]; then - return 1 - fi - - tmpldif2=$PREFIX_ABS/$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 - - diff -u $tmpldif1 $tmpldif2 - if [ "$?" != "0" ]; then - return 1 - fi -} - -dbcheck_dangling() { - dbcheck "" "1" "--selftest-check-expired-tombstones" - return $? -} - -dbcheck_one_way() { - dbcheck "_one_way" "0" "CN=Configuration,DC=release-4-5-0-pre1,DC=samba,DC=corp --selftest-check-expired-tombstones" - return $? -} - -dbcheck_clean() { - tmpldif1=$PREFIX_ABS/$RELEASE/expected-dbcheck-output2.txt.tmp1 - - TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN > $tmpldif1 - - $PYTHON $BINDIR/samba-tool dbcheck -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb - if [ "$?" != "0" ]; then - return 1 - fi - tmpldif2=$PREFIX_ABS/$RELEASE/expected-dbcheck-output2.txt.tmp2 - TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN > $tmpldif2 - - diff -u $tmpldif1 $tmpldif2 - if [ "$?" != "0" ]; then - return 1 - fi -} - -check_expected_after_links() { - tmpldif=$PREFIX_ABS/$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 - diff -u $tmpldif $release_dir/expected-links-after-link-dbcheck.ldif - if [ "$?" != "0" ]; then - return 1 - fi -} - -check_expected_after_deleted_links() { - tmpldif=$PREFIX_ABS/$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 - diff -u $tmpldif $release_dir/expected-deleted-links-after-link-dbcheck.ldif - if [ "$?" != "0" ]; then - return 1 - fi -} - -check_expected_after_objects() { - tmpldif=$PREFIX_ABS/$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 - diff -u $tmpldif $release_dir/expected-objects-after-link-dbcheck.ldif - if [ "$?" != "0" ]; then - return 1 - fi -} - -duplicate_member() { - # We use an existing group so we have a stable GUID in the - # 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) - DN=$(echo "${LDIF1}" | grep '^dn: ') - MSG=$(echo "${LDIF1}" | grep -v '^dn: ' | grep -v '^#' | grep -v '^$') - ldif=$PREFIX_ABS/${RELEASE}/duplicate-member-multi.ldif - { - echo "${DN}" - echo "changetype: modify" - echo "replace: member" - echo "${MSG}" - echo "${MSG}" | sed -e 's!RMD_LOCAL_USN=[1-9][0-9]*!RMD_LOCAL_USN=0!' - } > $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 - if [ "$?" != "0" ]; then - return 1 - fi -} - -dbcheck_duplicate_member() { - dbcheck "_duplicate_member" "1" "--selftest-check-expired-tombstones" - return $? -} - -check_expected_after_duplicate_links() { - tmpldif=$PREFIX_ABS/$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 - diff -u $tmpldif $release_dir/expected-duplicates-after-link-dbcheck.ldif - if [ "$?" != "0" ]; then - return 1 - fi -} - -missing_link_sid_corruption() { - # Step1: add user "missingsidu1" - # - ldif=$PREFIX_ABS/${RELEASE}/missing_link_sid_corruption1.ldif - cat > $ldif <<EOF +dbcheck() +{ + tmpfile=$PREFIX_ABS/$RELEASE/expected-dbcheck-link-output${1}.txt.tmp + tmpldif1=$PREFIX_ABS/$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 + + $PYTHON $BINDIR/samba-tool dbcheck -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb $3 --fix --yes >$tmpfile + if [ "$?" != "$2" ]; then + return 1 + fi + sort $tmpfile | grep -v "^INFO:" >$tmpfile.sorted + sort $release_dir/expected-dbcheck-link-output${1}.txt >$tmpfile.expected + diff -u $tmpfile.sorted $tmpfile.expected + if [ "$?" != "0" ]; then + return 1 + fi + + tmpldif2=$PREFIX_ABS/$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 + + diff -u $tmpldif1 $tmpldif2 + if [ "$?" != "0" ]; then + return 1 + fi +} + +dbcheck_dangling() +{ + dbcheck "" "1" "--selftest-check-expired-tombstones" + return $? +} + +dbcheck_one_way() +{ + dbcheck "_one_way" "0" "CN=Configuration,DC=release-4-5-0-pre1,DC=samba,DC=corp --selftest-check-expired-tombstones" + return $? +} + +dbcheck_clean() +{ + tmpldif1=$PREFIX_ABS/$RELEASE/expected-dbcheck-output2.txt.tmp1 + + TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN >$tmpldif1 + + $PYTHON $BINDIR/samba-tool dbcheck -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb + if [ "$?" != "0" ]; then + return 1 + fi + tmpldif2=$PREFIX_ABS/$RELEASE/expected-dbcheck-output2.txt.tmp2 + TZ=UTC $ldbsearch -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --scope=base -b '' | grep highestCommittedUSN >$tmpldif2 + + diff -u $tmpldif1 $tmpldif2 + if [ "$?" != "0" ]; then + return 1 + fi +} + +check_expected_after_links() +{ + tmpldif=$PREFIX_ABS/$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 + diff -u $tmpldif $release_dir/expected-links-after-link-dbcheck.ldif + if [ "$?" != "0" ]; then + return 1 + fi +} + +check_expected_after_deleted_links() +{ + tmpldif=$PREFIX_ABS/$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 + diff -u $tmpldif $release_dir/expected-deleted-links-after-link-dbcheck.ldif + if [ "$?" != "0" ]; then + return 1 + fi +} + +check_expected_after_objects() +{ + tmpldif=$PREFIX_ABS/$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 + diff -u $tmpldif $release_dir/expected-objects-after-link-dbcheck.ldif + if [ "$?" != "0" ]; then + return 1 + fi +} + +duplicate_member() +{ + # We use an existing group so we have a stable GUID in the + # 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) + DN=$(echo "${LDIF1}" | grep '^dn: ') + MSG=$(echo "${LDIF1}" | grep -v '^dn: ' | grep -v '^#' | grep -v '^$') + ldif=$PREFIX_ABS/${RELEASE}/duplicate-member-multi.ldif + { + echo "${DN}" + echo "changetype: modify" + echo "replace: member" + echo "${MSG}" + echo "${MSG}" | sed -e 's!RMD_LOCAL_USN=[1-9][0-9]*!RMD_LOCAL_USN=0!' + } >$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 + if [ "$?" != "0" ]; then + return 1 + fi +} + +dbcheck_duplicate_member() +{ + dbcheck "_duplicate_member" "1" "--selftest-check-expired-tombstones" + return $? +} + +check_expected_after_duplicate_links() +{ + tmpldif=$PREFIX_ABS/$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 + diff -u $tmpldif $release_dir/expected-duplicates-after-link-dbcheck.ldif + if [ "$?" != "0" ]; then + return 1 + fi +} + +missing_link_sid_corruption() +{ + # Step1: add user "missingsidu1" + # + ldif=$PREFIX_ABS/${RELEASE}/missing_link_sid_corruption1.ldif + cat >$ldif <<EOF dn: CN=missingsidu1,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp changetype: add objectclass: user @@ -161,16 +172,16 @@ objectGUID: 0da8f25e-d110-11e8-80b7-3c970ec68461 objectSid: S-1-5-21-4177067393-1453636373-93818738-771 EOF - out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --relax $ldif) - if [ "$?" != "0" ]; then - echo "ldbmodify returned:\n$out" - return 1 - fi + out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --relax $ldif) + if [ "$?" != "0" ]; then + echo "ldbmodify returned:\n$out" + return 1 + fi - # Step2: add user "missingsidu2" - # - ldif=$PREFIX_ABS/${RELEASE}/missing_link_sid_corruption2.ldif - cat > $ldif <<EOF + # Step2: add user "missingsidu2" + # + ldif=$PREFIX_ABS/${RELEASE}/missing_link_sid_corruption2.ldif + cat >$ldif <<EOF dn: CN=missingsidu2,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp changetype: add objectclass: user @@ -179,16 +190,16 @@ objectGUID: 66eb8f52-d110-11e8-ab9b-3c970ec68461 objectSid: S-1-5-21-4177067393-1453636373-93818738-772 EOF - out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --relax $ldif) - if [ "$?" != "0" ]; then - echo "ldbmodify returned:\n$out" - return 1 - fi + out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --relax $ldif) + if [ "$?" != "0" ]; then + echo "ldbmodify returned:\n$out" + return 1 + fi - # Step3: add group "missingsidg3" and add users as members - # - ldif=$PREFIX_ABS/${RELEASE}/missing_link_sid_corruption3.ldif - cat > $ldif <<EOF + # Step3: add group "missingsidg3" and add users as members + # + ldif=$PREFIX_ABS/${RELEASE}/missing_link_sid_corruption3.ldif + cat >$ldif <<EOF dn: CN=missingsidg3,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp changetype: add objectclass: group @@ -199,65 +210,67 @@ 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 EOF - out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --relax $ldif) - if [ "$?" != "0" ]; then - echo "ldbmodify returned:\n$out" - return 1 - fi + out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --relax $ldif) + if [ "$?" != "0" ]; then + echo "ldbmodify returned:\n$out" + return 1 + fi - # Step4: remove one user again, so that we have one deleted link - # - ldif=$PREFIX_ABS/${RELEASE}/missing_link_sid_corruption4.ldif - cat > $ldif <<EOF + # Step4: remove one user again, so that we have one deleted link + # + ldif=$PREFIX_ABS/${RELEASE}/missing_link_sid_corruption4.ldif + cat >$ldif <<EOF dn: CN=missingsidg3,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp changetype: modify delete: member member: CN=missingsidu1,CN=users,DC=release-4-5-0-pre1,DC=samba,DC=corp EOF - out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --relax $ldif) - if [ "$?" != "0" ]; then - echo "ldbmodify returned:\n$out" - return 1 - fi - - # - # 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) - DN=$(echo "${LDIF1}" | grep '^dn: ') - MSG=$(echo "${LDIF1}" | grep -v '^dn: ' | grep -v '^#' | grep -v '^$') - ldif=$PREFIX_ABS/${RELEASE}/missing_link_sid_corruption5.ldif - { - echo "${DN}" - echo "changetype: modify" - echo "replace: member" - #echo "${MSG}" - echo "${MSG}" | sed \ - -e 's!<SID=S-1-5-21-4177067393-1453636373-93818738-771>;!!g' \ - -e 's!<SID=S-1-5-21-4177067393-1453636373-93818738-772>;!!g' \ - -e 's!RMD_ADDTIME=[1-9][0-9]*!RMD_ADDTIME=123456789000000000!g' \ - -e 's!RMD_CHANGETIME=[1-9][0-9]*!RMD_CHANGETIME=123456789000000000!g' \ - | cat - } > $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) - if [ "$?" != "0" ]; then - echo "ldbmodify returned:\n$out" - return 1 - fi - - return 0 -} - -dbcheck_missing_link_sid_corruption() { - dbcheck "-missing-link-sid-corruption" "1" "--selftest-check-expired-tombstones" - return $? -} - -add_lost_deleted_user1() { - ldif=$PREFIX_ABS/${RELEASE}/add_lost_deleted_user1.ldif - cat > $ldif <<EOF + out=$(TZ=UTC $ldbmodify -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb --relax $ldif) + if [ "$?" != "0" ]; then + echo "ldbmodify returned:\n$out" + return 1 + fi + + # + # 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) + DN=$(echo "${LDIF1}" | grep '^dn: ') + MSG=$(echo "${LDIF1}" | grep -v '^dn: ' | grep -v '^#' | grep -v '^$') + ldif=$PREFIX_ABS/${RELEASE}/missing_link_sid_corruption5.ldif + { + echo "${DN}" + echo "changetype: modify" + echo "replace: member" + #echo "${MSG}" + echo "${MSG}" | sed \ + -e 's!<SID=S-1-5-21-4177067393-1453636373-93818738-771>;!!g' \ + -e 's!<SID=S-1-5-21-4177067393-1453636373-93818738-772>;!!g' \ + -e 's!RMD_ADDTIME=[1-9][0-9]*!RMD_ADDTIME=123456789000000000!g' \ + -e 's!RMD_CHANGETIME=[1-9][0-9]*!RMD_CHANGETIME=123456789000000000!g' | + cat + } >$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) + if [ "$?" != "0" ]; then + echo "ldbmodify returned:\n$out" + return 1 + fi + + return 0 +} + +dbcheck_missing_link_sid_corruption() +{ + dbcheck "-missing-link-sid-corruption" "1" "--selftest-check-expired-tombstones" + return $? +} + +add_lost_deleted_user1() +{ + ldif=$PREFIX_ABS/${RELEASE}/add_lost_deleted_user1.ldif + cat >$ldif <<EOF dn: CN=fred\0ADEL:2301a64c-1234-5678-851e-12d4a711cfb4,OU=removed,DC=release-4-5-0-pre1,DC=samba,DC=corp objectClass: top objectClass: person @@ -339,33 +352,36 @@ nTSecurityDescriptor:: AQAXjBQAAAAwAAAATAAAAMQAAAABBQAAAAAABRUAAACB/fj4FbukVnK GAC9AQ8AAQIAAAAAAAUgAAAAIAIAAA== 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) - if [ "$?" != "0" ]; then - echo "ldbadd returned:\n$out" - return 1 - fi + 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) + if [ "$?" != "0" ]; then + echo "ldbadd returned:\n$out" + return 1 + fi - return 0 + return 0 } -dbcheck_lost_deleted_user1() { - dbcheck "-lost-deleted-user1" "1" "--selftest-check-expired-tombstones" - return $? +dbcheck_lost_deleted_user1() -- Samba Shared Repository