{ \
struct bin in; octet b[SZ_##W]; \
if (!PyArg_ParseTuple(arg, "O&:hashbuf" #w, convbin, &in)) goto end; \
- if (in.sz > MASK##n) TYERR("string too long"); \
+ if (in.sz > MASK##n) VALERR("too large"); \
STORE##W(b, in.sz); if (gaeadaad_hash(me, b, sizeof(b))) goto end; \
if (gaeadaad_hash(me, in.p, in.sz)) goto end; \
RETURN_ME; \
{ \
struct bin in; \
if (!PyArg_ParseTuple(arg, "O&:hashbuf" #w, convbin, &in)) goto end; \
- if (in.sz > MASK##n) TYERR("string too long"); \
+ if (in.sz > MASK##n) VALERR("too large"); \
GH_HASHBUF##W(GHASH_H(me), in.p, in.sz); \
RETURN_ME; \
end: \
struct bin in; \
octet b[SZ_##W]; \
if (!PyArg_ParseTuple(arg, "O&:hashbuf" #w, convbin, &in)) goto end; \
- if (in.sz > MASK##n) TYERR("string too long"); \
+ if (in.sz > MASK##n) VALERR("too large"); \
STORE##W(b, in.sz); poly1305_hash(P1305_CTX(me), b, sizeof(b)); \
poly1305_hash(P1305_CTX(me), in.p, in.sz); \
RETURN_ME; \
struct bin in; \
octet b[SZ_##W]; \
if (!PyArg_ParseTuple(arg, "O&:hashbuf" #w, convbin, &in)) goto end; \
- if (in.sz > MASK##n) TYERR("string too long"); \
+ if (in.sz > MASK##n) VALERR("too large"); \
if (shake_check(me, 0)) goto end; \
STORE##W(b, in.sz); shake_hash(SHAKE_H(me), b, sizeof(b)); \
shake_hash(SHAKE_H(me), in.p, in.sz); \
if w <= 3:
n = 1 << 8*w
h0, _ = makefn(w + n)
- me.assertRaises((ValueError, TypeError),
- hashfn, h0, C.ByteString.zero(n))
+ me.assertRaises(ValueError, hashfn, h0, C.ByteString.zero(n))
def check_hashbuffer(me, makefn):
"""Test the various `hash...' methods."""