From: DAN LI <li.dan@cn.fujitsu.com>
To: Simon Xu <xu.simon@oracle.com>
Cc: ltp-list@lists.sourceforge.net
Subject: Re: [LTP] [PATCH 1/1] fix container_ftp.pl
Date: Wed, 08 Aug 2012 17:55:17 +0800 [thread overview]
Message-ID: <50223785.8040200@cn.fujitsu.com> (raw)
In-Reply-To: <502228E3.9010802@oracle.com>
[-- Attachment #1.1: Type: text/plain, Size: 3246 bytes --]
On 08/08/2012 04:52 PM, Simon Xu wrote:
> On 2012/8/8 16:30, DAN LI wrote:
>> On 08/03/2012 12:34 AM, Simon Xu wrote:
>>> container_ftp.pl has several problems:
>>>
>>> * ftp users can't cd to a temporary dir in /tmp
>>> * ftp->cwd($dir) will always fail
>>> * if we do 'chdir $dir', 'rmdir("$dir")' will fail
>>> * 'ftp->put' should be 'ftp->get'
>>>
>>> Signed-off-by: Simon Xu <xu.simon@oracle.com>
>>> ---
>>> testcases/kernel/containers/netns/container_ftp.pl | 15
>>> ++++++++-------
>>> 1 file changed, 8 insertions(+), 7 deletions(-)
>>>
>>> diff --git a/testcases/kernel/containers/netns/container_ftp.pl
>>> b/testcases/kernel/containers/netns/container_ftp.pl
>>> index 89a35b5..98742f3 100644
>>> --- a/testcases/kernel/containers/netns/container_ftp.pl
>>> +++ b/testcases/kernel/containers/netns/container_ftp.pl
>>> @@ -23,6 +23,7 @@
>>> use File::Temp 'tempdir';
>>> use Net::FTP;
>>> +use File::Path;
>>> if ($#ARGV == -1) {
>>> print "usage: $0 host\n";
>>> @@ -35,7 +36,7 @@ my $i = 0;
>>> my $kount = 51;
>>> my $file="junkfile";
>>> -my $tmpdir = defined($ENV{TMPDIR}) ? $ENV{TMPDIR} : "/tmp";
>>> +my $tmpdir = "/var/ftp";
>> hi, Simon
>>
>> I tested container_ftp.pl as follow:
>> ********************************************************
>> #./container_ftp.pl knownhost_with_vsftpd
>> ********************************************************
>> and failed at "$ftp->cwd" either with this fix or without it.
>>
>> So,did i get the wrong way to test this script ,or,something wrong
>> still exists.
>
> Could you print the value of $dir before "$ftp->cwd"? And try ftp
> login as anonymous user, and see if you can cd to the value.
>
Thanks for your quick reply and sorry for my careless.
I try operations as you suggested,and find the problem that dir created
for test is not available
for any user expect root.
So, now i test and confirm this fix works fine.
Thanks
DAN LI
> Thanks
> Simon
>
>>> my $dir;
>>> $dir = tempdir("container_ftp.XXXXXXX", DIR => $tmpdir);
>>> @@ -47,8 +48,7 @@ if (chmod(0777, $dir) == 0) {
>>> push @ERRORS, "Failed to change mode for temporary directory:
>>> $!\n";
>>> printerr();
>>> }
>>> -chdir $dir;
>>> -system("dd if=/dev/zero of=$file bs=512 count=10 > /dev/null 2>&1 ");
>>> +system("dd if=/dev/zero of=$dir/$file bs=512 count=10 > /dev/null
>>> 2>&1 ");
>>> while ( $i < $kount )
>>> {
>>> @@ -61,13 +61,15 @@ while ( $i < $kount )
>>> $ftp->quit if $newerr;
>>> printerr() if $newerr;
>>> - $ftp->cwd($dir) or $newerr=1;
>>> + $basedir = `basename "$dir"`;
>>> + chomp $basedir;
>>> + $ftp->cwd($basedir) or $newerr=1;
>>> push @ERRORS, "Can't cd $!\n" if $newerr;
>>> $ftp->quit if $newerr;
>>> printerr() if $newerr;
>>> $newname = $file . "_" . $i ;
>>> - $ftp->put($file,$newname) or $newerr=1;
>>> + $ftp->get($file,$newname) or $newerr=1;
>>> push @ERRORS, "Can't get file $file $!\n" if $newerr;
>>> printerr() if $newerr;
>>> @@ -82,6 +84,5 @@ sub printerr {
>>> }
>>> END {
>>> - unlink("$dir/$file");
>>> - rmdir("$dir");
>>> + rmtree("$dir");
>>> }
>>
>>
>
>
[-- Attachment #1.2: Type: text/html, Size: 7048 bytes --]
[-- Attachment #2: Type: text/plain, Size: 395 bytes --]
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
[-- Attachment #3: Type: text/plain, Size: 155 bytes --]
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
next prev parent reply other threads:[~2012-08-08 9:56 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-02 16:34 [LTP] [PATCH 1/1] fix container_ftp.pl Simon Xu
2012-08-08 8:30 ` DAN LI
2012-08-08 8:52 ` Simon Xu
2012-08-08 9:55 ` DAN LI [this message]
2012-08-08 10:07 ` Wanlong Gao
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=50223785.8040200@cn.fujitsu.com \
--to=li.dan@cn.fujitsu.com \
--cc=ltp-list@lists.sourceforge.net \
--cc=xu.simon@oracle.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox