diff --git a/wireshark-1.0.8-desktop.patch b/wireshark-1.0.8-desktop.patch deleted file mode 100644 index 22744b5..0000000 --- a/wireshark-1.0.8-desktop.patch +++ /dev/null @@ -1,16 +0,0 @@ -Index: wireshark.desktop -=================================================================== ---- wireshark.desktop.orig -+++ wireshark.desktop -@@ -68,9 +68,9 @@ Comment=Network traffic analyzer - Comment[fi]=Verkkoliikenne analysaattori - Comment[fr]=Analyseur de trafic réseau - Comment[sv]=Nätverkstrafikanalysator --Icon=wireshark.png -+Icon=wireshark - TryExec=wireshark --Exec=wireshark -+Exec=/usr/bin/xdg-su -c /usr/bin/wireshark - Terminal=false - # Categorie entry according to version 1.0 of - # http://www.freedesktop.org/wiki/Specifications/menu-spec diff --git a/wireshark-1.2.0-disable-warning-dialog.patch b/wireshark-1.2.0-disable-warning-dialog.patch index ebd52e7..ef10eea 100644 --- a/wireshark-1.2.0-disable-warning-dialog.patch +++ b/wireshark-1.2.0-disable-warning-dialog.patch @@ -18,7 +18,7 @@ Index: gtk/main.c #ifdef _WIN32 static void npf_warning_dialog_cb(gpointer dialog, gint btn _U_, gpointer data _U_) -@@ -1979,9 +1979,10 @@ check_and_warn_user_startup(gchar *cf_na +@@ -1993,9 +1993,10 @@ check_and_warn_user_startup(gchar *cf_na #endif { gchar *cur_user, *cur_group; @@ -30,7 +30,7 @@ Index: gtk/main.c if (running_with_special_privs() && recent.privs_warn_if_elevated) { cur_user = get_cur_username(); cur_group = get_cur_groupname(); -@@ -1993,7 +1994,7 @@ check_and_warn_user_startup(gchar *cf_na +@@ -2007,7 +2008,7 @@ check_and_warn_user_startup(gchar *cf_na simple_dialog_check_set(priv_warning_dialog, "Don't show this message again."); simple_dialog_set_cb(priv_warning_dialog, priv_warning_dialog_cb, NULL); } diff --git a/wireshark-1.2.4-enable_lua.patch b/wireshark-1.2.4-enable_lua.patch new file mode 100644 index 0000000..041ac3c --- /dev/null +++ b/wireshark-1.2.4-enable_lua.patch @@ -0,0 +1,13 @@ +Index: wireshark-1.4.2/epan/wslua/template-init.lua +=================================================================== +--- wireshark-1.4.2.orig/epan/wslua/template-init.lua ++++ wireshark-1.4.2/epan/wslua/template-init.lua +@@ -42,7 +42,7 @@ if running_superuser then + local disabled_lib = {} + setmetatable(disabled_lib,{ __index = function() error("this package has been disabled") end } ); + +- dofile = function() error("dofile has been disabled") end ++-- dofile = function() error("dofile has been disabled") end + loadfile = function() error("loadfile has been disabled") end + loadlib = function() error("loadlib has been disabled") end + require = function() error("require has been disabled") end diff --git a/wireshark-1.4.1.tar.bz2 b/wireshark-1.4.1.tar.bz2 deleted file mode 100644 index 40aca01..0000000 --- a/wireshark-1.4.1.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8bd1e7e0f6408afb48e5e1e3ded651e0dee41a77a65868b72e26f36f3aff0983 -size 20208926 diff --git a/wireshark-1.4.2.tar.bz2 b/wireshark-1.4.2.tar.bz2 new file mode 100644 index 0000000..af6b8ef --- /dev/null +++ b/wireshark-1.4.2.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44c6e1ec328fa8e1e7b3838b2f25d51c36b38c562fc0d097ba464205fdb049b2 +size 20208792 diff --git a/wireshark-corosync-packet-dissector.patch b/wireshark-corosync-packet-dissector.patch index f260ecb..aa0ff18 100644 --- a/wireshark-corosync-packet-dissector.patch +++ b/wireshark-corosync-packet-dissector.patch @@ -1,7 +1,7 @@ -Index: wireshark-1.4.1/epan/dissectors/Makefile.common +Index: wireshark-1.4.2/epan/dissectors/Makefile.common =================================================================== ---- wireshark-1.4.1.orig/epan/dissectors/Makefile.common -+++ wireshark-1.4.1/epan/dissectors/Makefile.common +--- wireshark-1.4.2.orig/epan/dissectors/Makefile.common ++++ wireshark-1.4.2/epan/dissectors/Makefile.common @@ -307,6 +307,8 @@ DISSECTOR_SRC = \ packet-collectd.c \ packet-componentstatus.c \ @@ -11,10 +11,10 @@ Index: wireshark-1.4.1/epan/dissectors/Makefile.common packet-cosine.c \ packet-cpfi.c \ packet-cpha.c \ -Index: wireshark-1.4.1/epan/dissectors/packet-corosync-totemnet.c +Index: wireshark-1.4.2/epan/dissectors/packet-corosync-totemnet.c =================================================================== --- /dev/null -+++ wireshark-1.4.1/epan/dissectors/packet-corosync-totemnet.c ++++ wireshark-1.4.2/epan/dissectors/packet-corosync-totemnet.c @@ -0,0 +1,1274 @@ +/* packet-corosync-totemnet.c + * Routines for the lowest level(encryption/decryption) protocol used in Corosync cluster engine @@ -1290,10 +1290,10 @@ Index: wireshark-1.4.1/epan/dissectors/packet-corosync-totemnet.c +} + +/* packet-corosync-totemnet.c ends here */ -Index: wireshark-1.4.1/epan/dissectors/packet-corosync-totemsrp.c +Index: wireshark-1.4.2/epan/dissectors/packet-corosync-totemsrp.c =================================================================== --- /dev/null -+++ wireshark-1.4.1/epan/dissectors/packet-corosync-totemsrp.c ++++ wireshark-1.4.2/epan/dissectors/packet-corosync-totemsrp.c @@ -0,0 +1,1379 @@ +/* packet-corosync-totemsrp.c + * Dissectors for totem single ring protocol implementated in corosync cluster engine @@ -2674,10 +2674,10 @@ Index: wireshark-1.4.1/epan/dissectors/packet-corosync-totemsrp.c + corosync_totemsrp_is_little_endian(pinfo)); +} + -Index: wireshark-1.4.1/epan/dissectors/packet-corosync-totemsrp.h +Index: wireshark-1.4.2/epan/dissectors/packet-corosync-totemsrp.h =================================================================== --- /dev/null -+++ wireshark-1.4.1/epan/dissectors/packet-corosync-totemsrp.h ++++ wireshark-1.4.2/epan/dissectors/packet-corosync-totemsrp.h @@ -0,0 +1,53 @@ +/* packet-corosync-totemsrp.h + * Dissectors for totem single ring protocol implemented in corosync cluster engine @@ -2732,10 +2732,10 @@ Index: wireshark-1.4.1/epan/dissectors/packet-corosync-totemsrp.h + + +#endif /* packet-totemsrp.h */ -Index: wireshark-1.4.1/epan/dissectors/Makefile.in +Index: wireshark-1.4.2/epan/dissectors/Makefile.in =================================================================== ---- wireshark-1.4.1.orig/epan/dissectors/Makefile.in -+++ wireshark-1.4.1/epan/dissectors/Makefile.in +--- wireshark-1.4.2.orig/epan/dissectors/Makefile.in ++++ wireshark-1.4.2/epan/dissectors/Makefile.in @@ -224,6 +224,8 @@ am__objects_3 = libdissectors_la-packet- libdissectors_la-packet-collectd.lo \ libdissectors_la-packet-componentstatus.lo \ diff --git a/wireshark-nfsv4-opts.patch b/wireshark-nfsv4-opts.patch new file mode 100644 index 0000000..91b97cb --- /dev/null +++ b/wireshark-nfsv4-opts.patch @@ -0,0 +1,65 @@ +Index: wireshark-1.4.2/epan/dissectors/packet-nfs.c +=================================================================== +--- wireshark-1.4.2.orig/epan/dissectors/packet-nfs.c ++++ wireshark-1.4.2/epan/dissectors/packet-nfs.c +@@ -8795,6 +8795,8 @@ dissect_nfs_argop4(tvbuff_t *tvb, int of + ftree = proto_item_add_subtree(fitem, ett_nfs_argop4); + } + ++ proto_item_append_text(tree, ", Ops(%d):", ops); ++ + for (ops_counter=0; ops_countercinfo, COL_INFO)) { ++ col_append_fstr(pinfo->cinfo, COL_INFO, " %s", ++ names_nfsv4_operation[opcode - 3].strptr); ++ } ++ } ++ proto_item_append_text(tree, " %s", ++ names_nfsv4_operation[opcode - 3].strptr); ++ + switch(opcode) + { + case NFS4_OP_ACCESS: +@@ -9290,6 +9301,8 @@ dissect_nfs_resop4(tvbuff_t *tvb, int of + ftree = proto_item_add_subtree(fitem, ett_nfs_resop4); + } + ++ proto_item_append_text(tree, ", Ops(%d):", ops); ++ + for (ops_counter = 0; ops_counter < ops; ops_counter++) + { + opcode = tvb_get_ntohl(tvb, offset); +@@ -9321,6 +9334,17 @@ dissect_nfs_resop4(tvbuff_t *tvb, int of + + offset = dissect_nfs_nfsstat4(tvb, offset, newftree, &status); + ++ if (check_col(pinfo->cinfo, COL_INFO)) { ++ if (status != NFS4_OK) { ++ col_append_fstr(pinfo->cinfo, COL_INFO, " %s(%d)", ++ names_nfsv4_operation[opcode - 3].strptr, status); ++ } else if (opcode != NFS4_OP_PUTFH) { ++ col_append_fstr(pinfo->cinfo, COL_INFO, " %s", ++ names_nfsv4_operation[opcode - 3].strptr); ++ } ++ } ++ proto_item_append_text(tree, " %s(%d)", ++ names_nfsv4_operation[opcode - 3].strptr, status); + /* + * With the exception of NFS4_OP_LOCK, NFS4_OP_LOCKT, and + * NFS4_OP_SETATTR, all other ops do *not* return data with the +@@ -9665,7 +9689,7 @@ static const value_string nfsv3_proc_val + static const vsff nfs4_proc[] = { + { 0, "NULL", + dissect_nfs3_null_call, dissect_nfs3_null_reply }, +- { 1, "COMPOUND", ++ { 1, "COMP", + dissect_nfs4_compound_call, dissect_nfs4_compound_reply }, + { 0, NULL, NULL, NULL } + }; diff --git a/wireshark.changes b/wireshark.changes index 223437a..1cf81ad 100644 --- a/wireshark.changes +++ b/wireshark.changes @@ -1,3 +1,43 @@ +------------------------------------------------------------------- +Wed Dec 8 16:15:13 UTC 2010 - prusnak@opensuse.org + +- updated to 1.4.2 + - security fixes: + * Nephi Johnson of BreakingPoint discovered that the LDSS + dissector could overflow a buffer. (Bug 5318) + * The ZigBee ZCL dissector could go into an infinite loop. (Bug 5303) + - bug fixes: + * File-Open Display Filter is overwritten by Save-As Filename. (Bug 3894) + * Wireshark crashes with "Gtk-ERROR **: Byte index 6 is off + the end of the line" if click on last PDU. (Bug 5285) + * GTK-ERROR can occur in packets when there are multiple + Netbios/SMB headers in a single frame. (Bug 5289) + * "Tshark -G values" crashes on Windows. (Bug 5296) + * PROFINET I&M0FilterData packet not fully decoded. (Bug 5299) + * PROFINET MRP linkup/linkdown decoding incorrect. (Bug 5300) + * [lua] Dumper:close() will cause a segfault due later GC of + the Dumper. (Bug 5320) + * Network Instruments' trace files sometimes cannot be read with + an error message of "Observer: bad record: Invalid magic number". (Bug 5330) + * IO Graph Time of Day times incorrect for filtered data. (Bug 5340) + * Wireshark tools do not detect and read some ERF files correctly. (Bug 5344) + * "editcap -h" sends some lines to stderr and others to stdout. (Bug 5353) + * IP Timestamp Option: "flag=3" variant (prespecified) not displayed + correctly. (Bug 5357) + * AgentX PDU Header 'hex field highlighting' incorrectly spans + extra bytes. (Bug 5364) + * AgentX dissector cannot handle null OID in Open-PDU. (Bug 5368) + * Crash with "Gtk-ERROR **: Byte index 6 is off the end of the line". (Bug 5374) + * ANCP Portmanagment TLV wrong decoded. (Bug 5388) + * Crash during startup because of Python SyntaxError in wspy_libws.py. (Bug 5389) + - Updated Protocol Support + * AgentX, ANCP, DIAMETER, HTTP, IP, LDSS, MIME, NBNS, PROFINET, + SIP, TCP, Telnet, ZigBee + - New and Updated Capture File Support + * Endace ERF, Network Instruments Observer +- fix lua error at startup (enable_lua.patch) [bnc#650434] +- apply nfsv4 patch from Fedora (nfsv4-opts.patch) + ------------------------------------------------------------------- Wed Nov 10 15:36:51 UTC 2010 - prusnak@opensuse.org diff --git a/wireshark.spec b/wireshark.spec index 8bc6ec7..ec46b9d 100644 --- a/wireshark.spec +++ b/wireshark.spec @@ -1,44 +1,27 @@ # -# spec file for package wireshark (Version 1.4.1) -# -# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany. -# -# All modifications and additions to the file contributed by third parties -# remain the property of their copyright owners, unless otherwise agreed -# upon. The license for this file, and modifications and additions to the -# file, is the same license as for the pristine package itself (unless the -# license for the pristine package is not an Open Source License, in which -# case the license is the MIT License). An "Open Source License" is a -# license that conforms to the Open Source Definition (Version 1.9) -# published by the Open Source Initiative. - # Please submit bugfixes or comments via http://bugs.opensuse.org/ # -# norootforbuild - +# disable caps for now +%define use_caps 0 Name: wireshark -License: GPLv2+ -Group: Productivity/Networking/Diagnostic -Summary: A Network Traffic Analyser -Version: 1.4.1 +Version: 1.4.2 Release: 1 +License: GPLv2+ +Summary: A Network Traffic Analyser Url: http://www.wireshark.org/ +Group: Productivity/Networking/Diagnostic Source: http://www.wireshark.org/download/src/%{name}-%{version}.tar.bz2 Source1: include.filelist -# PATCH-FIX-OPENSUSE wireshark-1.0.8-desktop.patch bnc#349782 prusnak@suse.cz -- fix icon and run as root -Patch0: %{name}-1.0.8-desktop.patch # PATCH-FIX-OPENSUSE wireshark-1.2.0-disable-warning-dialog.patch bnc#349782 prusnak@suse.cz -- don't show warning when running as root Patch1: %{name}-1.2.0-disable-warning-dialog.patch # PATCH-FEATURE-OPENSUSE wireshark-1.2.0-geoip.patch prusnak@suse.cz -- search in /var/lib/GeoIP if user hasn't set any GeoIP folders Patch2: %{name}-1.2.0-geoip.patch # PATCH-FEATURE-UPSTREAM wireshark-corosync-packet-dissector.patch tserong@novell.com -- add corosync packet dissector Patch3: %{name}-corosync-packet-dissector.patch -BuildRoot: %{_tmppath}/%{name}-%{version}-build -Requires: xdg-utils -Provides: ethereal = %{version} -Obsoletes: ethereal < %{version} +Patch4: %{name}-1.2.4-enable_lua.patch +Patch5: %{name}-nfsv4-opts.patch BuildRequires: bison BuildRequires: cairo-devel BuildRequires: flex @@ -59,9 +42,13 @@ BuildRequires: python BuildRequires: tcpd-devel BuildRequires: xdg-utils BuildRequires: zlib-devel +Requires: xdg-utils +Provides: ethereal = %{version} +Obsoletes: ethereal < %{version} +BuildRoot: %{_tmppath}/%{name}-%{version}-build %if 0%{?suse_version} -BuildRequires: update-desktop-files BuildRequires: libGeoIP-devel +BuildRequires: update-desktop-files Recommends: GeoIP %endif @@ -93,35 +80,46 @@ view the reconstructed stream of a TCP session. %prep %setup -q -%patch0 -%patch1 %patch2 %patch3 -p1 +%patch4 -p1 +%patch5 -p1 +sed -i 's/^Icon=wireshark.png$/Icon=wireshark/' wireshark.desktop +# run as root on 11.3 and older - bnc#349782 +%if ! %{use_caps} +%patch1 +sed -i 's!^Exec=wireshark!Exec=/usr/bin/xdg-su -c /usr/bin/wireshark!' wireshark.desktop +%endif %build %configure make %{?_smp_mflags} %install -make DESTDIR=$RPM_BUILD_ROOT install -find $RPM_BUILD_ROOT -name "*.la" -delete -print -ln -fs wireshark $RPM_BUILD_ROOT%{_bindir}/ethereal -ln -fs tshark $RPM_BUILD_ROOT%{_bindir}/tethereal -install -d -m 0755 $RPM_BUILD_ROOT%{_sysconfdir} -install -d -m 0755 $RPM_BUILD_ROOT%{_mandir}/man1/ -#install -m 0644 *.1 $RPM_BUILD_ROOT%{_mandir}/man1/ -install -d -m 0755 $RPM_BUILD_ROOT%{_includedir}/wireshark +%make_install +find %{buildroot} -name "*.la" -delete -print +ln -fs wireshark %{buildroot}%{_bindir}/ethereal +ln -fs tshark %{buildroot}%{_bindir}/tethereal +install -d -m 0755 %{buildroot}%{_sysconfdir} +install -d -m 0755 %{buildroot}%{_mandir}/man1/ +# install -m 0644 *.1 %{buildroot}%{_mandir}/man1/ +install -d -m 0755 %{buildroot}%{_includedir}/wireshark for i in `cat %{SOURCE1}`; do - install -m 644 $i $RPM_BUILD_ROOT%{_includedir}/wireshark + install -m 644 $i %{buildroot}%{_includedir}/wireshark done -install -D -m 0644 image/wsicon48.png $RPM_BUILD_ROOT%{_datadir}/pixmaps/wireshark.png -install -D -m 0644 wireshark.desktop $RPM_BUILD_ROOT%{_datadir}/applications/wireshark.desktop +install -D -m 0644 image/wsicon48.png %{buildroot}%{_datadir}/pixmaps/wireshark.png +install -D -m 0644 wireshark.desktop %{buildroot}%{_datadir}/applications/wireshark.desktop %if 0%{?suse_version} %suse_update_desktop_file %{name} %endif %clean -rm -rf $RPM_BUILD_ROOT +rm -rf %{buildroot} + +%if %{use_caps} +%pre +getent group wireshark >/dev/null || groupadd wireshark +%endif %post -p /sbin/ldconfig @@ -134,15 +132,30 @@ rm -rf $RPM_BUILD_ROOT %doc %{_mandir}/man4/* %{_datadir}/applications/wireshark.desktop %{_datadir}/pixmaps/wireshark.png -%{_bindir}/[^i]* +%{_bindir}/ethereal +%{_bindir}/tethereal +%{_bindir}/wireshark +%{_bindir}/editcap +%{_bindir}/tshark +%{_bindir}/mergecap +%{_bindir}/text2pcap +%{_bindir}/dftest +%{_bindir}/capinfos +%{_bindir}/randpkt +%if %{use_caps} +%attr(0750,root,wireshark) %caps(cap_net_raw,cap_net_admin=eip) %{_bindir}/dumpcap +%else +%{_bindir}/dumpcap +%endif +%{_bindir}/rawshark %{_libdir}/lib*.so.* -%{_libdir}/wireshark -%{_datadir}/wireshark +%{_libdir}/wireshark/ +%{_datadir}/wireshark/ %files devel %defattr(-,root,root) %doc doc/README.* -%{_includedir}/wireshark +%{_includedir}/wireshark/ %{_libdir}/*.so %{_bindir}/idl2wrs %{_mandir}/man1/idl2wrs*