From 4e5dfae237c623a8c79496b4c19b868fe67e2c5a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20=C5=A0abata?= Date: Thu, 15 Oct 2020 21:08:37 +0200 Subject: [PATCH] RHEL 9.0.0 Alpha bootstrap The content of this branch was automatically imported from Fedora ELN with the following as its source: https://src.fedoraproject.org/rpms/nmap#b0d2e8add17e7c21b40790e528522977b3a0b5ed --- .gitignore | 1 + ncat_reg_stdin.diff | 12 + nmap-4.03-mktemp.patch | 23 + nmap-4.52-noms.patch | 24 + nmap-6.25-displayerror.patch | 17 + nmap.spec | 719 +++++++++++++++++++++ sources | 1 + tests/ncat-protocol-sanity-test/Makefile | 64 ++ tests/ncat-protocol-sanity-test/PURPOSE | 5 + tests/ncat-protocol-sanity-test/clt.exp | 13 + tests/ncat-protocol-sanity-test/runtest.sh | 125 ++++ tests/ncat-protocol-sanity-test/srv.exp | 22 + tests/ncat-protocol-sanity-test/tcpclt.exp | 13 + tests/ncat-protocol-sanity-test/tcpsrv.exp | 22 + tests/ncat-protocol-sanity-test/udpclt.exp | 14 + tests/ncat-protocol-sanity-test/udpsrv.exp | 13 + tests/simple-functionality-test/Makefile | 63 ++ tests/simple-functionality-test/PURPOSE | 5 + tests/simple-functionality-test/runtest.sh | 67 ++ tests/tests.yml | 16 + zenmap-root.consoleapps | 4 + 21 files changed, 1243 insertions(+) create mode 100644 ncat_reg_stdin.diff create mode 100644 nmap-4.03-mktemp.patch create mode 100644 nmap-4.52-noms.patch create mode 100644 nmap-6.25-displayerror.patch create mode 100644 nmap.spec create mode 100644 sources create mode 100644 tests/ncat-protocol-sanity-test/Makefile create mode 100644 tests/ncat-protocol-sanity-test/PURPOSE create mode 100755 tests/ncat-protocol-sanity-test/clt.exp create mode 100755 tests/ncat-protocol-sanity-test/runtest.sh create mode 100755 tests/ncat-protocol-sanity-test/srv.exp create mode 100755 tests/ncat-protocol-sanity-test/tcpclt.exp create mode 100755 tests/ncat-protocol-sanity-test/tcpsrv.exp create mode 100755 tests/ncat-protocol-sanity-test/udpclt.exp create mode 100755 tests/ncat-protocol-sanity-test/udpsrv.exp create mode 100644 tests/simple-functionality-test/Makefile create mode 100644 tests/simple-functionality-test/PURPOSE create mode 100755 tests/simple-functionality-test/runtest.sh create mode 100644 tests/tests.yml create mode 100644 zenmap-root.consoleapps diff --git a/.gitignore b/.gitignore index e69de29..449f023 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/nmap-*.tar.bz2 diff --git a/ncat_reg_stdin.diff b/ncat_reg_stdin.diff new file mode 100644 index 0000000..e6034b2 --- /dev/null +++ b/ncat_reg_stdin.diff @@ -0,0 +1,12 @@ +diff -up nmap-6.01/ncat/ncat_main.c.noepoll nmap-6.01/ncat/ncat_main.c +--- nmap-6.01/ncat/ncat_main.c.noepoll 2013-01-04 12:50:18.670295473 +0100 ++++ nmap-6.01/ncat/ncat_main.c 2013-01-04 12:50:18.692295660 +0100 +@@ -280,6 +280,8 @@ int main(int argc, char *argv[]) + #ifdef WIN32 + windows_init(); + #endif ++ ++ nsock_set_default_engine("select"); + + while (1) { + /* handle command line arguments */ diff --git a/nmap-4.03-mktemp.patch b/nmap-4.03-mktemp.patch new file mode 100644 index 0000000..68baffe --- /dev/null +++ b/nmap-4.03-mktemp.patch @@ -0,0 +1,23 @@ +--- nmap-4.03/shtool.mktemp 2006-05-10 13:09:34.000000000 +0200 ++++ nmap-4.03/shtool 2006-05-10 13:13:58.000000000 +0200 +@@ -579,15 +579,11 @@ + else + tmpdir="/tmp" + fi +- tmpdir="$tmpdir/.shtool.$$" +- ( umask 077 +- rm -rf "$tmpdir" >/dev/null 2>&1 || true +- mkdir "$tmpdir" >/dev/null 2>&1 +- if [ $? -ne 0 ]; then +- echo "$msgprefix:Error: failed to create temporary directory \`$tmpdir'" 1>&2 +- exit 1 +- fi +- ) ++ tmpdir=`mktemp -p $tmpdir -d` ++ if [ $? -ne 0 ]; then ++ echo "$msgprefix:Error: failed to create temporary directory \`$tmpdir'" 1>&2 ++ exit 1 ++ fi + + # create (implicitly) secure temporary file + tmpfile="$tmpdir/shtool.tmp" diff --git a/nmap-4.52-noms.patch b/nmap-4.52-noms.patch new file mode 100644 index 0000000..2161715 --- /dev/null +++ b/nmap-4.52-noms.patch @@ -0,0 +1,24 @@ +diff -up nmap-4.90RC1/docs/nmap.1.noms nmap-4.90RC1/docs/nmap.1 +--- nmap-4.90RC1/docs/nmap.1.noms 2009-06-25 01:12:51.000000000 +0200 ++++ nmap-4.90RC1/docs/nmap.1 2009-07-16 09:58:22.090769947 +0200 +@@ -282,7 +282,7 @@ Nmap 4\&.90RC1 ( http://nmap\&.org ) + Usage: nmap [Scan Type(s)] [Options] {target specification} + TARGET SPECIFICATION: + Can pass hostnames, IP addresses, networks, etc\&. +- Ex: scanme\&.nmap\&.org, microsoft\&.com/24, 192\&.168\&.0\&.1; 10\&.0\&.0\-255\&.1\-254 ++ Ex: scanme\&.nmap\&.org, 192\&.168\&.0\&.1; 10\&.0\&.0\-255\&.1\-254 + \-iL : Input from list of hosts/networks + \-iR : Choose random targets + \-\-exclude : Exclude hosts/networks +diff -up nmap-4.90RC1/docs/nmap.usage.txt.noms nmap-4.90RC1/docs/nmap.usage.txt +--- nmap-4.90RC1/docs/nmap.usage.txt.noms 2009-06-25 01:12:51.000000000 +0200 ++++ nmap-4.90RC1/docs/nmap.usage.txt 2009-07-16 09:56:24.758078049 +0200 +@@ -2,7 +2,7 @@ Nmap 4.90RC1 ( http://nmap.org ) + Usage: nmap [Scan Type(s)] [Options] {target specification} + TARGET SPECIFICATION: + Can pass hostnames, IP addresses, networks, etc. +- Ex: scanme.nmap.org, microsoft.com/24, 192.168.0.1; 10.0.0-255.1-254 ++ Ex: scanme.nmap.org, 192.168.0.1; 10.0.0-255.1-254 + -iL : Input from list of hosts/networks + -iR : Choose random targets + --exclude : Exclude hosts/networks diff --git a/nmap-6.25-displayerror.patch b/nmap-6.25-displayerror.patch new file mode 100644 index 0000000..6b59845 --- /dev/null +++ b/nmap-6.25-displayerror.patch @@ -0,0 +1,17 @@ +diff -up nmap-6.25/zenmap/zenmapGUI/App.py.displayerror nmap-6.25/zenmap/zenmapGUI/App.py +--- nmap-6.25/zenmap/zenmapGUI/App.py.displayerror 2013-05-23 15:11:46.595569883 +0200 ++++ nmap-6.25/zenmap/zenmapGUI/App.py 2013-05-23 15:12:44.786049525 +0200 +@@ -116,7 +116,12 @@ except Exception: + # startup scripts, and for some reason the first connection (the one that + # caused the launch) is rejected. But somehow subsequent connections work + # fine! So if the import fails, try one more time. +- import gtk ++ try: ++ import gtk ++ except Exception, e: ++ print >> sys.stderr, 'Error:', str(e) ++ sys.exit(1) ++ + warnings.resetwarnings() + + from zenmapGUI.higwidgets.higdialogs import HIGAlertDialog diff --git a/nmap.spec b/nmap.spec new file mode 100644 index 0000000..e45457c --- /dev/null +++ b/nmap.spec @@ -0,0 +1,719 @@ +#Todo: stop using local copy of libdnet, once system distributed version +#supports sctp (grep sctp /usr/include/dnet.h) + +%global _hardened_build 1 + +Name: nmap +Epoch: 2 +Version: 7.91 +#global prerelease TEST5 +Release: 1%{?dist} +Summary: Network exploration tool and security scanner +URL: http://nmap.org/ +# Uses combination of licenses based on GPL license, but with extra modification +# so it got its own license tag rhbz#1055861 +License: Nmap + +Source0: http://nmap.org/dist/%{name}-%{version}%{?prerelease}.tar.bz2 + +#prevent possible race condition for shtool, rhbz#158996 +Patch1: nmap-4.03-mktemp.patch + +#don't suggest to scan microsoft +Patch2: nmap-4.52-noms.patch + +# upstream provided patch for rhbz#845005, not yet in upstream repository +Patch3: ncat_reg_stdin.diff +Patch4: nmap-6.25-displayerror.patch + +BuildRequires: automake +BuildRequires: autoconf +BuildRequires: gcc-c++ +BuildRequires: gettext-devel +BuildRequires: libpcap-devel +%if 0%{?fedora} +BuildRequires: libssh2-devel +%endif +BuildRequires: libtool +BuildRequires: lua-devel +BuildRequires: openssl-devel +BuildRequires: pcre-devel +BuildRequires: zlib-devel +Requires: %{name}-ncat = %{epoch}:%{version}-%{release} + +Obsoletes: nmap-frontend +Obsoletes: nmap-ndiff + +%define pixmap_srcdir zenmap/share/pixmaps + +%description +Nmap is a utility for network exploration or security auditing. It supports +ping scanning (determine which hosts are up), many port scanning techniques +(determine what services the hosts are offering), and TCP/IP fingerprinting +(remote host operating system identification). Nmap also offers flexible target +and port specification, decoy scanning, determination of TCP sequence +predictability characteristics, reverse-identd scanning, and more. In addition +to the classic command-line nmap executable, the Nmap suite includes a flexible +data transfer, redirection, and debugging tool (netcat utility ncat), a utility +for comparing scan results (ndiff), and a packet generation and response +analysis tool (nping). + +%package ncat +Summary: Nmap's Netcat replacement +Obsoletes: nc < 1.109.20120711-2 +Obsoletes: nc6 < 1.00-22 +Provides: nc nc6 + +%description ncat +Ncat is a feature packed networking utility which will read and +write data across a network from the command line. It uses both +TCP and UDP for communication and is designed to be a reliable +back-end tool to instantly provide network connectivity to other +applications and users. Ncat will not only work with IPv4 and IPv6 +but provides the user with a virtually limitless number of potential +uses. + + +%prep +%autosetup -p1 + +#be sure we're not using tarballed copies of some libraries +#rm -rf liblua libpcap libpcre macosx mswin32 ###TODO### + +rm -rf libpcap libpcre macosx mswin32 libssh2 libz + +%build +export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" +export CXXFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" +### TODO ## configure --with-libpcap=/usr ###TODO### +%configure --with-libpcap=yes --with-liblua=included \ + --without-zenmap --without-ndiff \ +%if 0%{?fedora} + --with-libssh2=yes \ +%else + --with-libssh2=no \ +%endif + --enable-dbus + +%make_build + +#fix man page (rhbz#813734) +sed -i 's/-md/-mf/' nping/docs/nping.1 + +%install +#prevent stripping - replace strip command with 'true' +make DESTDIR=%{buildroot} STRIP=true install + +#do not include certificate bundle (#734389) +rm -f %{buildroot}%{_datadir}/ncat/ca-bundle.crt +rmdir %{buildroot}%{_datadir}/ncat + +#we provide 'nc' replacement +ln -s ncat.1.gz %{buildroot}%{_mandir}/man1/nc.1.gz +ln -s ncat %{buildroot}%{_bindir}/nc + +%find_lang nmap --with-man + +%files -f nmap.lang +%license LICENSE +%doc docs/README +%doc docs/nmap.usage.txt +%{_bindir}/nmap +%{_bindir}/nping +%{_mandir}/man1/nmap.1.gz +%{_mandir}/man1/nping.1.gz +%{_datadir}/nmap + +%files ncat +%license LICENSE +%doc ncat/docs/AUTHORS ncat/docs/README ncat/docs/THANKS ncat/docs/examples +%{_bindir}/nc +%{_bindir}/ncat +%{_mandir}/man1/nc.1.gz +%{_mandir}/man1/ncat.1.gz + +%changelog +* Thu Aug 20 2020 Pavel Zhukov - 2:7.80-6 +- Drop libssh from eln + +* Tue Jul 28 2020 Fedora Release Engineering - 2:7.80-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue May 19 2020 Pavel Zhukov - 2:7.80-4 +- Do not assert on unsolicited ARP response (#1836989) + +* Wed Jan 29 2020 Fedora Release Engineering - 2:7.80-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Tue Aug 13 2019 Peter Robinson 2:7.80-2 +- Re-provide nc, clearly 7 years isn't enough + +* Mon Aug 12 2019 Peter Robinson 2:7.80-1 +- Update to 7.80 +- Drop features conditionals from old releases +- Use %%license, package cleanups + +* Thu Jul 25 2019 Fedora Release Engineering - 2:7.70-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu May 2 2019 Pavel Zhukov - 2:7.70-7 +- Fix double free when ssh connections fails + +* Tue Feb 5 2019 Pavel Zhukov - 2:7.70-6 +- Fix ipv6 literals parsing in proxy connection + +* Fri Feb 01 2019 Fedora Release Engineering - 2:7.70-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Mon Sep 10 2018 Pavel Zhukov - 2:7.70-4 +- Obsolete frontend packages in f29+ (#1626804) + +* Fri Jul 13 2018 Fedora Release Engineering - 2:7.70-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Thu Apr 19 2018 Pavel Zhukov - 2:7.70-2 +- Do not build zenmap and ndiff because of python2 deprecation + +* Wed Mar 21 2018 Pavel Zhukov - 2:7.70-1 +- New version 7.70 (#1558770) + +* Tue Feb 27 2018 Pavel Zhukov - 2:7.60-14 +- Add appdata file (#1476506) + +* Mon Feb 19 2018 Pavel Zhukov - 2:7.60-12 +- add gcc-c++ BR + +* Thu Feb 08 2018 Fedora Release Engineering - 2:7.60-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Mon Jan 22 2018 Pavel Zhukov - 2:7.60-10 +- Print source address in UDP mode + +* Thu Jan 18 2018 Igor Gnatenko - 2:7.60-9 +- Remove obsolete scriptlets + +* Mon Aug 21 2017 Pavel Zhukov - 2:7.60-8 +- Fix memory leaks on error + +* Thu Aug 3 2017 Pavel Zhukov - 2:7.60-7 +- Use upstream patch + +* Thu Aug 3 2017 Pavel Zhukov - 2:7.60-6 +- Fix library version for non-included libraries + +* Thu Aug 3 2017 Pavel Zhukov - 2:7.60-4 +- Keep nmap specific libssh and libz headers +- Drop unused libssh2 patch + +* Thu Aug 3 2017 Pavel Zhukov - 2:7.60-4 +- Delete bundled libssh2 +- Delete bundled zlib + +* Wed Aug 02 2017 Pavel Zhukov - 2:7.60-1 +- New release 7.60 (#1477387) + +* Wed Jul 26 2017 Fedora Release Engineering - 2:7.50-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Fri Jul 21 2017 Pavel Zhukov - 2:7.50-9 +- Don't ship ndiff in nmap package + +* Wed Jul 19 2017 Pavel Zhukov - 2:7.50-8 +- change ndiff arch to noarch +- Move nmap to Requires (was in BR) + +* Tue Jul 18 2017 Pavel Zhukov - 2:7.50-6 +- Add missed py[co] files + +* Tue Jul 18 2017 Pavel Zhukov - 2:7.50-5 +- Move ndiff to subpackage (#1471999) +- Specify python version + +* Fri Jun 30 2017 Pavel Zhukov - 2:7.50-3 +- Add provides for nc6 (#1348348) +- Fix rpmlint errors + +* Wed Jun 21 2017 Pavel Zhukov - 2:7.50-1 +- New release (7.50) + +* Fri Feb 10 2017 Fedora Release Engineering - 2:7.40-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Tue Jan 03 2017 Michal Hlavinka - 2:7.40-1 +- nmap updated to 7.40 + +* Mon Oct 24 2016 Michal Hlavinka - 2:7.31-1 +- nmap updated to 7.31 + +* Mon Oct 03 2016 Michal Hlavinka - 2:7.30-1 +- nmap updated to 7.30 + +* Tue Jul 19 2016 Fedora Release Engineering - 2:7.12-2 +- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages + +* Thu Mar 31 2016 Michal Hlavinka - 2:7.12-1 +- nmap updated to 7.12 + +* Wed Mar 23 2016 Michal Hlavinka - 2:7.11-1 +- nmap updated to 7.11 + +* Fri Mar 18 2016 Michal Hlavinka - 2:7.10-1 +- nmap updated to 7.10 + +* Thu Feb 04 2016 Fedora Release Engineering - 2:7.01-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Fri Dec 11 2015 Michal Hlavinka - 2:7.01-1 +- nmap updated to 7.01 + +* Tue Sep 01 2015 Michal Hlavinka - 2:6.47-5 +- fix FTBFS + +* Mon Aug 31 2015 Michal Hlavinka - 2:6.47-4 +- ncat should try to connect to all resolved addresses, not only the first one (#978964) + +* Wed Jun 17 2015 Fedora Release Engineering - 2:6.47-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Wed Dec 10 2014 Michal Hlavinka - 2:6.47-2 +- do not own icons/hicolor//apps directory (#1171813) + +* Mon Aug 25 2014 Michal Hlavinka - 2:6.47-1 +- nmap updated to 6.47 + +* Sun Aug 17 2014 Fedora Release Engineering - 2:6.46-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sat Jun 07 2014 Fedora Release Engineering - 2:6.46-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Tue Apr 22 2014 Michal Hlavinka - 2:6.46-1 +- nmap updated to 6.46 + +* Mon Apr 14 2014 Michal Hlavinka - 2:6.45-1 +- nmap updated to 6.45 + +* Wed Apr 09 2014 Michal Hlavinka - 2:6.40-6 +- fix unexpected crash when too much paralelism is used (#1057912) + +* Wed Apr 09 2014 Michal Hlavinka - 2:6.40-5 +- update license tag (#1055861) + +* Tue Mar 04 2014 Michal Hlavinka - 2:6.40-4 +- use _hardened_build + +* Thu Oct 17 2013 Michal Hlavinka - 2:6.40-3 +- ncat should support UNIX sockets correctly, drop wrapper with socat + +* Thu Aug 08 2013 Michal Hlavinka - 2:6.40-2 +- do not print debug messages during normal use (#994376) + +* Tue Jul 30 2013 Michal Hlavinka - 2:6.40-1 +- nmap updated to 6.40 + +* Mon Jul 22 2013 Michal Hlavinka - 2:6.25-7 +- bundled lua no longer required + +* Mon Jun 24 2013 Michal Hlavinka - 2:6.25-6.20130624svn +- use svn snapshot that contains all necessary UDP patches + +* Fri May 24 2013 Michal Hlavinka - 2:6.25-5 +- fix man page typo + +* Thu May 23 2013 Michal Hlavinka - 2:6.25-4 +- zenamp: fix icon symlink (#957381) + +* Thu May 23 2013 Michal Hlavinka - 2:6.25-3 +- zenmap: do not traceback when there si no display, just exit nicely (#958240) + +* Thu Mar 28 2013 Michal Hlavinka - 2:6.25-2 +- fix aarch64 support (#926241) + +* Fri Mar 08 2013 Michal Hlavinka - 2:6.25-1 +- nmap updated to 6.25 + +* Thu Feb 14 2013 Fedora Release Engineering - 2:6.01-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Fri Jan 04 2013 Michal Hlavinka - 2:6.01-10 +- use select as default nsock engine + +* Thu Nov 29 2012 Michal Hlavinka - 2:6.01-9 +- do not use strict aliasing + +* Thu Nov 29 2012 Michal Hlavinka - 2:6.01-8 +- call shutdown also in listen mode + +* Tue Oct 02 2012 Petr Šabata - 2:6.01-7 +- Move the socat dependency to the ncat subpackage (#858733) + +* Wed Sep 19 2012 Michal Hlavinka - 2:6.01-6 +- shutdown socket on EOF (#845075) + +* Mon Aug 13 2012 Michal Hlavinka - 2:6.01-5 +- ncat did not work when file was used as input (#845005) + +* Tue Jul 24 2012 Michal Hlavinka - 2:6.01-4 +- add nc wrapper with socat as a fallback for unix sockets + +* Fri Jul 20 2012 Fedora Release Engineering - 2:6.01-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Wed Jul 18 2012 Michal Hlavinka - 2:6.01-2 +- provide ncat in extra package as replacement for nc + +* Mon Jun 18 2012 Michal Hlavinka - 2:6.01-1 +- nmap updated to 6.01 + +* Tue Jun 05 2012 Michal Hlavinka - 2:6.00-2 +- prevent stripping binaries + +* Tue Jun 05 2012 Michal Hlavinka - 2:6.00-1 +- updated to 6.00 + +* Wed Mar 14 2012 Michal Hlavinka - 2:5.61-0.1.TEST5 +- updated to 5.61TEST5 + +* Fri Feb 10 2012 Petr Pisar - 2:5.51-5 +- Rebuild against PCRE 8.30 + +* Fri Feb 10 2012 Petr Pisar - 2:5.51-4 +- Rebuild against PCRE 8.30 + +* Fri Jan 13 2012 Fedora Release Engineering - 2:5.51-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Thu Dec 08 2011 Michal Hlavinka - 2:5.51-2 +- do not use bundled certificates, use only system ones (#734389) + +* Mon Feb 14 2011 Michal Hlavinka - 2:5.51-1 +- nmap updated to 5.51 + +* Tue Feb 08 2011 Fedora Release Engineering - 2:5.50-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Mon Feb 07 2011 Michal Hlavinka - 2:5.50-1 +- updated to 5.50 + +* Tue Oct 05 2010 Michal Hlavinka - 2:5.21-10 +- add workaround for zenmap crash (#637403) + +* Wed Sep 29 2010 jkeating - 2:5.21-9 +- Rebuilt for gcc bug 634757 + +* Fri Sep 17 2010 Michal Hlavinka - 2:5.21-8 +- fix location of ja man page (#632104) + +* Thu Aug 19 2010 Michal Hlavinka - 2:5.21-7 +- update icon cache only after gui install + +* Wed Aug 11 2010 Michal Hlavinka - 2:5.21-6 +- update icon cache after package install + +* Wed Jul 21 2010 David Malcolm - 2:5.21-5 +- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild + +* Mon Jun 21 2010 Michal Hlavinka - 2:5.21-4 +- build -frontend as noarch + +* Fri Jun 18 2010 Michal Hlavinka - 2:5.21-3 +- fix multilib issue + +* Fri Apr 30 2010 Ville Skyttä - 2:5.21-2 +- Mark localized man pages with %%lang. + +* Mon Feb 01 2010 Michal Hlavinka - 2:5.21-1 +- updated to 5.21 + +* Tue Jan 12 2010 Michal Hlavinka - 2:5.00-6 +- use sqlite3 (instead of sqlite2) + +* Tue Dec 01 2009 Michal Hlavinka - 2:5.00-5 +- spec cleanup + +* Mon Nov 02 2009 Michal Hlavinka - 2:5.00-4 +- spec cleanup + +* Fri Aug 21 2009 Tomas Mraz - 2:5.00-3 +- rebuilt with new openssl + +* Sat Jul 25 2009 Fedora Release Engineering - 2:5.00-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Fri Jul 17 2009 Michal Hlavinka - 2:5.0-1 +- updated to 5.0 + +* Wed Jul 15 2009 Michal Hlavinka - 2:4.90-0.RC1 +- updated to 4.90RC1 + +* Thu Jun 18 2009 Michal Hlavinka - 2:4.85-0.BETA10 +- updated to 4.85beta10 + +* Wed Feb 25 2009 Fedora Release Engineering - 2:4.76-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Sat Jan 17 2009 Tomas Mraz - 2:4.76-3 +- rebuild with new openssl + +* Mon Dec 15 2008 Michal Hlavinka - 2:4.77-2 +- bump release for rebuild + +* Mon Dec 15 2008 Michal Hlavinka - 2:4.76-1 +- new upstream version 4.76 +- use consolehelper for root auth + +* Sat Nov 29 2008 Ignacio Vazquez-Abrams - 2:4.68-4 +- Rebuild for Python 2.6 + +* Mon Aug 11 2008 Tom "spot" Callaway - 2:4.68-3 +- add missing BuildRequires to use system libs rather than local copies +- really fix license tag + +* Mon Aug 11 2008 Tom "spot" Callaway - 2:4.68-2 +- fix license tag + +* Thu Jul 24 2008 Tomas Smetana - 2:4.68-1 +- new upstream version + +* Mon May 12 2008 Tomas Smetana - 2:4.62-1 +- new upstream version + +* Mon Feb 04 2008 Tomas Smetana - 2:4.53-1 +- new upstream version + +* Mon Jan 07 2008 Tomas Smetana - 2:4.52-2 +- bump release because of build error + +* Mon Jan 07 2008 Tomas Smetana - 2:4.52-1 +- new upstream version + +* Wed Dec 05 2007 Tomas Smetana - 2:4.20-6.1 +- rebuild + +* Wed Aug 22 2007 Harald Hoyer - 2:4.20-6 +- changed license tag + +* Fri Mar 23 2007 Harald Hoyer - 2:4.20-5 +- fixed changelog versions + +* Thu Mar 15 2007 Karsten Hopp 2:4.20-4 +- rebuild with current gtk2 to add png support (#232013) + +* Tue Feb 27 2007 Harald Hoyer - 2:4.20-3 +- specfile cleanup +- fixed Florian La Roche's patch + +* Tue Jan 30 2007 Florian La Roche - 2:4.20-2 +- do not strip away debuginfo + +* Tue Jan 09 2007 Florian La Roche - 2:4.20-1 +- version 4.20 + +* Wed Jul 12 2006 Jesse Keating - 2:4.11-1.1 +- rebuild + +* Tue Jun 27 2006 Harald Hoyer - 2:4.11-1 +- version 4.11 + +* Wed May 17 2006 Harald Hoyer 4.03-2 +- added more build requirements (bug #191932) + +* Wed May 10 2006 Karsten Hopp 4.03-1 +- update to 4.03, this fixes #184286 +- remove duplicate menu entry in 'Internet' (#183056) +- fix possible tmpdir race condition during build (#158996) + +* Fri Feb 10 2006 Jesse Keating - 2:4.00-1.2 +- bump again for double-long bug on ppc(64) + +* Tue Feb 07 2006 Jesse Keating - 2:4.00-1.1 +- rebuilt for new gcc4.1 snapshot and glibc changes + +* Thu Feb 02 2006 Harald Hoyer - 2:4.00-1 +- version 4.00 + +* Mon Dec 19 2005 Harald Hoyer - 2:3.95-1 +- version 3.95 + +* Fri Dec 09 2005 Jesse Keating +- rebuilt + +* Fri Nov 11 2005 Harald Hoyer - 2:3.93-3 +- fixed wrong __attribute__ test + +* Thu Nov 10 2005 Tomas Mraz - 2:3.93-2 +- rebuilt against new openssl + +* Tue Sep 13 2005 Harald Hoyer - 2:3.93-1 +- version 3.93 + +* Wed Aug 03 2005 Harald Hoyer - 2:3.81-4 +- removed references how to scan microsoft.com (bz #164962) +- finally got rid of gtk+-devel dependency + +* Thu Apr 21 2005 Harald Hoyer - 2:3.81-3 +- removed gtk+ requirement + +* Thu Apr 21 2005 Harald Hoyer - 2:3.81-2 +- fixed desktop file and added icons (bug #149157) + +* Wed Mar 02 2005 Harald Hoyer - 2:3.81-1 +- version 3.81 + +* Wed Feb 02 2005 Harald Hoyer - 2:3.78-2 +- evil port of nmapfe to gtk2 + +* Fri Dec 17 2004 Harald Hoyer - 2:3.78-1 +- version 3.78 + +* Mon Sep 13 2004 Harald Hoyer - 2:3.70-1 +- version 3.70 + +* Tue Jul 13 2004 Harald Hoyer - 2:3.55-1 +- new version + +* Tue Jun 15 2004 Elliot Lee +- rebuilt + +* Fri Feb 13 2004 Elliot Lee +- rebuilt + +* Thu Jan 29 2004 Harald Hoyer - 2:3.50-2 +- added BuildRequires: openssl-devel, gtk+-devel, pcre-devel, libpcap + +* Thu Jan 22 2004 Harald Hoyer - 2:3.50-1 +- version 3.50 + +* Wed Oct 8 2003 Harald Hoyer 2:3.48-1 +- version 3.48 + +* Tue Sep 23 2003 Florian La Roche +- allow disabling frontend if gtk1 is not available + +* Wed Jul 30 2003 Harald Hoyer 2:3.30-1 +- version 3.30 + +* Wed Jun 04 2003 Elliot Lee +- rebuilt + +* Mon May 26 2003 Harald Hoyer 2:3.27-1 +- version 3.27 + +* Mon May 12 2003 Harald Hoyer 2:3.20-2 +- changed macro comments to double %% for changelog entries + +* Mon Apr 14 2003 Harald Hoyer 2:3.20-1 +- version 3.2 + +* Wed Jan 22 2003 Tim Powers +- rebuilt + +* Thu Jan 9 2003 Harald Hoyer 3.0-3 +- nmap-3.00-nowarn.patch added + +* Mon Nov 18 2002 Tim Powers +- rebuild on all arches +- remove old desktop file from $$RPM_BUILD_ROOT so rpm won't complain + +* Thu Aug 1 2002 Harald Hoyer +- version 3.0 + +* Mon Jul 29 2002 Harald Hoyer 2.99.2-1 +- bumped version + +* Fri Jul 26 2002 Harald Hoyer 2.99.1-2 +- bumped version to 2.99RC1 + +* Fri Jul 19 2002 Florian La Roche +- add an epoch + +* Mon Jul 1 2002 Harald Hoyer 2.54.36-1 +- removed desktop file +- removed "BETA" name from version +- update to BETA36 + +* Fri Jun 21 2002 Tim Powers +- automated rebuild + +* Sun May 26 2002 Tim Powers +- automated rebuild + +* Wed May 22 2002 Harald Hoyer 2.54BETA34-1 +- update to 2.54BETA34 + +* Mon Mar 25 2002 Harald Hoyer +- more recent version (#61490) + +* Mon Jul 23 2001 Harald Hoyer +- buildprereq for nmap-frontend (#49644) + +* Sun Jul 22 2001 Heikki Korpela +- buildrequire gtk+ + +* Tue Jul 10 2001 Tim Powers +- fix bugs in desktop file (#48341) + +* Wed May 16 2001 Tim Powers +- updated to 2.54BETA22 + +* Mon Nov 20 2000 Tim Powers +- rebuilt to fix bad dir perms + +* Fri Nov 3 2000 Tim Powers +- fixed nmapdatadir in the install section, forgot lto include + $RPM_BUILD_ROOT in the path + +* Thu Nov 2 2000 Tim Powers +- update to nmap-2.54BETA7 to possibly fix bug #20199 +- use the desktop file provided by the package instead of using my own +- patches in previous version are depreciated. Included in SRPM for + reference only + +* Mon Jul 24 2000 Prospector +- rebuilt + +* Mon Jul 10 2000 Tim Powers +- rebuilt + +* Wed Jun 28 2000 Tim Powers +- rebuilt package + +* Thu Jun 8 2000 Tim Powers +- fixed man pages so that they are in an FHS compliant location +- use %%makeinstall +- use predefined RPM macros wherever possible + +* Tue May 16 2000 Tim Powers +- updated to 2.53 +- using applnk now +- use %%configure, and %%{_prefix} where possible +- removed redundant defines at top of spec file + +* Mon Dec 13 1999 Tim Powers +- based on origional spec file from + http://www.insecure.org/nmap/index.html#download +- general cleanups, removed lots of commenrts since it madethe spec hard to + read +- changed group to Applications/System +- quiet setup +- no need to create dirs in the install section, "make + prefix=$RPM_BUILD_ROOT&{prefix} install" does this. +- using defined %%{prefix}, %%{version} etc. for easier/quicker maint. +- added docs +- gzip man pages +- strip after files have been installed into buildroot +- created separate package for the frontend so that Gtk+ isn't needed for the + CLI nmap +- not using -f in files section anymore, no need for it since there aren't that + many files/dirs +- added desktop entry for gnome + +* Sun Jan 10 1999 Fyodor +- Merged in spec file sent in by Ian Macdonald + +* Tue Dec 29 1998 Fyodor +- Made some changes, and merged in another .spec file sent in + by Oren Tirosh + +* Mon Dec 21 1998 Riku Meskanen +- initial build for RH 5.x diff --git a/sources b/sources new file mode 100644 index 0000000..aaf82d9 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (nmap-7.91.tar.bz2) = 9d59f031b5f748311e9f9a0b9d05ad4a7a70fc6ac17598d7c4c81a4825c95d53817d74435d839e67b9379a052f2d37889fd634f9c75301a851f465d60fb9974d diff --git a/tests/ncat-protocol-sanity-test/Makefile b/tests/ncat-protocol-sanity-test/Makefile new file mode 100644 index 0000000..d76d767 --- /dev/null +++ b/tests/ncat-protocol-sanity-test/Makefile @@ -0,0 +1,64 @@ +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Makefile of /CoreOS/nmap/Sanity/ncat-protocol-sanity-test +# Description: Test all supported protocols of ncat, like tcp, udp, ... +# Author: Patrik Kis +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Copyright (c) 2012 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. +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +export TEST=/CoreOS/nmap/Sanity/ncat-protocol-sanity-test +export TESTVERSION=1.0 + +BUILT_FILES= + +FILES=$(METADATA) runtest.sh Makefile PURPOSE srv.exp clt.exp udpsrv.exp udpclt.exp tcpclt.exp tcpsrv.exp + +.PHONY: all install download clean + +run: $(FILES) build + ./runtest.sh + +build: $(BUILT_FILES) + test -x runtest.sh || chmod a+x runtest.sh + +clean: + rm -f *~ $(BUILT_FILES) + + +include /usr/share/rhts/lib/rhts-make.include + +$(METADATA): Makefile + @echo "Owner: Patrik Kis " > $(METADATA) + @echo "Name: $(TEST)" >> $(METADATA) + @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) + @echo "Path: $(TEST_DIR)" >> $(METADATA) + @echo "Description: Test all supported protocols of ncat, like tcp, udp, ..." >> $(METADATA) + @echo "Type: Sanity" >> $(METADATA) + @echo "TestTime: 5m" >> $(METADATA) + @echo "RunFor: nmap" >> $(METADATA) + @echo "Requires: nmap tcpdump expect" >> $(METADATA) + @echo "Releases: -RHEL4 -RedHatEnterpriseLinuxClient5 -RedHatEnterpriseLinuxServer5" >> $(METADATA) + @echo "Priority: Normal" >> $(METADATA) + @echo "License: GPLv2" >> $(METADATA) + @echo "Confidential: no" >> $(METADATA) + @echo "Destructive: no" >> $(METADATA) + + rhts-lint $(METADATA) diff --git a/tests/ncat-protocol-sanity-test/PURPOSE b/tests/ncat-protocol-sanity-test/PURPOSE new file mode 100644 index 0000000..a13aea3 --- /dev/null +++ b/tests/ncat-protocol-sanity-test/PURPOSE @@ -0,0 +1,5 @@ +PURPOSE of /CoreOS/nmap/Sanity/ncat-protocol-sanity-test +Description: Test all supported protocols of ncat, like tcp, udp, ... +Author: Patrik Kis + +sanity test for nmap listening on TCP, SCTP, UDP diff --git a/tests/ncat-protocol-sanity-test/clt.exp b/tests/ncat-protocol-sanity-test/clt.exp new file mode 100755 index 0000000..d85714c --- /dev/null +++ b/tests/ncat-protocol-sanity-test/clt.exp @@ -0,0 +1,13 @@ +#!/usr/bin/expect + +set timeout 10 + +spawn ncat -4 --sctp localhost 6666 + +expect { + eof { exit 2 } + default { exit 1 } + "ServerSend\r" { sleep 1; send -- "ClientSend\r" } +} +sleep 1 +exit 0 diff --git a/tests/ncat-protocol-sanity-test/runtest.sh b/tests/ncat-protocol-sanity-test/runtest.sh new file mode 100755 index 0000000..3489bbb --- /dev/null +++ b/tests/ncat-protocol-sanity-test/runtest.sh @@ -0,0 +1,125 @@ +#!/bin/bash +# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# runtest.sh of /CoreOS/nmap/Sanity/ncat-protocol-sanity-test +# Description: Test all supported protocols of ncat, like tcp, udp, ... +# Author: Patrik Kis +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Copyright (c) 2012 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/bin/rhts-environment.sh +. /usr/share/beakerlib/beakerlib.sh + +PACKAGE="nmap" + +rlJournalStart + rlPhaseStartSetup + rlAssertRpm $PACKAGE + rlRun "modprobe sctp" + rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory" + rlIsRHEL 4 5 && rlRun "chcon -t tmpfs_t $TmpDir" 0 \ + "Changing SELinux context to allow nmap to write to $TmpDir" + rlRun "cp *exp $TmpDir" 0 "Copying expect scripts to working directory" + rlRun "pushd $TmpDir" + rlPhaseEnd + + rlPhaseStartTest "ncat acts as tcp server (Listen mode)" + rlRun "tcpdump -pnnli lo port 6666 > tcpdump-tcp.out &" 0 "Run tcpdump" + TCPDUMPPID=$!; echo TCPDUMPPID=$TCPDUMPPID + sleep 2 + rlRun "./tcpsrv.exp > ncat-server-tcp.out &" + NCATPID=$!; echo NCATPID=$NCATPID + rlRun "rlWaitForSocket -p $NCATPID 6666 -d 0.5" + rlRun "./tcpclt.exp > ncat-client-tcp.out" + sleep 3 + rlRun "kill -9 $NCATPID" 0,1 "Making sure the ncat is dead" + rlRun "kill -9 $TCPDUMPPID" 0,1 "Making sure the tcpdump is dead" + sleep 1 + cat tcpdump-tcp.out + rlAssertGrep "127.0.0.1.6666.*\[S" tcpdump-tcp.out + rlAssertGrep "127.0.0.1.6666.*\[P" tcpdump-tcp.out + rlAssertGrep "127.0.0.1.6666.*\[F" tcpdump-tcp.out + rlAssertEquals "Vefify that there were two PUSH packet sent" \ + 2 `grep "127.0.0.1.6666.*\[P" tcpdump-tcp.out |wc -l` + cat ncat-server-tcp.out + rlAssertGrep "ClientSend" ncat-server-tcp.out + cat ncat-client-tcp.out + rlAssertGrep "ServerSend" ncat-client-tcp.out + rlPhaseEnd + + rlPhaseStartTest "ncat acts as SCTP server (Listen mode)" + # SCTP does not support half-open connection so it has to be tested with expect + # otherwise the parties initiate connection close immediately after all input read + rlRun "tcpdump -pnnli lo port 6666 > tcpdump-sctp.out &" 0 "Run tcpdump" + TCPDUMPPID=$!; echo TCPDUMPPID=$TCPDUMPPID + sleep 2 + rlRun "./srv.exp > ncat-server-sctp.out &" + NCATPID=$!; echo NCATPID=$NCATPID + rlRun "rlWaitForSocket -p $NCATPID 6666 -d 0.5" + rlRun "./clt.exp > ncat-client-sctp.out" + sleep 3 + rlRun "kill -9 $NCATPID" 0,1 "Making sure the ncat is dead" + rlRun "kill -9 $TCPDUMPPID" 0,1 "Making sure the tcpdump is dead" + sleep 1 + cat tcpdump-sctp.out + rlAssertGrep "127.0.0.1.6666.*sctp.*\[INIT" tcpdump-sctp.out + rlAssertGrep "127.0.0.1.6666.*sctp.*\[COOKIE" tcpdump-sctp.out + rlAssertGrep "127.0.0.1.6666.*sctp.*\[SHUTDOWN" tcpdump-sctp.out + rlAssertEquals "Vefify that there were two DATA sctp packet sent" \ + 2 `grep "127.0.0.1.6666.*sctp.*\[DATA\]" tcpdump-sctp.out |wc -l` + cat ncat-server-sctp.out + rlAssertGrep "ClientSend" ncat-server-sctp.out + cat ncat-client-sctp.out + rlAssertGrep "ServerSend" ncat-client-sctp.out + rlPhaseEnd + + rlPhaseStartTest "ncat acts as UDP server (Listen mode)" + rlRun "tcpdump -pnnli lo port 6666 > tcpdump-udp.out &" 0 "Run tcpdump" + TCPDUMPPID=$!; echo TCPDUMPPID=$TCPDUMPPID + sleep 2 + rlRun "./udpsrv.exp >ncat-server-udp.out &" + NCATPID=$!; echo NCATPID=$NCATPID + sleep 2 + rlRun "./udpclt.exp >ncat-client-udp.out &" + NCATCLNTPID=$!; echo NCATPID=$NCATCLNTPID + sleep 2 + rlRun "kill -9 $NCATPID $NCATCLNTPID" 0,1 "Making sure the ncat is dead" + rlRun "kill -9 $TCPDUMPPID" 0,1 "Making sure the tcpdump is dead" + sleep 2 + cat tcpdump-udp.out + rlAssertGrep "127.0.0.1.*>.*127.0.0.1.6666.*UDP" tcpdump-udp.out + rlAssertGrep "127.0.0.1.6666.*>.*127.0.0.1..*UDP" tcpdump-udp.out + rlAssertEquals "Vefify that there were two UDP packet sent" \ + 2 `wc -l tcpdump-udp.out` + cat ncat-server-udp.out + rlAssertGrep "ClientSend" ncat-server-udp.out + cat ncat-client-udp.out + rlAssertGrep "ServerSend" ncat-client-udp.out + rlPhaseEnd + + rlPhaseStartCleanup + rlRun "popd" + rlRun "rm -r $TmpDir" 0 "Removing tmp directory" + rlPhaseEnd +rlJournalPrintText +rlJournalEnd diff --git a/tests/ncat-protocol-sanity-test/srv.exp b/tests/ncat-protocol-sanity-test/srv.exp new file mode 100755 index 0000000..086ed36 --- /dev/null +++ b/tests/ncat-protocol-sanity-test/srv.exp @@ -0,0 +1,22 @@ +#!/usr/bin/expect + +set timeout 10 + +spawn ncat -vl --sctp 6666 + +expect { + eof { exit 2 } + default { exit 1 } + "Ncat: Connection from 127.0.0.1" { sleep 1; send -- "ServerSend\r" } +} +expect { + eof { exit 2 } + default { exit 1 } + "ClientSend\r" +} +expect { + eof { exit 0 } + default { exit 1 } +} +exit 3 + diff --git a/tests/ncat-protocol-sanity-test/tcpclt.exp b/tests/ncat-protocol-sanity-test/tcpclt.exp new file mode 100755 index 0000000..3396eac --- /dev/null +++ b/tests/ncat-protocol-sanity-test/tcpclt.exp @@ -0,0 +1,13 @@ +#!/usr/bin/expect + +set timeout 10 + +spawn ncat -4 localhost 6666 + +expect { + eof { exit 2 } + default { exit 1 } + "ServerSend\r" { sleep 1; send -- "ClientSend\r" } +} +sleep 1 +exit 0 diff --git a/tests/ncat-protocol-sanity-test/tcpsrv.exp b/tests/ncat-protocol-sanity-test/tcpsrv.exp new file mode 100755 index 0000000..ac1c803 --- /dev/null +++ b/tests/ncat-protocol-sanity-test/tcpsrv.exp @@ -0,0 +1,22 @@ +#!/usr/bin/expect + +set timeout 10 + +spawn ncat -vl 6666 + +expect { + eof { exit 2 } + default { exit 1 } + "Ncat: Connection from 127.0.0.1" { sleep 1; send -- "ServerSend\r" } +} +expect { + eof { exit 2 } + default { exit 1 } + "ClientSend\r" +} +expect { + eof { exit 0 } + default { exit 1 } +} +exit 3 + diff --git a/tests/ncat-protocol-sanity-test/udpclt.exp b/tests/ncat-protocol-sanity-test/udpclt.exp new file mode 100755 index 0000000..dbbb0ef --- /dev/null +++ b/tests/ncat-protocol-sanity-test/udpclt.exp @@ -0,0 +1,14 @@ +#!/usr/bin/expect + +set timeout 10 + +spawn ncat -4 --udp localhost 6666 + +send -- "ClientSend\r" +expect { + eof { exit 2 } + default { exit 1 } + "ServerSend\r" +} +sleep 1 +exit 0 diff --git a/tests/ncat-protocol-sanity-test/udpsrv.exp b/tests/ncat-protocol-sanity-test/udpsrv.exp new file mode 100755 index 0000000..3aa72fe --- /dev/null +++ b/tests/ncat-protocol-sanity-test/udpsrv.exp @@ -0,0 +1,13 @@ +#!/usr/bin/expect + +set timeout 10 + +spawn ncat -vl --udp 6666 + +expect { + eof { exit 2 } + default { exit 1 } + "ClientSend\r" { send -- "ServerSend\r" } +} +sleep 1 +exit 0 diff --git a/tests/simple-functionality-test/Makefile b/tests/simple-functionality-test/Makefile new file mode 100644 index 0000000..4bb6cdc --- /dev/null +++ b/tests/simple-functionality-test/Makefile @@ -0,0 +1,63 @@ +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Makefile of /CoreOS/nmap/Sanity/simple-functionality-test +# Description: Simple functionality test, local port scanning. +# Author: Karel Srot +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Copyright (c) 2010 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. +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +export TEST=/CoreOS/nmap/Sanity/simple-functionality-test +export TESTVERSION=1.0 + +BUILT_FILES= + +FILES=$(METADATA) runtest.sh Makefile PURPOSE + +.PHONY: all install download clean + +run: $(FILES) build + ./runtest.sh + +build: $(BUILT_FILES) + chmod a+x runtest.sh + +clean: + rm -f *~ $(BUILT_FILES) + + +include /usr/share/rhts/lib/rhts-make.include + +$(METADATA): Makefile + @echo "Owner: Karel Srot " > $(METADATA) + @echo "Name: $(TEST)" >> $(METADATA) + @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) + @echo "Path: $(TEST_DIR)" >> $(METADATA) + @echo "Description: Simple functionality test, local port scanning." >> $(METADATA) + @echo "Type: Sanity" >> $(METADATA) + @echo "TestTime: 5m" >> $(METADATA) + @echo "RunFor: nmap" >> $(METADATA) + @echo "Requires: nmap lsof" >> $(METADATA) + @echo "Priority: Normal" >> $(METADATA) + @echo "License: GPLv2" >> $(METADATA) + @echo "Confidential: no" >> $(METADATA) + @echo "Destructive: no" >> $(METADATA) + + rhts-lint $(METADATA) diff --git a/tests/simple-functionality-test/PURPOSE b/tests/simple-functionality-test/PURPOSE new file mode 100644 index 0000000..46834fa --- /dev/null +++ b/tests/simple-functionality-test/PURPOSE @@ -0,0 +1,5 @@ +PURPOSE of /CoreOS/nmap/Sanity/simple-functionality-test +Description: Simple functionality test, local port scanning. +Author: Karel Srot + +sanity testing local port scanning diff --git a/tests/simple-functionality-test/runtest.sh b/tests/simple-functionality-test/runtest.sh new file mode 100755 index 0000000..15ea773 --- /dev/null +++ b/tests/simple-functionality-test/runtest.sh @@ -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/Sanity/simple-functionality-test +# Description: Simple functionality test, local port scanning. +# Author: Karel Srot +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Copyright (c) 2010 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/bin/rhts-environment.sh +. /usr/share/beakerlib/beakerlib.sh + +PACKAGE="nmap" + +rlJournalStart + rlPhaseStartSetup + rlAssertRpm $PACKAGE + rlRun "TmpDir=\`mktemp -d\`" 0 "Creating tmp directory" + rlIsRHEL 4 5 && rlRun "chcon -t tmpfs_t $TmpDir" 0 "Changing SELinux context to allow nmap to write to $TmpDir" + rlRun "pushd $TmpDir" + rlPhaseEnd + + rlPhaseStartTest + rlRun "nmap localhost -p- 2>&1 > myscan.nmap" 0 "Perform nmap scan" + rlAssertExists "myscan.nmap" + rlRun "lsof -i4 -P | grep '(LISTEN)' > lsof.out" 0 "Checking open ports with lsof -i4" + if grep -q ':22 (LISTEN)' lsof.out; then + rlRun "egrep '22/tcp\\W+open\\W+ssh' myscan.nmap" 0 "Checking if ssh has been found" + fi + if grep -q ':25 (LISTEN)' lsof.out; then + rlRun "egrep '25/tcp\\W+open\\W+smtp' myscan.nmap" 0 "Checking if smtp daemon has been found" + fi + if grep -q ':631 (LISTEN)' lsof.out; then + rlRun "egrep '631/tcp\\W+open\\W+ipp' myscan.nmap" 0 "Checking if cups/ipp has been found" + fi + + if grep -q ':111 (LISTEN)' lsof.out; then + rlRun "egrep '111/tcp\\W+open\\W+rpcbind' myscan.nmap" 0 "Checking if portmap/rpcbind has been found" + fi + rlPhaseEnd + + rlPhaseStartCleanup + rlRun "popd" + rlRun "rm -r $TmpDir" 0 "Removing tmp directory" + rlPhaseEnd +rlJournalPrintText +rlJournalEnd diff --git a/tests/tests.yml b/tests/tests.yml new file mode 100644 index 0000000..9f67887 --- /dev/null +++ b/tests/tests.yml @@ -0,0 +1,16 @@ +--- +# Tests that run in all contexts +- hosts: localhost + roles: + - role: standard-test-beakerlib + tags: + - classic + tests: + - ncat-protocol-sanity-test + - simple-functionality-test + required_packages: + - kernel-modules # Required to run ncat-protocol-sanity-test + - nmap # Required to run simple-functionality-test + - lsof # Required to run simple-functionality-test + - tcpdump # Required to run ncat-protocol-sanity-test + - expect # Required to run ncat-protocol-sanity-test diff --git a/zenmap-root.consoleapps b/zenmap-root.consoleapps new file mode 100644 index 0000000..7fa8b7d --- /dev/null +++ b/zenmap-root.consoleapps @@ -0,0 +1,4 @@ +USER=root +PROGRAM=/usr/bin/zenmap +SESSION=true +FALLBACK=true