NAME
khttp_free,
khttp_child_free —
free a CGI instance for kcgi
LIBRARY
library “libkcgi”
SYNOPSIS
#include
<sys/types.h>
#include <stdarg.h>
#include <stdint.h>
#include <kcgi.h>
void
khttp_free(struct kreq
*req);
void
khttp_child_free(struct kreq
*req);
DESCRIPTION
The
khttp_free()
and khttp_child_free() functions free the resources
of req allocated by
khttp_parse(3) or
khttp_fcgi_parse(3), flushing the HTTP data stream in the process.
After calling this function, the members of req should
not be used and the function should not be called again.
The
khttp_child_free()
function performs the same operations as
khttp_free(), but does not flush the HTTP data
stream. Thus, it may be used after invoking fork(2) without confusing the output buffer.
Note:
if you're forking within your CGI application, be aware of some caveats.
Most web servers will continue to wait while stdout,
stderr, and stdin are open
to the CGI application. Thus, if you fork a long-running application, you
must close out these file descriptors.
SEE ALSO
AUTHORS
The khttp_free() and
khttp_child_free() functions were written by
Kristaps Dzonsons
<kristaps@bsd.lv>.