strescape.h revision 03b33ccb012636e453189ceef3865dee7812392e
33396dc46ea52c18f47db1b5d590880806521005Sumit Bose#define IS_ESCAPED_CHAR(c) ((c) == '"' || (c) == '\\' || (c) == '\'')
33396dc46ea52c18f47db1b5d590880806521005Sumit Bose/* escape all '\', '"' and "'" characters */
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher/* remove all '\' characters, append to given string */
324fb26ba803a999bedc29e93c46c84f27abf5b7Sumit Bosevoid str_append_unescaped(string_t *dest, const void *src, size_t src_size);
324fb26ba803a999bedc29e93c46c84f27abf5b7Sumit Bose/* remove all '\' characters */
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallagher/* For Dovecot's internal protocols: Escape \001, \t, \r and \n characters
84ae5edab16ad6be5e3be956cb6fa031c1428eb5Stephen Gallagher using \001. */
551aa6c36797ed720487f5974dcadabf19e6ff9fStephen Gallaghervoid str_tabescape_write(string_t *dest, const char *src);
002f84aea86371aa079b867c0ec39396b97109d3Lukas Slebodnikvoid str_append_tabunescaped(string_t *dest, const void *src, size_t src_size);