Please enable JavaScript to view this site.

A-Shell Reference

Navigation: Subroutines > CGIUTL

Support FastCGI

Scroll Prev Top Next More

Updated November 2025

xcall CGIUTL, CGIOP_GETREQ, status

Opcode 10, CGIOP_GETREQ, is used to upport FastCGI, although it also works in normal CGI mode and is critical to enabling support for either mode in the same program.

Parameters

status  (Num signed)

returns 0 if a request is available to process, or -1 if not, in which case the application should terminate.

Comments

For FastCGI mode requests after the first one for the instance of the application server, this call will sleep until a request is available or the web server tells us to exit, or an error occurs.

When used in normal CGI mode, the first call will return 0 (just as it does for FastCGI mode), but the second call will return -1, since normal CGI mode only supports one request per application server instance.

Note that in FastCGI mode, subsequent calls after the first one will block while waiting for a new request. The wait will be terminated only by one of the following events:

Arrival of a new request.
The web server deciding to terminate the application, based on minimum/maximum/timeout parameters in the server's FastCGI or fcgid configuration.
A SIGINT or SIGTERM or SIGKILL signal sent by another Linux process.
Termination by the Windows Task Manager.

Typically, none of those events are trappable, so the process will disappear but the job may remain in the job table as a zombie until it is replaced by a newly launched job.

See FastCGI for an example and further details.