uint8_t *out) {
REQUIRE(k != NULL);
REQUIRE(out != NULL);
+ REQUIRE(inlen == 0 || in != NULL);
uint64_t k0 = U8TO64_LE(k);
uint64_t k1 = U8TO64_LE(k + 8);
uint64_t b = ((uint64_t)inlen) << 56;
- const uint8_t *end = in + inlen - (inlen % sizeof(uint64_t));
+ const uint8_t *end = (in == NULL)
+ ? NULL
+ : in + inlen - (inlen % sizeof(uint64_t));
const size_t left = inlen & 7;
for (; in != end; in += 8) {
uint8_t *out) {
REQUIRE(k != NULL);
REQUIRE(out != NULL);
+ REQUIRE(inlen == 0 || in != NULL);
uint32_t k0 = U8TO32_LE(k);
uint32_t k1 = U8TO32_LE(k + 4);
uint32_t b = ((uint32_t)inlen) << 24;
- const uint8_t *end = in + inlen - (inlen % sizeof(uint32_t));
+ const uint8_t *end = (in == NULL)
+ ? NULL
+ : in + inlen - (inlen % sizeof(uint32_t));
const int left = inlen & 3;
for (; in != end; in += 4) {