X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;ds=sidebyside;f=testing%2Ffastcgi-approach%2Ffastcgi.h;fp=testing%2Ffastcgi-approach%2Ffastcgi.h;h=4e0cda701c4c300e2b03c62f89b12e33e4329cc3;hb=7dd5244447a0e39c1c700e6b8b6f938c7f962ba8;hp=0000000000000000000000000000000000000000;hpb=4891dab51cf41aaabeb115fbed29d5a5d5937280;p=matches%2FMCTX3420.git diff --git a/testing/fastcgi-approach/fastcgi.h b/testing/fastcgi-approach/fastcgi.h new file mode 100644 index 0000000..4e0cda7 --- /dev/null +++ b/testing/fastcgi-approach/fastcgi.h @@ -0,0 +1,23 @@ +/** + * @file fastcgi.h + * @purpose Headers for the fastcgi web interface + */ + +#ifndef _FASTCGI_H +#define _FASTCGI_H + +/**HTTP status codes that fcgi module handlers can return**/ +typedef enum StatusCodes { + STATUS_OK = 200, + STATUS_BADREQUEST = 400, + STATUS_UNAUTHORIZED = 401 +} StatusCodes; + +typedef void (*ModuleHandler) (void *data, char *params); + +extern char *FCGI_KeyPair(char *in, const char **key, const char **value); +extern void FCGI_BeginJSON(StatusCodes status_code, const char *module); +extern void FCGI_BuildJSON(const char *key, const char *value); +extern void FCGI_EndJSON(); +extern void FCGI_RequestLoop (void *data); +#endif