cgi_parse(3)
π¦ cgi_parse β NAME π¦
okay bestie, this is cgi_parse from cgi/cgi.h β Parse incoming CGI data π that's literally the whole job description and she does it well.
β¨ SYNOPSIS β¨
#include <cgi/cgi.h>
NEOERR *cgi_parse (CGI *cgi);
π ARGUMENTS π
cgiβ a pointer to a CGI pointer. yes, a double pointer situation, it's giving pointer-to-a-pointer, we love a little indirection moment π
π DESCRIPTION π
so here's the tea: cgi_init got split into two sections, because doing everything at once is not the vibe. one of those sections parses just the basics, and the second one is our girl cgi_parse. β¨
cgi_parse is responsible for parsing the entity body of the HTTP request. that payload is typically only sent (expected) on POST/PUT requests, but generally this is called on all incoming requests. no cap. π
what she actually does: she walks the list of registered parse callbacks (see cgi_register_parse_cb), and if none of those matches or handles the request, it
- handlers:
POSTw/application/x-www-form-urlencoded POSTw/application/form-dataPUTw/ any content type
In general, if there is noContent-Length, thencgi_parseignores the payload and doesn't raise an error. so if your body is giving invisible, she just shrugs and moves on π no drama, no error, iconic behaviour honestly.
πΈ RETURN VALUE πΈ
Either data populated into files and cgi->hdf, or whatever other side effects of your own registered callbacks. like, she returns vibes and side effects, that's the deal π«Ά
β SEE ALSO β
cgi_debug_init(3), cgi_parse(3), cgi_destroy(3), cgi_js_escape(3), cgi_html_escape_strfunc(3), cgi_register_strfuncs(3), cgi_output(3), parse_rfc2388(3), cgi_url_validate(3), open_upload(3), cgi_cs_init(3), cgi_url_escape_more(3), cgi_html_strip_strfunc(3), cgi_neo_error(3), cgi_redirect(3), cgi_filehandle(3), cgi_register_parse_cb(3), cgi_url_escape(3), cgi_init(3), cgi_redirect_uri(3), cgi_cookie_clear(3), cgi_url_unescape(3), cgi_vredirect(3), cgi_display(3), cgi_html_ws_strip(3), cgi_error(3), cgi_cookie_set(3), cgi_text_html_strfunc(3), cgi_cookie_authority
ClearSilver π§ 12 July 2007 β mwah, that's the source and the date, tysm for coming to my ted talk, go parse something ππ
π¦ where this page comes from
- debian bookworm: clearsilver-dev 0.10.5-4+b5
- debian trixie: clearsilver-dev 0.10.5-6+b1
- epel 10: clearsilver 0.10.5-80.el10_2 Β· Apache-1.1
- epel 9: clearsilver 0.10.5-74.el9 Β· Apache-1.1
- fedora 43: clearsilver 0.10.5-80.fc43 Β· Apache-1.1
- fedora 44: clearsilver 0.10.5-82.fc44 Β· Apache-1.1
- ubuntu jammy: clearsilver-dev 0.10.5-4build3
- ubuntu noble: clearsilver-dev 0.10.5-4build7
- ubuntu questing: clearsilver-dev 0.10.5-6build1
- ubuntu resolute: clearsilver-dev 0.10.5-7
- ubuntu stonking: clearsilver-dev 0.10.5-7build1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms