diff options
author | Aleksey Veresov <aleksey@veresov.pro> | 2020-07-13 08:33:09 +0300 |
---|---|---|
committer | Aleksey Veresov <aleksey@veresov.pro> | 2020-07-13 08:33:09 +0300 |
commit | 2aabe59373c29410c00ae59cd86cb475c961b56c (patch) | |
tree | 43063644a70dee80276cc65b8a0509c154c22473 /man | |
parent | c452c3dc47bacf1cb4dfd7a8129d62fa8819282e (diff) | |
download | magi-2aabe59373c29410c00ae59cd86cb475c961b56c.tar magi-2aabe59373c29410c00ae59cd86cb475c961b56c.tar.xz magi-2aabe59373c29410c00ae59cd86cb475c961b56c.zip |
magi_response_send, urlenc docs.
Diffstat (limited to 'man')
-rw-r--r-- | man/magi.3 | 16 | ||||
-rw-r--r-- | man/magi_urlenc.3 | 51 |
2 files changed, 64 insertions, 3 deletions
@@ -23,12 +23,22 @@ Main task of the library is to analyse CGI request and represent it to the user in .B magi_request data structure. This is done by calling -.B magi_parse +.B magi_parse_head +and +.B magi_parse_body +(such separation allows to determine body processing on head content, +if there is no need to do so you can use shortcut +.BR magi_parse ) on initialized via .B magi_request_init request variable. After initialization the user is able to configure -limits on the input and setup callback to process files loaded as -.IR multipart/form-data . +limits on the input +.RB ( magi_request_limits , +everything is unlimited as default) +and setup callback to process files loaded as +.I multipart/form-data +.RB ( magi_file_callback , +with default addon_max of 1KB). The .B magi library comes with diff --git a/man/magi_urlenc.3 b/man/magi_urlenc.3 index e69de29..ac0c798 100644 --- a/man/magi_urlenc.3 +++ b/man/magi_urlenc.3 @@ -0,0 +1,51 @@ +.TH MAGI 3 2020-05-02 v0.0.1 "Library Manual" +.SH NAME +.B magi_urlenc +\- implementation of url encoding +.SH SYNOPSYS +.B #include <magi.h> +.P +int +.BR magi_urlenc_size "(const char *" plain ); +.P +void +.BR magi_urlenc "(const char *" plain ", char *" code ); +.SH DESCRIPTION +Can be helpful in forming urls in response. Use +.B magi_urlenc_size +to find what the size of code will be and then call +.B magi_urlenc +for encoding itself. +.P +URL encoding is described in +.IR "RFC 3986" . +Briefly it is changing every space into plus sign and every not +alpha-numerical or not one of "~-._" character into percent sign +followed by hexademical representation of given character byte. +.P +.B code +passed to +.B magi_urlenc +should be at least size of +.BR magi_urlenc_size ( plain ). +.SH RETURN VALUES +.BR magi_urlenc_size : +size of url encoding of +.BR plain . +.SH EXAMPLES +The following forms URL to search in DuckDuckGo for provided +.RB "char *" query +in +.RB "char *" url . +.P +.RS +.nf +const char *prefix = "http://duckduckgo.com/?q="; +const int prelen = strlen(prefix); +const int urlencsize = magi_urlenc_size(query); +url = malloc(prelen + urlencsize + 1); +strcpy(url, prefix); +magi_urlenc(query, url + prelen); +url[prelen + urlencsize] = 0; +.fi +.RE |