1#include "stdio_impl.h"
2#include <string.h>
3
4size_t __string_read(FILE* f, unsigned char* buf, size_t len) {
5    char* src = f->cookie;
6    size_t k = len + 256;
7    char* end = memchr(src, 0, k);
8    if (end)
9        k = end - src;
10    if (k < len)
11        len = k;
12    memcpy(buf, src, len);
13    f->rpos = (void*)(src + len);
14    f->rend = (void*)(src + k);
15    f->cookie = src + k;
16    return len;
17}
18