view src/doveadm/dsync/dsync-serializer.h @ 23017:c1d36f2575c7 default tip

lib-imap: Fix "Don't accept strings with NULs" cherry-pick
author Timo Sirainen <timo.sirainen@open-xchange.com>
date Thu, 29 Aug 2019 09:55:25 +0300
parents b2076acc3715
children
line wrap: on
line source

#ifndef DSYNC_SERIALIZER_H
#define DSYNC_SERIALIZER_H

#define NULL_CHR '\002'

struct dsync_serializer *dsync_serializer_init(const char *const keys[]);
void dsync_serializer_deinit(struct dsync_serializer **serializer);

const char *
dsync_serializer_encode_header_line(struct dsync_serializer *serializer);
struct dsync_serializer_encoder *
dsync_serializer_encode_begin(struct dsync_serializer *serializer);
void dsync_serializer_encode_add(struct dsync_serializer_encoder *encoder,
				 const char *key, const char *value);
void dsync_serializer_encode_finish(struct dsync_serializer_encoder **encoder,
				    string_t *output);

#endif