*/
#ifndef lint
-static const char rcsid[] = "$Id: fcgiapp.c,v 1.5 1999/07/27 02:17:05 roberts Exp $";
+static const char rcsid[] = "$Id: fcgiapp.c,v 1.6 1999/07/27 15:00:17 roberts Exp $";
#endif /* not lint */
#ifdef _WIN32
static char *StringCopy(char *str)
{
int strLen = strlen(str);
- char *newString = Malloc(strLen + 1);
+ char *newString = (char *)Malloc(strLen + 1);
memcpy(newString, str, strLen);
newString[strLen] = '\000';
return newString;
f = (char *) format;
fStop = f + strlen(f);
while (f != fStop) {
- percentPtr = memchr(f, '%', fStop - f);
+ percentPtr = (char *)memchr(f, '%', fStop - f);
if(percentPtr == NULL) percentPtr = fStop;
if(percentPtr != f) {
if(FCGX_PutStr(f, percentPtr - f, stream) < 0) goto ErrorReturn;
if(precision == -1) {
buffReqd = strlen(charPtrArg);
} else {
- p = memchr(charPtrArg, '\0', precision);
+ p = (char *)memchr(charPtrArg, '\0', precision);
buffReqd =
(p == NULL) ? precision : p - charPtrArg;
}
} else {
if(auxBuffPtr == NULL || buffReqd > auxBuffLen) {
if(auxBuffPtr != NULL) free(auxBuffPtr);
- auxBuffPtr = Malloc(buffReqd);
+ auxBuffPtr = (char *)Malloc(buffReqd);
auxBuffLen = buffReqd;
if(auxBuffPtr == NULL) goto ErrorReturn;
}
static ParamsPtr NewParams(int length)
{
ParamsPtr result;
- result = Malloc(sizeof(Params));
- result->vec = (char **) Malloc(length * sizeof(char *));
+ result = (Params *)Malloc(sizeof(Params));
+ result->vec = (char **)Malloc(length * sizeof(char *));
result->length = length;
result->cur = result->vec;
*result->cur = NULL;
size = paramsPtr->cur - paramsPtr->vec;
if(size >= paramsPtr->length) {
paramsPtr->length *= 2;
- paramsPtr->vec =
- realloc(paramsPtr->vec, paramsPtr->length * sizeof(char *));
+ paramsPtr->vec = (FCGX_ParamArray)realloc(paramsPtr->vec, paramsPtr->length * sizeof(char *));
paramsPtr->cur = paramsPtr->vec + size;
}
*paramsPtr->cur = NULL;
* nameLen and valueLen are now valid; read the name and value
* from stream and construct a standard environment entry.
*/
- nameValue = Malloc(nameLen + valueLen + 2);
+ nameValue = (char *)Malloc(nameLen + valueLen + 2);
if(FCGX_GetStr(nameValue, nameLen, stream) != nameLen) {
SetError(stream, FCGX_PARAMS_ERROR);
free(nameValue);
*/
static void WriteCloseRecords(struct FCGX_Stream *stream)
{
- FCGX_Stream_Data *data = stream->data;
+ FCGX_Stream_Data *data = (FCGX_Stream_Data *)stream->data;
/*
* Enter rawWrite mode so final records won't be encapsulated as
* stream data.
*/
static void EmptyBuffProc(struct FCGX_Stream *stream, int doClose)
{
- FCGX_Stream_Data *data = stream->data;
+ FCGX_Stream_Data *data = (FCGX_Stream_Data *)stream->data;
int cLen, eLen;
/*
* If the buffer contains stream data, fill in the header.
*/
static int ProcessManagementRecord(int type, FCGX_Stream *stream)
{
- FCGX_Stream_Data *data = stream->data;
+ FCGX_Stream_Data *data = (FCGX_Stream_Data *)stream->data;
ParamsPtr paramsPtr = NewParams(3);
char **pPtr;
char response[64]; /* 64 = 8 + 3*(1+1+14+1)* + padding */
*/
static int ProcessBeginRecord(int requestId, FCGX_Stream *stream)
{
- FCGX_Stream_Data *data = stream->data;
+ FCGX_Stream_Data *data = (FCGX_Stream_Data *)stream->data;
FCGI_BeginRequestBody body;
if(requestId == 0 || data->contentLen != sizeof(body)) {
return FCGX_PROTOCOL_ERROR;
*/
static int ProcessHeader(FCGI_Header header, FCGX_Stream *stream)
{
- FCGX_Stream_Data *data = stream->data;
+ FCGX_Stream_Data *data = (FCGX_Stream_Data *)stream->data;
int requestId;
if(header.version != FCGI_VERSION_1) {
return FCGX_UNSUPPORTED_VERSION;
*/
static void FillBuffProc(FCGX_Stream *stream)
{
- FCGX_Stream_Data *data = stream->data;
+ FCGX_Stream_Data *data = (FCGX_Stream_Data *)stream->data;
FCGI_Header header;
int headerLen = 0;
int status, count;
* but also data->buff and data->buffStop. This has implications
* for procs that want to swap buffers, too.
*/
- FCGX_Stream *stream = Malloc(sizeof(FCGX_Stream));
- FCGX_Stream_Data *data = Malloc(sizeof(FCGX_Stream_Data));
+ FCGX_Stream *stream = (FCGX_Stream *)Malloc(sizeof(FCGX_Stream));
+ FCGX_Stream_Data *data = (FCGX_Stream_Data *)Malloc(sizeof(FCGX_Stream_Data));
data->reqDataPtr = reqDataPtr;
bufflen = AlignInt8(min(max(bufflen, 32), FCGI_MAX_LENGTH + 1));
data->bufflen = bufflen;
- data->mBuff = Malloc(bufflen);
+ data->mBuff = (unsigned char *)Malloc(bufflen);
data->buff = AlignPtr8(data->mBuff);
if(data->buff != data->mBuff) {
data->bufflen -= 8;
if(stream == NULL) {
return;
}
- data = stream->data;
+ data = (FCGX_Stream_Data *)stream->data;
data->reqDataPtr = NULL;
free(data->mBuff);
free(data);
*/
static FCGX_Stream *SetReaderType(FCGX_Stream *stream, int streamType)
{
- FCGX_Stream_Data *data = stream->data;
+ FCGX_Stream_Data *data = (FCGX_Stream_Data *)stream->data;
ASSERT(stream->isReader);
data->type = streamType;
data->eorStop = FALSE;
int bufflen,
int streamType)
{
- FCGX_Request *reqDataPtr = Malloc(sizeof(FCGX_Request));
+ FCGX_Request *reqDataPtr = (FCGX_Request *)Malloc(sizeof(FCGX_Request));
reqDataPtr->ipcFd = ipcFd;
reqDataPtr->requestId = requestId;
/*
int FCGX_StartFilterData(FCGX_Stream *stream)
{
- FCGX_Stream_Data *data = stream->data;
+ FCGX_Stream_Data *data = (FCGX_Stream_Data *)stream->data;
if(data->reqDataPtr->role != FCGI_FILTER
|| !stream->isReader
|| !stream->isClosed
void FCGX_SetExitStatus(int status, FCGX_Stream *stream)
{
- FCGX_Stream_Data *data = stream->data;
+ FCGX_Stream_Data *data = (FCGX_Stream_Data *)stream->data;
data->reqDataPtr->appStatus = status;
}