Fix FTBFS in Rawhide

- Fix endianness in the Bitcoin protocol dissector (patch no. 19)
- Last-minute fix for wrongly backported change (patch no. 20)
- Recent Glib doesn't provide g_memmove macro anymore so we have to fallback to
  memmove (patch no. 21)

Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
This commit is contained in:
Peter Lemenkov 2013-12-19 14:08:43 +04:00
parent 3a1a1b5cf9
commit b23552849b
4 changed files with 175 additions and 1 deletions

View File

@ -0,0 +1,22 @@
From: Michael Mann <mmann78@netscape.net>
Date: Wed, 18 Dec 2013 13:15:13 +0000
Subject: [PATCH] Bugfix port number endianness. Bug 9530
(https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9530)
Taken from part of r52609 enhancement.
svn path=/trunk-1.10/; revision=54217
diff --git a/epan/dissectors/packet-bitcoin.c b/epan/dissectors/packet-bitcoin.c
index 5dd9dae..d7467da 100644
--- a/epan/dissectors/packet-bitcoin.c
+++ b/epan/dissectors/packet-bitcoin.c
@@ -256,7 +256,7 @@ create_address_tree(tvbuff_t *tvb, proto_item *ti, guint32 offset)
offset += 16;
/* port */
- proto_tree_add_item(tree, hf_address_port, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ proto_tree_add_item(tree, hf_address_port, tvb, offset, 2, ENC_BIG_ENDIAN);
return tree;
}

View File

@ -0,0 +1,81 @@
From: Chris Maynard <Christopher.Maynard@GTECH.COM>
Date: Wed, 18 Dec 2013 16:31:29 +0000
Subject: [PATCH] Something went wrong with the backport of r53608 + r53611.
Fix it.
svn path=/trunk-1.10/; revision=54225
diff --git a/ui/gtk/capture_dlg.c b/ui/gtk/capture_dlg.c
index 44d5652..db74289 100644
--- a/ui/gtk/capture_dlg.c
+++ b/ui/gtk/capture_dlg.c
@@ -1019,7 +1019,7 @@ guint32 value)
if (value > (((guint32)G_MAXINT + 1) / 1000)) {
return 0;
} else {
- return value;
+ return value;
}
case(SIZE_UNIT_MEGABYTES):
if (value > (((guint32)G_MAXINT + 1) / (1000 * 1000))) {
@@ -3257,13 +3257,11 @@ static void promisc_mode_callback(GtkToggleButton *button, gpointer d _U_)
GtkTreeIter iter;
GtkTreeView *if_cb;
GtkTreeModel *model;
- gboolean enabled = FALSE, set;
+ gboolean enabled = FALSE;
interface_t device;
interface_options interface_opts;
guint i;
- set = gtk_toggle_button_get_active(button);
- gtk_toggle_button_set_active(button, (set?FALSE:TRUE));
if (gtk_toggle_button_get_active(button))
enabled = TRUE;
@@ -4489,7 +4487,9 @@ update_properties_all(void)
/* If all selected interfaces are in promiscuous mode, check the global
"promiscuous mode" checkbox, otherwise un-check it. */
promisc_b = (GtkWidget *)g_object_get_data(G_OBJECT(cap_open_w), E_CAP_PROMISC_KEY_ALL);
+ g_signal_handler_block(promisc_b, promisc_all_handler_id);
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(promisc_b), promisc_all);
+ g_signal_handler_unblock(promisc_b, promisc_all_handler_id);
/* If all selected interfaces have the same filter string, set the
global filter string to it. */
@@ -5315,7 +5315,7 @@ fprintf(stderr, "Adding the default filter \"%s\"???\n", global_capture_opts.def
window_get_geometry(top_level, &tl_geom);
gtk_window_set_default_size(GTK_WINDOW(cap_open_w), tl_geom.width * 8 / 10, -1);
-
+
gtk_widget_show_all(cap_open_w);
window_present(cap_open_w);
@@ -5356,7 +5356,7 @@ capture_start_cb(GtkWidget *w _U_, gpointer d _U_)
}
success = capture_dlg_prep(cap_open_w);
if (success)
- window_destroy(GTK_WIDGET(cap_open_w));
+ window_destroy(GTK_WIDGET(cap_open_w));
if (!success)
return; /* error in options dialog */
}
@@ -5712,7 +5712,7 @@ create_and_fill_model(GtkTreeView *view)
device.snaplen = WTAP_MAX_PACKET_SIZE;
device.has_snaplen = FALSE;
}
-
+
if (device.has_snaplen) {
snaplen_string = g_strdup_printf("%d", device.snaplen);
} else {
@@ -5725,7 +5725,7 @@ create_and_fill_model(GtkTreeView *view)
device.buffer = buffer;
} else {
device.buffer = DEFAULT_CAPTURE_BUFFER_SIZE;
- }
+ }
#endif
global_capture_opts.all_ifaces = g_array_remove_index(global_capture_opts.all_ifaces, i);
g_array_insert_val(global_capture_opts.all_ifaces, i, device);

View File

@ -0,0 +1,56 @@
From: Peter Lemenkov <lemenkov@gmail.com>
Date: Wed, 18 Dec 2013 13:39:07 +0400
Subject: [PATCH] Remove g_memmove
Glib no longer offers this macro so we have to fallback to C90 memmove.
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
diff --git a/epan/dissectors/packet-ssl-utils.c b/epan/dissectors/packet-ssl-utils.c
index 1ab3c8d..0f1ad44 100644
--- a/epan/dissectors/packet-ssl-utils.c
+++ b/epan/dissectors/packet-ssl-utils.c
@@ -1633,7 +1633,7 @@ ssl_private_decrypt(guint len, guchar* encr_data, SSL_PRIVATE_KEY* pk)
ssl_debug_printf("pcry_private_decrypt: stripping %d bytes, decr_len %" G_GSIZE_MODIFIER "u\n",
rc, decr_len);
ssl_print_data("decrypted_unstrip_pre_master", decr_data_ptr, decr_len);
- g_memmove(decr_data_ptr, &decr_data_ptr[rc], decr_len - rc);
+ memmove(decr_data_ptr, &decr_data_ptr[rc], decr_len - rc);
decr_len -= rc;
out:
@@ -1670,7 +1670,7 @@ out:
ssl_debug_printf("pcry_private_decrypt: stripping %d bytes, decr_len %d\n",
rc, decr_len);
ssl_print_data("decrypted_unstrip_pre_master", decr_data_ptr, decr_len);
- g_memmove(decr_data_ptr, &decr_data_ptr[rc], decr_len - rc);
+ memmove(decr_data_ptr, &decr_data_ptr[rc], decr_len - rc);
decr_len -= rc;
#endif /* SSL_FAST */
gcry_mpi_release(text);
diff --git a/packaging/macosx/native-gtk/glibconfig.h b/packaging/macosx/native-gtk/glibconfig.h
index e0a9589..2730202 100644
--- a/packaging/macosx/native-gtk/glibconfig.h
+++ b/packaging/macosx/native-gtk/glibconfig.h
@@ -78,8 +78,6 @@ typedef unsigned long gsize;
# define g_ATEXIT(proc) (atexit (proc))
#endif
-#define g_memmove(dest,src,len) G_STMT_START { memmove ((dest), (src), (len)); } G_STMT_END
-
#define GLIB_MAJOR_VERSION 2
#define GLIB_MINOR_VERSION 12
#define GLIB_MICRO_VERSION 9
diff --git a/ui/export_object_smb.c b/ui/export_object_smb.c
index dec3de9..59ccaa2 100644
--- a/ui/export_object_smb.c
+++ b/ui/export_object_smb.c
@@ -254,7 +254,7 @@ gpointer dest_memory_addr;
/* ...then, put the chunk of the file in the right place */
if (!file->is_out_of_memory) {
dest_memory_addr = entry->payload_data + chunk_offset;
- g_memmove(dest_memory_addr, eo_info->payload_data, eo_info->payload_len);
+ memmove(dest_memory_addr, eo_info->payload_data, eo_info->payload_len);
}
}

View File

@ -21,7 +21,7 @@
Summary: Network traffic analyzer
Name: wireshark
Version: 1.10.4
Release: 1%{?dist}
Release: 2%{?dist}
License: GPL+
Group: Applications/Internet
Source0: http://wireshark.org/download/src/%{name}-%{version}.tar.bz2
@ -62,6 +62,13 @@ Patch16: wireshark-0016-Crash-when-selecting-Decode-As-based-on-SCTP-PPID.-B.pat
Patch17: wireshark-0017-Fix-https-bugs.wireshark.org-bugzilla-show_bug.cgi-i.patch
# Backported from upstream.
Patch18: wireshark-0018-Copy-over-from-Trunk.patch
# Backported from upstream.
Patch19: wireshark-0019-Bugfix-port-number-endianness.-Bug-9530-https-bugs.w.patch
# Backported from upstream.
Patch20: wireshark-0020-Something-went-wrong-with-the-backport-of-r53608-r53.patch
# Sent upstream:
# https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9576
Patch21: wireshark-0021-Remove-g_memmove.patch
Url: http://www.wireshark.org/
BuildRequires: libpcap-devel >= 0.9
@ -174,6 +181,9 @@ and plugins.
#%patch16 -p1 -b .fix_sctp
#%patch17 -p1 -b .fix_global_pinfo
%patch18 -p1 -b .fix_overflow
%patch19 -p1 -b .fix_endianness
%patch20 -p1 -b .fix_previous_backport
%patch21 -p1 -b .remove_g_memmove
%build
%ifarch s390 s390x sparcv9 sparc64
@ -372,6 +382,11 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%{_datadir}/aclocal/*
%changelog
* Thu Dec 19 2013 Peter Lemenkov <lemenkov@gmail.com> - 1.10.4-2
- Fix endianness in the Bitcoin protocol dissector (patch no. 19)
- Last-minute fix for wrongly backported change (patch no. 20)
- Fix FTBFS in Rawhide (see patch no. 21 - recent Glib doesn't provide g_memmove macro anymore)
* Wed Dec 18 2013 Peter Lemenkov <lemenkov@gmail.com> - 1.10.4-1
- Ver. 1.10.4
- Don't apply upsteamed patches no. 13, 14, 15, 16, 17