.TH scan_cescape 3 .SH NAME scan_cescape \- parse C escaped string .SH SYNTAX .B #include size_t \fBscan_cescape\fP(const char *\fIsrc\fR,char *\fIdest\fR,size_t* \fIdestlen\fR); .SH DESCRIPTION scan_cescape parses C escaped text from src into dest. Parsing stops at the 0 terminator, invalid input characters or a double quote that was not escaped. C escape sequences like \\n and \\x0a and \\012 are translated into their binary counterparts. The C99 escape sequences \\u and \\U are supported and lead to UTF-8 sequences being output. scan_cescape will then write the number of bytes in dest into *destlen, and return the number of bytes decoded from src. dest can be NULL. destlen can be NULL. To make sure dest is large enough, either allocate strlen(src)+1 bytes or call scan_cescape twice, the first time with dest == NULL (*destlen will still be written). .SH "RETURN VALUE" scan_cescape returns the number of bytes successfully parsed from src. .SH EXAMPLES scan_cescape("test\\n\");",buf,&i) -> return 7, i=5, buf="test\n". .SH "SEE ALSO" fmt_jsonescape(3), fmt_cescape(3), scan_ldapescape(3)