(original) (raw)
changeset: 79722:40a1652349e9 user: Christian Heimes christian@cheimes.de date: Sun Oct 14 22:16:27 2012 +0200 files: Modules/_sha3/sha3module.c description: Issue #16234: Modify sha3's block_size method to return NotImplemented. This makes the sha3 types unusable from the hmac module. HMAC-SHA3 hasn't been specified yet. diff -r bf9d118779f5 -r 40a1652349e9 Modules/_sha3/sha3module.c --- a/Modules/_sha3/sha3module.c Sun Oct 14 16:54:35 2012 +0300 +++ b/Modules/_sha3/sha3module.c Sun Oct 14 22:16:27 2012 +0200 @@ -140,7 +140,7 @@ #include "keccak/KeccakF-1600-opt32.c" #endif -#define SHA3_BLOCKSIZE 200 /* 1600 bits */ +/* #define SHA3_BLOCKSIZE 200 // 1600 bits */ #define SHA3_MAX_DIGESTSIZE 64 /* 512 bits */ #define SHA3_state hashState #define SHA3_init Init @@ -367,7 +367,11 @@ static PyObject * SHA3_get_block_size(SHA3object *self, void *closure) { - return PyLong_FromLong(SHA3_BLOCKSIZE); + /* HMAC-SHA3 hasn't been specified yet and no official test vectors are + * available. Thus block_size returns NotImplemented to prevent people + * from using SHA3 with the hmac module. + */ + Py_RETURN_NOTIMPLEMENTED; } static PyObject * /christian@cheimes.de