From 5579c45ac75032e34fb0ef5b71df6c2f7c10ec95 Mon Sep 17 00:00:00 2001 From: Peter Lemenkov Date: Fri, 13 Sep 2013 16:52:45 +0400 Subject: [PATCH] Bugfixes and enhancements - Convert automake/pkgconfig files into patches (better upstream integration) - Restored category in the *.desktop file - Install another one necessary header file - frame_data_sequence.h Signed-off-by: Peter Lemenkov --- wireshark-0001-enable-Lua-support.patch | 2 +- ...02-Customize-permission-denied-error.patch | 2 +- ...correct-shared-object-name-in-python.patch | 2 +- ...k-0004-fix-documentation-build-error.patch | 2 +- ...x-string-overrun-in-plugins-profinet.patch | 2 +- ...kov-via-https-bugs.wireshark.org-bug.patch | 2 +- ...e-beginning-of-an-openflow-dissector.patch | 2 +- wireshark-0008-adds-autoconf-macro-file.patch | 121 +++++++++ ...-0009-Restore-Fedora-specific-groups.patch | 23 ++ wireshark-0010-Add-pkgconfig-entry.patch | 58 +++++ ...k-0011-Install-autoconf-related-file.patch | 244 ++++++++++++++++++ wireshark-autoconf.m4 | 101 -------- wireshark.spec | 48 ++-- 13 files changed, 475 insertions(+), 134 deletions(-) create mode 100644 wireshark-0008-adds-autoconf-macro-file.patch create mode 100644 wireshark-0009-Restore-Fedora-specific-groups.patch create mode 100644 wireshark-0010-Add-pkgconfig-entry.patch create mode 100644 wireshark-0011-Install-autoconf-related-file.patch delete mode 100644 wireshark-autoconf.m4 diff --git a/wireshark-0001-enable-Lua-support.patch b/wireshark-0001-enable-Lua-support.patch index 49db52c..31c5118 100644 --- a/wireshark-0001-enable-Lua-support.patch +++ b/wireshark-0001-enable-Lua-support.patch @@ -1,7 +1,7 @@ From e8be5a7c24830ce686cec89dac060b3c0495b70e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Radek=20Vok=C3=A1l?= Date: Tue, 15 Dec 2009 08:36:27 +0000 -Subject: [PATCH 1/7] enable Lua support +Subject: [PATCH 01/11] enable Lua support --- epan/wslua/template-init.lua | 2 +- diff --git a/wireshark-0002-Customize-permission-denied-error.patch b/wireshark-0002-Customize-permission-denied-error.patch index 35028a7..7746edf 100644 --- a/wireshark-0002-Customize-permission-denied-error.patch +++ b/wireshark-0002-Customize-permission-denied-error.patch @@ -1,7 +1,7 @@ From a6168e1f1bdb639c0ffd15a5f4eed864814e0bce Mon Sep 17 00:00:00 2001 From: Jan Safranek Date: Fri, 26 Nov 2010 14:30:45 +0300 -Subject: [PATCH 2/7] Customize 'permission denied' error. +Subject: [PATCH 02/11] Customize 'permission denied' error. Add Fedora-specific message to error output when dumpcap cannot be started because of permissions. diff --git a/wireshark-0003-Load-correct-shared-object-name-in-python.patch b/wireshark-0003-Load-correct-shared-object-name-in-python.patch index 8411ab4..bb74ebf 100644 --- a/wireshark-0003-Load-correct-shared-object-name-in-python.patch +++ b/wireshark-0003-Load-correct-shared-object-name-in-python.patch @@ -1,7 +1,7 @@ From ec02325332d4e198b1ccd6955ed6a489a5a7c826 Mon Sep 17 00:00:00 2001 From: Jan Safranek Date: Thu, 9 Jun 2011 14:56:59 +0200 -Subject: [PATCH 3/7] Load correct shared object name in python. +Subject: [PATCH 03/11] Load correct shared object name in python. This fixes following error message shown by wireshark/tshark when wireshark-devel was not installed: diff --git a/wireshark-0004-fix-documentation-build-error.patch b/wireshark-0004-fix-documentation-build-error.patch index 229e19a..317e060 100644 --- a/wireshark-0004-fix-documentation-build-error.patch +++ b/wireshark-0004-fix-documentation-build-error.patch @@ -1,7 +1,7 @@ From 5dab288d99b6847ca5ecd98ae5bdb95402fa5cd0 Mon Sep 17 00:00:00 2001 From: Peter Hatina Date: Mon, 8 Apr 2013 13:03:24 +0200 -Subject: [PATCH 4/7] fix documentation build error +Subject: [PATCH 04/11] fix documentation build error --- doc/asn2deb.pod | 1 + diff --git a/wireshark-0005-fix-string-overrun-in-plugins-profinet.patch b/wireshark-0005-fix-string-overrun-in-plugins-profinet.patch index 7a6c713..4e9f1fa 100644 --- a/wireshark-0005-fix-string-overrun-in-plugins-profinet.patch +++ b/wireshark-0005-fix-string-overrun-in-plugins-profinet.patch @@ -1,7 +1,7 @@ From 396979b80d273319cd69084e262567aae0024b25 Mon Sep 17 00:00:00 2001 From: Peter Hatina Date: Wed, 4 Sep 2013 10:03:57 +0200 -Subject: [PATCH 5/7] fix string overrun in plugins/profinet +Subject: [PATCH 05/11] fix string overrun in plugins/profinet --- plugins/profinet/packet-dcom-cba.c | 2 +- diff --git a/wireshark-0006-From-Peter-Lemenkov-via-https-bugs.wireshark.org-bug.patch b/wireshark-0006-From-Peter-Lemenkov-via-https-bugs.wireshark.org-bug.patch index fda2f97..7815b15 100644 --- a/wireshark-0006-From-Peter-Lemenkov-via-https-bugs.wireshark.org-bug.patch +++ b/wireshark-0006-From-Peter-Lemenkov-via-https-bugs.wireshark.org-bug.patch @@ -1,7 +1,7 @@ From 3c9d2b8cefb0204bf2b83ac925e80e775945e57f Mon Sep 17 00:00:00 2001 From: Evan Huus Date: Sun, 18 Aug 2013 19:49:08 +0000 -Subject: [PATCH 6/7] From Peter Lemenkov via +Subject: [PATCH 06/11] From Peter Lemenkov via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8326 Dissector for the Sippy RTPproxy controlling protocol. RTPproxy is a well-known diff --git a/wireshark-0007-The-beginning-of-an-openflow-dissector.patch b/wireshark-0007-The-beginning-of-an-openflow-dissector.patch index 6844170..2e36de2 100644 --- a/wireshark-0007-The-beginning-of-an-openflow-dissector.patch +++ b/wireshark-0007-The-beginning-of-an-openflow-dissector.patch @@ -1,7 +1,7 @@ From 876cb9d160cd8cd4042cdc7a01981d0ae2dbee06 Mon Sep 17 00:00:00 2001 From: Anders Broman Date: Thu, 11 Jul 2013 21:13:27 +0000 -Subject: [PATCH 7/7] The beginning of an openflow dissector. +Subject: [PATCH 07/11] The beginning of an openflow dissector. svn path=/trunk/; revision=50513 diff --git a/wireshark-0008-adds-autoconf-macro-file.patch b/wireshark-0008-adds-autoconf-macro-file.patch new file mode 100644 index 0000000..1c91841 --- /dev/null +++ b/wireshark-0008-adds-autoconf-macro-file.patch @@ -0,0 +1,121 @@ +From 0422c8801690fa8dde284f4e8781f31d69b44326 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Radek=20Vok=C3=A1l?= +Date: Mon, 21 Dec 2009 11:19:39 +0000 +Subject: [PATCH 08/11] adds autoconf macro file + +updated autoconf macros and pkgconfig file in wireshark-devel to reflect current config.h Resolves: #746655 +--- + wireshark-autoconf.m4 | 101 ++++++++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 101 insertions(+) + create mode 100644 wireshark-autoconf.m4 + +diff --git a/wireshark-autoconf.m4 b/wireshark-autoconf.m4 +new file mode 100644 +index 0000000..d8015d8 +--- /dev/null ++++ b/wireshark-autoconf.m4 +@@ -0,0 +1,101 @@ ++dnl AM_PATH_WIRESHARK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) ++dnl Test for wireshark development files, and define WIRESHARK_CFLAGS, ++dnl WIRESHARK_LIBS and WIRESHARK_VERSION. ++dnl ++AC_DEFUN([AM_PATH_WIRESHARK],[ ++ AC_ARG_WITH(wireshark-prefix, ++ [ --with-wireshark-prefix=PFX Prefix where wireshark libraries are installed (optional)], ++ wireshark_config_prefix="$withval", wireshark_config_prefix="") ++ ++ wireshark_found=no ++ if test "$wireshark_config_prefix" != "" ; then ++ AM_PATH_GLIB_2_0(,,,[gmodule]) ++ WIRESHARK_CFLAGS="-DWS_VAR_IMPORT=extern -DWS_MSVC_NORETURN= -I$wireshark_config_prefix/include/wireshark -I$wireshark_config_prefix/include/wireshark/epan -I/usr/include/wireshark -I/usr/include/wireshark/epan $GLIB_CFLAGS" ++ WIRESHARK_LIBS="-L$wireshark_config_prefix/lib -lwireshark -lwiretap $GLIB_LIBS" ++ wireshark_found=yes ++ else ++ PKG_PROG_PKG_CONFIG() ++ PKG_CHECK_MODULES(WIRESHARK, wireshark, wireshark_found=yes) ++ fi ++ ++ ac_save_CFLAGS="$CFLAGS" ++ ac_save_CLIBS="$LIBS" ++ CFLAGS="$CFLAGS $WIRESHARK_CFLAGS" ++ LIBS="$WIRESHARK_LIBS $LIBS" ++ min_wireshark_version=ifelse([$1], ,0.0.0,[$1]) ++ if test $wireshark_found = yes; then ++ AC_MSG_CHECKING(for wireshark version >= $min_wireshark_version) ++ wireshark_found=no ++ AC_TRY_RUN([ ++#include ++#include ++#include ++#include ++#include ++#include ++ ++int ++main() ++ ++{ ++ int ws_major_version, ws_minor_version, ws_micro_version; ++ int major, minor, micro; ++ char **tmp_version; ++ ++ tmp_version = (char *) strdup("$min_wireshark_version"); ++ major = 0; ++ minor = 0; ++ micro = 0; ++ sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ); ++ free(tmp_version); ++ tmp_version = (char *) epan_get_version(); ++ sscanf(tmp_version, "%d.%d.%d", ++ &ws_major_version, &ws_minor_version, &ws_micro_version); ++ ++ if (ws_major_version > major || ++ (ws_major_version == major && ws_minor_version > minor) || ++ (ws_major_version == major && ws_minor_version == minor && ++ ws_micro_version >= micro)) ++ return 0; ++ ++ printf("\n*** An old version of wireshark (%d.%d.%d) was found.\n", ++ ws_major_version, ws_minor_version, ws_micro_version); ++ printf("*** You need a version of wireshark not older than %d.%d.%d. ", ++ major, minor, micro); ++ return 1; ++} ++ ], wireshark_found=yes) ++ fi ++ ++ if test "$wireshark_found" != no; then ++ AC_LANG_PUSH(C) ++ AC_LINK_IFELSE([AC_LANG_PROGRAM([ ++#include ++#include ++#include ++#include ++#include ++#include ++], [puts(epan_get_version());])], [WIRESHARK_VERSION=`./conftest$ac_exeext`], ++wireshark_found=no) ++ ++ AC_LANG_POP ++ fi ++ ++ CFLAGS="$ac_save_CFLAGS" ++ LIBS="$ac_save_LIBS" ++ ++ if test "$wireshark_found" != no; then ++ AC_MSG_RESULT(yes) ++ ifelse([$2],, :, [$2]) ++ else ++ AC_MSG_RESULT(no) ++ WIRESHARK_CFLAGS="" ++ WIRESHARK_LIBS="" ++ WIRESHARK_VERSION="" ++ ifelse([$3], , :, [$3]) ++ fi ++ AC_SUBST(WIRESHARK_CFLAGS) ++ AC_SUBST(WIRESHARK_LIBS) ++ AC_SUBST(WIRESHARK_VERSION) ++]) +-- +1.8.3.1 + diff --git a/wireshark-0009-Restore-Fedora-specific-groups.patch b/wireshark-0009-Restore-Fedora-specific-groups.patch new file mode 100644 index 0000000..f554567 --- /dev/null +++ b/wireshark-0009-Restore-Fedora-specific-groups.patch @@ -0,0 +1,23 @@ +From f49769f56e1e6a22ca235e8f2b73337309ddcfa2 Mon Sep 17 00:00:00 2001 +From: Peter Lemenkov +Date: Fri, 13 Sep 2013 14:36:55 +0400 +Subject: [PATCH 09/11] Restore Fedora-specific groups + +Signed-off-by: Peter Lemenkov +--- + wireshark.desktop | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/wireshark.desktop b/wireshark.desktop +index b0fe1ae..d275887 100644 +--- a/wireshark.desktop ++++ b/wireshark.desktop +@@ -76,4 +76,4 @@ Terminal=false + MimeType=application/vnd.tcpdump.pcap;application/x-pcapng;application/x-snoop;application/x-iptrace;application/x-lanalyzer;application/x-nettl;application/x-radcom;application/x-etherpeek;application/x-visualnetworks;application/x-netinstobserver;application/x-5view; + # Category entry according to: + # http://standards.freedesktop.org/menu-spec/1.0/ +-Categories=System;Monitor;GTK; ++Categories=Application;Network;GTK; +-- +1.8.3.1 + diff --git a/wireshark-0010-Add-pkgconfig-entry.patch b/wireshark-0010-Add-pkgconfig-entry.patch new file mode 100644 index 0000000..11de51a --- /dev/null +++ b/wireshark-0010-Add-pkgconfig-entry.patch @@ -0,0 +1,58 @@ +From 224cd146ec71d0ff7bdff3e8d7707ca603220410 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Radek=20Vok=C3=A1l?= +Date: Thu, 17 Dec 2009 09:17:07 +0000 +Subject: [PATCH 10/11] Add pkgconfig entry + +--- + Makefile.am | 3 +++ + configure.ac | 1 + + wireshark.pc.in | 11 +++++++++++ + 3 files changed, 15 insertions(+) + create mode 100644 wireshark.pc.in + +diff --git a/Makefile.am b/Makefile.am +index eb735a5..2844c90 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -50,6 +50,9 @@ bin_PROGRAMS = \ + EXTRA_PROGRAMS = wireshark tshark capinfos editcap mergecap dftest \ + randpkt text2pcap dumpcap reordercap rawshark wireshark_cxx + ++pkgconfigdir = $(libdir)/pkgconfig ++pkgconfig_DATA = wireshark.pc ++ + # + # Wireshark configuration files are put in $(pkgdatadir). + # +diff --git a/configure.ac b/configure.ac +index cfa8f05..a9f77a7 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2543,6 +2543,7 @@ AC_CONFIG_HEADERS(config.h) + AC_OUTPUT( + Makefile + doxygen.cfg ++ wireshark.pc + asn1/Makefile + _CUSTOM_ASN1_AC_OUTPUT_ + asn1/acp133/Makefile +diff --git a/wireshark.pc.in b/wireshark.pc.in +new file mode 100644 +index 0000000..2e2fcdc +--- /dev/null ++++ b/wireshark.pc.in +@@ -0,0 +1,11 @@ ++prefix=@prefix@ ++exec_prefix=@exec_prefix@ ++libdir=@libdir@ ++includedir=@includedir@ ++ ++Name: wireshark ++Description: Network Traffic Analyzer ++Version: @PACKAGE_VERSION@ ++Requires: glib-2.0 gmodule-2.0 ++Libs: -L@libdir@ -lwireshark -lwiretap ++Cflags: -DWS_VAR_IMPORT=extern -DHAVE_STDARG_H -DWS_MSVC_NORETURN= -I@includedir@/wireshark -I@includedir@/wireshark/epan +-- +1.8.3.1 + diff --git a/wireshark-0011-Install-autoconf-related-file.patch b/wireshark-0011-Install-autoconf-related-file.patch new file mode 100644 index 0000000..c2e0e28 --- /dev/null +++ b/wireshark-0011-Install-autoconf-related-file.patch @@ -0,0 +1,244 @@ +From fa0c546efa38a9f112257b3b3a1be15ba4cb3d4b Mon Sep 17 00:00:00 2001 +From: Peter Lemenkov +Date: Fri, 13 Sep 2013 15:25:12 +0400 +Subject: [PATCH 11/11] Install autoconf-related file + +--- + Makefile.am | 3 ++ + wireshark-autoconf.m4 | 101 -------------------------------------------------- + wireshark.m4 | 101 ++++++++++++++++++++++++++++++++++++++++++++++++++ + 3 files changed, 104 insertions(+), 101 deletions(-) + delete mode 100644 wireshark-autoconf.m4 + create mode 100644 wireshark.m4 + +diff --git a/Makefile.am b/Makefile.am +index 2844c90..3053bda 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -53,6 +53,9 @@ EXTRA_PROGRAMS = wireshark tshark capinfos editcap mergecap dftest \ + pkgconfigdir = $(libdir)/pkgconfig + pkgconfig_DATA = wireshark.pc + ++autoconfigdir = $(datadir)/aclocal ++autoconfig_DATA = wireshark.m4 ++ + # + # Wireshark configuration files are put in $(pkgdatadir). + # +diff --git a/wireshark-autoconf.m4 b/wireshark-autoconf.m4 +deleted file mode 100644 +index d8015d8..0000000 +--- a/wireshark-autoconf.m4 ++++ /dev/null +@@ -1,101 +0,0 @@ +-dnl AM_PATH_WIRESHARK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) +-dnl Test for wireshark development files, and define WIRESHARK_CFLAGS, +-dnl WIRESHARK_LIBS and WIRESHARK_VERSION. +-dnl +-AC_DEFUN([AM_PATH_WIRESHARK],[ +- AC_ARG_WITH(wireshark-prefix, +- [ --with-wireshark-prefix=PFX Prefix where wireshark libraries are installed (optional)], +- wireshark_config_prefix="$withval", wireshark_config_prefix="") +- +- wireshark_found=no +- if test "$wireshark_config_prefix" != "" ; then +- AM_PATH_GLIB_2_0(,,,[gmodule]) +- WIRESHARK_CFLAGS="-DWS_VAR_IMPORT=extern -DWS_MSVC_NORETURN= -I$wireshark_config_prefix/include/wireshark -I$wireshark_config_prefix/include/wireshark/epan -I/usr/include/wireshark -I/usr/include/wireshark/epan $GLIB_CFLAGS" +- WIRESHARK_LIBS="-L$wireshark_config_prefix/lib -lwireshark -lwiretap $GLIB_LIBS" +- wireshark_found=yes +- else +- PKG_PROG_PKG_CONFIG() +- PKG_CHECK_MODULES(WIRESHARK, wireshark, wireshark_found=yes) +- fi +- +- ac_save_CFLAGS="$CFLAGS" +- ac_save_CLIBS="$LIBS" +- CFLAGS="$CFLAGS $WIRESHARK_CFLAGS" +- LIBS="$WIRESHARK_LIBS $LIBS" +- min_wireshark_version=ifelse([$1], ,0.0.0,[$1]) +- if test $wireshark_found = yes; then +- AC_MSG_CHECKING(for wireshark version >= $min_wireshark_version) +- wireshark_found=no +- AC_TRY_RUN([ +-#include +-#include +-#include +-#include +-#include +-#include +- +-int +-main() +- +-{ +- int ws_major_version, ws_minor_version, ws_micro_version; +- int major, minor, micro; +- char **tmp_version; +- +- tmp_version = (char *) strdup("$min_wireshark_version"); +- major = 0; +- minor = 0; +- micro = 0; +- sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ); +- free(tmp_version); +- tmp_version = (char *) epan_get_version(); +- sscanf(tmp_version, "%d.%d.%d", +- &ws_major_version, &ws_minor_version, &ws_micro_version); +- +- if (ws_major_version > major || +- (ws_major_version == major && ws_minor_version > minor) || +- (ws_major_version == major && ws_minor_version == minor && +- ws_micro_version >= micro)) +- return 0; +- +- printf("\n*** An old version of wireshark (%d.%d.%d) was found.\n", +- ws_major_version, ws_minor_version, ws_micro_version); +- printf("*** You need a version of wireshark not older than %d.%d.%d. ", +- major, minor, micro); +- return 1; +-} +- ], wireshark_found=yes) +- fi +- +- if test "$wireshark_found" != no; then +- AC_LANG_PUSH(C) +- AC_LINK_IFELSE([AC_LANG_PROGRAM([ +-#include +-#include +-#include +-#include +-#include +-#include +-], [puts(epan_get_version());])], [WIRESHARK_VERSION=`./conftest$ac_exeext`], +-wireshark_found=no) +- +- AC_LANG_POP +- fi +- +- CFLAGS="$ac_save_CFLAGS" +- LIBS="$ac_save_LIBS" +- +- if test "$wireshark_found" != no; then +- AC_MSG_RESULT(yes) +- ifelse([$2],, :, [$2]) +- else +- AC_MSG_RESULT(no) +- WIRESHARK_CFLAGS="" +- WIRESHARK_LIBS="" +- WIRESHARK_VERSION="" +- ifelse([$3], , :, [$3]) +- fi +- AC_SUBST(WIRESHARK_CFLAGS) +- AC_SUBST(WIRESHARK_LIBS) +- AC_SUBST(WIRESHARK_VERSION) +-]) +diff --git a/wireshark.m4 b/wireshark.m4 +new file mode 100644 +index 0000000..d8015d8 +--- /dev/null ++++ b/wireshark.m4 +@@ -0,0 +1,101 @@ ++dnl AM_PATH_WIRESHARK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) ++dnl Test for wireshark development files, and define WIRESHARK_CFLAGS, ++dnl WIRESHARK_LIBS and WIRESHARK_VERSION. ++dnl ++AC_DEFUN([AM_PATH_WIRESHARK],[ ++ AC_ARG_WITH(wireshark-prefix, ++ [ --with-wireshark-prefix=PFX Prefix where wireshark libraries are installed (optional)], ++ wireshark_config_prefix="$withval", wireshark_config_prefix="") ++ ++ wireshark_found=no ++ if test "$wireshark_config_prefix" != "" ; then ++ AM_PATH_GLIB_2_0(,,,[gmodule]) ++ WIRESHARK_CFLAGS="-DWS_VAR_IMPORT=extern -DWS_MSVC_NORETURN= -I$wireshark_config_prefix/include/wireshark -I$wireshark_config_prefix/include/wireshark/epan -I/usr/include/wireshark -I/usr/include/wireshark/epan $GLIB_CFLAGS" ++ WIRESHARK_LIBS="-L$wireshark_config_prefix/lib -lwireshark -lwiretap $GLIB_LIBS" ++ wireshark_found=yes ++ else ++ PKG_PROG_PKG_CONFIG() ++ PKG_CHECK_MODULES(WIRESHARK, wireshark, wireshark_found=yes) ++ fi ++ ++ ac_save_CFLAGS="$CFLAGS" ++ ac_save_CLIBS="$LIBS" ++ CFLAGS="$CFLAGS $WIRESHARK_CFLAGS" ++ LIBS="$WIRESHARK_LIBS $LIBS" ++ min_wireshark_version=ifelse([$1], ,0.0.0,[$1]) ++ if test $wireshark_found = yes; then ++ AC_MSG_CHECKING(for wireshark version >= $min_wireshark_version) ++ wireshark_found=no ++ AC_TRY_RUN([ ++#include ++#include ++#include ++#include ++#include ++#include ++ ++int ++main() ++ ++{ ++ int ws_major_version, ws_minor_version, ws_micro_version; ++ int major, minor, micro; ++ char **tmp_version; ++ ++ tmp_version = (char *) strdup("$min_wireshark_version"); ++ major = 0; ++ minor = 0; ++ micro = 0; ++ sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ); ++ free(tmp_version); ++ tmp_version = (char *) epan_get_version(); ++ sscanf(tmp_version, "%d.%d.%d", ++ &ws_major_version, &ws_minor_version, &ws_micro_version); ++ ++ if (ws_major_version > major || ++ (ws_major_version == major && ws_minor_version > minor) || ++ (ws_major_version == major && ws_minor_version == minor && ++ ws_micro_version >= micro)) ++ return 0; ++ ++ printf("\n*** An old version of wireshark (%d.%d.%d) was found.\n", ++ ws_major_version, ws_minor_version, ws_micro_version); ++ printf("*** You need a version of wireshark not older than %d.%d.%d. ", ++ major, minor, micro); ++ return 1; ++} ++ ], wireshark_found=yes) ++ fi ++ ++ if test "$wireshark_found" != no; then ++ AC_LANG_PUSH(C) ++ AC_LINK_IFELSE([AC_LANG_PROGRAM([ ++#include ++#include ++#include ++#include ++#include ++#include ++], [puts(epan_get_version());])], [WIRESHARK_VERSION=`./conftest$ac_exeext`], ++wireshark_found=no) ++ ++ AC_LANG_POP ++ fi ++ ++ CFLAGS="$ac_save_CFLAGS" ++ LIBS="$ac_save_LIBS" ++ ++ if test "$wireshark_found" != no; then ++ AC_MSG_RESULT(yes) ++ ifelse([$2],, :, [$2]) ++ else ++ AC_MSG_RESULT(no) ++ WIRESHARK_CFLAGS="" ++ WIRESHARK_LIBS="" ++ WIRESHARK_VERSION="" ++ ifelse([$3], , :, [$3]) ++ fi ++ AC_SUBST(WIRESHARK_CFLAGS) ++ AC_SUBST(WIRESHARK_LIBS) ++ AC_SUBST(WIRESHARK_VERSION) ++]) +-- +1.8.3.1 + diff --git a/wireshark-autoconf.m4 b/wireshark-autoconf.m4 deleted file mode 100644 index d8015d8..0000000 --- a/wireshark-autoconf.m4 +++ /dev/null @@ -1,101 +0,0 @@ -dnl AM_PATH_WIRESHARK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) -dnl Test for wireshark development files, and define WIRESHARK_CFLAGS, -dnl WIRESHARK_LIBS and WIRESHARK_VERSION. -dnl -AC_DEFUN([AM_PATH_WIRESHARK],[ - AC_ARG_WITH(wireshark-prefix, - [ --with-wireshark-prefix=PFX Prefix where wireshark libraries are installed (optional)], - wireshark_config_prefix="$withval", wireshark_config_prefix="") - - wireshark_found=no - if test "$wireshark_config_prefix" != "" ; then - AM_PATH_GLIB_2_0(,,,[gmodule]) - WIRESHARK_CFLAGS="-DWS_VAR_IMPORT=extern -DWS_MSVC_NORETURN= -I$wireshark_config_prefix/include/wireshark -I$wireshark_config_prefix/include/wireshark/epan -I/usr/include/wireshark -I/usr/include/wireshark/epan $GLIB_CFLAGS" - WIRESHARK_LIBS="-L$wireshark_config_prefix/lib -lwireshark -lwiretap $GLIB_LIBS" - wireshark_found=yes - else - PKG_PROG_PKG_CONFIG() - PKG_CHECK_MODULES(WIRESHARK, wireshark, wireshark_found=yes) - fi - - ac_save_CFLAGS="$CFLAGS" - ac_save_CLIBS="$LIBS" - CFLAGS="$CFLAGS $WIRESHARK_CFLAGS" - LIBS="$WIRESHARK_LIBS $LIBS" - min_wireshark_version=ifelse([$1], ,0.0.0,[$1]) - if test $wireshark_found = yes; then - AC_MSG_CHECKING(for wireshark version >= $min_wireshark_version) - wireshark_found=no - AC_TRY_RUN([ -#include -#include -#include -#include -#include -#include - -int -main() - -{ - int ws_major_version, ws_minor_version, ws_micro_version; - int major, minor, micro; - char **tmp_version; - - tmp_version = (char *) strdup("$min_wireshark_version"); - major = 0; - minor = 0; - micro = 0; - sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ); - free(tmp_version); - tmp_version = (char *) epan_get_version(); - sscanf(tmp_version, "%d.%d.%d", - &ws_major_version, &ws_minor_version, &ws_micro_version); - - if (ws_major_version > major || - (ws_major_version == major && ws_minor_version > minor) || - (ws_major_version == major && ws_minor_version == minor && - ws_micro_version >= micro)) - return 0; - - printf("\n*** An old version of wireshark (%d.%d.%d) was found.\n", - ws_major_version, ws_minor_version, ws_micro_version); - printf("*** You need a version of wireshark not older than %d.%d.%d. ", - major, minor, micro); - return 1; -} - ], wireshark_found=yes) - fi - - if test "$wireshark_found" != no; then - AC_LANG_PUSH(C) - AC_LINK_IFELSE([AC_LANG_PROGRAM([ -#include -#include -#include -#include -#include -#include -], [puts(epan_get_version());])], [WIRESHARK_VERSION=`./conftest$ac_exeext`], -wireshark_found=no) - - AC_LANG_POP - fi - - CFLAGS="$ac_save_CFLAGS" - LIBS="$ac_save_LIBS" - - if test "$wireshark_found" != no; then - AC_MSG_RESULT(yes) - ifelse([$2],, :, [$2]) - else - AC_MSG_RESULT(no) - WIRESHARK_CFLAGS="" - WIRESHARK_LIBS="" - WIRESHARK_VERSION="" - ifelse([$3], , :, [$3]) - fi - AC_SUBST(WIRESHARK_CFLAGS) - AC_SUBST(WIRESHARK_LIBS) - AC_SUBST(WIRESHARK_VERSION) -]) diff --git a/wireshark.spec b/wireshark.spec index 542fac5..ce06c90 100644 --- a/wireshark.spec +++ b/wireshark.spec @@ -21,12 +21,10 @@ Summary: Network traffic analyzer Name: wireshark Version: 1.10.2 -Release: 4%{?dist} +Release: 5%{?dist} License: GPL+ Group: Applications/Internet Source0: http://wireshark.org/download/src/%{name}-%{version}.tar.bz2 -Source1: wireshark-autoconf.m4 - # Fedora-specific Patch1: wireshark-0001-enable-Lua-support.patch # Fedora-specific @@ -39,6 +37,14 @@ Patch5: wireshark-0005-fix-string-overrun-in-plugins-profinet.patch Patch6: wireshark-0006-From-Peter-Lemenkov-via-https-bugs.wireshark.org-bug.patch # Backported from upstream. See also https://bugzilla.redhat.com/1007139 Patch7: wireshark-0007-The-beginning-of-an-openflow-dissector.patch +# Will be proposed upstream +Patch8: wireshark-0008-adds-autoconf-macro-file.patch +# Fedora-specific +Patch9: wireshark-0009-Restore-Fedora-specific-groups.patch +# Will be proposed upstream +Patch10: wireshark-0010-Add-pkgconfig-entry.patch +# Will be proposed upstream +Patch11: wireshark-0011-Install-autoconf-related-file.patch Url: http://www.wireshark.org/ BuildRequires: libpcap-devel >= 0.9 @@ -113,9 +119,9 @@ Requires: %{name} = %{version} glibc-devel glib2-devel %description Wireshark is a network traffic analyzer for Unix-ish operating systems. -This package lays base for libpcap, a packet capture and filtering -library, contains command-line utilities, contains plugins and -documentation for wireshark. A graphical user interface is packaged +This package lays base for libpcap, a packet capture and filtering +library, contains command-line utilities, contains plugins and +documentation for wireshark. A graphical user interface is packaged separately to GTK+ package. %description gnome @@ -140,6 +146,10 @@ and plugins. %patch5 -p1 -b .profinet_crash %patch6 -p1 -b .rtpproxy %patch7 -p1 -b .openflow +%patch8 -p1 -b .add_autoconf +%patch9 -p1 -b .restore_group +%patch10 -p1 -b .add_pkgconfig +%patch11 -p1 -b .install_autoconf %build %ifarch s390 s390x sparcv9 sparc64 @@ -225,6 +235,7 @@ mkdir -p "${IDIR}/wiretap" mkdir -p "${IDIR}/wsutil" install -m 644 color.h config.h register.h "${IDIR}/" install -m 644 cfile.h file.h "${IDIR}/" +install -m 644 frame_data_sequence.h "${IDIR}/" install -m 644 packet-range.h print.h "${IDIR}/" install -m 644 epan/*.h "${IDIR}/epan/" install -m 644 epan/crypt/*.h "${IDIR}/epan/crypt" @@ -235,26 +246,6 @@ install -m 644 wiretap/*.h "${IDIR}/wiretap" install -m 644 wsutil/*.h "${IDIR}/wsutil" install -m 644 ws_symbol_export.h "${IDIR}/" -# Create pkg-config control file. -mkdir -p "%{buildroot}%{_libdir}/pkgconfig" -cat > "%{buildroot}%{_libdir}/pkgconfig/wireshark.pc" <<- "EOF" - prefix=%{_prefix} - exec_prefix=%{_prefix} - libdir=%{_libdir} - includedir=%{_includedir} - - Name: %{name} - Description: Network Traffic Analyzer - Version: %{version} - Requires: glib-2.0 gmodule-2.0 - Libs: -L${libdir} -lwireshark -lwiretap - Cflags: -DWS_VAR_IMPORT=extern -DHAVE_STDARG_H -DWS_MSVC_NORETURN= -I${includedir}/wireshark -I${includedir}/wireshark/epan -EOF - -# Install the autoconf macro. -mkdir -p "%{buildroot}%{_datadir}/aclocal" -cp "%{SOURCE1}" "%{buildroot}%{_datadir}/aclocal/wireshark.m4" - # Remove .la files rm -f %{buildroot}%{_libdir}/%{name}/plugins/%{version}/*.la @@ -353,6 +344,11 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %{_datadir}/aclocal/* %changelog +* Fri Sep 13 2013 Peter Lemenkov - 1.10.2-5 +- Convert automake/pkgconfig files into patches (better upstream integration) +- Restored category in the *.desktop file +- Install another one necessary header file - frame_data_sequence.h + * Thu Sep 12 2013 Peter Lemenkov - 1.10.2-4 - Enhance desktop integration (*.desktop and MIME-related files)