update method
Implementation
Poly1305 update(Uint8List m, int mpos, int bytes) {
int i, want;
if (_leftover != 0) {
want = (16 - _leftover);
if (want > bytes) want = bytes;
for (i = 0; i < want; i++) {
_buffer[_leftover + i] = m[mpos + i];
}
bytes -= want;
mpos += want;
_leftover += want;
if (_leftover < 16) return this;
_blocks(_buffer, 0, 16);
_leftover = 0;
}
if (bytes >= 16) {
want = bytes - (bytes % 16);
_blocks(m, mpos, want);
mpos += want;
bytes -= want;
}
if (bytes != 0) {
for (i = 0; i < bytes; i++) {
_buffer[_leftover + i] = m[mpos + i];
}
_leftover += bytes;
}
return this;
}