From: Christian Heimes Date: Sun, 14 Oct 2012 20:16:27 +0000 (+0200) Subject: Issue #16234: Modify sha3's block_size method to return NotImplemented. X-Git-Tag: v3.4.0a1~2254 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7707f6fd328ebdad65671323aaed294d5a0fe1db;p=python 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 --git a/Modules/_sha3/sha3module.c b/Modules/_sha3/sha3module.c index bde474f8f8..08f683934b 100644 --- a/Modules/_sha3/sha3module.c +++ b/Modules/_sha3/sha3module.c @@ -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 PyMethodDef SHA3_methods[] = { 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 *