From ae67b20623b1887b2afa061f328b5d52654ba6c7 Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Wed, 24 May 2006 22:15:03 +0000 Subject: r15875: Fix bug in smbclients 'put' command tridge found a while ago. Add tests for 'put' and 'get' commands so we don't break them again. Fixes #3742 (This used to be commit 141600a624ca90374c2f306139015f8c7487cc0f) --- source4/client/client.c | 6 +++--- source4/script/tests/test_smbclient.sh | 24 +++++++++++++++++++++--- 2 files changed, 24 insertions(+), 6 deletions(-) (limited to 'source4') diff --git a/source4/client/client.c b/source4/client/client.c index 20542c0183..b532cd9910 100644 --- a/source4/client/client.c +++ b/source4/client/client.c @@ -1194,16 +1194,16 @@ static int cmd_put(struct smbclient_context *ctx, const char **args) char *rname; if (!args[1]) { - d_printf("put \n"); + d_printf("put []\n"); return 1; } - lname = talloc_asprintf(ctx, "%s\\%s", ctx->remote_cur_dir, args[1]); + lname = talloc_strdup(ctx, args[1]); if (args[2]) rname = talloc_strdup(ctx, args[2]); else - rname = talloc_strdup(ctx, lname); + rname = talloc_asprintf(ctx, "%s\\%s", ctx->remote_cur_dir, lname); dos_clean_name(rname); diff --git a/source4/script/tests/test_smbclient.sh b/source4/script/tests/test_smbclient.sh index 47c9c14a66..b2d57135f7 100755 --- a/source4/script/tests/test_smbclient.sh +++ b/source4/script/tests/test_smbclient.sh @@ -32,14 +32,14 @@ EOF # put that file -echo mput tmpfile | runcmd "Putting file" || failed=`expr $failed + 1` +echo mput tmpfile | runcmd "MPutting file" || failed=`expr $failed + 1` # check file info echo altname tmpfile | runcmd "Getting alternative name" || failed=`expr $failed + 1` # run allinfo on that file echo allinfo tmpfile | runcmd "Checking info on file" || failed=`expr $failed + 1` # get that file mv tmpfile tmpfile-old -echo mget tmpfile | runcmd "Getting file" || failed=`expr $failed + 1` +echo mget tmpfile | runcmd "MGetting file" || failed=`expr $failed + 1` # remove that file echo rm tmpfile | runcmd "Removing file" || failed=`expr $failed + 1` # compare locally @@ -61,6 +61,24 @@ echo rmdir bla | runcmd "Removing directory" || failed=`expr $failed + 1` # run fsinfo echo fsinfo objectid | runcmd "Getting file system info" || failed=`expr $failed + 1` -rm -f tmpfile tmpfile-old +# put that file +echo put tmpfile | runcmd "Putting file" || failed=`expr $failed + 1` +# get that file +mv tmpfile tmpfile-old +echo get tmpfile | runcmd "Getting file" || failed=`expr $failed + 1` +# remove that file +echo rm tmpfile | runcmd "Removing file" || failed=`expr $failed + 1` +# compare locally +testit "Comparing files" diff tmpfile-old tmpfile || failed=`expr $failed + 1` +# put that file +echo put tmpfile tmpfilex | runcmd "Putting file with different name" || failed=`expr $failed + 1` +# get that file +echo get tmpfilex | runcmd "Getting file again" || failed=`expr $failed + 1` +# compare locally +testit "Comparing files" diff tmpfilex tmpfile || failed=`expr $failed + 1` +# remove that file +echo rm tmpfilex | runcmd "Removing file" || failed=`expr $failed + 1` + +rm -f tmpfile tmpfile-old tmpfilex testok $0 $failed -- cgit