Adding tests
This commit is contained in:
parent
df0650f799
commit
96b08fca13
28 changed files with 1569 additions and 0 deletions
|
|
@ -0,0 +1,27 @@
|
|||
summary: nmap-performance-test
|
||||
description: |
|
||||
Bug summary: nmap much slower after bz1596834 got fixed in libpcap [rhel8]
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=2166178
|
||||
enabled: true
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=2166178
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=2166177
|
||||
tag:
|
||||
- Tier2
|
||||
tier: '2'
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: distro < rhel-7
|
||||
continue: false
|
||||
contact: František Hrdina <fhrdina@redhat.com>
|
||||
component:
|
||||
- nmap
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- nmap
|
||||
duration: 5m
|
||||
extra-nitrate: TC#0615071
|
||||
extra-summary: /CoreOS/nmap/Performance/bz2166178-nmap-much-slower-after-bz1596834-got-fixed-in
|
||||
extra-task: /CoreOS/nmap/Performance/bz2166178-nmap-much-slower-after-bz1596834-got-fixed-in
|
||||
id: 5795a22e-231e-4f2b-90a0-073bffbd70b5
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /CoreOS/nmap/Performance/bz2166178-nmap-much-slower-after-bz1596834-got-fixed-in
|
||||
# Description: After fix of bz1596834 is nmap slower. Testing if the speed is better after fixing it.
|
||||
# Author: František Hrdina <fhrdina@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2023 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# 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, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="nmap"
|
||||
THRESHOLD="1.5"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "(time nmap -n -r -p 1-65535 127.0.0.1 >/dev/null) &> time.log" 0 "Running scan"
|
||||
real_time=$(grep "real" time.log)
|
||||
m_regex='^.*([[:digit:]]+)m.*$'
|
||||
s_regex='^.*m([[:digit:]]+.[[:digit:]]+)s.*$'
|
||||
|
||||
[[ $real_time =~ $m_regex ]]
|
||||
mins=$(echo ${BASH_REMATCH[1]})
|
||||
[[ $real_time =~ $s_regex ]]
|
||||
secs=${BASH_REMATCH[1]}
|
||||
|
||||
rlAssertLesser "time of scan should be less than 1 min" $mins 1 && (
|
||||
if [ $(bc <<< "$secs < $THRESHOLD") -eq 1 ]; then
|
||||
rlPass "Time of scan is lesser than $THRESHOLD secs"
|
||||
else
|
||||
rlFail "Time of scan is greater then $THRESHOLD secs"
|
||||
fi
|
||||
)
|
||||
log=$(cat time.log)
|
||||
rlLog "Time of scan: $log"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
23
Regression/RHEL-9-Make-usr-bin-nc-a-symlink-using/main.fmf
Normal file
23
Regression/RHEL-9-Make-usr-bin-nc-a-symlink-using/main.fmf
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
summary: Test for BZ#1937754 (RHEL 9 Make /usr/bin/nc a symlink using)
|
||||
description: |
|
||||
Bug summary: RHEL 9: Make /usr/bin/nc a symlink using alternatives(1) to allow switching to OpenBSD nc(1)
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1937754
|
||||
contact: František Hrdina <fhrdina@redhat.com>
|
||||
component:
|
||||
- nmap
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- nmap
|
||||
duration: 5m
|
||||
enabled: true
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1937754
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: distro < rhel-9
|
||||
continue: false
|
||||
extra-nitrate: TC#0610007
|
||||
extra-summary: /CoreOS/nmap/Regression/RHEL-9-Make-usr-bin-nc-a-symlink-using
|
||||
extra-task: /CoreOS/nmap/Regression/RHEL-9-Make-usr-bin-nc-a-symlink-using
|
||||
id: b992ea62-dbf6-4d66-9070-20cc07c422c9
|
||||
44
Regression/RHEL-9-Make-usr-bin-nc-a-symlink-using/runtest.sh
Executable file
44
Regression/RHEL-9-Make-usr-bin-nc-a-symlink-using/runtest.sh
Executable file
|
|
@ -0,0 +1,44 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /CoreOS/nmap/Regression/RHEL-9-Make-usr-bin-nc-a-symlink-using
|
||||
# Description: Test for BZ#1937754 (RHEL 9 Make /usr/bin/nc a symlink using)
|
||||
# Author: František Hrdina <fhrdina@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2021 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# 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, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="nmap"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "ls -ls `which nc` | grep /etc/alternatives" 0 "Checking symlink with which"
|
||||
rlRun "alternatives --list | grep '/usr/bin/ncat'" 0 "Checking symlink from alternatives list"
|
||||
rlRun "alternatives --display nc" 0 "Checking symlink using alternatives display"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
summary: Test for BZ#1000770 (ncat displays debug message during normal use)
|
||||
description: |
|
||||
Bug summary: ncat displays debug message during normal use
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1000770
|
||||
|
||||
Tests whether ncat (from the package nmap) displays one extra line containing DEBUG output while starting.
|
||||
contact: fhrdina@redhat.com
|
||||
component:
|
||||
- nmap
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- nc
|
||||
- squid
|
||||
- nmap
|
||||
duration: 5m
|
||||
enabled: true
|
||||
tag:
|
||||
- Tier1
|
||||
tier: '1'
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1000770
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1134412
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1663898
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: distro < rhel-6
|
||||
continue: false
|
||||
extra-nitrate: TC#0379345
|
||||
extra-summary: /CoreOS/nmap/Regression/bz1000770-ncat-displays-debug-message-during-normal-use
|
||||
extra-task: /CoreOS/nmap/Regression/bz1000770-ncat-displays-debug-message-during-normal-use
|
||||
id: 2ca9a3e4-db5c-4370-ae4b-bd94e8567b6d
|
||||
102
Regression/bz1000770-ncat-displays-debug-message-during-normal-use/runtest.sh
Executable file
102
Regression/bz1000770-ncat-displays-debug-message-during-normal-use/runtest.sh
Executable file
|
|
@ -0,0 +1,102 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /CoreOS/nmap/Regression/bz1000770-ncat-displays-debug-message-during-normal-use
|
||||
# Description: Test for BZ#1000770 (ncat displays debug message during normal use)
|
||||
# Author: Martin Zember <mzember@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2014 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# 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, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="nmap"
|
||||
TEST_DIR=`pwd`
|
||||
|
||||
fake_server() {
|
||||
# set up target server (a fake HTTP server)
|
||||
PORT="$1"
|
||||
# launch a listening target server in the background
|
||||
rlRun "echo SERVER_HELLO | /usr/bin/ncat --send-only -l $PORT &" 0 "Executing a process listening on port $PORT"
|
||||
sleep 3 # to be sure the process has started and listening
|
||||
}
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
|
||||
# set up squid proxy
|
||||
CONF=/etc/squid/squid.conf
|
||||
rlFileBackup $CONF
|
||||
rlRun "sed -i 's/^http_access deny !Safe_por/# &/' $CONF" 0 "Configuring squid: Allowing access from certain unsafe ports"
|
||||
rlRun "sed -i 's/^http_access deny CONNECT !SSL_ports/# &/' $CONF" 0 "Configuring squid: Allowing CONNECT to non-SSL ports"
|
||||
rlRun "sed -i 's/^http_access deny all/http_access allow all/' $CONF" 0 "Configuring squid: Allowing all other access"
|
||||
rlServiceStart squid
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest "TEST FOR DEBUG INFO IN VERBOSE MODE"
|
||||
|
||||
# launch a listening target server
|
||||
PORT=8012
|
||||
fake_server $PORT
|
||||
SERVER_PID=$!
|
||||
|
||||
# version nmap-5.51-4.el6 always returns 0 when successful
|
||||
# version nmap-6.40-4.el7 sometimes returns 1 and in the verbose mode, it says: Connection reset by peer. It processes the input and output though.
|
||||
rlRun "/usr/bin/ncat --recv-only -vvv --proxy-type http --proxy localhost:3128 localhost $PORT >log 2>&1"
|
||||
rlAssertGrep "NCAT DEBUG: Proxy returned status code" log
|
||||
sleep 1
|
||||
cat log
|
||||
|
||||
# kill the server forcefully
|
||||
ps -p $SERVER_PID &>/dev/null && rlRun "kill -9 $SERVER_PID" 0,1 "Killing potentially remaining listening servers"
|
||||
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest "TEST FOR MISSING DEBUG INFO WHEN NOT IN VERBOSE MODE"
|
||||
|
||||
# launch a listening target server in the background, another one
|
||||
PORT=8013
|
||||
fake_server $PORT
|
||||
SERVER_PID="$!"
|
||||
|
||||
# version nmap-5.51-4.el6 always returns 0 when successful
|
||||
# version nmap-6.40-4.el7 sometimes returns 1 and in the verbose mode, it says: Connection reset by peer. It processes the input and output though.
|
||||
rlRun "/usr/bin/ncat --recv-only --proxy-type http --proxy localhost:3128 localhost $PORT >log 2>&1"
|
||||
rlAssertNotGrep "NCAT DEBUG: Proxy returned status code" log
|
||||
sleep 1
|
||||
cat log
|
||||
|
||||
# kill the server forcefully
|
||||
ps -p $SERVER_PID &>/dev/null && rlRun "kill -9 $SERVER_PID" 0,1 "Killing potentially remaining listening servers"
|
||||
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlFileRestore
|
||||
rlServiceRestore squid
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
summary: Test for BZ#1146578 ([RFE] Allow nanosecond precision time stamps with)
|
||||
description: |
|
||||
Bug summary: [RFE] Allow nanosecond precision time stamps with Wireshark
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1146578
|
||||
contact: fhrdina@redhat.com
|
||||
component:
|
||||
- wireshark
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- wireshark
|
||||
duration: 5m
|
||||
enabled: true
|
||||
tag:
|
||||
- Tier3
|
||||
tier: '3'
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1146578
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1213339
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: distro < rhel-6
|
||||
continue: false
|
||||
extra-nitrate: TC#0457312
|
||||
extra-summary:
|
||||
/CoreOS/wireshark/Regression/bz1146578-RFE-Allow-nanosecond-precision-time-stamps-with
|
||||
extra-task:
|
||||
/CoreOS/wireshark/Regression/bz1146578-RFE-Allow-nanosecond-precision-time-stamps-with
|
||||
id: a36c75e9-26c0-4ca7-952c-002e838e3e02
|
||||
|
|
@ -0,0 +1,53 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /CoreOS/wireshark/Regression/bz1146578-RFE-Allow-nanosecond-precision-time-stamps-with
|
||||
# Description: Test for BZ#1146578 ([RFE] Allow nanosecond precision time stamps with)
|
||||
# Author: Martin Zember <mzember@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2015 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# 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, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="wireshark"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "ping www.redhat.com -q -c 10 &"
|
||||
rlRun "tshark -c 10 | tee log"
|
||||
rlRun "sed -i 's/^[ ]*[0-9]*[ ]*//' log" 0-255 "Remove potential trailing spaces and and/or packet numbers"
|
||||
cat log
|
||||
rlRun "grep '^[0-9][0-9]*\.[0-9]\{9\}' log | grep -v '^[0-9][0-9]*\.[0-9]\{6\}000'" 0 "Packets have nanosecond precision but not only 000 as the last numbers"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
summary: Test for BZ#1284866 (nmap is not able to resolve hostname.)
|
||||
description: |
|
||||
Bug summary: nmap is not able to resolve hostname.
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1284866
|
||||
contact: fhrdina@redhat.com
|
||||
component:
|
||||
- nmap
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- nmap
|
||||
- bind
|
||||
duration: 30m
|
||||
enabled: true
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1284866
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1614196
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1390326
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: distro < rhel-6
|
||||
continue: false
|
||||
extra-nitrate: TC#0538212
|
||||
extra-summary: /CoreOS/nmap/Regression/bz1284866-nmap-is-not-able-to-resolve-hostname
|
||||
extra-task: /CoreOS/nmap/Regression/bz1284866-nmap-is-not-able-to-resolve-hostname
|
||||
id: 5c7054af-ec31-4f5e-b37c-1e0669c9646b
|
||||
148
Regression/bz1284866-nmap-is-not-able-to-resolve-hostname/runtest.sh
Executable file
148
Regression/bz1284866-nmap-is-not-able-to-resolve-hostname/runtest.sh
Executable file
|
|
@ -0,0 +1,148 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /CoreOS/nmap/Regression/bz1284866-nmap-is-not-able-to-resolve-hostname
|
||||
# Description: Test for BZ#1284866 (nmap is not able to resolve hostname.)
|
||||
# Author: Jaroslav Aster <jaster@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2016 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# 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, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
|
||||
PACKAGE="nmap"
|
||||
NAMED_CONF="/etc/named.conf"
|
||||
RESOLV_CONF="/etc/resolv.conf"
|
||||
DEFAULT_IFACE="$(ip route show | grep 'default' | head -n 1 | sed 's/^.*dev \([^ ]\+\) .*/\1/')"
|
||||
TEST_IP="192.168.23.84"
|
||||
TEST_MASK="24"
|
||||
TEST_DOMAIN="www.example.com"
|
||||
TEST_ZONE_CONF="$(mktemp --tmpdir='/var/named')"
|
||||
NMAP_OUTPUT_FILE="$(mktemp)"
|
||||
|
||||
|
||||
backup_files()
|
||||
{
|
||||
for _file in "$NAMED_CONF" "$RESOLV_CONF"; do
|
||||
if [ -f "$_file" ]; then
|
||||
rlFileBackup "$_file"
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
configure_named()
|
||||
{
|
||||
cat << EOF >> "$NAMED_CONF"
|
||||
|
||||
zone "23.168.192.in-addr.arpa" IN {
|
||||
type master;
|
||||
file "${TEST_ZONE_CONF}";
|
||||
};
|
||||
|
||||
EOF
|
||||
|
||||
cat << EOF > "$TEST_ZONE_CONF"
|
||||
\$TTL 2d ; 172800 seconds
|
||||
\$ORIGIN 23.168.192.IN-ADDR.ARPA.
|
||||
@ IN SOA ns1.example.com. hostmaster.example.com. (
|
||||
2003080800 ; serial number
|
||||
3h ; refresh
|
||||
15m ; update retry
|
||||
3w ; expiry
|
||||
3h ; nx = nxdomain ttl
|
||||
)
|
||||
IN NS ns1.example.com.
|
||||
IN NS ns2.example.com.
|
||||
IN NS cdnxxxx0.ccsrm.in.
|
||||
IN NS cdnxxxx1.ccsrm.in.
|
||||
IN NS rdndlxx0.ccsrm.in.
|
||||
IN NS rdnhrxx0.ccsrm.in.
|
||||
IN NS rdnkaxx0.ccsrm.in.
|
||||
IN NS rdncaxx0.ccsrm.in.
|
||||
IN NS rdnmbxx0.ccsrm.in.
|
||||
IN NS rdnrjxx0.ccsrm.in.
|
||||
IN NS rdntnxx0.ccsrm.in.
|
||||
IN NS rdnmhxx0.ccsrm.in.
|
||||
IN NS rdngjxx0.ccsrm.in.
|
||||
IN NS rdnapxx0.ccsrm.in.
|
||||
IN NS rdnkrxx0.ccsrm.in.
|
||||
IN NS rdnpbxx0.ccsrm.in.
|
||||
IN NS rdnuwxx0.ccsrm.in.
|
||||
IN NS rdnuexx0.ccsrm.in.
|
||||
IN NS rdnmpxx0.ccsrm.in.
|
||||
IN NS rdncdxx0.ccsrm.in.
|
||||
IN NS rdnhpxx0.ccsrm.in.
|
||||
IN NS rdnbhxx0.ccsrm.in.
|
||||
IN NS rdnosxx0.ccsrm.in.
|
||||
IN NS rdnasxx0.ccsrm.in.
|
||||
IN NS rdnnexx0.ccsrm.in.
|
||||
IN NS rdnjkxx0.ccsrm.in.
|
||||
84 IN PTR www.example.com.
|
||||
2 IN PTR joe.example.com.
|
||||
17 IN PTR bill.example.com.
|
||||
10 IN PTR hrwbdlxx1.ccsrm.in.
|
||||
11 IN PTR hrwbdlxx2.ccsrm.in.
|
||||
12 IN PTR hrdbdlxx1.ccsrm.in.
|
||||
13 IN PTR hrdbdlxx2.ccsrm.in.
|
||||
31 IN PTR hrsmdlxx1.ccsrm.in.
|
||||
32 IN PTR hrsmdlxx2.ccsrm.in.
|
||||
EOF
|
||||
|
||||
chmod 640 "$TEST_ZONE_CONF"
|
||||
chgrp named "$TEST_ZONE_CONF"
|
||||
|
||||
cat << EOF > "$RESOLV_CONF"
|
||||
nameserver 127.0.0.1
|
||||
EOF
|
||||
}
|
||||
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm "$PACKAGE"
|
||||
rlServiceStop "named"
|
||||
backup_files
|
||||
configure_named
|
||||
rlRun "ip address add ${TEST_IP}/${TEST_MASK} dev ${DEFAULT_IFACE}" 0 "Adding test ip."
|
||||
rlRun "service named start"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "nmap -O -T5 ${TEST_IP} > ${NMAP_OUTPUT_FILE}"
|
||||
rlRun "grep 'Nmap scan report for' ${NMAP_OUTPUT_FILE} | grep '${TEST_DOMAIN}'"
|
||||
rlRun "cat ${NMAP_OUTPUT_FILE}" 0 "Printing nmap output."
|
||||
|
||||
rlRun "nmap -O -T5 ${TEST_IP} --system-dns > ${NMAP_OUTPUT_FILE}"
|
||||
rlRun "grep 'Nmap scan report for' ${NMAP_OUTPUT_FILE} | grep '${TEST_DOMAIN}'"
|
||||
rlRun "cat ${NMAP_OUTPUT_FILE}" 0 "Printing nmap output."
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "service named stop"
|
||||
rlRun "ip address del ${TEST_IP}/${TEST_MASK} dev ${DEFAULT_IFACE}" 0 "Deleting test ip."
|
||||
rlFileRestore
|
||||
rlServiceRestore "named"
|
||||
rlRun "rm ${NMAP_OUTPUT_FILE} ${TEST_ZONE_CONF}" 0 "Removing tmp files and dirs."
|
||||
rlPhaseEnd
|
||||
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
summary: Test for BZ#1436402 (nc from nmap ncat crash if ipv6 disabled)
|
||||
description: |
|
||||
Bug summary: nc from nmap ncat crash if ipv6 disabled
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1436402
|
||||
contact: fhrdina@redhat.com
|
||||
component:
|
||||
- nmap
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- nmap
|
||||
- nmap-ncat
|
||||
duration: 10m
|
||||
enabled: true
|
||||
tag:
|
||||
- Tier3
|
||||
tier: '3'
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1436402
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: distro < rhel-6
|
||||
continue: false
|
||||
extra-nitrate: TC#0562516
|
||||
extra-summary: /CoreOS/nmap/Regression/bz1436402-nc-from-nmap-ncat-crash-if-ipv6-disabled
|
||||
extra-task: /CoreOS/nmap/Regression/bz1436402-nc-from-nmap-ncat-crash-if-ipv6-disabled
|
||||
id: 5cf9a102-4e9f-4e17-9b31-7ba0ccd832bb
|
||||
98
Regression/bz1436402-nc-from-nmap-ncat-crash-if-ipv6-disabled/runtest.sh
Executable file
98
Regression/bz1436402-nc-from-nmap-ncat-crash-if-ipv6-disabled/runtest.sh
Executable file
|
|
@ -0,0 +1,98 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /CoreOS/nmap/Regression/bz1436402-nc-from-nmap-ncat-crash-if-ipv6-disabled
|
||||
# Description: Test for BZ#1436402 (nc from nmap ncat crash if ipv6 disabled)
|
||||
# Author: Jaroslav Aster <jaster@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2017 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# 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, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
|
||||
PACKAGE="nmap"
|
||||
NCAT_LOG="ncat.log"
|
||||
|
||||
|
||||
set_boot_option()
|
||||
{
|
||||
grubby --update-kernel=ALL --args='ipv6.disable=1'
|
||||
if [ "$(rlGetPrimaryArch)" = "s390x" ]; then
|
||||
zipl
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
del_boot_option()
|
||||
{
|
||||
grubby --update-kernel=ALL --remove-args='ipv6.disable'
|
||||
if [ "$(rlGetPrimaryArch)" = "s390x" ]; then
|
||||
zipl
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
|
||||
rlJournalStart
|
||||
|
||||
if [ "$REBOOTCOUNT" -eq 0 ]; then
|
||||
rlPhaseStartSetup "Disabling ipv6 & rebooting"
|
||||
rlAssertRpm "$PACKAGE"
|
||||
set_boot_option
|
||||
rlLog "Rebooting"
|
||||
rhts-reboot
|
||||
rlPhaseEnd
|
||||
fi
|
||||
|
||||
if [ "$REBOOTCOUNT" -eq 1 ]; then
|
||||
rlPhaseStartSetup "Checking if ipv6 disabled & creating TmpDir"
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlRun "ip -6 addr | grep 'inet6'" 1 "Checking if IPv6 is disabled"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "ncat -6 localhost &> ${NCAT_LOG}" 0,1
|
||||
if rlIsRHEL '<8'; then
|
||||
rlAssertGrep 'Ncat: Invalid argument' ${NCAT_LOG}
|
||||
else
|
||||
rlAssertGrep 'Ncat: Address family not supported by protocol' ${NCAT_LOG}
|
||||
fi
|
||||
rlRun "grep 'Assertion .* failed.' ${NCAT_LOG}" 1
|
||||
rlRun "cat ${NCAT_LOG}"
|
||||
NCAT_LOG_OUTPUT=$(cat ${NCAT_LOG})
|
||||
rlLog "$NCAT_LOG_OUTPUT"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup "Cleaning up"
|
||||
del_boot_option
|
||||
rlLog "Rebooting"
|
||||
rhts-reboot
|
||||
rlPhaseEnd
|
||||
fi
|
||||
|
||||
rlPhaseStartCleanup "Cheking if ipv6 was enabled again"
|
||||
rlRun "ip -6 addr | grep 'inet6'" 0 "Checking if IPv6 is enabled again"
|
||||
rlPhaseEnd
|
||||
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
summary: Test for BZ#2160434 ([Regression] Cannot ssh through ProxyCommand+nc)
|
||||
description: |
|
||||
Bug summary: [Regression] Cannot ssh through ProxyCommand+nc
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=2160434
|
||||
enabled: true
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=2160434
|
||||
tag:
|
||||
- Tier1
|
||||
tier: '1'
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: distro < rhel-6
|
||||
continue: false
|
||||
contact: František Hrdina <fhrdina@redhat.com>
|
||||
component:
|
||||
- nmap
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- nmap
|
||||
- squid
|
||||
duration: 5m
|
||||
extra-nitrate: TC#0614737
|
||||
extra-summary: /CoreOS/nmap/Regression/bz2160434-Regression-Cannot-ssh-through-ProxyCommand-nc
|
||||
extra-task: /CoreOS/nmap/Regression/bz2160434-Regression-Cannot-ssh-through-ProxyCommand-nc
|
||||
id: c7eb297e-3876-4afd-8c45-41974f4fc88c
|
||||
|
|
@ -0,0 +1,67 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /CoreOS/nmap/Regression/bz2160434-Regression-Cannot-ssh-through-ProxyCommand-nc
|
||||
# Description: Test for BZ#2160434 ([Regression] Cannot ssh through ProxyCommand+nc)
|
||||
# Author: František Hrdina <fhrdina@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2023 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# 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, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="nmap"
|
||||
LOG="ssh.log"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlRun "dnf install -y squid"
|
||||
cat > /etc/squid/squid.conf << EOF
|
||||
http_access allow all
|
||||
http_port 3128
|
||||
EOF
|
||||
rlRun "systemctl start squid"
|
||||
sleep 10
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartSetup
|
||||
rlRun "ssh-keygen -a 1024 -t ed25519 -f /root/.ssh/id_ed25519_ncat-proxy-test -C ncat-proxy-test -N \"\"" 0 "Creating ssh keys"
|
||||
rlRun "chmod 600 /root/.ssh/id_ed25519_ncat-proxy-test*" 0
|
||||
rlRun "cat /root/.ssh/id_ed25519_ncat-proxy-test.pub >> /root/.ssh/authorized_keys" 0
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "ssh -o IdentitiesOnly=yes -i /root/.ssh/id_ed25519_ncat-proxy-test -o StrictHostKeyChecking=no -o ProxyCommand=\"nc --proxy localhost:3128 --proxy-type http %h %p\" root@localhost true &> $LOG" 0 "Trying to connect"
|
||||
rlAssertNotGrep "Connection closed" $LOG
|
||||
LOG_OUTPUT=$(cat ${LOG})
|
||||
rlLog "$LOG_OUTPUT"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "systemctl stop squid"
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
32
Regression/bz621045-nmap-help-vs-man-options-test/main.fmf
Normal file
32
Regression/bz621045-nmap-help-vs-man-options-test/main.fmf
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
summary: It takes options from manual pages and compares them with options from command
|
||||
lines's help (-h, --help).
|
||||
description: |
|
||||
Test Case Relevancy:
|
||||
distro = rhel-4, rhel-5: False
|
||||
contact: fhrdina@redhat.com
|
||||
component:
|
||||
- nmap
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- nmap
|
||||
- grep
|
||||
- sed
|
||||
- util-linux-ng
|
||||
duration: 5m
|
||||
enabled: true
|
||||
tag:
|
||||
- Tier1
|
||||
tier: '1'
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: distro < rhel-6
|
||||
continue: false
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=621045
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=743506
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1248053
|
||||
extra-nitrate: TC#0137792
|
||||
extra-summary: /CoreOS/nmap/Regression/bz621045-nmap-help-vs-man-options-test
|
||||
extra-task: /CoreOS/nmap/Regression/bz621045-nmap-help-vs-man-options-test
|
||||
id: b1232ca5-8e1b-4776-978b-cce933d54b7b
|
||||
88
Regression/bz621045-nmap-help-vs-man-options-test/runtest.sh
Executable file
88
Regression/bz621045-nmap-help-vs-man-options-test/runtest.sh
Executable file
|
|
@ -0,0 +1,88 @@
|
|||
#!/bin/bash
|
||||
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /CoreOS/nmap/Regression/bz621045-nmap-help-vs-man-options-test
|
||||
# Description: It takes options from manual pages and compares them with options from command lines's help (-h, --help).
|
||||
# Author: Ales Marecek <amarecek@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2011 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/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="nmap"
|
||||
WATCHED_OPTIONS='-sR -PR'
|
||||
|
||||
|
||||
get_options_from_man_page()
|
||||
{
|
||||
man nmap | col -bx | grep -- "^[ ]\+-[-]\?[0-9A-Za-z]\+" | sed 's/^\s\+\(--\?[0-9A-Za-z\/-]\+\)[ \[<:=;,.)*]\+.*$/\1/' | sed 's/^ \+//' | sort | uniq
|
||||
}
|
||||
|
||||
is_watched_option()
|
||||
{
|
||||
if echo "$WATCHED_OPTIONS" | grep -q -- "$1"; then
|
||||
return 0
|
||||
else
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
is_in_nmap_help()
|
||||
{
|
||||
if nmap -h | grep -q -- "$1" && nmap --help | grep -q -- "$1"; then
|
||||
return 0
|
||||
else
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm "$PACKAGE"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
for option in $(get_options_from_man_page); do
|
||||
# RHEL >=7 workaround
|
||||
# -sR option is an alias for -sV option in RHEL-7, so it is not present in nmap -h
|
||||
# -PR is not part of nmap -h
|
||||
if rlIsRHEL '>=7' || rlIsFedora; then
|
||||
if [ "$option" = "-sR" ] || [ "$option" = "-PR" ] ; then
|
||||
continue
|
||||
fi
|
||||
fi
|
||||
|
||||
if ! is_in_nmap_help "$option" && ! is_watched_option "$option"; then
|
||||
rlLogInfo "Option: '${option}' is missing in the list of -h/--help part, but it's wanted."
|
||||
else
|
||||
rlRun "nmap -h | grep -- \"${option}\" && nmap --help | grep -q -- \"${option}\"" 0 "Testing option: '${option}'."
|
||||
fi
|
||||
done
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlPhaseEnd
|
||||
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
summary: Reproducer for bugzilla 826601 issue
|
||||
description: |
|
||||
Test if the --output option that does duplicate output to a provided file work
|
||||
correctly in UDP mode.
|
||||
contact: fhrdina@redhat.com
|
||||
component:
|
||||
- nmap
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- nmap
|
||||
- iptables-services
|
||||
duration: 5m
|
||||
enabled: true
|
||||
tag:
|
||||
- Tier1
|
||||
tier: '1'
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=826601
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: distro < rhel-6
|
||||
continue: false
|
||||
extra-nitrate: TC#0269824
|
||||
extra-summary: /CoreOS/nmap/Regression/bz826601-ncat-does-not-write-to-output-file-with-UDP
|
||||
extra-task: /CoreOS/nmap/Regression/bz826601-ncat-does-not-write-to-output-file-with-UDP
|
||||
id: 813668ee-53de-45f4-8aa8-df649cfed2be
|
||||
67
Regression/bz826601-ncat-does-not-write-to-output-file-with-UDP/runtest.sh
Executable file
67
Regression/bz826601-ncat-does-not-write-to-output-file-with-UDP/runtest.sh
Executable file
|
|
@ -0,0 +1,67 @@
|
|||
#!/bin/bash
|
||||
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /CoreOS/nmap/Regression/bz826601-ncat-does-not-write-to-output-file-with-UDP
|
||||
# Description: Reproducer for bugzilla 826601 issue
|
||||
# Author: Hubert Kario <hkario@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2013 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 Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="nmap"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlRun "echo TEST > client.in" 0 "Create ncat input file"
|
||||
rlServiceStop iptables
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
# ncat doesn't tolerate /dev/null as input, provide it with blocking empty one
|
||||
ncat --udp --output ncatudp.log --wait 4s --listen 127.0.0.1 6666 < <(sleep 30) > ncat.out &
|
||||
server=$!
|
||||
rlRun "kill -s 0 $server" 0 "Start ncat server in background"
|
||||
(echo TEST; sleep 10) | ncat --udp --idle-timeout 5 127.0.0.1 6666 > client.out &
|
||||
client=$!
|
||||
rlRun "kill -s 0 $client" 0 "Start ncat client in background"
|
||||
ps aux | grep -E "\<$client\>|\<$server\>"
|
||||
rlLogInfo "Server running as PID $server, client running as PID $client"
|
||||
sleep 8 # idle timeout + some extra time
|
||||
rlRun "kill -s 9 $client" 1 "Client should be already dead"
|
||||
rlRun "kill -s 9 $server" 0 "Kill the server"
|
||||
cat ncatudp.log
|
||||
rlRun "grep TEST ncatudp.log" 0 "Test if sent message is in log file"
|
||||
rlRun "grep TEST ncat.out" 0 "Test if sent message is in out file"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlServiceRestore iptables
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
summary: Test for BZ#879275 (ncat does not call shutdown(2) on EOF)
|
||||
description: |
|
||||
Bug summary: ncat: does not call shutdown(2) on EOF
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=879275
|
||||
contact: fhrdina@redhat.com
|
||||
component:
|
||||
- nmap
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- nmap
|
||||
- nmap-ncat
|
||||
- expect
|
||||
duration: 15m
|
||||
enabled: true
|
||||
tag:
|
||||
- Tier3
|
||||
tier: '3'
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=879275
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: distro < rhel-7
|
||||
continue: false
|
||||
extra-nitrate: TC#0321449
|
||||
extra-summary: /CoreOS/nmap/Regression/bz879275-ncat-does-not-call-shutdown-2-on-EOF
|
||||
extra-task: /CoreOS/nmap/Regression/bz879275-ncat-does-not-call-shutdown-2-on-EOF
|
||||
id: 3f3c8f3d-6015-46d6-9394-65c27e2454ff
|
||||
187
Regression/bz879275-ncat-does-not-call-shutdown-2-on-EOF/runtest.sh
Executable file
187
Regression/bz879275-ncat-does-not-call-shutdown-2-on-EOF/runtest.sh
Executable file
|
|
@ -0,0 +1,187 @@
|
|||
#!/bin/bash
|
||||
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /CoreOS/nmap/Regression/bz879275-ncat-does-not-call-shutdown-2-on-EOF
|
||||
# Description: Test for BZ#879275 (ncat does not call shutdown(2) on EOF)
|
||||
# Author: David Spurek <dspurek@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2013 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 Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="nmap"
|
||||
|
||||
PACKAGES="$PACKAGE nmap-ncat expect"
|
||||
|
||||
function test_nc_server_side ()
|
||||
{
|
||||
expect <<EOF
|
||||
|
||||
set timeout 15
|
||||
|
||||
spawn nc -l 1234
|
||||
expect {
|
||||
-re {test_eof} { puts "matched test_eof" }
|
||||
timeout { exit 231 }
|
||||
eof { exit 221 }
|
||||
}
|
||||
expect {
|
||||
timeout { exit 232 }
|
||||
eof { puts "eof reached";exit 0 }
|
||||
}
|
||||
# unexpected end
|
||||
exit 1
|
||||
EOF
|
||||
}
|
||||
|
||||
function test_nc_send_eof_on_server ()
|
||||
{
|
||||
expect <<EOF
|
||||
|
||||
set timeout 15
|
||||
|
||||
# start nc with --send-only and --recv-only
|
||||
# nmap-ncat doesn't terminates without this if eof is send
|
||||
# to server side
|
||||
|
||||
# start listen on the port
|
||||
spawn nc -l 1234 --send-only
|
||||
set ID_SERVER \$spawn_id
|
||||
sleep 1
|
||||
# connect to the listening port
|
||||
spawn nc $machine_hostname 1234 --recv-only
|
||||
set ID_CLIENT \$spawn_id
|
||||
|
||||
# try send message on both sides
|
||||
puts "sending test_eof"
|
||||
send -i \$ID_SERVER "test_eof\r"
|
||||
|
||||
expect {
|
||||
-i \$ID_CLIENT
|
||||
-re {test_eof} { puts "\nmatched test_eof" }
|
||||
timeout { exit 231 }
|
||||
eof { exit 221 }
|
||||
}
|
||||
|
||||
# send eof on server side
|
||||
send -i \$ID_SERVER \x04
|
||||
# eof should terminate nc (eof reached)
|
||||
expect {
|
||||
-i \$ID_CLIENT
|
||||
timeout { exit 232 }
|
||||
eof { puts "eof reached";exit 0 }
|
||||
}
|
||||
# unexpected end
|
||||
exit 1
|
||||
EOF
|
||||
}
|
||||
|
||||
function test_nc_send_eof_both_sides ()
|
||||
{
|
||||
expect <<EOF
|
||||
|
||||
set timeout 15
|
||||
|
||||
# nmap-ncat doesn't terminates if eof is send
|
||||
# to server side, socket is closed for sending,
|
||||
# but it can still received
|
||||
# if client sends eof too, then server terminates
|
||||
|
||||
# start listen on the port
|
||||
spawn nc -l 1234
|
||||
set ID_SERVER \$spawn_id
|
||||
sleep 1
|
||||
# connect to the listening port
|
||||
spawn nc $machine_hostname 1234
|
||||
set ID_CLIENT \$spawn_id
|
||||
|
||||
# try send message on both sides
|
||||
puts "sending test_eof"
|
||||
send -i \$ID_SERVER "test_eof\r"
|
||||
|
||||
expect {
|
||||
-i \$ID_CLIENT
|
||||
-re {test_eof} { puts "\nmatched test_eof" }
|
||||
timeout { exit 231 }
|
||||
eof { exit 221 }
|
||||
}
|
||||
|
||||
# send eof on server side
|
||||
send -i \$ID_SERVER \x04
|
||||
|
||||
# send eof on client side
|
||||
send -i \$ID_CLIENT \x04
|
||||
|
||||
# eof on both sides should terminate nc (check on server side)
|
||||
expect {
|
||||
-i \$ID_SERVER
|
||||
timeout { exit 232 }
|
||||
eof { puts "eof reached";exit 0 }
|
||||
}
|
||||
# unexpected end
|
||||
exit 1
|
||||
EOF
|
||||
}
|
||||
|
||||
|
||||
machine_hostname=`hostname`
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
# Check reqiured packages.
|
||||
for P in ${PACKAGES[@]}; do rlCheckRpm $P || rlDie "Package $P is missing"; done
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest "Test send EOF on the connect side (client)"
|
||||
# start listen on the port and wait for eof
|
||||
# if eof is not accepted, then expect script timeouts
|
||||
rlLog "Start listening with nc on port 1234"
|
||||
test_nc_server_side > expect.out &
|
||||
# wait for a moment when nc binds and it is ready for listening
|
||||
sleep 3
|
||||
# connect to port where nc is listening and send message with EOF
|
||||
rlLog "Connect to listening nc on port 1234"
|
||||
cat <<'EOF' | nc $machine_hostname 1234
|
||||
test_eof
|
||||
EOF
|
||||
|
||||
# wait a moment on slower s390x machine
|
||||
[[ "`uname -i`" = "s390x" ]] && sleep 4
|
||||
cat expect.out
|
||||
rlAssertGrep "matched test_eof" expect.out
|
||||
rlAssertGrep "eof reached" expect.out
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest "Test send EOF on the listening side (server)"
|
||||
rlRun "test_nc_send_eof_on_server" 0
|
||||
rlRun "test_nc_send_eof_both_sides" 0
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
summary: 'Testing: netcat (nc) listener fails with "Bad file descriptor" after a connection
|
||||
is made'
|
||||
description: |
|
||||
Bug summary: netcat (nc) listener fails with "Bad file descriptor" after a connection is made
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1899824
|
||||
contact: František Hrdina <fhrdina@redhat.com>
|
||||
component:
|
||||
- nmap
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- nmap
|
||||
- grubby
|
||||
duration: 15m
|
||||
enabled: true
|
||||
tag:
|
||||
- Tier2
|
||||
tier: '2'
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1899824
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: distro ~< rhel-8.7
|
||||
continue: false
|
||||
extra-nitrate: TC#0613194
|
||||
extra-summary: /CoreOS/nmap/Regression/ncat-listener-fails-with-Bad-file-descriptor
|
||||
extra-task: /CoreOS/nmap/Regression/ncat-listener-fails-with-Bad-file-descriptor
|
||||
id: 0a26dc3f-9994-4b54-a3dd-f74f13c72d3c
|
||||
82
Regression/ncat-listener-fails-with-Bad-file-descriptor/runtest.sh
Executable file
82
Regression/ncat-listener-fails-with-Bad-file-descriptor/runtest.sh
Executable file
|
|
@ -0,0 +1,82 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /CoreOS/nmap/Regression/ncat-listener-fails-with-Bad-file-descriptor
|
||||
# Description: Testing: netcat (nc) listener fails with "Bad file descriptor" after a connection is made
|
||||
# Author: František Hrdina <fhrdina@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2022 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# 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, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="nmap"
|
||||
|
||||
rlJournalStart
|
||||
|
||||
if [ "$REBOOTCOUNT" -eq 0 ]; then
|
||||
rlPhaseStartSetup "Disabling ipv6 & rebooting"
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "grubby --update-kernel=ALL --args='ipv6.disable=1'" 0 "Disabling ipv6"
|
||||
if [ "$(rlGetPrimaryArch)" = "s390x" ]; then
|
||||
rlRun "zipl" 0 "Running zipl to update boot menu - s390 specific"
|
||||
fi
|
||||
rlLog "Rebooting"
|
||||
rhts-reboot
|
||||
rlPhaseEnd
|
||||
fi
|
||||
|
||||
if [ "$REBOOTCOUNT" -eq 1 ]; then
|
||||
rlPhaseStartSetup "Checking if ipv6 disabled & creating TmpDir"
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlRun "ip -6 addr | grep 'inet6'" 1 "Checking if IPv6 is disabled"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "nc -l 12345 -v &> server.log &" 0 "Server listening"
|
||||
SERVER_PID=$!
|
||||
sleep 5
|
||||
rlRun "nc localhost 12345 -v &> client.log &" 0 "Client sending"
|
||||
CLIENT_PID=$!
|
||||
sleep 5
|
||||
rlRun "grep 'close: Bad file descriptor' server.log" 1 "Testing if listener failed with Bad file descriptor"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup "Cleaning up"
|
||||
rlRun "kill -9 $SERVER_PID &> killing.log" 0-1 "Cleaning - Ensuring that server part is terminated"
|
||||
rlRun "kill -9 $CLIENT_PID &> killing.log" 0-1 "Cleaning - Ensuring that client part is terminated"
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlRun "grubby --update-kernel=ALL --remove-args='ipv6.disable'" 0 "Re-enabling ipv6 again"
|
||||
if [ "$(rlGetPrimaryArch)" = "s390x" ]; then
|
||||
rlRun "zipl" 0 "Running zipl to update boot menu - s390 specific"
|
||||
fi
|
||||
rlLog "Rebooting"
|
||||
rhts-reboot
|
||||
rlPhaseEnd
|
||||
fi
|
||||
|
||||
rlPhaseStartCleanup "Cheking if ipv6 was enabled again"
|
||||
rlRun "ip -6 addr | grep 'inet6'" 0 "Checking if IPv6 is enabled again"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
summary: Test for BZ#1957178 (ncat segfaults with -U (Use Unix domain sockets)
|
||||
description: |
|
||||
Bug summary: ncat segfaults with -U (Use Unix domain sockets only)
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1957178
|
||||
contact: František Hrdina <fhrdina@redhat.com>
|
||||
component:
|
||||
- nmap
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- nmap
|
||||
duration: 15m
|
||||
enabled: true
|
||||
tag:
|
||||
- Tier3
|
||||
tier: '3'
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1957178
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: distro < rhel-6
|
||||
continue: false
|
||||
extra-nitrate: TC#0610427
|
||||
extra-summary: /CoreOS/nmap/Regression/ncat-segfaults-with-U-Use-Unix-domain-sockets
|
||||
extra-task: /CoreOS/nmap/Regression/ncat-segfaults-with-U-Use-Unix-domain-sockets
|
||||
id: 02207f40-f821-49e6-bf7c-629906313ed8
|
||||
51
Regression/ncat-segfaults-with-U-Use-Unix-domain-sockets/runtest.sh
Executable file
51
Regression/ncat-segfaults-with-U-Use-Unix-domain-sockets/runtest.sh
Executable file
|
|
@ -0,0 +1,51 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /CoreOS/nmap/Regression/ncat-segfaults-with-U-Use-Unix-domain-sockets
|
||||
# Description: Test for BZ#1957178 (ncat segfaults with -U (Use Unix domain sockets)
|
||||
# Author: František Hrdina <fhrdina@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2021 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# 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, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="nmap"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
nc -l -U /tmp/foo.sock &
|
||||
sleep 2
|
||||
nc -U /tmp/foo.sock &
|
||||
sleep 5
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "grep \"kernel: nc\" /var/log/messages | grep \"segfault\"" 1 "Checking if Segmentation fault not occured"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "pkill nc" 0-1 "Killing nc proccesses used in test"
|
||||
rlRun "rm -f /tmp/foo.sock" 0 "Removing socket"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
25
Regression/wrong-connect-format/main.fmf
Normal file
25
Regression/wrong-connect-format/main.fmf
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
summary: Test for BZ#1591959 (Please include)
|
||||
description: |
|
||||
Bug summary: Please include https://github.com/nmap/nmap/commit/ec38cb0096648e916660958ac48c121e303debf1
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1591959
|
||||
contact: Robin Hack <rhack@redhat.com>
|
||||
component:
|
||||
- nmap
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- nmap
|
||||
- nmap-ncat
|
||||
duration: 20m
|
||||
enabled: true
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1591959
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=2120294
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: distro < rhel-7
|
||||
continue: false
|
||||
extra-nitrate: TC#0599550
|
||||
extra-summary: /CoreOS/nmap/Regression/wrong-connect-format
|
||||
extra-task: /CoreOS/nmap/Regression/wrong-connect-format
|
||||
id: 578e85ed-3559-41f7-ba00-e4831f352f04
|
||||
71
Regression/wrong-connect-format/runtest.sh
Executable file
71
Regression/wrong-connect-format/runtest.sh
Executable file
|
|
@ -0,0 +1,71 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /CoreOS/nmap/Regression/wrong-connect-format
|
||||
# Description: Test for BZ#1591959 (Please include)
|
||||
# Author: Robin Hack <rhack@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2019 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# 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, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="nmap"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "coproc ncat { ncat -l 8080; }"
|
||||
rlRun "ncat_listener_proc=\$!"
|
||||
|
||||
rlRun "ncat --proxy-type http --proxy localhost:8080 2611:1a:e10:: &"
|
||||
rlRun "ncat_proc=\$!"
|
||||
|
||||
read -ru ${ncat[0]} xx
|
||||
|
||||
x=$(echo -n $xx | tr -d "\n\r")
|
||||
#watch for newlines...
|
||||
echo -n "$x" | hexdump
|
||||
|
||||
if [[ "$x" == 'CONNECT [2611:1a:e10::]:31337] HTTP/1.0' ]]; then
|
||||
rlFail "WRONG: CONNECT [2611:1a:e10::]:31337] HTTP/1.0"
|
||||
elif [[ "$x" == 'CONNECT [2611:1a:e10::]:31337 HTTP/1.0' ]]; then
|
||||
rlPass "CONNECT [2611:1a:e10::]:31337 HTTP/1.0"
|
||||
else
|
||||
rlFail "SHOULD NEVER HAPPEN!"
|
||||
fi
|
||||
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
|
||||
kill ${ncat_listener_proc}
|
||||
kill ${ncat_proc}
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
27
Sanity/TLS-v1-3-support/main.fmf
Normal file
27
Sanity/TLS-v1-3-support/main.fmf
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
summary: Testing support of TLS v1.3
|
||||
description: |
|
||||
Bug summary: Rebase nmap for TLS v1.3 support
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=2180330
|
||||
enabled: true
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=2180330
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=2169766
|
||||
tag:
|
||||
- Tier1
|
||||
tier: '1'
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: distro < rhel-8
|
||||
continue: false
|
||||
contact: František Hrdina <fhrdina@redhat.com>
|
||||
component:
|
||||
- nmap
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- nmap
|
||||
duration: 5m
|
||||
extra-nitrate: TC#0615124
|
||||
extra-summary: /CoreOS/nmap/Sanity/TLS-v1-3-support
|
||||
extra-task: /CoreOS/nmap/Sanity/TLS-v1-3-support
|
||||
id: 4506d349-17b3-47c9-99d2-9a146640ddd6
|
||||
59
Sanity/TLS-v1-3-support/runtest.sh
Executable file
59
Sanity/TLS-v1-3-support/runtest.sh
Executable file
|
|
@ -0,0 +1,59 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /CoreOS/nmap/Sanity/TLS-v1-3-support
|
||||
# Description: Testing support of TLS v1.3
|
||||
# Author: František Hrdina <fhrdina@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2023 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# 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, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="nmap"
|
||||
PORT=49152
|
||||
NMAP_LOG="nmap.log"
|
||||
SERVER_LOG="server.log"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlRun "openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365 -nodes -subj \"/C=CZ/ST=CZ/L=Brno/O=Home/CN=test.com\""
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlLog "Running server"
|
||||
openssl s_server -key key.pem -cert cert.pem -accept $PORT -tls1_3 -4 -debug -WWW &> $SERVER_LOG &
|
||||
SERVER_PID=$!
|
||||
rlRun "nmap -p $PORT --script ssl-enum-ciphers 127.0.0.1 &> $NMAP_LOG"
|
||||
rlAssertGrep "$PORT/tcp open" $NMAP_LOG
|
||||
rlAssertGrep "TLSv1.3" $NMAP_LOG
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "kill $SERVER_PID" 0 "Killing server"
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
Loading…
Add table
Add a link
Reference in a new issue