Ignore:
Timestamp:
Nov 14, 2012, 12:59:34 PM (13 years ago)
Author:
Silvan Scherrer
Message:

Samba Server: update vendor to 3.6.0

Location:
vendor/current/source3/script
Files:
10 added
6 deleted
12 edited

Legend:

Unmodified
Added
Removed
  • vendor/current/source3/script/build_idl.sh

    r414 r740  
    11#!/bin/sh
    22
    3 ARGS="--includedir=../librpc/idl --outputdir $PIDL_OUTPUTDIR --header --ndr-parser --samba3-ndr-server --samba3-ndr-client $PIDL_ARGS --"
     3if [ "$1" = "--full" ]; then
     4        FULL=1
     5        shift 1
     6else
     7        FULL=0
     8fi
     9
     10ARGS="--includedir=../librpc/idl --outputdir $PIDL_OUTPUTDIR --header --ndr-parser --client --samba3-ndr-server $PIDL_ARGS --"
    411IDL_FILES="$*"
    512
     
    1118PIDL="$PIDL $ARGS"
    1219
     20if [ $FULL = 1 ]; then
     21        echo "Rebuilding all idl files"
     22        $PIDL $IDL_FILES || exit 1
     23        exit 0
     24fi
     25
    1326##
    1427## Find newer files rather than rebuild all of them
     
    1730list=""
    1831for f in ${IDL_FILES}; do
    19         basename=`basename $f .idl`
    20         ndr="$PIDL_OUTPUTDIR/ndr_$basename.c"
     32        b=`basename $f .idl`
     33        outfiles="$b.h ndr_$b.h srv_$b.c"
     34        outfiles="$outfiles ndr_$b.c srv_$b.h"
    2135
    22         if [ -f $ndr ]; then
    23                 if [ "x`find $f -newer $ndr -print`" = "x$f" ]; then
    24                         list="$list $f"
    25                 fi
    26         else
     36        for o in $outfiles; do
     37            [ -f $PIDL_OUTPUTDIR/$o ] || {
    2738                list="$list $f"
    28         fi
     39                break
     40            }
     41            test "`find $f -newer $PIDL_OUTPUTDIR/$o`" != "" && {
     42                list="$list $f"
     43                break
     44            }
     45        done
    2946done
    3047
  • vendor/current/source3/script/installman.sh

    r414 r740  
    2121# Get the configured feature set
    2222test -f "${SRCDIR}/config.log" && \
    23         eval `grep "^[[:alnum:]_]*=.*" "${SRCDIR}/config.log"`
     23        eval `grep "^[[:alnum:]]*=.*" "${SRCDIR}/config.log"`
    2424
    2525for lang in $langs; do
     
    4949            # Check if this man page if required by the configured feature set
    5050            case "${MP_BASENAME}" in
    51                 cifs.upcall.8) test -z "${CIFSUPCALL_PROGS}" && continue ;;
    5251                smbsh.1) test -z "${SMBWRAPPER}" && continue ;;
    5352                *) ;;
  • vendor/current/source3/script/mkbuildoptions.awk

    r414 r740  
    9797        print "       output(screen,\"   SMB_PASSWD_FILE: %s\\n\",get_dyn_SMB_PASSWD_FILE());";
    9898        print "       output(screen,\"   PRIVATE_DIR: %s\\n\",get_dyn_PRIVATE_DIR());";
     99        print "       output(screen,\"   NCALRPCDIR: %s\\n\",get_dyn_NCALRPCDIR());";
     100        print "       output(screen,\"   NMBDSOCKETDIR: %s\\n\",get_dyn_NMBDSOCKETDIR());";
    99101        print "";
    100102
  • vendor/current/source3/script/mkversion.sh

    r414 r740  
    7777        GIT_INFO=`git show --pretty=format:"%h%n%ct%n%H%n%cd" --stat HEAD 2>/dev/null`
    7878        GIT_COMMIT_ABBREV=`printf "%s" "${GIT_INFO}" | sed -n 1p`
    79         GIT_COMMIT_TIME=`printf "%s" "${GIT_INFO}" | sed -n 2p`
     79        COMMIT_TIME=`printf "%s" "${GIT_INFO}" | sed -n 2p`
    8080        GIT_COMMIT_FULLREV=`printf "%s" "${GIT_INFO}" | sed -n 3p`
    81         GIT_COMMIT_DATE=`printf "%s" "${GIT_INFO}" | sed -n 4p`
     81        COMMIT_DATE=`printf "%s" "${GIT_INFO}" | sed -n 4p`
    8282        if test -n "${GIT_COMMIT_ABBREV}";then
    8383            HAVEGIT=yes
     
    9090
    9191        echo "#define SAMBA_VERSION_GIT_COMMIT_ABBREV \"${GIT_COMMIT_ABBREV}\"" >> $OUTPUT_FILE
    92         echo "#define SAMBA_VERSION_GIT_COMMIT_TIME ${GIT_COMMIT_TIME}" >> $OUTPUT_FILE
     92        echo "#define SAMBA_VERSION_COMMIT_TIME ${COMMIT_TIME}" >> $OUTPUT_FILE
    9393        echo "#define SAMBA_VERSION_GIT_COMMIT_FULLREV \"${GIT_COMMIT_FULLREV}\"" >> $OUTPUT_FILE
    94         echo "#define SAMBA_VERSION_GIT_COMMIT_DATE \"${GIT_COMMIT_DATE}\"" >> $OUTPUT_FILE
     94        echo "#define SAMBA_VERSION_COMMIT_DATE \"${COMMIT_DATE}\"" >> $OUTPUT_FILE
    9595    else
    9696        SAMBA_VERSION_STRING="${SAMBA_VERSION_STRING}-GIT-UNKNOWN"
  • vendor/current/source3/script/tests/test_local_s3.sh

    r414 r740  
    1111
    1212test x"$TEST_FUNCTIONS_SH" != x"INCLUDED" && {
    13 incdir=`dirname $0`
    14 . $incdir/test_functions.sh
     13incdir=`dirname $0`/../../../testprogs/blackbox
     14. $incdir/subunit.sh
    1515}
    1616
  • vendor/current/source3/script/tests/test_net_misc.sh

    r414 r740  
    22
    33# various tests for the "net" command
     4
     5if [ $# -lt 3 ]; then
     6cat <<EOF
     7Usage: test_net_misc.sh SCRIPTDIR SERVERCONFFILE CONFIGURATION
     8EOF
     9exit 1;
     10fi
     11
     12SCRIPTDIR="$1"
     13SERVERCONFFILE="$2"
     14CONFIGURATION="$3"
    415
    516NET="$VALGRIND ${NET:-$BINDIR/net} $CONFIGURATION"
     
    920
    1021test x"$TEST_FUNCTIONS_SH" != x"INCLUDED" && {
    11 incdir=`dirname $0`
    12 . $incdir/test_functions.sh
     22incdir=`dirname $0`/../../../testprogs/blackbox
     23. $incdir/subunit.sh
    1324}
    1425
  • vendor/current/source3/script/tests/test_net_registry.sh

    r414 r740  
    11#!/bin/sh
    2 
    3 # Tests for the "net registry" and "net rpc registry" commands.
     2#
     3# Blackbox tests for the "net registry" and "net rpc registry" commands.
     4#
     5# Copyright (C) 2010-2011 Michael Adam <obnox@samba.org>
     6# Copyright (C) 2010 Gregor Beck <gbeck@sernet.de>
     7#
    48# rpc tests are chose by specifying "rpc" as commandline parameter.
    59
    6 RPC="$1"
     10if [ $# -lt 3 ]; then
     11cat <<EOF
     12Usage: test_net_registry.sh SCRIPTDIR SERVERCONFFILE CONFIGURATION RPC
     13EOF
     14exit 1;
     15fi
     16
     17SCRIPTDIR="$1"
     18SERVERCONFFILE="$2"
     19CONFIGURATION="$3"
     20RPC="$4"
    721
    822NET="$VALGRIND ${NET:-$BINDIR/net} $CONFIGURATION"
     
    1529
    1630test x"$TEST_FUNCTIONS_SH" != x"INCLUDED" && {
    17 incdir=`dirname $0`
    18 . $incdir/test_functions.sh
     31incdir=`dirname $0`/../../../testprogs/blackbox
     32. $incdir/subunit.sh
    1933}
    2034
     
    145159
    146160        UNEXPECTED="Keyname = ${SUBKEY}"
    147         printf "%s\n" "$OUTPUT" | 'grep ^Keyname' | grep ${SUBKEY}
     161        printf "%s\n" "$OUTPUT" | grep '^Keyname' | grep ${SUBKEY}
    148162        if test "x$?" = "x0" ; then
    149163                echo "ERROR: found '$UNEXPECTED' after delete in output"
     
    238252{
    239253        KEY="$1"
    240         VALNAME="$2"
     254        VALNAME="${2#_}"
    241255        VALTYPE="$3"
    242256        VALVALUE="$4"
     
    249263        fi
    250264
    251         OUTPUT=`${NETREG} setvalue ${KEY} ${VALNAME} ${VALTYPE} ${VALVALUE}`
     265        OUTPUT=`${NETREG} setvalue ${KEY} "${VALNAME}" ${VALTYPE} ${VALVALUE}`
    252266        if test "x$?" != "x0" ; then
    253267                echo "ERROR: failed to set value testval in key ${KEY}"
     
    257271        fi
    258272
    259         OUTPUT=`${NETREG} enumerate ${KEY}`
    260         if test "x$?" != "x0" ; then
    261                 echo "ERROR: failure calling enumerate for key ${KEY}"
     273        OUTPUT=`${NETREG} getvalueraw ${KEY} "${VALNAME}"`
     274        if test "x$?" != "x0" ; then
     275                echo "ERROR: failure calling getvalueraw for key ${KEY}"
    262276                echo output:
    263277                printf "%s\n" "${OUTPUT}"
     
    266280        fi
    267281
    268         printf "%s\n" "$OUTPUT" | {
    269         FOUND=0
    270         while read LINE ; do
    271                 SEARCH1=`echo $LINE | grep '^Valuename' | grep ${VALNAME}`
    272                 if test "x$?" = "x0" ; then
    273                         read LINE
    274                         read LINE
    275                         SEARCH2=`echo $LINE | grep '^Value ' | grep ${VALVALUE}`
    276                         if test "x$?" = "x0" ; then
    277                                 FOUND=1
    278                                 break
    279                         fi
    280                 fi
    281         done
    282 
    283         if test "x$FOUND" != "x1" ; then
    284                 echo "ERROR: did not find value '${VALNAME}' with enumerate"
    285                 echo "enumerate output:"
    286                 printf "%s\n" "$OUTPUT"
    287                 false
    288                 return
    289         fi
    290         }
     282        if test "x${OUTPUT}" != "x${VALVALUE}" ; then
     283                echo "ERROR: failure retrieving value ${VALNAME} for key ${KEY}"
     284                printf "expected: %s\ngot: %s\n" "${VALVALUE}" "${OUTPUT}"
     285                false
     286                return
     287        fi
     288
    291289}
    292290
     
    294292{
    295293        KEY="$1"
    296         VALNAME="$2"
    297 
    298         ${NETREG} deletevalue ${KEY} ${VALNAME}
     294        VALNAME="${2#_}"
     295
     296        ${NETREG} deletevalue ${KEY} "${VALNAME}"
    299297}
    300298
     
    302300{
    303301        KEY="$1"
    304         VALNAME="$2"
    305 
    306         ${NETREG} deletevalue ${KEY} ${VALNAME}
     302        VALNAME="${2#_}"
     303
     304        ${NETREG} deletevalue ${KEY} "${VALNAME}"
    307305        if test "x$?" = "x0" ; then
    308306                echo "ERROR: succeeded deleting value ${VALNAME}"
     
    316314{
    317315        KEY="$1"
    318         VALNAME="$2"
     316        VALNAME="${2#_}"
    319317        VALTYPE1="$3"
    320318        VALVALUE1="$4"
     
    322320        VALVALUE2="$6"
    323321
    324         OUTPUT=`test_setvalue ${KEY} ${VALNAME} ${VALTYPE1} ${VALVALUE1}`
     322        OUTPUT=`test_setvalue ${KEY} _"${VALNAME}" ${VALTYPE1} ${VALVALUE1}`
    325323        if test "x$?" != "x0" ; then
    326324                echo "ERROR: first setvalue call failed"
     
    330328        fi
    331329
    332         ${NETREG} setvalue ${KEY} ${VALNAME} ${VALTYPE2} ${VALVALUE2}
    333 }
    334 
    335 give_administrative_rights()
    336 {
    337         bin/net -s $SERVERCONFFILE sam createbuiltingroup Administrators
    338         if test "x$?" != "x0" ; then
    339                 echo "ERROR: creating builtin group Administrators"
    340                 false
    341                 return
    342         fi
    343 
    344         bin/net -s $SERVERCONFFILE sam addmem BUILTIN\\Administrators $USERNAME
    345         if test "x$?" != "x0" ; then
    346                 echo "ERROR: adding user $USERNAME to BUILTIN\\Administrators"
    347                 false
    348         else
    349                 true
    350         fi
    351 }
    352 
    353 take_administrative_rights()
    354 {
    355         bin/net -s $SERVERCONFFILE sam delmem BUILTIN\\Administrators $USERNAME
    356         if test "x$?" != "x0" ; then
    357                 echo "ERROR: removing user $USERNAME from BUILTIN\\Administrators"
    358                 false
    359         else
    360                 true
    361         fi
    362 }
    363 
    364 if test "x${RPC}" = "xrpc" ; then
    365 testit "giving user ${USERNAME} administrative rights" \
    366         give_administrative_rights
    367         if [ "x$?" != "x0" ] ; then
    368                 failed=`expr $failed + 1`
    369                 testok $0 $failed
    370         fi
    371 fi
     330        ${NETREG} setvalue ${KEY} "${VALNAME}" ${VALTYPE2} ${VALVALUE2}
     331}
     332
    372333
    373334testit "enumerate HKLM" \
     
    419380
    420381testit "set value" \
    421         test_setvalue HKLM/testkey testval sz moin || \
     382        test_setvalue HKLM/testkey _testval sz moin || \
    422383        failed=`expr $failed + 1`
    423384
    424385testit "delete value" \
    425         test_deletevalue HKLM/testkey testval || \
     386        test_deletevalue HKLM/testkey _testval || \
    426387        failed=`expr $failed + 1`
    427388
    428389testit "delete nonexisting value" \
    429         test_deletevalue_nonexisting HKLM/testkey testval || \
     390        test_deletevalue_nonexisting HKLM/testkey _testval || \
    430391        failed=`expr $failed + 1`
    431392
     
    434395        failed=`expr $failed + 1`
    435396
     397testit "set default value" \
     398        test_setvalue HKLM/testkey _"" sz 42 || \
     399        failed=`expr $failed + 1`
     400
     401testit "delete default value" \
     402        test_deletevalue HKLM/testkey _"" || \
     403        failed=`expr $failed + 1`
     404
     405testit "delete nonexisting default value" \
     406        test_deletevalue_nonexisting HKLM/testkey _"" || \
     407        failed=`expr $failed + 1`
     408
    436409testit "delete key with value" \
    437410        test_deletekey HKLM/testkey || \
    438411        failed=`expr $failed + 1`
    439412
    440 if test "x${RPC}" = "xrpc" ; then
    441 testit "taking administrative rights from user ${USERNAME}" \
    442         take_administrative_rights || \
    443         failed=`expr $failed + 1`
    444 fi
    445413
    446414testok $0 $failed
  • vendor/current/source3/script/tests/test_ntlm_auth_s3.sh

    r414 r740  
    11#!/bin/sh
    22
     3if [ $# -lt 2 ]; then
     4cat <<EOF
     5Usage: test_ntlm_auth_s3.sh PYTHON SRC3DIR
     6EOF
     7exit 1;
     8fi
     9
     10PYTHON=$1
     11SRC3DIR=$2
     12shift 2
     13ADDARGS="$*"
     14
    315test x"$TEST_FUNCTIONS_SH" != x"INCLUDED" && {
    4 incdir=`dirname $0`
    5 . $incdir/test_functions.sh
     16incdir=`dirname $0`/../../../testprogs/blackbox
     17. $incdir/subunit.sh
    618}
    719
    820failed=0
    921
    10 (/usr/bin/env python --version > /dev/null 2>&1)
    11 
    12 if test $? -ne 0;
    13 then
    14         echo "Python binary not found in path. Skipping ntlm_auth tests."
    15         exit 0
    16 fi
    17 
    18 testit "ntlm_auth" $VALGRIND $SRCDIR/torture/test_ntlm_auth.py $BINDIR/ntlm_auth --configfile=$CONFFILE || failed=`expr $failed + 1`
     22testit "ntlm_auth" $PYTHON $SRC3DIR/torture/test_ntlm_auth.py $BINDIR/ntlm_auth $ADDARGS || failed=`expr $failed + 1`
    1923# This should work even with NTLMv2
    20 testit "ntlm_auth" $VALGRIND $SRCDIR/torture/test_ntlm_auth.py $BINDIR/ntlm_auth --configfile=$CONFFILE --client-domain=fOo --server-domain=fOo || failed=`expr $failed + 1`
     24testit "ntlm_auth" $PYTHON $SRC3DIR/torture/test_ntlm_auth.py $BINDIR/ntlm_auth $ADDARGS --client-domain=fOo --server-domain=fOo || failed=`expr $failed + 1`
    2125
    2226
  • vendor/current/source3/script/tests/test_smbclient_s3.sh

    r414 r740  
    33# this runs the file serving tests that are expected to pass with samba3
    44
    5 if [ $# -lt 4 ]; then
     5if [ $# -lt 7 ]; then
    66cat <<EOF
    7 Usage: test_smbclient_s3.sh SERVER SERVER_IP USERNAME PASSWORD
     7Usage: test_smbclient_s3.sh SERVER SERVER_IP USERNAME PASSWORD USERID LOCAL_PATH PREFIX
    88EOF
    99exit 1;
     
    1414USERNAME="$3"
    1515PASSWORD="$4"
    16 SMBCLIENT="$VALGRIND ${SMBCLIENT:-$BINDIR/smbclient} $CONFIGURATION"
    17 shift 4
     16USERID="$5"
     17LOCAL_PATH="$6"
     18PREFIX="$7"
     19SMBCLIENT="$VALGRIND ${SMBCLIENT:-$BINDIR/smbclient}"
     20WBINFO="$VALGRIND ${WBINFO:-$BINDIR/wbinfo}"
     21shift 7
    1822ADDARGS="$*"
    1923
    2024test x"$TEST_FUNCTIONS_SH" != x"INCLUDED" && {
    21 incdir=`dirname $0`
    22 . $incdir/test_functions.sh
     25incdir=`dirname $0`/../../../testprogs/blackbox
     26. $incdir/subunit.sh
    2327}
    2428
     
    3034    prompt="smb"
    3135
    32     cmd='echo du | $SMBCLIENT $CONFIGURATION "$@" -U$USERNAME%$PASSWORD //$SERVER/tmp -I $SERVER_IP $ADDARGS 2>&1'
     36    cmd='echo du | $SMBCLIENT "$@" -U$USERNAME%$PASSWORD //$SERVER/tmp -I $SERVER_IP $ADDARGS 2>&1'
    3337    eval echo "$cmd"
    3438    out=`eval $cmd`
     
    5660{
    5761    prompt="smb"
    58     tmpfile=/tmp/smbclient.in.$$
     62    tmpfile=$PREFIX/smbclient_interactive_prompt_commands
    5963
    6064    cat > $tmpfile <<EOF
     
    6367EOF
    6468
    65     cmd='CLI_FORCE_INTERACTIVE=yes $SMBCLIENT $CONFIGURATION "$@" -U$USERNAME%$PASSWORD //$SERVER/tmp -I $SERVER_IP $ADDARGS < $tmpfile 2>&1'
     69    cmd='CLI_FORCE_INTERACTIVE=yes $SMBCLIENT "$@" -U$USERNAME%$PASSWORD //$SERVER/tmp -I $SERVER_IP $ADDARGS < $tmpfile 2>&1'
    6670    eval echo "$cmd"
    6771    out=`eval $cmd`
     
    9195{
    9296    prompt="posix_unlink deleted file /newname"
    93     tmpfile=/tmp/smbclient.in.$$
     97    tmpfile=$PREFIX/smbclient_bad_symlinks_commands
    9498
    9599    cat > $tmpfile <<EOF
     
    101105EOF
    102106
    103     cmd='CLI_FORCE_INTERACTIVE=yes $SMBCLIENT $CONFIGURATION "$@" -U$USERNAME%$PASSWORD //$SERVER/tmp -I $SERVER_IP $ADDARGS < $tmpfile 2>&1'
     107    cmd='CLI_FORCE_INTERACTIVE=yes $SMBCLIENT "$@" -U$USERNAME%$PASSWORD //$SERVER/tmp -I $SERVER_IP $ADDARGS < $tmpfile 2>&1'
    104108    eval echo "$cmd"
    105109    out=`eval $cmd`
     
    127131}
    128132
    129 
    130 testit "smbclient -L $SERVER_IP" $SMBCLIENT $CONFIGURATION -L $SERVER_IP -N -p 139 || failed=`expr $failed + 1`
    131 testit "smbclient -L $SERVER -I $SERVER_IP" $SMBCLIENT $CONFIGURATION -L $SERVER -I $SERVER_IP -N -p 139 || failed=`expr $failed + 1`
     133# Test creating a good symlink and deleting it by path.
     134test_good_symlink()
     135{
     136    tmpfile=/tmp/smbclient.in.$$
     137    slink_name="$LOCAL_PATH/slink"
     138    slink_target="$LOCAL_PATH/slink_target"
     139
     140    touch $slink_target
     141    ln -s $slink_target $slink_name
     142    cat > $tmpfile <<EOF
     143del slink
     144quit
     145EOF
     146
     147    cmd='CLI_FORCE_INTERACTIVE=yes $SMBCLIENT "$@" -U$USERNAME%$PASSWORD //$SERVER/tmp -I $SERVER_IP $ADDARGS < $tmpfile 2>&1'
     148    eval echo "$cmd"
     149    out=`eval $cmd`
     150    ret=$?
     151    rm -f $tmpfile
     152
     153    if [ $ret != 0 ] ; then
     154        echo "$out"
     155        echo "failed delete good symlink with error $ret"
     156        rm $slink_target
     157        rm $slink_name
     158        false
     159        return
     160    fi
     161
     162    if [ ! -e $slink_target ] ; then
     163        echo "failed delete good symlink - symlink target deleted !"
     164        rm $slink_target
     165        rm $slink_name
     166        false
     167        return
     168    fi
     169
     170    if [ -e $slink_name ] ; then
     171        echo "failed delete good symlink - symlink still exists"
     172        rm $slink_target
     173        rm $slink_name
     174        false
     175    else
     176        # got the correct prompt .. succeed
     177        rm $slink_target
     178        true
     179    fi
     180}
     181
     182# Test writing into a read-only directory (logon as guest) fails.
     183test_read_only_dir()
     184{
     185    prompt="NT_STATUS_ACCESS_DENIED making remote directory"
     186    tmpfile=/tmp/smbclient.in.$$
     187
     188##
     189## We can't do this as non-root. We always have rights to
     190## create the directory.
     191##
     192    if [ "$USERID" != 0 ] ; then
     193        echo "skipping test_read_only_dir as non-root"
     194        true
     195        return
     196    fi
     197
     198##
     199## We can't do this with an encrypted connection. No credentials
     200## to set up the channel.
     201##
     202    if [ "$ADDARGS" = "-e" ] ; then
     203        echo "skipping test_read_only_dir with encrypted connection"
     204        true
     205        return
     206    fi
     207
     208    cat > $tmpfile <<EOF
     209mkdir a_test_dir
     210quit
     211EOF
     212
     213    cmd='CLI_FORCE_INTERACTIVE=yes $SMBCLIENT "$@" -U% //$SERVER/ro-tmp -I $SERVER_IP $ADDARGS < $tmpfile 2>&1'
     214    eval echo "$cmd"
     215    out=`eval $cmd`
     216    ret=$?
     217    rm -f $tmpfile
     218
     219    if [ $ret != 0 ] ; then
     220        echo "$out"
     221        echo "failed writing into read-only directory with error $ret"
     222        false
     223        return
     224    fi
     225
     226    echo "$out" | grep "$prompt" >/dev/null 2>&1
     227
     228    ret=$?
     229    if [ $ret = 0 ] ; then
     230        # got the correct prompt .. succeed
     231        true
     232    else
     233        echo "$out"
     234        echo "failed writing into read-only directory - grep failed with $ret"
     235        false
     236    fi
     237}
     238
     239# Test reading an owner-only file (logon as guest) fails.
     240test_owner_only_file()
     241{
     242    prompt="NT_STATUS_ACCESS_DENIED opening remote file"
     243    tmpfile=/tmp/smbclient.in.$$
     244
     245##
     246## We can't do this as non-root. We always have rights to
     247## read the file.
     248##
     249    if [ "$USERID" != 0 ] ; then
     250        echo "skipping test_owner_only_file as non-root"
     251        true
     252        return
     253    fi
     254
     255##
     256## We can't do this with an encrypted connection. No credentials
     257## to set up the channel.
     258##
     259    if [ "$ADDARGS" = "-e" ] ; then
     260        echo "skipping test_owner_only_file with encrypted connection"
     261        true
     262        return
     263    fi
     264
     265    cat > $tmpfile <<EOF
     266get unreadable_file
     267quit
     268EOF
     269
     270    cmd='CLI_FORCE_INTERACTIVE=yes $SMBCLIENT "$@" -U% //$SERVER/ro-tmp -I $SERVER_IP $ADDARGS < $tmpfile 2>&1'
     271    eval echo "$cmd"
     272    out=`eval $cmd`
     273    ret=$?
     274    rm -f $tmpfile
     275
     276    if [ $ret != 0 ] ; then
     277        echo "$out"
     278        echo "failed reading owner-only file with error $ret"
     279        false
     280        return
     281    fi
     282
     283    echo "$out" | grep "$prompt" >/dev/null 2>&1
     284
     285    ret=$?
     286    if [ $ret = 0 ] ; then
     287        # got the correct prompt .. succeed
     288        true
     289    else
     290        echo "$out"
     291        echo "failed reading owner-only file - grep failed with $ret"
     292        false
     293    fi
     294}
     295
     296# Test accessing an msdfs path.
     297test_msdfs_link()
     298{
     299    tmpfile=/tmp/smbclient.in.$$
     300    prompt="  msdfs-target  "
     301
     302    cat > $tmpfile <<EOF
     303ls
     304cd \\msdfs-src1
     305ls msdfs-target
     306quit
     307EOF
     308
     309    cmd='CLI_FORCE_INTERACTIVE=yes $SMBCLIENT "$@" -U$USERNAME%$PASSWORD //$SERVER/msdfs-share -I $SERVER_IP $ADDARGS < $tmpfile 2>&1'
     310    eval echo "$cmd"
     311    out=`eval $cmd`
     312    ret=$?
     313    rm -f $tmpfile
     314
     315    if [ $ret != 0 ] ; then
     316        echo "$out"
     317        echo "failed accessing \\msdfs-src1 link with error $ret"
     318        false
     319        return
     320    fi
     321
     322    echo "$out" | grep "$prompt" >/dev/null 2>&1
     323
     324    ret=$?
     325    if [ $ret != 0 ] ; then
     326        echo "$out"
     327        echo "failed listing \\msdfs-src1 - grep failed with $ret"
     328        false
     329    fi
     330
     331    cat > $tmpfile <<EOF
     332ls
     333cd \\deeppath\\msdfs-src2
     334ls msdfs-target
     335quit
     336EOF
     337
     338    cmd='CLI_FORCE_INTERACTIVE=yes $SMBCLIENT "$@" -U$USERNAME%$PASSWORD //$SERVER/msdfs-share -I $SERVER_IP $ADDARGS < $tmpfile 2>&1'
     339    eval echo "$cmd"
     340    out=`eval $cmd`
     341    ret=$?
     342    rm -f $tmpfile
     343
     344    if [ $ret != 0 ] ; then
     345        echo "$out"
     346        echo "failed accessing \\deeppath\\msdfs-src2 link with error $ret"
     347        false
     348        return
     349    fi
     350
     351    echo "$out" | grep "$prompt" >/dev/null 2>&1
     352
     353    ret=$?
     354    if [ $ret != 0 ] ; then
     355        echo "$out"
     356        echo "failed listing \\deeppath\\msdfs-src2 - grep failed with $ret"
     357        false
     358        return
     359    else
     360        true
     361        return
     362    fi
     363}
     364
     365# Test authenticating using the winbind ccache
     366test_ccache_access()
     367{
     368    $WBINFO --ccache-save="${USERNAME}%${PASSWORD}"
     369    $SMBCLIENT //$SERVER_IP/tmp -C -U "${USERNAME}%" \
     370        -c quit 2>&1
     371    ret=$?
     372
     373    if [ $ret != 0 ] ; then
     374        echo "smbclient failed to use cached credentials"
     375        false
     376        return
     377    fi
     378
     379    $WBINFO --ccache-save="${USERNAME}%GarBage"
     380    $SMBCLIENT //$SERVER_IP/tmp -C -U "${USERNAME}%" \
     381        -c quit 2>&1
     382    ret=$?
     383
     384    if [ $ret -eq 0 ] ; then
     385        echo "smbclient succeeded with wrong cached credentials"
     386        false
     387        return
     388    fi
     389
     390    $WBINFO --logoff
     391}
     392
     393LOGDIR_PREFIX=test_smbclient_s3
     394
     395# possibly remove old logdirs:
     396
     397for OLDDIR in $(find ${PREFIX} -type d -name "${LOGDIR_PREFIX}_*") ;  do
     398        echo "removing old directory ${OLDDIR}"
     399        rm -rf ${OLDDIR}
     400done
     401
     402LOGDIR=$(mktemp -d ${PREFIX}/${LOGDIR_PREFIX}_XXXXXX)
     403
     404
     405testit "smbclient -L $SERVER_IP" $SMBCLIENT -L $SERVER_IP -N -p 139 || failed=`expr $failed + 1`
     406testit "smbclient -L $SERVER -I $SERVER_IP" $SMBCLIENT -L $SERVER -I $SERVER_IP -N -p 139 -c quit || failed=`expr $failed + 1`
    132407
    133408testit "noninteractive smbclient does not prompt" \
     
    136411
    137412testit "noninteractive smbclient -l does not prompt" \
    138    test_noninteractive_no_prompt -l /tmp || \
     413   test_noninteractive_no_prompt -l $LOGDIR || \
    139414    failed=`expr $failed + 1`
    140415
     
    144419
    145420testit "interactive smbclient -l prompts on stdout" \
    146    test_interactive_prompt_stdout -l /tmp || \
     421   test_interactive_prompt_stdout -l $LOGDIR || \
    147422    failed=`expr $failed + 1`
    148423
     
    151426   failed=`expr $failed + 1`
    152427
     428testit "creating a good symlink and deleting it by path" \
     429   test_good_symlink || \
     430   failed=`expr $failed + 1`
     431
     432testit "writing into a read-only directory fails" \
     433   test_read_only_dir || \
     434   failed=`expr $failed + 1`
     435
     436testit "Reading a owner-only file fails" \
     437   test_owner_only_file || \
     438   failed=`expr $failed + 1`
     439
     440testit "Accessing an MS-DFS link" \
     441   test_msdfs_link || \
     442   failed=`expr $failed + 1`
     443
     444testit "ccache access works for smbclient" \
     445    test_ccache_access || \
     446    failed=`expr $failed + 1`
     447
     448testit "rm -rf $LOGDIR" \
     449    rm -rf $LOGDIR || \
     450    failed=`expr $failed + 1`
     451
    153452testok $0 $failed
  • vendor/current/source3/script/tests/test_smbtorture_s3.sh

    r414 r740  
    33# this runs the file serving tests that are expected to pass with samba3
    44
    5 if [ $# -lt 3 ]; then
     5if [ $# -lt 4 ]; then
    66cat <<EOF
    7 Usage: test_smbtorture_s3.sh UNC USERNAME PASSWORD <first> <smbtorture args>
     7Usage: test_smbtorture_s3.sh TEST UNC USERNAME PASSWORD <smbtorture args>
    88EOF
    99exit 1;
    1010fi
    1111
    12 unc="$1"
    13 username="$2"
    14 password="$3"
    15 start="$4"
     12t="$1"
     13unc="$2"
     14username="$3"
     15password="$4"
    1616shift 4
    1717ADDARGS="$*"
    1818
    1919test x"$TEST_FUNCTIONS_SH" != x"INCLUDED" && {
    20 incdir=`dirname $0`
    21 . $incdir/test_functions.sh
     20incdir=`dirname $0`/../../../testprogs/blackbox
     21. $incdir/subunit.sh
    2222}
    2323
    24 SMB_CONF_PATH="$CONFFILE"
    25 export SMB_CONF_PATH
    2624
    27 tests="FDPASS LOCK1 LOCK2 LOCK3 LOCK4 LOCK5 LOCK6 LOCK7 LOCK9"
    28 #tests="$tests UNLINK BROWSE ATTR TRANS2 MAXFID TORTURE "
    29 tests="$tests UNLINK BROWSE ATTR TRANS2 TORTURE "
    30 tests="$tests OPLOCK1 OPLOCK2 OPLOCK3 STREAMERROR"
    31 tests="$tests DIR DIR1 TCON TCONDEV RW1 RW2 RW3"
    32 tests="$tests OPEN XCOPY RENAME DELETE PROPERTIES W2K"
    33 tests="$tests TCON2 IOCTL CHKPATH FDSESS LOCAL-SUBSTITUTE CHAIN1"
    34 tests="$tests GETADDRINFO POSIX UID-REGRESSION-TEST SHORTNAME-TEST"
    35 tests="$tests LOCAL-BASE64 LOCAL-GENCACHE"
    36 
    37 skipped1="RANDOMIPC NEGNOWAIT NBENCH ERRMAPEXTRACT TRANS2SCAN NTTRANSSCAN"
    38 skipped2="DENY1 DENY2 OPENATTR CASETABLE EATEST"
    39 skipped3="MANGLE UTABLE PIPE_NUMBER"
    40 echo "Skipping the following tests:"
    41 echo "$skipped1"
    42 echo "$skipped2"
    43 echo "$skipped3"
    44 
    45 if test "x$SMBTORTURE_S3_SUBTESTS" != "x" ; then
    46     tests="$SMBTORTURE_S3_SUBTESTS"
    47 fi
    4825
    4926failed=0
    50 for t in $tests; do
    51     if [ ! -z "$start" -a "$start" != $t ]; then
    52         continue;
    53     fi
    54     start=""
    55     name="$t"
    56     testit "$name" $VALGRIND $BINDIR/smbtorture $unc -U"$username"%"$password" -l"$PREFIX_ABS"/tmp $ADDARGS $t || failed=`expr $failed + 1`
    57 done
     27testit "smbtorture" $VALGRIND $BINDIR/smbtorture $unc -U"$username"%"$password" $ADDARGS $t || failed=`expr $failed + 1`
    5828
    5929testok $0 $failed
  • vendor/current/source3/script/tests/test_testparm_s3.sh

    r414 r740  
    66# and the macro expansions.
    77
    8 TEMP_CONFFILE=${LIBDIR}/smb.conf.tmp
     8if [ $# -lt 1 ]; then
     9cat <<EOF
     10Usage: test_net_registry_roundtrip.sh LOCAL_PATH
     11EOF
     12exit 1;
     13fi
     14
     15LOCAL_PATH="$1"
     16
     17TEMP_CONFFILE=${LOCAL_PATH}/smb.conf.tmp
    918TESTPARM="$VALGRIND ${TESTPARM:-$BINDIR/testparm} --suppress-prompt --skip-logic-checks"
    1019
    1120test x"$TEST_FUNCTIONS_SH" != x"INCLUDED" && {
    12 incdir=`dirname $0`
    13 . $incdir/test_functions.sh
     21incdir=`dirname $0`/../../../testprogs/blackbox
     22. $incdir/subunit.sh
    1423}
    1524
  • vendor/current/source3/script/tests/test_wbinfo_s3.sh

    r414 r740  
    11#!/bin/sh
    22
    3 if [ $# -lt 4 ]; then
     3if [ $# -lt 1 ]; then
    44cat <<EOF
    5 Usage: test_wbinfo_s3.sh DOMAIN SERVER USERNAME PASSWORD <wbinfo args>
     5Usage: test_wbinfo_s3.sh <wbinfo args>
    66EOF
    77exit 1;
    88fi
    99
    10 domain="$1"
    11 server="$2"
    12 username="$3"
    13 password="$4"
    14 shift 4
    1510ADDARGS="$*"
    1611
    1712test x"$TEST_FUNCTIONS_SH" != x"INCLUDED" && {
    18 incdir=`dirname $0`
    19 . $incdir/test_functions.sh
     13incdir=`dirname $0`/../../../testprogs/blackbox
     14. $incdir/subunit.sh
    2015}
    2116
    22 OLDIFS=$IFS;
    23 
    24 tests="--ping"
    25 tests="$tests:--separator"
    26 tests="$tests:--own-domain"
    27 tests="$tests:--all-domains"
    28 tests="$tests:--trusted-domains"
    29 tests="$tests:--domain-info=BUILTIN"
    30 tests="$tests:--domain-info=$domain"
    31 tests="$tests:--online-status"
    32 tests="$tests:--online-status --domain=BUILTIN"
    33 tests="$tests:--online-status --domain=$domain"
    34 #Didn't pass yet# tests="$tests:--domain-users"
    35 tests="$tests:--domain-groups"
    36 tests="$tests:--name-to-sid=$username"
    37 #Didn't pass yet# tests="$tests:--user-info=$username"
    38 tests="$tests:--user-groups=$username"
    39 tests="$tests:--allocate-uid"
    40 tests="$tests:--allocate-gid"
    41 
    42 failed=0
    43 
    44 OLDIFS=$IFS
    45 NEWIFS=$':'
    46 IFS=$NEWIFS
    47 for t in $tests; do
    48    IFS=$OLDIFS
    49    testit "wbinfo $t" $VALGRIND $BINDIR/wbinfo $ADDARGS $t || failed=`expr $failed + 1`
    50    IFS=$NEWIFS
    51 done
    52 IFS=$OLDIFS
     17testit "wbinfo" $VALGRIND $BINDIR/wbinfo $ADDARGS || failed=`expr $failed + 1`
    5318
    5419testok $0 $failed
Note: See TracChangeset for help on using the changeset viewer.