3 # Basic testing of id mapping with idmap_ad
7 echo Usage
: $0 DOMAIN DC_SERVER DC_PASSWORD
15 wbinfo
="$VALGRIND $BINDIR/wbinfo"
16 ldbmodify
="$VALGRIND $BINDIR/ldbmodify"
17 ldbsearch
="$VALGRIND $BINDIR/ldbsearch"
21 .
`dirname $0`/..
/..
/testprogs
/blackbox
/subunit.sh
23 DOMAIN_SID
=$
($wbinfo -n "@$DOMAIN" | cut
-f 1 -d " ")
24 if [ $?
-ne 0 ] ; then
25 echo "Could not find domain SID" | subunit_fail_test
"test_idmap_ad"
29 BASE_DN
=$
($ldbsearch -H ldap
://$DC_SERVER -b "" -s base defaultNamingContext |
awk '/^defaultNamingContext/ {print $2}')
30 if [ $?
-ne 0 ] ; then
31 echo "Could not find base DB" | subunit_fail_test
"test_idmap_ad"
38 cat <<EOF | $ldbmodify -H ldap://$DC_SERVER -U "$DOMAIN\Administrator%$DC_PASSWORD"
39 dn: CN=Administrator,CN=Users,$BASE_DN
45 cat <<EOF | $ldbmodify -H ldap://$DC_SERVER -U "$DOMAIN\Administrator%$DC_PASSWORD"
46 dn: CN=Domain Users,CN=Users,$BASE_DN
53 # Test 1: Test uid of Administrator, should be 2000000
56 out
="$($wbinfo -S $DOMAIN_SID-500)"
57 echo "wbinfo returned: \"$out\", expecting \"2000000\""
58 test "$out" = "2000000"
60 testit
"Test uid of Administrator is 2000000" test $ret -eq 0 || failed
=$
(expr $failed + 1)
63 # Test 2: Test gid of Domain Users, should be 2000001
66 out
="$($wbinfo -Y $DOMAIN_SID-513)"
67 echo "wbinfo returned: \"$out\", expecting \"2000001\""
68 test "$out" = "2000001"
70 testit
"Test uid of Domain Users is 2000001" test $ret -eq 0 || failed
=$
(expr $failed + 1)
73 # Test 3: Test get userinfo for Administrator works
76 out
="$($wbinfo -i $DOMAIN/Administrator)"
77 echo "wbinfo returned: \"$out\", expecting \"$DOMAIN/administrator:*:2000000:2000001::/home/$DOMAIN/administrator:/bin/false\""
78 test "$out" = "$DOMAIN/administrator:*:2000000:2000001::/home/$DOMAIN/administrator:/bin/false"
80 testit
"Test get userinfo for Administrator works" test $ret -eq 0 || failed
=$
(expr $failed + 1)
83 # Remove POSIX ids from AD
85 cat <<EOF | $ldbmodify -H ldap://$DC_SERVER -U "$DOMAIN\Administrator%$DC_PASSWORD"
86 dn: CN=Administrator,CN=Users,$BASE_DN
92 cat <<EOF | $ldbmodify -H ldap://$DC_SERVER -U "$DOMAIN\Administrator%$DC_PASSWORD"
93 dn: CN=Domain Users,CN=Users,$BASE_DN