FCGI
view release on metacpan or search on metacpan
GLOBREF in;
GLOBREF out;
GLOBREF err;
HASHREF env;
int socket;
int flags;
PROTOTYPE: ***$$$
CODE:
RETVAL = sv_setref_pv(newSV(0), "FCGI",
FCGI_Request(in, out, err, env, socket, flags));
OUTPUT:
RETVAL
int
OpenSocket(path, backlog)
char* path;
int backlog;
PROTOTYPE: $$
CODE:
RETVAL = FCGX_OpenSocket(path, backlog);
OUTPUT:
RETVAL
void
CloseSocket(socket)
int socket;
PROTOTYPE: $
CODE:
close(socket);
int
FCGI_Accept(request)
FCGI request;
PROTOTYPE: $
void
FCGI_Finish(request)
FCGI request;
PROTOTYPE: $
void
FCGI_Flush(request)
FCGI request;
PROTOTYPE: $
HV *
GetEnvironment(request)
FCGI request;
PROTOTYPE: $
CODE:
RETVAL = request->hvEnv;
OUTPUT:
RETVAL
void
GetHandles(request)
FCGI request;
PROTOTYPE: $
PREINIT:
int i;
PPCODE:
EXTEND(sp,3);
for (i = 0; i < 3; ++i)
PUSHs(sv_2mortal(newRV((SV *) request->gv[i])));
int
FCGI_IsFastCGI(request)
FCGI request;
PROTOTYPE: $
void
Detach(request)
FCGI request;
PROTOTYPE: $
CODE:
if (request->accepted && request->bound) {
FCGI_UndoBinding(request);
FCGX_Detach(request->requestPtr);
}
void
Attach(request)
FCGI request;
PROTOTYPE: $
CODE:
if (request->accepted && !request->bound) {
FCGI_Bind(request);
FCGX_Attach(request->requestPtr);
}
void
LastCall(request)
FCGI request;
PROTOTYPE: $
CODE:
FCGX_ShutdownPending();
int
FCGI_StartFilterData(request)
FCGI request;
PROTOTYPE: $
void
DESTROY(request)
FCGI request;
CODE:
FCGI_Release_Request(request);
MODULE = FCGI PACKAGE = FCGI::Stream
SV *
PRINT(stream, ...)
FCGI::Stream stream;
PREINIT:
int n;
STRLEN len;
register char *str;
bool ok = TRUE;
CODE:
for (n = 1; ok && n < items; ++n) {
#ifdef DO_UTF8
( run in 1.585 second using v1.01-cache-2.11-cpan-5511b514fd6 )