.TH scan_urlencoded 3 .SH NAME scan_urlencoded \- decode urlencoded data .SH SYNTAX .B #include size_t \fBscan_urlencoded\fP(const char *\fIsrc\fR,char *\fIdest\fR,size_t* \fIdestlen\fR); .SH DESCRIPTION scan_urlencoded decodes urlencoded data from src into dest. Decoding stops when it encounters any invalid input characters (including ' ', '?' and '&'). It will then write the number of decoded bytes in dest into *destlen, and return the number of bytes decoded from src. Note that the plus character is handled differently depending on whether we are encoding the query part or the path (application/x-www-form-urlencoded). In "http://example.com/a+b?c+d", only the second plus can be decoded as a space character. If you want + decoded to space, use scan_urlencoded2. dest can be NULL. destlen can be NULL. dest can be src. .SH "RETURN VALUE" scan_urlencoded returns the number of bytes successfully scanned and processed from src. .SH EXAMPLES scan_urlencoded("foo%3ebar",buf,&i) -> return 9, i=7, buf="foo.bar" scan_urlencoded("foo+bar",buf,&i) -> return 7, i=7, buf="foo+bar" scan_urlencoded2("foo+bar",buf,&i) -> return 7, i=7, buf="foo bar" .SH "SEE ALSO" scan_urlencoded2(3), scan_xlong(3), scan_8long(3), fmt_ulong(3)