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

Freeze exception: pyrit 3.0-2



Hello,

I'd like to ask for a freeze exception for pyrit 3.0-2.

It adds a patch provided by upstream fixing run-time detection of
MMX/SSE2, and drops my patch (I simply disabled optimizations, pending
resolution of the issue). It would be nice to have this feature enabled
in Squeeze.

Otherwise, it closes #590520.

I'm aware of the FTBFS on kfreebsd-* and hurd. These are caused by a bug
in a dependency (#589995), which makes pyrit's unit tests fail. I have
asked for removal of pyrit for these architectures (#594248), and an NMU
is being considered to resolve this issue as it has been open for more
than a month.

Regards,
Christian


diff -Nru pyrit-0.3.0/debian/changelog pyrit-0.3.0/debian/changelog
--- pyrit-0.3.0/debian/changelog	2010-07-21 23:54:01.000000000 +0200
+++ pyrit-0.3.0/debian/changelog	2010-08-25 00:03:22.000000000 +0200
@@ -1,3 +1,20 @@
+pyrit (0.3.0-2) unstable; urgency=low
+
+  * debian/control:
+    - Bump Standards-Version to 3.9.1 (no changes needed)
+    - Updated package description, indicating that optimizations are detected
+      at run-time (a result of dropping patch 0008 and adding 0012).
+  * debian/patches:
+    - Added 0012-fix-SSE2-detection
+      Fixes a crash in run-time SSE2 detection on systems with MMX but no SSE2
+    - Added 0013-FTBFS-on-failed-unit-tests
+      Unit test failures should result in a FTBFS so that issues such as
+      #589995 are properly caught. Closes: #590520
+    - Dropped 0008-disable-optimizations-on-i386
+      Misguided patch; support for MMX/SSE2/VIA PADLOCK is detected at runtime
+ 
+ -- Christian Kastner <debian@kvr.at>  Tue, 24 Aug 2010 20:48:11 +0200
+
 pyrit (0.3.0-1) unstable; urgency=low
 
   * Initial release (Closes: #570918)
diff -Nru pyrit-0.3.0/debian/control pyrit-0.3.0/debian/control
--- pyrit-0.3.0/debian/control	2010-07-03 20:56:22.000000000 +0200
+++ pyrit-0.3.0/debian/control	2010-08-04 21:19:59.000000000 +0200
@@ -10,7 +10,7 @@
     python-scapy (>= 2.0),
     python-sqlalchemy (>= 0.6.1),
     libssl-dev
-Standards-Version: 3.9.0
+Standards-Version: 3.9.1
 Homepage: http://code.google.com/p/pyrit/
 Vcs-Svn: svn://svn.debian.org/python-apps/packages/pyrit/trunk/
 Vcs-Browser: http://svn.debian.org/viewsvn/python-apps/packages/pyrit/trunk/
@@ -33,5 +33,6 @@
  Nvidia CUDA, OpenCL and VIA Padlock, it is currently by far the most powerful
  attack against one of the world's most used security-protocols.
  .
- This package contains the basic version of Pyrit. Support for non-free
- technologies such as CUDA can be added through extensions.
+ This package contains the basic version of Pyrit, with support for MMX, SSE2
+ and VIA PADLOCK detected at run-time. Support for non-free technologies such
+ as Nvidia CUDA can be added through extensions.
diff -Nru pyrit-0.3.0/debian/copyright pyrit-0.3.0/debian/copyright
--- pyrit-0.3.0/debian/copyright	2010-07-20 18:42:19.000000000 +0200
+++ pyrit-0.3.0/debian/copyright	2010-08-04 21:17:39.000000000 +0200
@@ -7,7 +7,7 @@
 License: GPL-3+ with OpenSSL exception
 
 Files: cpyrit/_cpyrit_cpu_sse2.S
-Copyright: 2005, Simon Marechal <simon@banquise.net>( 
+Copyright: 2005, Simon Marechal <simon@banquise.net>
            2008-2009, Alvaro Salmador <naplam33@msn.com>
            2009-2010, Lukas Lueg <lukas.lueg@gmail.com>
 License: GPL-3+ with OpenSSL exception
diff -Nru pyrit-0.3.0/debian/patches/0002-Clean-up-after-unit-tests.patch pyrit-0.3.0/debian/patches/0002-Clean-up-after-unit-tests.patch
--- pyrit-0.3.0/debian/patches/0002-Clean-up-after-unit-tests.patch	2010-06-18 20:21:54.000000000 +0200
+++ pyrit-0.3.0/debian/patches/0002-Clean-up-after-unit-tests.patch	2010-08-23 23:49:59.000000000 +0200
@@ -5,8 +5,9 @@
 The setup code for unit tests in test/ creates temporary directories without
 removing them afterwards. This patch does this.
 
-Forwarded: yes
-Last-Update: 2010-05-19
+Applied-Upstream: 0.3.1, http://code.google.com/p/pyrit/source/detail?r=272
+Last-Update: 2010-08-23
+
 ---
  test/test_pyrit.py |    3 ++-
  1 files changed, 2 insertions(+), 1 deletions(-)
diff -Nru pyrit-0.3.0/debian/patches/0004-Fixed-deprecation-warning-generated-by-sql-alchemy.patch pyrit-0.3.0/debian/patches/0004-Fixed-deprecation-warning-generated-by-sql-alchemy.patch
--- pyrit-0.3.0/debian/patches/0004-Fixed-deprecation-warning-generated-by-sql-alchemy.patch	2010-07-20 18:44:25.000000000 +0200
+++ pyrit-0.3.0/debian/patches/0004-Fixed-deprecation-warning-generated-by-sql-alchemy.patch	2010-08-23 23:53:10.000000000 +0200
@@ -1,6 +1,6 @@
 From: Christian Kastner <debian@kvr.at>
 Date: Wed, 9 Jun 2010 22:25:09 +0200
-Subject: [PATCH] Fixed depreciation warning generated by sql-alchemy
+Subject: [PATCH] Fixed deprecation warning generated by sql-alchemy
 
 sql.Binary was renamed to sql.LargeBinary in python-sqlalchemy-0.6.1, causing a
 warning to be emitted everytime Pyrit is run. This patch resolves the issue.
@@ -8,8 +8,8 @@
 This patch is Debian-specific.
 
 Bug: http://code.google.com/p/pyrit/issues/detail?id=134
-Forwarded: no
-Last-Update: 2010-06-09
+Forwarded: not-needed
+Last-Update: 2010-08-23
 ---
  cpyrit/storage.py |   11 +++++++----
  1 files changed, 7 insertions(+), 4 deletions(-)
diff -Nru pyrit-0.3.0/debian/patches/0005-Link-against-libcrypto-not-libssl.patch pyrit-0.3.0/debian/patches/0005-Link-against-libcrypto-not-libssl.patch
--- pyrit-0.3.0/debian/patches/0005-Link-against-libcrypto-not-libssl.patch	2010-07-20 22:31:04.000000000 +0200
+++ pyrit-0.3.0/debian/patches/0005-Link-against-libcrypto-not-libssl.patch	2010-08-23 23:49:26.000000000 +0200
@@ -6,8 +6,8 @@
 against libcrypto instead.
 
 Bug: http://code.google.com/p/pyrit/issues/detail?id=168
-Applied-Upstream: 0.3.1
-Last-Update: 2010-07-03
+Applied-Upstream: 0.3.1, http://code.google.com/p/pyrit/source/detail?r=265
+Last-Update: 2010-08-23
 
 Index: pyrit-0.3.0/setup.py
 ===================================================================
diff -Nru pyrit-0.3.0/debian/patches/0007-add-option-to-limit-cores.patch pyrit-0.3.0/debian/patches/0007-add-option-to-limit-cores.patch
--- pyrit-0.3.0/debian/patches/0007-add-option-to-limit-cores.patch	2010-07-20 22:31:04.000000000 +0200
+++ pyrit-0.3.0/debian/patches/0007-add-option-to-limit-cores.patch	2010-08-23 23:54:10.000000000 +0200
@@ -5,10 +5,9 @@
 This patch adds a configuration option that allows one to limit the number of
 cores Pyrit will use. This only affects non-GPU processors.
 
-This patch is Debian-specific.
-
-Forwarded: no
-Last-Update: 2010-07-06
+Forwarded: yes
+Applied-Upstream: 0.3.1, http://code.google.com/p/pyrit/source/detail?r=275
+Last-Update: 2010-08-23
 
 Index: pyrit-0.3.0/cpyrit/config.py
 ===================================================================
diff -Nru pyrit-0.3.0/debian/patches/0008-disable-optimizations-on-i386.patch pyrit-0.3.0/debian/patches/0008-disable-optimizations-on-i386.patch
--- pyrit-0.3.0/debian/patches/0008-disable-optimizations-on-i386.patch	2010-07-20 22:31:04.000000000 +0200
+++ pyrit-0.3.0/debian/patches/0008-disable-optimizations-on-i386.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,44 +0,0 @@
-From: Christian Kastner <debian@kvr.at>
-Date: Tue, 6 Jul 2010 23:46:27 +0200
-Subject: [PATCH] Disable SSE2 on i386
-
-Disable SSE2 support on i386 as we cannot guarantee that all i386 processors
-support this instruction set. Also, disable VIA PADLOCK on i386.
-
-This is a Debian-specific fix. This fix is expected to disappear in later
-revisions of Pyrit (e.g. by building multiple extensions, optimized for various
-platforms). See also debian/TODO.
-
-Bug: http://code.google.com/p/pyrit/issues/detail?id=24
-Last-Update: 2010-07-06
-
-Index: pyrit-0.3.0/cpyrit/_cpyrit_cpu.h
-===================================================================
---- pyrit-0.3.0.orig/cpyrit/_cpyrit_cpu.h	2010-05-20 11:52:08.000000000 +0200
-+++ pyrit-0.3.0/cpyrit/_cpyrit_cpu.h	2010-07-07 17:08:17.225842958 +0200
-@@ -19,7 +19,6 @@
- */
- 
- #ifdef __i386__
--    #define COMPILE_PADLOCK
-     #if defined(linux)
-         #define MCTX_EIP(context) ((context)->uc_mcontext.gregs[REG_EIP])
-     #elif defined(__APPLE__)
-@@ -29,14 +28,14 @@
-             #define MCTX_EIP(context) (*((unsigned long*)&(context)->uc_mcontext->ss.eip))
-         #endif
-         #define MAP_ANONYMOUS MAP_ANON
--    #else
--        #undef COMPILE_PADLOCK
-     #endif
- #endif
- 
- 
- #if (defined(__i386__) || defined(__x86_64__))
--    #define COMPILE_SSE2
-+    #ifdef __x86_64__
-+        #define COMPILE_SSE2
-+    #endif
-     #define PUT_BE(n,b,i)                            \
-     {                                                       \
-         (b)[(i)    ] = (unsigned char) ( (n) >> 24 );       \
diff -Nru pyrit-0.3.0/debian/patches/0009-exception-handling-fix.patch pyrit-0.3.0/debian/patches/0009-exception-handling-fix.patch
--- pyrit-0.3.0/debian/patches/0009-exception-handling-fix.patch	2010-07-20 22:31:04.000000000 +0200
+++ pyrit-0.3.0/debian/patches/0009-exception-handling-fix.patch	2010-08-23 23:54:46.000000000 +0200
@@ -4,8 +4,8 @@
 
 Jakub Wilk discovered a bug when handling multiple exceptions in pyrit_cli.py.
 
-Forwarded: yes
-Last-Update: 2010-07-09
+Applied-Upstream: 0.3.1, http://code.google.com/p/pyrit/source/detail?r=271
+Last-Update: 2010-08-23
 
 Index: pyrit-0.3.0/pyrit_cli.py
 ===================================================================
diff -Nru pyrit-0.3.0/debian/patches/0012-fix-SSE2-detection.patch pyrit-0.3.0/debian/patches/0012-fix-SSE2-detection.patch
--- pyrit-0.3.0/debian/patches/0012-fix-SSE2-detection.patch	1970-01-01 01:00:00.000000000 +0100
+++ pyrit-0.3.0/debian/patches/0012-fix-SSE2-detection.patch	2010-07-27 00:29:42.000000000 +0200
@@ -0,0 +1,24 @@
+From: Luks Lueg <lukas.lueg@gmail.com>
+Date: Wed, 23 Jul 2010 18:25:32 +0200
+Subject: [PATCH] Fix SSE2 detection
+
+The MMX/SSE2 detection code led to a crash on those (now) rare CPUs supporting
+MMX but not SSE2.
+
+Origin: upstream, http://code.google.com/p/pyrit/source/detail?r=271
+Applied-Upstream: 0.3.1
+Last-Update: 2010-07-27
+
+Index: pyrit-0.3.0/cpyrit/_cpyrit_cpu_sse2.S
+===================================================================
+--- pyrit-0.3.0.orig/cpyrit/_cpyrit_cpu_sse2.S	2010-07-27 00:25:28.990044350 +0200
++++ pyrit-0.3.0/cpyrit/_cpyrit_cpu_sse2.S	2010-07-27 00:26:16.462043069 +0200
+@@ -498,7 +498,7 @@
+ 
+     movl    $1, %eax
+     cpuid
+-    testl   $(0x00800000 | 0x04000000), %edx  // bits 23 and 26 (MMX/SSE2)
++    testl   $0x04000000, %edx  // bit 26 (SSE2)
+     jz      no_sse2
+     movl    $1, %eax
+     jmp     cpuid_exit
diff -Nru pyrit-0.3.0/debian/patches/0013-FTBFS-on-failed-unit-tests.patch pyrit-0.3.0/debian/patches/0013-FTBFS-on-failed-unit-tests.patch
--- pyrit-0.3.0/debian/patches/0013-FTBFS-on-failed-unit-tests.patch	1970-01-01 01:00:00.000000000 +0100
+++ pyrit-0.3.0/debian/patches/0013-FTBFS-on-failed-unit-tests.patch	2010-08-23 23:59:11.000000000 +0200
@@ -0,0 +1,43 @@
+From: Christian Kastner <debian@kvr.at>
+Date: Wed, 27 Jul 2010 23:33:17 +0200
+Subject: [PATCH] Build should FTBFS on failed unit tests
+
+This patch modifies the unit testing script such that it sets the exit code to
+1 if any of the unit tests failed, causing a FTBFS.
+
+Bug-Debian: http://bugs.debian.org/590520
+Forwarded: yes
+Last-Update: 2010-08-23
+
+Index: pyrit-0.3.0/test/test_pyrit.py
+===================================================================
+--- pyrit-0.3.0.orig/test/test_pyrit.py	2010-07-27 23:40:34.000000000 +0200
++++ pyrit-0.3.0/test/test_pyrit.py	2010-07-27 23:48:08.766042196 +0200
+@@ -22,6 +22,7 @@
+ 
+ import os
+ import shutil
++import sys
+ import random
+ import unittest
+ import cStringIO
+@@ -291,7 +292,8 @@
+     print "Testing with filesystem-storage..."
+     loader = unittest.TestLoader()
+     suite = loader.loadTestsFromTestCase(Pyrit_CLI_FS_TestFunctions)
+-    unittest.TextTestRunner(verbosity=2).run(suite)
++    result = unittest.TextTestRunner(verbosity=2).run(suite)
++    success = result.wasSuccessful()
+ 
+     try:
+         storage = cpyrit.storage.getStorage('sqlite:///:memory:')
+@@ -301,4 +303,8 @@
+         print "Testing with database-storage..."
+         loader = unittest.TestLoader()
+         suite = loader.loadTestsFromTestCase(Pyrit_CLI_DB_TestFunctions)
+-        unittest.TextTestRunner(verbosity=2).run(suite)
++        result = unittest.TextTestRunner(verbosity=2).run(suite)
++        if success:
++            success = result.wasSuccessful()
++
++    sys.exit(not success)
diff -Nru pyrit-0.3.0/debian/patches/series pyrit-0.3.0/debian/patches/series
--- pyrit-0.3.0/debian/patches/series	2010-07-21 21:51:26.000000000 +0200
+++ pyrit-0.3.0/debian/patches/series	2010-07-27 23:32:44.000000000 +0200
@@ -5,7 +5,8 @@
 0005-Link-against-libcrypto-not-libssl.patch
 0006-custom-config-file.patch
 0007-add-option-to-limit-cores.patch
-0008-disable-optimizations-on-i386.patch
 0009-exception-handling-fix.patch
 0010-Add-SHA1-licensing-update-from-upstream.patch
 0011-fix-list-index-error.patch
+0012-fix-SSE2-detection.patch
+0013-FTBFS-on-failed-unit-tests.patch
diff -Nru pyrit-0.3.0/debian/TODO pyrit-0.3.0/debian/TODO
--- pyrit-0.3.0/debian/TODO	2010-07-09 20:08:55.000000000 +0200
+++ pyrit-0.3.0/debian/TODO	2010-07-28 22:17:37.000000000 +0200
@@ -1,11 +1,7 @@
 Concerning upstream sources
 ---------------------------
 
-2010-07-06 (CK):
-  Implement a build procedure supporting builds optimized for various
-  platforms, most notably SSE2 support on i386 and VIA PADLOCK support. These
-  optimizations have currently been disabled so that Pyrit can run on all
-  Debian-supported i386 variants.
+No TODOs at this time.
 
 
 

Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: