[ssldump] Fixed wrong decoder table ends to avoid many segfaults (#747398)

Robert Scheck robert at fedoraproject.org
Mon Oct 24 20:44:16 UTC 2011


commit e9646e8e8b0ea7ad017cfaa7b8705e4b7da9b6ce
Author: Robert Scheck <robert at fedoraproject.org>
Date:   Mon Oct 24 22:44:09 2011 +0200

    Fixed wrong decoder table ends to avoid many segfaults (#747398)

 ssldump-0.9-table-stops.patch |   54 +++++++++++++++++++++++++++++++++++++++++
 ssldump.spec                  |    7 ++++-
 2 files changed, 60 insertions(+), 1 deletions(-)
---
diff --git a/ssldump-0.9-table-stops.patch b/ssldump-0.9-table-stops.patch
new file mode 100644
index 0000000..f3f7920
--- /dev/null
+++ b/ssldump-0.9-table-stops.patch
@@ -0,0 +1,54 @@
+Patch by Robert Scheck <robert at fedoraproject.org> for ssldump >= 0.9b3, which is
+changing the decoder table ends from 0 to -1 to match the expected value of table
+search routines. Without this patch, ssldump segfaults at latest after some time
+of usage when decoding unknown enumerated values. For further information, please
+have a look to Red Hat Bugzilla, bug ID #747398.
+
+--- ssldump-0.9b3/ssl/ssl.enums.c		2011-10-24 22:33:03.000000000 +0200
++++ ssldump-0.9b3/ssl/ssl.enums.c.table-stops	2011-10-24 22:34:20.000000000 +0200
+@@ -500,7 +500,7 @@
+ 		"Finished",
+ 		decode_HandshakeType_Finished
+ 	},
+-{0}
++{-1}
+ };
+ 
+ decoder cipher_suite_decoder[]={
+@@ -778,7 +778,7 @@
+ 		"fatal",
+ 		decode_AlertLevel_fatal
+ 	},
+-{0}
++{-1}
+ };
+ 
+ static int decode_AlertDescription_close_notify(ssl,dir,seg,data)
+@@ -1081,7 +1081,7 @@
+ 		"no_renegotiation",
+ 		decode_AlertDescription_no_renegotiation
+ 	},
+-{0}
++{-1}
+ };
+ 
+ decoder compression_method_decoder[]={
+@@ -1145,6 +1145,6 @@
+ 		"dss_fixed_dh",
+ 		decode_client_certificate_type_dss_fixed_dh
+ 	},
+-{0}
++{-1}
+ };
+ 
+--- ssldump-0.9b3/ssl/ssl_enum.c		2011-10-24 22:33:03.000000000 +0200
++++ ssldump-0.9b3/ssl/ssl_enum.c.table-stops	2011-10-24 22:34:44.000000000 +0200
+@@ -260,7 +260,7 @@
+ 		"finished",
+ 		decode_HandshakeType_finished
+ 	},
+-{0}
++{-1}
+ };
+ 
+ decoder cipher_suite_decoder[]={
diff --git a/ssldump.spec b/ssldump.spec
index b1bc9c9..a6f8376 100644
--- a/ssldump.spec
+++ b/ssldump.spec
@@ -1,7 +1,7 @@
 Summary:	An SSLv3/TLS network protocol analyzer
 Name:		ssldump
 Version:	0.9
-Release:	0.3.b3%{?dist}
+Release:	0.4.b3%{?dist}
 License:	BSD with advertising
 Group:		Applications/Internet
 URL:		http://www.rtfm.com/%{name}/
@@ -11,6 +11,7 @@ Patch0:		ssldump-0.9-openssl.patch
 Patch1:		ssldump-0.9-libpcap.patch
 Patch2:		ssldump-0.9-aes.patch
 Patch3:		ssldump-0.9-cvs-20060619.patch
+Patch4:		ssldump-0.9-table-stops.patch
 BuildRequires:	openssl-devel, %{_includedir}/pcap.h, autoconf, automake
 BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 
@@ -29,6 +30,7 @@ based on tcpdump, a network monitoring and data acquisition tool.
 %patch1 -p1 -b .libpcap
 %patch2 -p1 -b .aes
 %patch3 -p1 -b .cvs-20060619
+%patch4 -p1 -b .table-stops
 cp -pf %{SOURCE1} .
 
 # Rebuilding of configure file is needed for Patch1
@@ -61,6 +63,9 @@ rm -rf $RPM_BUILD_ROOT
 %{_mandir}/man1/%{name}.1*
 
 %changelog
+* Mon Oct 24 2011 Robert Scheck <robert at fedoraproject.org> 0.9-0.4.b3
+- Fixed wrong decoder table ends to avoid many segfaults (#747398)
+
 * Wed Feb 09 2011 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0.9-0.3.b3
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
 


More information about the scm-commits mailing list