man cgiSetHeader (Fonctions bibliothèques) - Specify an additional HTTP header


cgiSetHeader - Specify an additional HTTP header


#include <cgi.h>

int cgiSetHeader (char *name, char *value);


With the cgiSetHeader routine you may specify additional HTTP header lines such as Expires: or Pragma:. The order of header lines withing the HTTP header has no significance. You may call this routine multiple times to set multiple headers. They will be printed in the same order as specified, however, after the Content-type: header.

This routine will only add the header to the internal stack, not print it. They will be printed by cgiHeader(3).

This routine does some syntax checking before accepting a new header. The name of a header must not contain any newline, space or colon, otherwise it will be truncated. The value must not contain any newline, otherwise it will be truncated as well.

To set a cookie in your program you'll need to manually add additional header lines. Please take a look at cgitest.c. Basically, you'll need to add the following code:

   cgiSetHeader ("Set-Cookie", "Version=1; name=value; Path=/");

Please read the included file cookies.txt as well.


On success 1 is returned, otherwise 0.


This CGI library is written by Martin Schulze <>. If you have additions or improvements please get in touch with him.