refactor(api): use a unpacker based on libmpack instead of msgpack-c

Currently this is more or less a straight off reimplementation,
but this allow further optimizations down the line, especially
for avoiding memory allocations of rpc objects.

Current score for "make functionaltest; make oldtest" on a -DEXITFREE build:

is 117 055 352 xfree(ptr != NULL) calls (that's NUMBERWANG!).
This commit is contained in:
bfredl
2022-05-23 19:53:19 +02:00
parent d93ba03c71
commit d5f047bee0
9 changed files with 452 additions and 152 deletions

View File

@@ -83,5 +83,7 @@ MPACK_API int mpack_read(mpack_tokbuf_t *tb, const char **b, size_t *bl,
mpack_token_t *tok) FUNUSED FNONULL;
MPACK_API int mpack_write(mpack_tokbuf_t *tb, char **b, size_t *bl,
const mpack_token_t *tok) FUNUSED FNONULL;
int mpack_rtoken(const char **buf, size_t *buflen,
mpack_token_t *tok);
#endif /* MPACK_CORE_H */