sparkey_returncode sparkey_logiter_fill_key()

in src/logreader.c [384:399]


sparkey_returncode sparkey_logiter_fill_key(sparkey_logiter *iter, sparkey_logreader *log, uint64_t maxlen, uint8_t *buf, uint64_t *len) {
  *len = 0;
  while (maxlen > 0) {
    uint8_t *buf2;
    uint64_t len2;
    RETHROW(sparkey_logiter_keychunk(iter, log, maxlen, &buf2, &len2));
    if (len2 == 0) {
      return SPARKEY_SUCCESS;
    }
    memcpy(buf, buf2, len2);
    buf += len2;
    *len += len2;
    maxlen -= len2;
  }
  return SPARKEY_SUCCESS;
}