pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/net/tcpflow



Module Name:    pkgsrc
Committed By:   jperkin
Date:           Tue Jul  4 13:50:42 UTC 2017

Modified Files:
        pkgsrc/net/tcpflow: Makefile distinfo
Added Files:
        pkgsrc/net/tcpflow: options.mk
        pkgsrc/net/tcpflow/patches: patch-configure patch-src_tcpip.cpp
            patch-tests_test-multifile.sh
Removed Files:
        pkgsrc/net/tcpflow/patches: patch-aa patch-ab patch-ac patch-ad
            patch-ae

Log Message:
Update net/tcpflow to 1.4.5.

This package was last updated in 2004, since then it has changed maintainers
and looks quite different.  An incomplete changelog is as follows:

Version 1.3.1 NOV ??

        Complete rewrite of the TCP state machine, now handles flows larger
        than 4GiB.

Version 1.3.0 SEP 30 2012

        Release for end of FY2012, includes bug fixes, better support for
        autoconf, DFXML standardizations, and the ability to compile under
        mingw for Windows (that was a LOT of work).

Version 1.2.7 May 24 2012 (GIT)

        Version 1.2.7 offers two significant features over previous versions
        relating to the processing of the -r and the new -R options.

          -r file1.pcap - This option specifies a pcap file to be read.
                          New with version 1.2.7, the -r flag may be
                          repeated any number of times.

          -R file0.pcap - This option, new with version 1.2.7, allows a file
                          to be specified that was captured in time *before*
                          the file specified with -r. This option allows TCP
                          sessions that started in file0.pcap and which
                          continued into file1.pcap to be properly
                          started. This option is useful when some external
                          process makes packet capture files at regular
                          intervals and then the files are reassembled
                          later. Typically these files result from tcpdump run
                          with the -w or -C options.

Version 1.2 March 15 2012 (SVN )

        Version 1.2 is the first to include post-processing of TCP connections
        integrated directly into the tcpflow program itself. post-processing
        is optional and is performed on a per-connection basis when the
        connection is closed.

        The following post-processing method methods are currently defined.

         -FM - Compute the MD5 hash value of every stream on close. Currently
               MD5 hashes are only computed for TCP streams that contain
               packets transmitted contigiously. -FM processing can happen
               even when output is suppressed. The MD5 is written into the
               DFXML file.

         -AH - Detect Email/HTTP responses and separate headers from
               body. This requires that the output files be captured.

               If the output file is
                  208.111.153.175.00080-192.168.001.064.37314,

               Then the post-processing will create the files:
                  208.111.153.175.00080-192.168.001.064.37314-HTTP
                  208.111.153.175.00080-192.168.001.064.37314-HTTPBODY

               If the HTTPBODY was compressed with GZIP, you may get a
               third file as well:

                  208.111.153.175.00080-192.168.001.064.37314-HTTPBODY-GZIP

               Additional information about these streams, such as their MD5
               hash value, is also written to the DFXML file

Version 1.1.0 19 January 2012 (SVN 8118)

        Version 1.1 represents a significant rewrite of tcpflow. All users are
        encouraged to upgrade.

        Significant changes include:

        * Entire code base migrated to C++ ; code generally
          improved. tcpflow's original hash table has been replaced with a
          tr1::unordered_map which should offer significantly more
          scalability.

        * tcpflow now automatically expires out old connections. This finally
          end the program's memory-hogging problem. (You can disable this
          behavior with -P, which makes tcpflow run faster because it never
          cleans up after itself. That's fine if you are working with less
          than a million connections.)

        * Multiple connections with the same (source/destination) are now
          detected and stored in different files. This is significant, as the
          previous implementation would make a single file 1-2GB in length if
          you the same host/port pairs with two different flows. Additional
          files have the same filename and a "c0001", "c0002" appended.

        * Filenames may now be prefixed with either the ISO8601 time or a Unix
          timestamp  indicating the time that the connection was first seen.

        * tcpflow will now save a DFXML file containing information for each
          flow that it reconstructs.

        * The following new options are now implemented:

          -o outdir --- now works (previously was not implemented)
          -X xmfile --- now reports execution results in a DFXML
                        file. (Version 1.1 will include complete notion in the
                        XML file of every TCP connection as a DFXML <fileobject>
          -Fc       --- Every file has the 'cXXXX' postfix, rather than just
                        the files with duplicate source/destination.
          -Ft       --- Every file has the <time_t>T prefix.
          -FT       --- Every file has an ISO8601 time prefix,
                        e.g. 2012-01-01T09:45:15Z
          -mNNNN    --- Specifies the minimum number of bytes that need to be
                        skipped in a TCP connection before a new
          -Lname    --- use the named semaphore 'name' to prevent multiple
                        tcpflow processes printing to standard output from
                        overprinting each other.
          -P        --- do not prune the tcp connection table.

        Other improvements include:

        * Support for IPv6

        * Support for VLANs

        * The default filter which was causing problems under MacOS has been
          removed.

Version 1.0.4 November 24, 2011
        * Default fitler changed to ""; previous default filter was causing
          problems on macs.

Version 1.0.2 September 30, 2011
        * IPv6 code added

Version 1.0.0 January 2011
        * Updated to support VLANs. VLAN packets are marked by hex 0x8100
          following the destination and source mac addresses, followed by the
          16-bit VLAN address, followed by 0x0800 marking the beginning of the
          traditional IP header.

Version 0.30 October 2007
        * Simson Garfinkel <simsong%acm.org@localhost> is now the maintainer of this
          package
        * Modified to set the time of each tcpflow with the time of the first
          packet.
        * Created a regression test, so "make check" and "make distcheck" now
          work.
        * Updated to modern autoconf tools.


To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.12 pkgsrc/net/tcpflow/Makefile
cvs rdiff -u -r1.7 -r1.8 pkgsrc/net/tcpflow/distinfo
cvs rdiff -u -r0 -r1.1 pkgsrc/net/tcpflow/options.mk
cvs rdiff -u -r1.3 -r0 pkgsrc/net/tcpflow/patches/patch-aa
cvs rdiff -u -r1.1 -r0 pkgsrc/net/tcpflow/patches/patch-ab \
    pkgsrc/net/tcpflow/patches/patch-ac pkgsrc/net/tcpflow/patches/patch-ad \
    pkgsrc/net/tcpflow/patches/patch-ae
cvs rdiff -u -r0 -r1.1 pkgsrc/net/tcpflow/patches/patch-configure \
    pkgsrc/net/tcpflow/patches/patch-src_tcpip.cpp \
    pkgsrc/net/tcpflow/patches/patch-tests_test-multifile.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/net/tcpflow/Makefile
diff -u pkgsrc/net/tcpflow/Makefile:1.11 pkgsrc/net/tcpflow/Makefile:1.12
--- pkgsrc/net/tcpflow/Makefile:1.11    Wed Feb  6 19:31:01 2013
+++ pkgsrc/net/tcpflow/Makefile Tue Jul  4 13:50:41 2017
@@ -1,16 +1,26 @@
-# $NetBSD: Makefile,v 1.11 2013/02/06 19:31:01 jperkin Exp $
+# $NetBSD: Makefile,v 1.12 2017/07/04 13:50:41 jperkin Exp $
 #
 
-DISTNAME=      tcpflow-0.21
-PKGREVISION=   2
+DISTNAME=      tcpflow-1.4.5
 CATEGORIES=    net security
-MASTER_SITES=  http://www.circlemud.org/pub/jelson/tcpflow/
+MASTER_SITES=  http://downloads.digitalcorpora.org/downloads/tcpflow/
 
 MAINTAINER=    pkgsrc-users%NetBSD.org@localhost
-HOMEPAGE=      http://www.circlemud.org/~jelson/software/tcpflow/
+HOMEPAGE=      https://github.com/simsong/tcpflow
 COMMENT=       Captures data transmitted as part of TCP connections
+LICENSE=       gnu-gpl-v3
+
+USE_LANGUAGES= c c++
 
 GNU_CONFIGURE= YES
 
+CPPFLAGS.SunOS+=       -Du_int8_t=uint8_t -Du_int16_t=uint16_t -DMAP_FILE=0
+CPPFLAGS.SunOS+=       -Du_int32_t=uint32_t -Du_int64_t=uint64_t
+
+.include "options.mk"
+
+.include "../../devel/boost-libs/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
 .include "../../net/libpcap/buildlink3.mk"
+.include "../../security/openssl/buildlink3.mk"
 .include "../../mk/bsd.pkg.mk"

Index: pkgsrc/net/tcpflow/distinfo
diff -u pkgsrc/net/tcpflow/distinfo:1.7 pkgsrc/net/tcpflow/distinfo:1.8
--- pkgsrc/net/tcpflow/distinfo:1.7     Wed Nov  4 00:35:39 2015
+++ pkgsrc/net/tcpflow/distinfo Tue Jul  4 13:50:41 2017
@@ -1,11 +1,9 @@
-$NetBSD: distinfo,v 1.7 2015/11/04 00:35:39 agc Exp $
+$NetBSD: distinfo,v 1.8 2017/07/04 13:50:41 jperkin Exp $
 
-SHA1 (tcpflow-0.21.tar.gz) = 08eeb8532e1f713db2587580d759ebad813a0b49
-RMD160 (tcpflow-0.21.tar.gz) = 250ed27f1a49f4eda4b274857c11762be8261209
-SHA512 (tcpflow-0.21.tar.gz) = aec7978e88c67671523187eadcf28ba4ef09394a461a7b65a5f5f23af5e87501567f9a3467be824b67ef7b31c554c91d82f25ba0f928308a32e701792095d8d1
-Size (tcpflow-0.21.tar.gz) = 79369 bytes
-SHA1 (patch-aa) = afea3a5b0fb01ac9af87f63881fdf502dc082899
-SHA1 (patch-ab) = f506c51be721f5dcd484028edc3cd0fa56b795fa
-SHA1 (patch-ac) = 78a92e7e6407810e77799c00d2b3b42ba2522a32
-SHA1 (patch-ad) = d0162fab2dcc226c3bf8a5e0d1daec58faa378f7
-SHA1 (patch-ae) = d858f06b73cbe04001fd9a4a65742df45a157a37
+SHA1 (tcpflow-1.4.5.tar.gz) = a86ca927ec68e7a05cdc0da436e365504fdab27b
+RMD160 (tcpflow-1.4.5.tar.gz) = 2f30ea47f301fb4737fc3911c1d94f8c53e5db0f
+SHA512 (tcpflow-1.4.5.tar.gz) = e31b278b8f4e97b6d1ffb6f8f145a56806963271ab96204ba555ab88049dedc5a13adf78b7775e96e92fe48bbf5116781810cef0d3374231764af059fc09dd97
+Size (tcpflow-1.4.5.tar.gz) = 450450 bytes
+SHA1 (patch-configure) = 1cd65ab0ae845d908813773bcc6bc5f3fbd135d0
+SHA1 (patch-src_tcpip.cpp) = 0ff720b2192ba879c390bb5f82d0e0e240e26078
+SHA1 (patch-tests_test-multifile.sh) = 7c614f53a6664b74540ee54f7cb61dfa3934d978

Added files:

Index: pkgsrc/net/tcpflow/options.mk
diff -u /dev/null pkgsrc/net/tcpflow/options.mk:1.1
--- /dev/null   Tue Jul  4 13:50:42 2017
+++ pkgsrc/net/tcpflow/options.mk       Tue Jul  4 13:50:41 2017
@@ -0,0 +1,12 @@
+# $NetBSD: options.mk,v 1.1 2017/07/04 13:50:41 jperkin Exp $
+
+PKG_OPTIONS_VAR=       PKG_OPTIONS.tcpflow
+PKG_SUPPORTED_OPTIONS= cairo
+
+.include "../../mk/bsd.options.mk"
+
+.if !empty(PKG_OPTIONS:Mcairo)
+.include "../../graphics/cairo/buildlink3.mk"
+.else
+CONFIGURE_ARGS+=        --enable-cairo=false
+.endif

Index: pkgsrc/net/tcpflow/patches/patch-configure
diff -u /dev/null pkgsrc/net/tcpflow/patches/patch-configure:1.1
--- /dev/null   Tue Jul  4 13:50:42 2017
+++ pkgsrc/net/tcpflow/patches/patch-configure  Tue Jul  4 13:50:42 2017
@@ -0,0 +1,42 @@
+$NetBSD: patch-configure,v 1.1 2017/07/04 13:50:42 jperkin Exp $
+
+Shell portability.
+
+--- configure.orig     2015-09-23 12:34:56.000000000 +0000
++++ configure
+@@ -5983,7 +5983,7 @@ then
+ $as_echo "$as_me: g++ is really clang++" >&6;}
+    using_clang=yes
+ fi
+-if test x$CXX == "xclang++" ; then
++if test x$CXX = "xclang++" ; then
+    using_clang=yes
+ fi
+ 
+@@ -6000,7 +6000,7 @@ if test x"${mingw}" != "xyes" ; then
+   C_WARNINGS_TO_TEST="$C_WARNINGS_TO_TEST -Wall -Wstrict-prototypes"
+ fi
+ 
+-if test $using_clang == "no" ; then
++if test $using_clang = "no" ; then
+   # -Wstrict-null-sentinel is not supported under clang
+   CXX_WARNINGS_TO_TEST="$CXX_WARNINGS_TO_TEST -Wstrict-null-sentinel"
+ fi
+@@ -6431,7 +6431,7 @@ $as_echo "#define __LINUX__ 1" >>confdef
+      ;;
+ esac
+ 
+-if test x"${mingw}" == "xno" ; then
++if test x"${mingw}" = "xno" ; then
+   # Bring additional directories where things might be found into our
+   # search path. I don't know why autoconf doesn't do this by default
+   for spfx in /usr/local /opt/local /sw /usr/local/ssl /usr/boost/include ; do
+@@ -6453,7 +6453,7 @@ $as_echo "$as_me:  LDFLAGS = ${LDFLAGS} 
+ fi
+ 
+ if test -r /bin/uname.exe ; then
+-  if test "`uname -o`" == "Msys" ; then
++  if test "`uname -o`" = "Msys" ; then
+     { $as_echo "$as_me:${as_lineno-$LINENO}: Compiling with Msys. Setting flags appropriately." >&5
+ $as_echo "$as_me: Compiling with Msys. Setting flags appropriately." >&6;}
+     LIBS="$LIBS -lws2_32 -lgdi32"
Index: pkgsrc/net/tcpflow/patches/patch-src_tcpip.cpp
diff -u /dev/null pkgsrc/net/tcpflow/patches/patch-src_tcpip.cpp:1.1
--- /dev/null   Tue Jul  4 13:50:42 2017
+++ pkgsrc/net/tcpflow/patches/patch-src_tcpip.cpp      Tue Jul  4 13:50:42 2017
@@ -0,0 +1,16 @@
+$NetBSD: patch-src_tcpip.cpp,v 1.1 2017/07/04 13:50:42 jperkin Exp $
+
+std::perror doesn't always support varargs.
+
+--- src/tcpip.cpp.orig 2015-08-12 01:28:53.000000000 +0000
++++ src/tcpip.cpp
+@@ -145,7 +145,8 @@ void tcpip::close_file()
+           tstimes[i].tv_nsec = times[i].tv_usec * 1000;
+       }
+       if(futimens(fd,tstimes)){
+-          perror("futimens(fd=%d)",fd);
++          fprintf(stderr,"%s: futimens(fd=%d)\n",strerror(errno),fd);
++          abort();
+       }
+ #endif
+       close(fd);
Index: pkgsrc/net/tcpflow/patches/patch-tests_test-multifile.sh
diff -u /dev/null pkgsrc/net/tcpflow/patches/patch-tests_test-multifile.sh:1.1
--- /dev/null   Tue Jul  4 13:50:42 2017
+++ pkgsrc/net/tcpflow/patches/patch-tests_test-multifile.sh    Tue Jul  4 13:50:42 2017
@@ -0,0 +1,15 @@
+$NetBSD: patch-tests_test-multifile.sh,v 1.1 2017/07/04 13:50:42 jperkin Exp $
+
+Shell portability.
+
+--- tests/test-multifile.sh.orig       2015-08-12 01:28:53.000000000 +0000
++++ tests/test-multifile.sh
+@@ -93,7 +93,7 @@ do
+   checkmd5 "$OUT/192.168.123.101.04660-110.045.186.224.01120" "dcd18bf7b6572443215154539a37d75c" "363"
+   checkmd5 "$OUT/192.168.123.101.04661-110.045.186.224.01120" "d202ebd7c286d1ea4734bdbef69431c6" "323"
+   checkmd5 "$OUT/202.043.063.139.00443-192.168.123.101.04591" "722c54c6443119b6c411359b9b7a47c2" "53"
+-  if test $deldir == "yes" ; then
++  if test $deldir = "yes" ; then
+     /bin/rm -rf $OUT
+   fi
+ done



Home | Main Index | Thread Index | Old Index