869e8af5b722032920698743b27e89e6abd170e7Aki Tuomi /* encode spaces as underscores, encode crlfs, adds =?utf-8?q?..?= encapsulation */
869e8af5b722032920698743b27e89e6abd170e7Aki Tuomi /* treat input as true binary, no lf => crlf conversion, only CRLF is preserved */
869e8af5b722032920698743b27e89e6abd170e7Aki Tuomi/* Initialize quoted-printable encoder. Write all the encoded output to dest. */
869e8af5b722032920698743b27e89e6abd170e7Aki Tuomistruct qp_encoder *qp_encoder_init(string_t *dest, unsigned int max_length,
869e8af5b722032920698743b27e89e6abd170e7Aki Tuomi/* Translate more (binary) data into quoted printable.
869e8af5b722032920698743b27e89e6abd170e7Aki Tuomi If QP_ENCODER_FLAG_BINARY_DATA is not set, text is assumed to be in
869e8af5b722032920698743b27e89e6abd170e7Aki Tuomi UTF-8 (but not enforced). No other character sets are supported. */
869e8af5b722032920698743b27e89e6abd170e7Aki Tuomivoid qp_encoder_more(struct qp_encoder *qp, const void *src, size_t src_size);
869e8af5b722032920698743b27e89e6abd170e7Aki Tuomi/* Finish encoding any pending input.
869e8af5b722032920698743b27e89e6abd170e7Aki Tuomi This function also resets the entire encoder state, so the same encoder can
869e8af5b722032920698743b27e89e6abd170e7Aki Tuomi be used to encode more data if wanted. */