diff options
-rw-r--r-- | development/pycrypto/pycrypto-CVE-2009-0544.patch | 24 | ||||
-rw-r--r-- | development/pycrypto/pycrypto.SlackBuild | 7 | ||||
-rw-r--r-- | development/pycrypto/pycrypto.info | 3 |
3 files changed, 31 insertions, 3 deletions
diff --git a/development/pycrypto/pycrypto-CVE-2009-0544.patch b/development/pycrypto/pycrypto-CVE-2009-0544.patch new file mode 100644 index 0000000000..7d2f11dcd2 --- /dev/null +++ b/development/pycrypto/pycrypto-CVE-2009-0544.patch @@ -0,0 +1,24 @@ +diff -p -up pycrypto-2.0.1/src/ARC2.c.orig pycrypto-2.0.1/src/ARC2.c +--- pycrypto-2.0.1/src/ARC2.c.orig 2002-05-17 10:34:45.000000000 -0300 ++++ pycrypto-2.0.1/src/ARC2.c 2009-02-20 13:50:28.000000000 -0300 +@@ -11,6 +11,7 @@ + */ + + #include <string.h> ++#include "Python.h" + + #define MODULE_NAME ARC2 + #define BLOCK_SIZE 8 +@@ -146,6 +147,12 @@ block_init(block_state *self, U8 *key, i + We'll hardwire it to 1024. */ + #define bits 1024 + ++ if ((U32)keylength > sizeof(self->xkey)) { ++ PyErr_SetString(PyExc_ValueError, ++ "ARC2 key length must be less than 128 bytes"); ++ return; ++ } ++ + memcpy(self->xkey, key, keylength); + + /* Phase 1: Expand input key to 128 bytes */ diff --git a/development/pycrypto/pycrypto.SlackBuild b/development/pycrypto/pycrypto.SlackBuild index daf103df8e..a94ef1f89e 100644 --- a/development/pycrypto/pycrypto.SlackBuild +++ b/development/pycrypto/pycrypto.SlackBuild @@ -2,7 +2,7 @@ # Slackware build script for pycrypto -# Copyright 2008 Heinz Wiesinger <pprkut@liwjatan.at> +# Copyright 2008-2009 Heinz Wiesinger <pprkut@liwjatan.at> # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -25,7 +25,7 @@ PRGNAM=pycrypto VERSION=2.0.1 ARCH=${ARCH:-i486} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} TAG=${TAG:-_SBo} CWD=$(pwd) @@ -56,6 +56,9 @@ find . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \; +# Fixes buffer overflow in the PyCrypto ARC2 module +patch -p1 -i $CWD/pycrypto-CVE-2009-0544.patch + python setup.py install --root=$PKG find $PKG | xargs file | grep "shared object" | grep ELF | \ diff --git a/development/pycrypto/pycrypto.info b/development/pycrypto/pycrypto.info index 518a534e6a..be26ed09fd 100644 --- a/development/pycrypto/pycrypto.info +++ b/development/pycrypto/pycrypto.info @@ -5,4 +5,5 @@ DOWNLOAD="http://www.amk.ca/files/python/crypto/pycrypto-2.0.1.tar.gz" MD5SUM="4d5674f3898a573691ffb335e8d749cd" MAINTAINER="ppr:kut" EMAIL="pprkut@liwjatan.at" -APPROVED="David Somero" +APPROVED="dsomero" + |