All Files Functions Typedefs
Functions
request.h File Reference

Header for the request-handling module. More...

#include <stdio.h>

Go to the source code of this file.

Functions

int initRequestHandler (void)
 Initializes the request-handling module.
void handleRequest (FILE *fromClient, FILE *toClient)
 Handles requests coming from a client.
void handleInternalError (int client)
 Handles internal server errors.

Detailed Description

Header for the request-handling module.

Function Documentation

void handleInternalError ( int  client)

Handles internal server errors.

This function handles internal server errors which occur before the handleRequest() function can be called. It should be called from the connection-handling module.

Parameters
clientThe filedescriptor for the client connection.
void handleRequest ( FILE *  fromClient,
FILE *  toClient 
)

Handles requests coming from a client.

This function does the actual work of communicating with the client. It should be called from the connection-handling module.

Parameters
fromClientClient-connection stream opened for reading. It is the caller's responsibility to close it after this function has returned.
toClientClient-connection stream opened for writing. It is the caller's responsibility to close it after this function has returned.
int initRequestHandler ( void  )

Initializes the request-handling module.

Note
This function must be invoked after cmdlineInit().
Returns
0 on success, -1 if the command-line arguments are invalid. If a non-recoverable error occurs during initialization (e.g. a failed memory allocation), the function does not return, but instead prints a meaningful error message and terminates the process.