Niels, This is an important bugfix. Current code will just silently skip higher blocks. Do you want a demonstration/testcase from me? чт, 20 сент. 2018 г. в 14:32, Dmitry Eremin-Solenikov <dbarysh...@gmail.com>: > > If src == dst, ctr16 code will fail to increment src and dst pointers, > always overwriting first block. > > Signed-off-by: Dmitry Eremin-Solenikov <dbarysh...@gmail.com> > --- > ctr16.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/ctr16.c b/ctr16.c > index 60418e8b9032..7e1c23d20832 100644 > --- a/ctr16.c > +++ b/ctr16.c > @@ -91,7 +91,7 @@ _ctr_crypt16(const void *ctx, nettle_cipher_func *f, > f(ctx, CTR_BUFFER_LIMIT, buffer->b, buffer->b); > if (length - i < CTR_BUFFER_LIMIT) > goto done; > - memxor3 (dst, src, buffer->b, CTR_BUFFER_LIMIT); > + memxor3 (dst + i, src + i, buffer->b, CTR_BUFFER_LIMIT); > } > > if (blocks > 0) > -- > 2.18.0 >
-- With best wishes Dmitry _______________________________________________ nettle-bugs mailing list nettle-bugs@lists.lysator.liu.se http://lists.lysator.liu.se/mailman/listinfo/nettle-bugs