summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--development/pycrypto/pycrypto-CVE-2009-0544.patch24
-rw-r--r--development/pycrypto/pycrypto.SlackBuild7
-rw-r--r--development/pycrypto/pycrypto.info3
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"
+