diff --git a/Regression/bz358181-disconnect-on-empty-dir-and-sanity/PURPOSE b/Regression/bz358181-disconnect-on-empty-dir-and-sanity/PURPOSE new file mode 100644 index 0000000..2ca0dfe --- /dev/null +++ b/Regression/bz358181-disconnect-on-empty-dir-and-sanity/PURPOSE @@ -0,0 +1,5 @@ +PURPOSE of /CoreOS/lftp/Regression/bz358181-disconnect-on-empty-dir-and-sanity +Description: "lftp" disconnects FTP data connection if remote dir is found empty, and test also need to test some simle functioanlity on vasious file sizes +Author: Jan Scotka + +"lftp" disconnects FTP data connection if remote dir is found empty, and test also need to test some simle functioanlity on vasious file sizes diff --git a/Regression/bz358181-disconnect-on-empty-dir-and-sanity/main.fmf b/Regression/bz358181-disconnect-on-empty-dir-and-sanity/main.fmf new file mode 100644 index 0000000..e56f66e --- /dev/null +++ b/Regression/bz358181-disconnect-on-empty-dir-and-sanity/main.fmf @@ -0,0 +1,25 @@ +summary: lftp disconnects FTP data connection if remote dir is found empty, and test + also need to test some simle functioanlity on vasious file sizes +description: | + "lftp" disconnects FTP data connection if remote dir is found empty, and test also need to test some simle functioanlity on vasious file sizes +component: +- lftp +test: ./runtest.sh +framework: beakerlib +recommend: +- lftp +- vsftpd +duration: 1h +enabled: true +tag: +- TIP_fedora_fail +- TIPfail_infra +- TIPfail_samba +- TIPfail_systemd +- TIPpass +- TIPpass_Apps +- Tier1 +tier: '1' +extra-nitrate: TC#0054212 +extra-summary: /CoreOS/lftp/Regression/bz358181-disconnect-on-empty-dir-and-sanity +extra-task: /CoreOS/lftp/Regression/bz358181-disconnect-on-empty-dir-and-sanity diff --git a/Regression/bz358181-disconnect-on-empty-dir-and-sanity/runtest.sh b/Regression/bz358181-disconnect-on-empty-dir-and-sanity/runtest.sh new file mode 100755 index 0000000..920b6f0 --- /dev/null +++ b/Regression/bz358181-disconnect-on-empty-dir-and-sanity/runtest.sh @@ -0,0 +1,83 @@ +#!/bin/bash +# vim: dict=/usr/share/rhts-library/dictionary.vim cpt=.,w,b,u,t,i,k +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# runtest.sh of /CoreOS/lftp/Regression/bz358181-disconnect-on-empty-dir-and-sanity +# Description: "lftp" disconnects FTP data connection if remote dir is found empty, and test also need to test some simle functioanlity on vasious file sizes +# Author: Jan Scotka +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Copyright (c) 2009 Red Hat, Inc. All rights reserved. +# +# This copyrighted material is made available to anyone wishing +# to use, modify, copy, or redistribute it subject to the terms +# and conditions of the GNU General Public License version 2. +# +# This program is distributed in the hope that it will be +# useful, but WITHOUT ANY WARRANTY; without even the implied +# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR +# PURPOSE. See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public +# License along with this program; if not, write to the Free +# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +# Boston, MA 02110-1301, USA. +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +# Include rhts environment +. /usr/share/rhts-library/rhtslib.sh +. /usr/share/beakerlib/beakerlib.sh + +PACKAGE="lftp" +ARCH=`arch` + +rlJournalStart + rlPhaseStartSetup Setup + rlAssertRpm $PACKAGE || rlDie "Package $PACKAGE not installed" + rlAssertRpm "vsftpd" || rlDie "Package vsftpd not installed" + if rlIsFedora; then + rlRun "TmpDir=$(mktemp -d /var/tmp/ftptmpXXXX)" 0 "Creating fedora tmp directory" + else + rlRun "TmpDir=\`mktemp -d\`" 0 "Creating tmp directory" + fi + rlRun "rlFileBackup '/etc/vsftpd/vsftpd.conf'" 0 "Back up vsftpd.conf" + # workaround for https://bugzilla.redhat.com/show_bug.cgi?id=860951#c9 + if rlIsRHEL 7 && [ "_$ARCH" = "_x86_64" ]; then + echo -e "\nseccomp_sandbox=NO\n" >> /etc/vsftpd/vsftpd.conf + fi + rlRun 'sed -i s/anonymous_enable=.*/anonymous_enable=YES/ /etc/vsftpd/vsftpd.conf' 0 "Enable anonymous" + rlRun "rlServiceStart vsftpd" 0 "Start vsftpd" + rlPhaseEnd + + rlPhaseStartTest Testing + rlAssertExists $TmpDir + rlRun "ls -l $TmpDir" 0 "Listing tmp directory" + FTPDIR=/var/ftp + rlRun "lftp -e 'nlist; quit' localhost" 0 "simple nlist" + rlRun "lftp -e 'cd pub; nlist; quit' localhost" 0 "simple nlist on empty dir" + rlRun "mkdir $FTPDIR/testf" 0 "Create $FTPDIR/testf" + for foo in `seq 2000`; do + echo "filee sss$foo" > $FTPDIR/testf/file$foo + done + dd if=/dev/zero of=$FTPDIR/biggerfile bs=20M count=1 + #file size 21* 100M ~ 2.2Gb + dd if=/dev/zero of=$FTPDIR/biggestfile bs=100M count=21 + + rlRun "pushd $TmpDir" 0 "Get into $TmpDir" + + rlRun "lftp -e 'cd testf; mget *; quit' localhost" 0 "2000 small files download" + rlRun "lftp -e 'get biggerfile; quit' localhost" 0 "20M file download" + rlRun "lftp -e 'get biggestfile; quit' localhost" 0 "2^31-1 bytes file download" + + rlRun "popd" 0 "Get out of $TmpDir" + rlPhaseEnd + + rlPhaseStartCleanup Cleanup + rlRun "rlFileRestore" 0 "Restoring vsftpd.conf" + rlRun "rm -fr $TmpDir $FTPDIR/big* $FTPDIR/testf" 0 "Removing tmp directories" + rlServiceRestore vsftpd + rlPhaseEnd +rlJournalPrintText +rlJournalEnd