logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

scan_urlencoded - decode urlencoded data

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.

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"

Name

       scan_urlencoded - decode urlencoded data

Return Value

       scan_urlencoded returns the number of bytes successfully scanned and processed from src.

See Also

scan_urlencoded2(3), scan_xlong(3), scan_8long(3), fmt_ulong(3)

                                                                                              scan_urlencoded(3)

Syntax

#include<libowfat/textcode.h>

       size_t scan_urlencoded(const char *src,char *dest,size_t* destlen);

See Also