#ifndef SIEVE_BINARY_DUMPER_H #define SIEVE_BINARY_DUMPER_H #include "sieve-common.h" /* * Binary dumper object */ struct sieve_binary_dumper; struct sieve_binary_dumper * sieve_binary_dumper_create(struct sieve_binary *sbin); void sieve_binary_dumper_free(struct sieve_binary_dumper **dumper); pool_t sieve_binary_dumper_pool(struct sieve_binary_dumper *dumper); /* * Formatted output */ void sieve_binary_dumpf(const struct sieve_dumptime_env *denv, const char *fmt, ...) ATTR_FORMAT(2, 3); void sieve_binary_dump_sectionf(const struct sieve_dumptime_env *denv, const char *fmt, ...) ATTR_FORMAT(2, 3); /* * Dumping the binary */ bool sieve_binary_dumper_run(struct sieve_binary_dumper *dumper, struct ostream *stream, bool verbose); /* * Hexdump production */ void sieve_binary_dumper_hexdump(struct sieve_binary_dumper *dumper, struct ostream *stream); #endif